"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[65111],{40001:function(e,n,t){t.d(n,{Z:function(){return u}});var r=t(54476),o=t(59301),c={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"},i=t(7657),s=function(e,n){return o.createElement(i.Z,(0,r.Z)({},e,{ref:n,icon:c}))};var u=o.forwardRef(s)},15277:function(e,n,t){t.d(n,{Z:function(){return u}});var r=t(54476),o=t(59301),c={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z"}}]},name:"eye",theme:"outlined"},i=t(7657),s=function(e,n){return o.createElement(i.Z,(0,r.Z)({},e,{ref:n,icon:c}))};var u=o.forwardRef(s)},78592:function(e,n,t){t.d(n,{JW:function(){return I},Jd:function(){return Z},Kl:function(){return z},L5:function(){return m},MH:function(){return L},MI:function(){return W},Qo:function(){return b},SO:function(){return v},Tf:function(){return y},XO:function(){return f},Xy:function(){return w},Y0:function(){return j},Ye:function(){return J},Yv:function(){return H},ZH:function(){return U},am:function(){return O},bD:function(){return $},fA:function(){return F},fY:function(){return k},g6:function(){return p},g7:function(){return V},gT:function(){return S},gn:function(){return D},h$:function(){return M},hG:function(){return g},i8:function(){return B},j3:function(){return A},lH:function(){return R},li:function(){return h},n4:function(){return _},pU:function(){return T},qK:function(){return x},sA:function(){return C},sP:function(){return P},t$:function(){return N},zl:function(){return E}});var r=t(7557),o=t.n(r),c=t(41498),i=t.n(c),s=t(82242),u=t.n(s),a=t(94171),l=(0,t(83287).oP)(),d={};function f(e){return(0,a.U2)("tasks/".concat(e,".json"),d)}function p(e){return(0,a.U2)("myshixuns/".concat(e,"/challenges.json"))}function v(e,n){return(0,a.U2)("myshixuns/".concat(e,"/subject_challenges.json"),n)}function m(e,n,t){return(0,a.U2)("tasks/".concat(e,"/star.json"),{shixun_id:n,star:t})}function h(e,n){return(0,a.U2)("tasks/".concat(e,"/rep_content.json"),u()(u()({},n),d))}function _(e,n){return(0,a.v_)("myshixuns/".concat(e,"/update_file.json"),n)}function x(e,n){return(0,a.U2)("tasks/".concat(e,"/reset_original_code.json"),u()(u()({},n),d))}function y(e,n){return(0,a.v_)("myshixuns/".concat(e,"/reset_repository.json"),n)}function g(e,n){return(0,a.U2)("tasks/".concat(e,"/reset_passed_code.json"),u()(u()({},n),d))}function w(e,n){return(0,a.v_)("tasks/".concat(e,"/game_build.json"),u()(u()({},n),d))}function b(e,n){return(0,a.U2)("tasks/".concat(e,"/game_status.json"),u()(u()({},n),d))}function E(e,n){return(0,a.v_)("tasks/".concat(e,"/choose_build.json"),u()(u()({},n),d))}function k(e){return(0,a.U2)("myshixuns/".concat(e,"/get_remaining_time.json"))}function S(e){return(0,a.U2)("tasks/".concat(e,"/picture_display.json"),d)}function j(e){return(0,a.v_)("tasks/".concat(e,"/plus_or_cancel_praise.json"))}function T(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,a.v_)("myshixuns/".concat(e,"/repository.json"),n)}function C(e,n){return(0,a.U2)("myshixuns/".concat(e,"/start.json"),n||{})}function O(e,n){return(0,a.U2)("myshixuns/".concat(e,"/reset_pod.json"),n)}function Z(e,n){return(0,a.ZP)("/api/tasks/".concat(e,"/reboot_esc.json"),{method:"post",body:n})}function N(e){return(0,a.U2)("tasks/".concat(e,"/check_test_sets.json"))}function R(e){return(0,a.U2)("tasks/".concat(e,"/get_answer_info.json"))}function P(e){return(0,a.U2)("tasks/".concat(e,"/get_choose_answer.json"))}function L(e){return(0,a.U2)("tasks/".concat(e,"/unlock_choose_answer.json"))}function A(e,n){return(0,a.U2)("tasks/".concat(e,"/unlock_answer.json"),{answer_id:n})}function I(e,n,t){return(0,a.v_)("tasks/".concat(e,"/set_games_status.json"),{result:n,data:t})}function z(e,n){return(0,a.U2)("myshixuns/".concat(e,"/active_pod.json"),n)}function B(e,n){return(0,a.U2)("tasks/".concat(e,"/rank_list.json"),n)}function F(e,n){return(0,a.v_)("tasks/".concat(e,"/close_windows_vnc.json"),{tpi_id:n})}function U(e,n){return(0,a.U2)("tasks/".concat(e,"/commit_files.json"),n)}function D(e,n){return(0,a.U2)("tasks/".concat(e,"/pull_files.json"),n)}function M(e,n){return(0,a.v_)("tasks/".concat(e,"/log_output"),n)}function H(e,n){return(0,a.U2)("tasks/".concat(e,"/stop_log_output.json"),n)}function W(e){return G.apply(this,arguments)}function G(){return(G=i()(o()().mark((function e(n){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,a.ZP)("/api/myshixuns/".concat(n.id,"/add_file.json"),{method:"post",body:n}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function $(e){return q.apply(this,arguments)}function q(){return(q=i()(o()().mark((function e(n){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,a.ZP)("/api/myshixuns/".concat(n.id,"/delete_git_file.json"),{method:"Delete",body:n}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function V(e){return X.apply(this,arguments)}function X(){return(X=i()(o()().mark((function e(n){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,a.ZP)("/api/myshixuns/".concat(n.id,"/mv_file.json"),{method:"post",body:n}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function J(e,n){return(0,a.ZP)("/api/shixuns/".concat(e,"/set_start_permanent.json"),{method:"put",body:n})}null!=l&&l.homework_common_id&&(d.homework_common_id=null==l?void 0:l.homework_common_id),null!=l&&l.exercisesId&&(d.exercise_id=null==l?void 0:l.exercisesId)},48049:function(e,n,t){t.d(n,{Z:function(){return s}});t(59301);var r=t(49389),o="ldsRing___mpBZC",c="idsRingWrapper___Of9_n",i=t(37712),s=function(e){var n=e.message,t=e.className,s=(e.children,e.style),u=void 0===s?{}:s;return(0,i.jsxs)("div",{className:"".concat(c," ").concat(t),children:[(0,i.jsxs)("div",{className:o,children:[(0,i.jsx)("div",{}),(0,i.jsx)("div",{}),(0,i.jsx)("div",{}),(0,i.jsx)("div",{})]}),n?(0,i.jsx)("p",{style:u,children:n}):null,(0,i.jsx)(r.Outlet,{})]})}},82255:function(e,n,t){t.d(n,{Z:function(){return p}});var r=t(82100),o=t.n(r),c=t(29186),i=t.n(c),s=t(80619),u=t.n(s),a=t(47074),l=t.n(a),d=t(59301),f=t(4676),p=function(e){u()(t,e);var n=l()(t);function t(e){var r;o()(this,t),r=n.call(this,e);var c=window.document;return r.node=c.createElement("div"),c.body.appendChild(r.node),r}return i()(t,[{key:"render",value:function(){var e=this.props.children;return(0,f.createPortal)(e,this.node)}},{key:"componentWillUnmount",value:function(){window.document.body.removeChild(this.node)}}]),t}(d.Component)},3385:function(e,n,t){t.r(n);var r=t(7557),o=t.n(r),c=t(82242),i=t.n(c),s=t(41498),u=t.n(s),a=t(79800),l=t.n(a),d=t(59301),f=t(49389),p=t(36597),v=t(10208),m=(t(73835),t(70717)),h=t(94171),_=t(37712);n.default=(0,f.connect)((function(e){var n=e.classroomList,t=e.loading;return{classroomList:n,globalSetting:e.globalSetting,loading:t.models.classroomList}}))((function(e){e.classroomList,e.globalSetting,e.loading,e.dispatch;var n,t=(0,d.useState)({}),r=l()(t,2),c=r[0],s=r[1],a=(0,d.useState)({}),x=l()(a,2),y=x[0],g=x[1],w=((0,f.useParams)(),(0,f.useSearchParams)()),b=l()(w,1)[0],E="68yrbx3ech4a";switch(b.get("type")){case"windows":E="hvp5tzfof4wl";break;case"vnc":E="m3ifqz82epo9"}(0,d.useEffect)((function(){k()}),[]),(0,d.useEffect)((function(){c.host&&setTimeout((function(){m.Z.publish("create-socket",1)}),500)}),[c]);var k=function(){var e=u()(o()().mark((function e(){var n,t,r,c;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,h.ZP)("/api/tasks/".concat(b.get("taskId")||E||"68yrbx3ech4a",".json"),{method:"get"});case 2:if(n=e.sent,g(i()({},n)),"terminal"!==b.get("type")){e.next=9;break}return e.next=7,(0,h.ZP)("/api/myshixuns/".concat(null==n||null===(t=n.myshixun)||void 0===t?void 0:t.identifier,"/start.json"),{method:"get",game_id:null==n||null===(r=n.game)||void 0===r?void 0:r.id});case 7:c=e.sent,s(i()({},(null==c?void 0:c.data)||{}));case 9:b.get("type");case 10:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,_.jsxs)("section",{style:{position:"fixed",width:"100%",height:"100%",zIndex:22,top:0,right:0,bottom:0,left:0},children:["terminal"===b.get("type")&&(0,_.jsx)(p.Z,{sshConfigData:c,sid:1}),"terminal"!==b.get("type")&&(null==y?void 0:y.challenge)&&(0,_.jsx)(v.Z,{taskId:E,myshixunId:null==y||null===(n=y.myshixun)||void 0===n?void 0:n.identifier,vnc_url:"vnc"===b.get("type"),window_vnc_url:"windows"===b.get("type"),taskData:y})]})}))},10208:function(e,n,t){t.d(n,{Z:function(){return I}});var r=t(7557),o=t.n(r),c=t(41498),i=t.n(c),s=t(91232),u=t.n(s),a=t(79800),l=t.n(a),d=t(82242),f=t.n(d),p=t(59301),v=t(43418),m=t(8591),h=t(93948),_=t(48049),x=t(76374),y=t(82255),g=t(49389),w=t(83287),b=t(10249),E=t(3113),k=t(37712),S=b.Z.TextArea,j=function(e){var n=e.onCancel,t=e.onSave,r=e.content,o=(0,p.useState)(r),c=l()(o,2),i=c[0],s=c[1];return(0,p.useEffect)((function(){s(r)}),[r]),(0,k.jsxs)("div",{className:"clipboard-box",children:[(0,k.jsx)("h3",{children:"实验环境剪切板:"}),(0,k.jsx)(S,{value:i,onChange:function(e){s(e.target.value)},className:"clipboard"}),(0,k.jsxs)("p",{children:[" ",(0,k.jsx)("b",{children:" 1.从外部复制内容到实验环境内: "})," 粘贴内容到上面文本框,点击保存,然后在实验环境中进行粘贴。 "]}),(0,k.jsxs)("p",{children:[" ",(0,k.jsx)("b",{children:" 2.获取实验环境中的内容: "})," 请先在环境中复制内容,复制动作完成后内容会显示在上面文本框,然后在上面文本框中再次复制。 "]}),(0,k.jsxs)("div",{className:"btn-action-container",children:[(0,k.jsx)(E.ZP,{type:"ghost",onClick:n,style:{marginRight:10},children:"取消"}),(0,k.jsx)(E.ZP,{type:"primary",onClick:function(){t(i)},children:"保存"})]})]})},T=t(81286),C=t(78592),O=t(62013),Z=t(70717),N=t(94171);function R(e){e||(e=window.location.search);var n=e.substr(1),t={};return n.split("&").forEach((function(e){var n=e.split("=");t[n[0]]=decodeURIComponent(n[1])})),t}var P={loading:!0,isLarge:!1,showClipBoardBox:!1,transferContent:"",mes:"实验环境准备中"},L=function(e){return e[e.SET_LOADING=0]="SET_LOADING",e[e.SET_IS_LARGE=1]="SET_IS_LARGE",e[e.SET_MES=2]="SET_MES",e[e.SET_STATE=3]="SET_STATE",e[e.SHOW_CLIPBOARD_BOX=4]="SHOW_CLIPBOARD_BOX",e[e.SET_TRANSFER_CONTENT=5]="SET_TRANSFER_CONTENT",e[e.UPDATE_ALL=6]="UPDATE_ALL",e}(L||{});function A(e,n){switch(n.type){case L.SET_LOADING:return f()(f()({},e),{},{loading:n.payload});case L.SET_IS_LARGE:return f()({},f()(f()({},e),{},{isLarge:n.payload}));case L.SET_MES:return f()(f()({},e),{},{mes:n.payload});case L.SET_STATE:return f()(f()({},e),n.payload);case L.SET_TRANSFER_CONTENT:return f()(f()({},e),{},{transferContent:n.payload});case L.SHOW_CLIPBOARD_BOX:return f()(f()({},e),{},{showClipBoardBox:n.payload});case L.UPDATE_ALL:return f()({loading:e.loading},n.payload);default:throw new Error}}var I=function(e){var n=e.vnc_url,t=e.window_vnc_url,r=e.linux_vnc,c=e.virtual_machine,s=e.taskData,a=e.shixun_environment_id,d=e.tab_type,b=e.instance_startup_type,E=e.index_tab,S=e.tpi_type,I=(0,p.useRef)(),z=(0,p.useRef)(),B=(0,p.useRef)(),F=(0,p.useRef)(),U=(0,p.useRef)(),D=(0,p.useRef)(),M=(0,p.useRef)(),H=(0,p.useRef)(),W=(0,p.useReducer)(A,P),G=l()(W,2),$=G[0],q=G[1],V=(0,p.useState)(0),X=l()(V,2),J=X[0],Q=X[1],Y=$.mes,K=$.loading,ee=$.showClipBoardBox,ne=$.isLarge,te=$.transferContent,re=(0,p.useRef)(),oe=(0,p.useRef)(),ce=(0,p.useState)(0),ie=l()(ce,2),se=ie[0],ue=ie[1],ae=(0,p.useRef)(),le=(0,g.useParams)();(0,p.useEffect)((function(){return function(){var e,n;null===(e=z.current)||void 0===e||null===(n=e.disconnect)||void 0===n||n.call(e),clearTimeout(H.current),clearInterval(re.current)}}),[]),(0,p.useEffect)((function(){oe.current=$.loading}),[$.loading]);var de=function(){var e;2===b?setTimeout((function(){ge()}),1500):void 0!==(null==B||null===(e=B.current)||void 0===e?void 0:e.resizeSession)&&((0,T.vp)()?B.current.resizeSession=!0:setTimeout((function(){B.current.resizeSession=!1}),900))};function fe(){q({type:L.SHOW_CLIPBOARD_BOX,payload:!1})}function pe(e){return I.current&&(F.current=new x.Z((function(n){var t,r=u()(n);try{for(r.s();!(t=r.n()).done;){var o=t.value;2===b&&ge(),(o.target.offsetHeight>0||o.target.offsetWidth>0)&&setTimeout((function(){e.scaleViewport=!1}),800)}}catch(e){r.e(e)}finally{r.f()}})),F.current.observe(I.current)),F.current}(0,p.useEffect)((function(){return document.addEventListener((0,T.gH)(),de),function(){document.removeEventListener((0,T.gH)(),de)}}),[]);var ve=function(){var e=i()(o()().mark((function e(){var n,t,r,u,l,p;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,C.sA)(null===(n=s.myshixun)||void 0===n?void 0:n.identifier,f()(f()({},le),{},{taskId:le.taskId,shixun_environment_id:a,tab_type:d}));case 2:if(null==(r=e.sent)||null===(t=r.data)||void 0===t||null===(t=t.data_list)||void 0===t||!t.length){e.next=6;break}return Z.Z.publish("pod-restrict-data",{identifier:null==r||null===(u=r.data)||void 0===u?void 0:u.identifier,data_list:null==r||null===(l=r.data)||void 0===l?void 0:l.data_list}),e.abrupt("return",Promise.reject());case 6:if(-3!==(null==r?void 0:r.status)){e.next=8;break}return e.abrupt("return",new Promise(function(){var e=i()(o()().mark((function e(n,t){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:v.Z.confirm({content:"检测到您已经开启了其他实验环境,请先关闭环境后,再连接",okText:"立即关闭",cancelText:"稍后关闭",onOk:function(){var e=i()(o()().mark((function e(){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return clearTimeout(ae.current),ue(0),e.next=4,(0,C.fA)(le.taskId,null==r?void 0:r.message);case 4:return Q(J+1),e.abrupt("return");case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()));case 8:if(-1!==(null==r?void 0:r.status)){e.next=10;break}throw new String(null==r?void 0:r.message);case 10:if(0!==(null==r?void 0:r.status)){e.next=15;break}return c&&((0,w.d8)("PVEAuthCookie",null==r||null===(p=r.data)||void 0===p||null===(p=p.cookie_options)||void 0===p?void 0:p.cookies_value,1),(0,w.d8)("PVELangCookie","zh_CN",1)),Z.Z.publish("update-windows-time",null==r?void 0:r.data),Z.Z.publish("send-tabs-result-data",f()(f()({},null==r?void 0:r.data),{},{index_tab:E})),e.abrupt("return",r);case 15:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();function me(){ue(100),clearTimeout(ae.current),setTimeout((function(){B.current.resizeSession=!1,q({type:L.SET_LOADING,payload:!1})}),1300),clearTimeout(re.current)}var he=function(){B.current=new O.Z(I.current,M.current,{credentials:{password:D.current},wsProtocols:["binary"],resize:"scale",show_dot:!0}),B.current.removeEventListener("disconnect",xe),B.current.removeEventListener("connect",me),B.current.removeEventListener("clipboard",_e),window.rfbs2=B.current,F.current=pe(B.current),B.current.viewOnly=le.view_only||!1,B.current.scaleViewport=!!t||(le.scale||!1),B.current.scaleViewport=le.scale||!0,B.current.showDotCursor=!0,B.current.resizeSession=!0,B.current.addEventListener("disconnect",xe),B.current.addEventListener("connect",me),B.current.addEventListener("clipboard",_e)};function _e(e){var n=e.detail.text.replace(/\\u([\dA-Za-z]{4})/g,(function(e,n){return String.fromCharCode(parseInt("0x"+n))}));q({type:L.SET_TRANSFER_CONTENT,payload:n})}function xe(){if(t)q({type:L.SET_LOADING,payload:!0}),Q(J+1);else{if(clearTimeout(H.current),oe.current)return;H.current=setTimeout((function(){Q(J+1)}),6e3)}setTimeout((function(){var e,n;null===(e=B.current)||void 0===e||null===(n=e.connect)||void 0===n||n.call(e)}),3e3)}function ye(){return(ye=i()(o()().mark((function e(t){var r,c,i;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n){e.next=8;break}return r=t,e.next=4,(0,N.ZP)("/api/tasks/".concat(le.taskId,"/vnc_paste.json"),{method:"post",body:{content:Base64.encode(r),shixun_environment_id:a}});case 4:0===(null==(c=e.sent)?void 0:c.status)&&(q({type:L.SET_TRANSFER_CONTENT,payload:t}),m.ZP.success("保存成功!你可以在实验环境中粘贴该内容"),fe()),e.next=12;break;case 8:null===(i=B.current)||void 0===i||i.clipboardPasteFrom(t),q({type:L.SET_TRANSFER_CONTENT,payload:t}),m.ZP.success("保存成功!你可以在实验环境中粘贴该内容"),fe();case 12:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ge(){var e;e=Math.min(document.getElementById("task-right-panel").clientWidth/1920,document.getElementById("task-right-panel").clientHeight/1260),U.current.parentElement.className="wh1080p",U.current.parentElement.style.cssText="transform:scale(".concat(e,");transform-origin:center center"),I.current.style.cssText="translate(-50%, -50%) scale("+e+")"}(0,p.useEffect)((function(){if(Z.Z.subscribe("reset-linux-windows-vnc-".concat(E),(function(){Q(J+1)})),(t||n||r||c)&&I.current){clearTimeout(ae.current),2===b&&ge(),new Promise(i()(o()().mark((function e(){var n,i,u,l,d,f,p,v,m,h,_,x;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return R(),e.next=3,ve();case 3:if(n=e.sent,!r&&!c){e.next=11;break}return l=null!=n&&null!==(i=n.data)&&void 0!==i&&null!==(i=i.link_url)&&void 0!==i&&i.includes("?")?"&":"?",U.current.src=(null==n||null===(u=n.data)||void 0===u?void 0:u.link_url)+l+"time="+Date.now(),q({type:L.SET_LOADING,payload:!1}),e.abrupt("return");case 11:t?(D.current="Edu123",M.current=decodeURIComponent(null==n||null===(d=n.data)||void 0===d?void 0:d.link_url)):(p=new URL(decodeURIComponent(null==n||null===(f=n.data)||void 0===f?void 0:f.link_url)),v=p.protocol,m=p.searchParams,h=p.host,_=p.search,x=(0,w.en)(_),D.current=m.get("password"),M.current="".concat("https:"===v?"wss":"ws","://").concat(h,"/").concat(x.path||"websockify"));case 12:if(2!==b){e.next=15;break}return setTimeout((function(){var e;pe(),U.current.style.cssText=U.current.style.cssText+"width:1920px;height:1080px;position:initial",U.current.src="/rdp.html?tpiId=".concat(null==s||null===(e=s.myshixun)||void 0===e?void 0:e.id,"&envId=").concat(a,"&tpiType=").concat(S),q({type:L.SET_LOADING,payload:!1})}),5e3),e.abrupt("return");case 15:he();case 16:case"end":return e.stop()}}),e)}))));var e=Z.Z.subscribe("vnc-reset-".concat(E),(function(e){"取消"!==e?(ue(0),q({type:L.SET_STATE,payload:{loading:!0,mes:e||"实验环境重置中"}})):q({type:L.SET_LOADING,payload:!1})})),u=Z.Z.subscribe("send-ctrl-alt-delete-".concat(E),(function(){var e;null===(e=B.current)||void 0===e||e.sendCtrlAltDel(),m.ZP.success("发送成功")})),l=Z.Z.subscribe("show-clipboard-box-".concat(E),(function(){q({type:L.SHOW_CLIPBOARD_BOX,payload:!0})}));return ue(0),function(){var n,t,r,o;null===(n=B.current)||void 0===n||n.removeEventListener("disconnect",xe),null===(t=B.current)||void 0===t||t.removeEventListener("connect",me),null===(r=B.current)||void 0===r||r.removeEventListener("clipboard",_e),e(),u(),l(),I.current&&(null===(o=F.current)||void 0===o||o.unobserve(I.current))}}}),[n,t,r,J,a,d]),(0,p.useEffect)((function(){0==se&&(clearTimeout(ae.current),we())}),[se]);var we=function e(){se>99?se=99:(se+=1,ae.current=setTimeout((function(){e()}),1500)),se<100&&ue(se)},be=(0,p.useMemo)((function(){return K?"none":r||c||t&&2===b?"block":"none"}),[r,K,c,t]);return(0,k.jsxs)(p.Fragment,{children:[ne&&(0,k.jsx)("a",{className:"btn-vnc-resize",onClick:function(){q({type:L.SET_IS_LARGE,payload:!ne})},children:(0,k.jsx)("i",{className:"iconfont icon-tuichuquanping"})}),(0,k.jsx)("div",{style:{width:"100%",height:"100%",overflow:"hidden",position:"absolute",display:"block"===be?"flex":"none",alignItems:"center",justifyContent:"center",zIndex:6},children:(0,k.jsx)("div",{children:(0,k.jsx)("iframe",{style:{position:ne?"fixed":"absolute",left:0,top:ne?40:0,width:"100%",height:"calc(100% - ".concat(ne?"100px":"0px",")")},frameBorder:"0",ref:U,allowFullScreen:!0})})}),(0,k.jsxs)("div",{style:{position:ne?"fixed":"absolute",left:0,top:ne?40:0,zIndex:5,width:"100%",height:"calc(100% - ".concat(ne?"100px":"0px",")")},className:"".concat(t?"vnc-panel-wrapper-windows":"vnc-panel-wrapper"," ").concat(ne?"full-screen":""),children:[K?(0,k.jsx)(_.Z,{message:Y,style:{color:"#0152d9"},children:(0,k.jsx)("div",{className:"tc",style:{width:500,margin:"0 auto",color:"#FFF"},children:(0,k.jsx)(h.Z,{percent:se,format:function(e){return(0,k.jsxs)("span",{className:"c-white",children:[e,"%"]})}})})}):null,(0,k.jsx)("div",{ref:I,className:"vnc-panel ".concat(K?"hidden zIndexf1":"animated fadeIn")})]}),(0,k.jsx)(y.Z,{children:(0,k.jsx)(v.Z,{title:"复制粘贴",centered:!0,maskClosable:!1,open:ee,onCancel:fe,footer:null,children:(0,k.jsx)(j,{onCancel:fe,onSave:function(e){return ye.apply(this,arguments)},content:te})})})]})}},36597:function(e,n,t){t.d(n,{Z:function(){return b}});var r=t(7557),o=t.n(r),c=t(82242),i=t.n(c),s=t(41498),u=t.n(s),a=t(91232),l=t.n(a),d=t(79800),f=t.n(d),p=t(59301),v=t(24334),m=t(34376),h=(t(40390),"xterm-panel___XA0p9"),_=t(70717),x=t(76374),y=t(78592),g=t(49389),w=t(37712),b=function(e){var n=e.itemData,t=void 0===n?{}:n,r=e.game,c=e.myshixun,s=(0,g.useParams)(),a=(0,p.useState)(null),d=f()(a,2),b=d[0],E=d[1],k=(0,p.useState)({}),S=f()(k,2),j=S[0],T=S[1],C=j.link_url,O=j.password,Z=j.port,N=(0,p.useRef)(),R=(0,p.useRef)(),P=(0,p.useRef)(!1),L=t.shixun_environment_id,A=(t.position,t.tab_type),I=t.index_tab;function z(e,n,t){var r=t._core._renderService.dimensions.actualCellWidth||9.5,o=t._core._renderService.dimensions.actualCellHeight||18,c=Math.floor(n/o);return[Math.floor(e/r),c]}function B(){return B=u()(o()().mark((function e(){var n,t,a,l;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,y.sA)(null==c?void 0:c.identifier,{shixun_environment_id:L,tab_type:A,game_id:r.id});case 2:if(null==(t=e.sent)||null===(n=t.data)||void 0===n||null===(n=n.data_list)||void 0===n||!n.length){e.next=6;break}return _.Z.publish("pod-restrict-data",{identifier:null==t||null===(a=t.data)||void 0===a?void 0:a.identifier,data_list:null==t||null===(l=t.data)||void 0===l?void 0:l.data_list}),e.abrupt("return");case 6:if(-3!==(null==t?void 0:t.status)){e.next=8;break}return e.abrupt("return",new Promise(function(){var e=u()(o()().mark((function e(n,r){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:Modal.confirm({content:"检测到您已经开启了其他实验环境,请先关闭环境后,再连接",okText:"立即关闭",cancelText:"稍后关闭",onOk:function(){var e=u()(o()().mark((function e(){return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,closeWindowsVnc(s.taskId,null==t?void 0:t.message);case 2:return init(),e.abrupt("return");case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()));case 8:0===(null==t?void 0:t.status)&&(_.Z.publish("update-windows-time",null==t?void 0:t.data),_.Z.publish("send-tabs-result-data",i()(i()({},null==t?void 0:t.data),{},{index_tab:I})),T(t.data),setTimeout((function(){return _.Z.publish("create-socket-".concat(I))}),300));case 9:case"end":return e.stop()}}),e)}))),B.apply(this,arguments)}return(0,p.useEffect)((function(){!function(){B.apply(this,arguments)}()}),[]),(0,p.useEffect)((function(){if(N.current&&C){var e=new m.Terminal({fontSize:16,rendererType:"dom"});e.open(N.current),e.onData((function(e){R.current&&1===R.current.readyState&&R.current.send(JSON.stringify({tp:"client",data:e}))})),e.write("Connecting..."),E(e);var n=function(e,n){var t=new x.Z((function(n){var t,r=l()(n);try{for(r.s();!(t=r.n()).done;){var o=t.value;if(o.target.offsetHeight>0||o.target.offsetWidth>0){var c=z(o.target.offsetWidth,o.target.offsetHeight,e),i=f()(c,2),s=i[0],u=i[1];console.log("cols, rows",s,u),_.Z.publish("ssh-xterm-resize-".concat(I),{columns:s,rows:u,width:o.target.offsetWidth,height:o.target.offsetHeight}),e.resize(s,u);var a=v.Base64.decode("IA=="),d=v.Base64.decode("CBtbSw==");e.write(a),e.write(d)}}}catch(e){r.e(e)}finally{r.f()}}));return t.observe(n),t}(e,N.current);return function(){e.dispose(),N.current&&(null==n||n.unobserve(N.current))}}}),[C,N.current]),(0,p.useEffect)((function(){if(b&&C){var e=function e(){var n=new WebSocket(C);R.current=n,n.onopen=function(){var e=b.element.parentElement;if(e){var t=e.offsetWidth,r=e.offsetHeight;console.log("init",{tp:"init",data:i()(i()({},j),{},{secret:O,width:t,height:r,rows:b.rows,columns:b.cols})}),n.send(JSON.stringify({tp:"init",data:i()(i()({},j),{},{secret:O,width:t,height:r,rows:b.rows,columns:b.cols})}))}b.focus()},n.onerror=function(e){console.log("------in socket error----",e,n,C)},n.onmessage=function(e){P.current||(b.write("\r"),setTimeout((function(){}),1e3)),P.current=!0,console.log("event:",e);var n=v.Base64.decode(e.data.toString()),t=b._core._renderService.dimensions.actualCellWidth||9.5;console.log("data:",n,t,b),b.write(n)};var t=setInterval((function(){var e;R.current&&(null===(e=R.current)||void 0===e||e.send(JSON.stringify({tp:"h"})))}),3e4);n.onclose=function(n){t&&clearInterval(t),console.log(t,"tid",I),b.write("\r\nconnection closed"),setTimeout((function(){e()}),1e4)}},n=_.Z.subscribe("create-socket-".concat(I),(function(){e()})),t=_.Z.subscribe("ssh-xterm-resize-".concat(I),(function(e){R.current&&1===R.current.readyState&&R.current.send(JSON.stringify({tp:"resize",data:i()({},e)}))}));return function(){n(),t(),R.current&&(R.current.close(),P.current=!1)}}}),[b,C,Z]),(0,w.jsx)("div",{ref:N,className:h,children:C?null:(0,w.jsx)("p",{style:{color:"#fff"},children:"正在连接命令行服务..."})})}},81286:function(e,n,t){function r(e){try{e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullScreen&&e.webkitRequestFullScreen()}catch(e){console.log(e,":e")}}function o(){window.top.document.webkitExitFullscreen?window.top.document.webkitExitFullscreen():document.exitFullscreen?window.top.document.exitFullscreen():document.msExitFullscreen?window.top.document.msExitFullscreen():document.mozCancelFullScreen&&window.top.document.mozCancelFullScreen()}t.d(n,{BU:function(){return o},Dj:function(){return r},gH:function(){return c},vp:function(){return i}});var c=function(){return document.webkitExitFullscreen?"webkitfullscreenchange":document.exitFullscreen?"fullscreenchange":document.msExitFullscreen?"msfullscreenchange":document.mozCancelFullScreen?"mozfullscreenchange":void 0};function i(){var e=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement;document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",e),null!=e}},73835:function(){},10249:function(e,n,t){t.d(n,{Z:function(){return P}});var r=t(92310),o=t.n(r),c=t(59301),i=t(36355),s=t(32441),u=t(9937);var a=e=>{const{getPrefixCls:n,direction:t}=(0,c.useContext)(i.E_),{prefixCls:r,className:a}=e,l=n("input-group",r),d=n("input"),[f,p]=(0,u.ZP)(d),v=o()(l,{[`${l}-lg`]:"large"===e.size,[`${l}-sm`]:"small"===e.size,[`${l}-compact`]:e.compact,[`${l}-rtl`]:"rtl"===t},p,a),m=(0,c.useContext)(s.aM),h=(0,c.useMemo)((()=>Object.assign(Object.assign({},m),{isFormItemInput:!1})),[m]);return f(c.createElement("span",{className:v,style:e.style,onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,onFocus:e.onFocus,onBlur:e.onBlur},c.createElement(s.aM.Provider,{value:h},e.children)))},l=t(9432),d=t(54476),f={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z"}},{tag:"path",attrs:{d:"M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z"}}]},name:"eye-invisible",theme:"outlined"},p=t(7657),v=function(e,n){return c.createElement(p.Z,(0,d.Z)({},e,{ref:n,icon:f}))};var m=c.forwardRef(v),h=t(15277),_=t(2738),x=t(8654),y=t(59412),g=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);oe?c.createElement(h.Z,null):c.createElement(m,null),b={click:"onClick",hover:"onMouseOver"};var E=c.forwardRef(((e,n)=>{const{visibilityToggle:t=!0}=e,r="object"==typeof t&&void 0!==t.visible,[s,u]=(0,c.useState)((()=>!!r&&t.visible)),a=(0,c.useRef)(null);c.useEffect((()=>{r&&u(t.visible)}),[r,t]);const d=(0,y.Z)(a),f=()=>{const{disabled:n}=e;n||(s&&d(),u((e=>{var n;const r=!e;return"object"==typeof t&&(null===(n=t.onVisibleChange)||void 0===n||n.call(t,r)),r})))},{className:p,prefixCls:v,inputPrefixCls:m,size:h}=e,E=g(e,["className","prefixCls","inputPrefixCls","size"]),{getPrefixCls:k}=c.useContext(i.E_),S=k("input",m),j=k("input-password",v),T=t&&(n=>{const{action:t="click",iconRender:r=w}=e,o=b[t]||"",i=r(s),u={[o]:f,className:`${n}-icon`,key:"passwordIcon",onMouseDown:e=>{e.preventDefault()},onMouseUp:e=>{e.preventDefault()}};return c.cloneElement(c.isValidElement(i)?i:c.createElement("span",null,i),u)})(j),C=o()(j,p,{[`${j}-${h}`]:!!h}),O=Object.assign(Object.assign({},(0,_.Z)(E,["suffix","iconRender","visibilityToggle"])),{type:s?"text":"password",className:C,prefixCls:S,suffix:T});return h&&(O.size=h),c.createElement(l.Z,Object.assign({ref:(0,x.sQ)(n,a)},O))})),k=t(47472),S=t(92343),j=t(3113),T=t(19716),C=t(33234),O=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o{const{prefixCls:t,inputPrefixCls:r,className:s,size:u,suffix:a,enterButton:d=!1,addonAfter:f,loading:p,disabled:v,onSearch:m,onChange:h,onCompositionStart:_,onCompositionEnd:y}=e,g=O(e,["prefixCls","inputPrefixCls","className","size","suffix","enterButton","addonAfter","loading","disabled","onSearch","onChange","onCompositionStart","onCompositionEnd"]),{getPrefixCls:w,direction:b}=c.useContext(i.E_),E=c.useRef(!1),Z=w("input-search",t),N=w("input",r),{compactSize:R}=(0,C.ri)(Z,b),P=(0,T.Z)((e=>{var n;return null!==(n=null!=u?u:R)&&void 0!==n?n:e})),L=c.useRef(null),A=e=>{var n;document.activeElement===(null===(n=L.current)||void 0===n?void 0:n.input)&&e.preventDefault()},I=e=>{var n,t;m&&m(null===(t=null===(n=L.current)||void 0===n?void 0:n.input)||void 0===t?void 0:t.value,e,{source:"input"})},z="boolean"==typeof d?c.createElement(k.Z,null):null,B=`${Z}-button`;let F;const U=d||{},D=U.type&&!0===U.type.__ANT_BUTTON;F=D||"button"===U.type?(0,S.Tm)(U,Object.assign({onMouseDown:A,onClick:e=>{var n,t;null===(t=null===(n=null==U?void 0:U.props)||void 0===n?void 0:n.onClick)||void 0===t||t.call(n,e),I(e)},key:"enterButton"},D?{className:B,size:P}:{})):c.createElement(j.ZP,{className:B,type:d?"primary":void 0,size:P,disabled:v,key:"enterButton",onMouseDown:A,onClick:I,loading:p,icon:z},d),f&&(F=[F,(0,S.Tm)(f,{key:"addonAfter"})]);const M=o()(Z,{[`${Z}-rtl`]:"rtl"===b,[`${Z}-${P}`]:!!P,[`${Z}-with-button`]:!!d},s);return c.createElement(l.Z,Object.assign({ref:(0,x.sQ)(L,n),onPressEnter:e=>{E.current||p||I(e)}},g,{size:P,onCompositionStart:e=>{E.current=!0,null==_||_(e)},onCompositionEnd:e=>{E.current=!1,null==y||y(e)},prefixCls:N,addonAfter:F,suffix:a,onChange:e=>{e&&e.target&&"click"===e.type&&m&&m(e.target.value,e,{source:"clear"}),h&&h(e)},className:M,disabled:v}))})),N=t(1643);const R=l.Z;R.Group=a,R.Search=Z,R.TextArea=N.Z,R.Password=E;var P=R}}]);