|
|
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[99674],{57732:function(e,t,n){var r=n(26801),i=n.n(r),a=(n(59301),n(93314)),c=n(3113),s=n(37712);t.Z=function(e){var t=e.img,n=e.buttonProps,r=void 0===n?{}:n,o=e.styles,u=void 0===o?{}:o,l=e.customText,d=e.ButtonText,f=e.ButtonClick,v=e.Buttonclass,h=e.ButtonTwo,m=e.imgStyles,p=e.loading,x=void 0!==p&&p;return(0,s.jsxs)("section",{className:"tc animated fadeIn",style:i()(i()({},{color:"#999",margin:"100px auto",visibility:x?"hidden":"visible"}),u),children:[(0,s.jsx)("img",{src:t||a,style:i()({},m)}),(0,s.jsx)("p",{className:"mt20 font14",children:l||"暂时还没有相关数据哦!"}),d&&(0,s.jsx)(c.ZP,i()(i()({className:v,onClick:f},r),{},{children:d})),h&&h]})}},21502:function(e,t,n){n.r(t),n.d(t,{default:function(){return _}});var r=n(10574),i=n.n(r),a=n(39343),c=n.n(a),s=n(11006),o=n.n(s),u=n(59301),l=n(22211),d=n(8591),f=n(43418),v=n(24905),h=n(95237),m=n(43604),p=n(3113),x=(n(27301),n(26801)),b=n.n(x),g=n(98190),y=n.n(g),w=n(24334),j=n(34376),k=(n(89991),"xterm-panel___S5eQ3"),A=n(89472),E=n(76374),S=n(37712),N=function(e){var t=e.itemData,n=void 0===t?{}:t,r=e.startInit,a=(0,u.useState)(null),s=o()(a,2),l=s[0],d=s[1],f=(0,u.useState)({}),v=o()(f,2),h=v[0],m=v[1],p=h.password,x=h.port,g=h.link_url,N=(0,u.useRef)(),Z=(0,u.useRef)(),C=(0,u.useRef)(!1),z=n.user_mirror_id,B=n.tab_type,I=n.index_tab;function W(e,t,n){var r=n._core._renderService.dimensions.actualCellWidth||9.5,i=n._core._renderService.dimensions.actualCellHeight||18,a=Math.floor(t/i);return[Math.floor(e/r),a]}function R(){return(R=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r(z,B);case 2:0===(null==(t=e.sent)?void 0:t.status)&&(m(t.data),setTimeout((function(){return A.Z.publish("create-socket-".concat(I))}),300));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return(0,u.useEffect)((function(){!function(){R.apply(this,arguments)}()}),[]),(0,u.useEffect)((function(){if(N.current&&g){var e=new j.Terminal({fontSize:16,rendererType:"dom"});e.open(N.current),e.onData((function(e){Z.current&&1===Z.current.readyState&&Z.current.send(JSON.stringify({tp:"client",data:e}))})),e.write("Connecting..."),d(e);var t=function(e,t){var n=new E.Z((function(t){var n,r=y()(t);try{for(r.s();!(n=r.n()).done;){var i=n.value;if(i.target.offsetHeight>0||i.target.offsetWidth>0){var a=W(i.target.offsetWidth,i.target.offsetHeight,e),c=o()(a,2),s=c[0],u=c[1];console.log("cols, rows",s,u),A.Z.publish("ssh-xterm-resize-".concat(I),{columns:s,rows:u,width:i.target.offsetWidth,height:i.target.offsetHeight}),e.resize(s,u);var l=w.Base64.decode("IA=="),d=w.Base64.decode("CBtbSw==");e.write(l),e.write(d)}}}catch(e){r.e(e)}finally{r.f()}}));return n.observe(t),n}(e,N.current);return function(){e.dispose(),N.current&&(null==t||t.unobserve(N.current))}}}),[g,N.current]),(0,u.useEffect)((function(){if(l&&g){var e=function e(){var t=new WebSocket(g);Z.current=t,t.onopen=function(){var e=l.element.parentElement;if(e){var n=e.offsetWidth,r=e.offsetHeight;console.log("init",{tp:"init",data:b()(b()({},h),{},{secret:p,width:n,height:r,rows:l.rows,columns:l.cols})}),t.send(JSON.stringify({tp:"init",data:b()(b()({},h),{},{secret:p,width:n,height:r,rows:l.rows,columns:l.cols})}))}l.focus()},t.onerror=function(e){console.log("------in socket error----",e,t,g)},t.onmessage=function(e){C.current||(l.write("\r"),setTimeout((function(){}),1e3)),C.current=!0,console.log("event:",e);var t=w.Base64.decode(e.data.toString()),n=l._core._renderService.dimensions.actualCellWidth||9.5;console.log("data:",t,n,l),l.write(t)};var n=setInterval((function(){var e;Z.current&&(null===(e=Z.current)||void 0===e||e.send(JSON.stringify({tp:"h"})))}),3e4);t.onclose=function(t){n&&clearInterval(n),console.log(n,"tid",I),l.write("\r\nconnection closed"),setTimeout((function(){e()}),1e4)}},t=A.Z.subscribe("create-socket-".concat(I),(function(){e()})),n=A.Z.subscribe("ssh-xterm-resize-".concat(I),(function(e){Z.current&&1===Z.current.readyState&&Z.current.send(JSON.stringify({tp:"resize",data:b()({},e)}))}));return function(){t(),n(),Z.current&&(Z.current.close(),C.current=!1)}}}),[l,g,x]),(0,S.jsx)("div",{ref:N,className:k,children:g?null:(0,S.jsx)("p",{style:{color:"#fff"},children:"正在连接命令行服务..."})})},Z=n(71418),C=function(e){var t=e.itemData,n=void 0===t?{}:t,r=e.startInit,a=(0,u.useState)({}),s=o()(a,2),l=s[0],d=s[1],f=(0,u.useState)(!0),v=o()(f,2),h=v[0],m=v[1],p=n.user_mirror_id,x=n.tab_type;(0,u.useEffect)((function(){b()}),[]);var b=function(){var e=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return m(!0),e.next=3,r(p,x);case 3:0===(null==(t=e.sent)?void 0:t.status)&&d(t.data),m(!1);case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,S.jsx)(S.Fragment,{children:h?(0,S.jsx)(Z.Z,{style:{width:"100%",marginTop:200}}):(0,S.jsx)("iframe",{style:{height:"100%",width:"100%"},frameBorder:"0",src:null==l?void 0:l.vnc_url})})},z=n(23878),B=function(e){var t=e.value,n=void 0===t?null:t,r=e.onAddTime,a=e.goBack,s=e.updateTime,l=e.errorCode,d=(0,u.useState)(null),v=o()(d,2),h=v[0],m=v[1],p=(0,u.useState)(null),x=o()(p,2),b=x[0],g=x[1],y=(0,u.useState)(!1),w=o()(y,2),j=w[0],k=w[1],A=(0,u.useState)(!1),E=o()(A,2),N=E[0],Z=E[1],C=(0,u.useRef)(!0);(0,u.useEffect)((function(){g(Date.now()+n),"number"==typeof n&&C.current&&n<3e5&&(C.current=!1,k(!0))}),[n]),(0,u.useEffect)((function(){300!==h&&180!==h&&60!==h&&0!==h||k(!0)}),[h]),(0,u.useEffect)((function(){return window.addEventListener("visibilitychange",B),function(){window.removeEventListener("visibilitychange",B)}}),[l]);var B=function(){var e=c()(i()().mark((function e(){var t,n,r,a;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("visible"!==document.visibilityState||l){e.next=5;break}return e.next=3,s();case 3:0===(null==(t=e.sent)?void 0:t.status)&&(a=(null==t||null===(n=t.data)||void 0===n?void 0:n.expireTime)>0?null==t||null===(r=t.data)||void 0===r?void 0:r.expireTime:0,g(Date.now()+a),k(a<=3e5),0===a&&m(0));case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),I=function(){var e=c()(i()().mark((function e(){return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(Z(!0),!(h>0)){e.next=6;break}return e.next=4,r();case 4:e.next=7;break;case 6:a();case 7:Z(!1),k(!1);case 9:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(z.O5,{onChange:function(e){m(e)},value:b,valueStyle:{color:"#FFF",fontSize:12,width:54}}),(0,S.jsx)(f.Z,{title:0!==h?"实验环境延时提醒":"实验环境结束提醒",maskClosable:!1,closable:!1,centered:!0,open:j,onOk:I,cancelButtonProps:{style:{display:0!==h?"inline-block":"none"}},confirmLoading:N,onCancel:function(){k(!1)},okText:0!==h?"立即延长":"退出",cancelText:"不需要",children:0!==h?"当前实验环境将于 ".concat(Math.round(h/60)," 分钟后关闭,需要延长使用时间吗?"):"实验环境倒计时结束,资源已经被回收。"})]})},I=n(67871),W="wrap___nt3l8",R="header___pWY1w",T="container____IeqS",Q="errorData___pJ481",J=n(15830),M=n(54863),_=(0,l.connect)((function(e){var t=e.user;return{globalSetting:e.globalSetting,user:t}}))((function(e){var t,n,r=e.dispatch,a=e.user,s=(0,l.useSearchParams)(),x=o()(s,1)[0],b=(0,l.useParams)(),g=(0,u.useState)({}),y=o()(g,2),w=y[0],j=y[1],k=(0,u.useState)(!1),A=o()(k,2),E=A[0],Z=A[1],z=(0,u.useState)(!0),_=o()(z,2),H=_[0],F=_[1],X=(0,u.useState)([]),P=o()(X,2),L=P[0],V=P[1],D=(0,u.useState)({}),q=o()(D,2),O=q[0],U=q[1],Y=(0,u.useState)(null),K=o()(Y,2),G=K[0],$=K[1],ee=(0,u.useState)(!1),te=o()(ee,2),ne=te[0],re=te[1];(0,u.useEffect)((function(){return r({type:"globalSetting/headerFooterToggle",payload:!1}),function(){r({type:"globalSetting/headerFooterToggle",payload:!0})}}),[]),(0,u.useEffect)((function(){ae()}),[]);var ie=function(){var e=c()(i()().mark((function e(t,n){var r,a,c;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return F(!0),e.next=3,(0,J.ZP)("/api/user_mirrors/".concat(t,"/start.json"),{method:"post",body:{tab_type:n}});case 3:return 0===(null==(r=e.sent)?void 0:r.status)&&(re(!(null==r||null===(a=r.data)||void 0===a||!a.code)),$(null==r||null===(c=r.data)||void 0===c?void 0:c.remaining_time),F(!1)),e.abrupt("return",r);case 6:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),ae=function(){var e=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,J.ZP)("/api/user_mirrors/".concat(null==b?void 0:b.id,".json"),{method:"get"});case 2:0===(null==(t=e.sent)?void 0:t.status)&&j(null==t?void 0:t.data);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ce=function(){var e=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,J.ZP)("/api/user_mirrors/".concat(null==b?void 0:b.id,"/check.json"),{method:"get"});case 2:return t=e.sent,e.abrupt("return",t);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),se=function(){var e=c()(i()().mark((function e(){var t,n;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,J.ZP)("/api/user_mirrors/".concat(null==b?void 0:b.id,"/active.json"),{method:"post",body:{tab_type:null==O?void 0:O.tab_type}});case 2:0===(null==(t=e.sent)?void 0:t.status)&&($(null==t||null===(n=t.data)||void 0===n?void 0:n.remaining_time),d.ZP.success("延长成功"));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),oe=function(){var e;l.history.push("/users/".concat(null===(e=a.userInfo)||void 0===e?void 0:e.login,"/experiment-img"))},ue=function(){var e=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Z(!0),e.next=3,(0,J.ZP)("/api/user_mirrors/".concat(null==b?void 0:b.id,"/save_image.json"),{method:"post",body:{tab_type:null==O?void 0:O.tab_type,operation:null==x?void 0:x.get("operation")}});case 3:0===(null==(t=e.sent)?void 0:t.status)&&(d.ZP.success("保存成功"),oe()),Z(!1);case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,S.jsxs)("section",{className:W,children:[(0,S.jsxs)(h.Z,{align:"middle",className:R,children:[(0,S.jsxs)(m.Z,{children:[(0,S.jsx)("img",{alt:"用户头像",src:"".concat(I.Z.IMG_SERVER,"/images/").concat(null==a||null===(t=a.userInfo)||void 0===t?void 0:t.image_url),width:34,height:34,style:{borderRadius:"50%"}}),(0,S.jsx)("span",{className:"ml10",children:null==a||null===(n=a.userInfo)||void 0===n?void 0:n.real_name})]}),(0,S.jsx)(m.Z,{flex:"1",className:"tc",children:(0,S.jsx)("span",{className:"mr10 font18",children:null==w?void 0:w.type_name})}),(0,S.jsxs)(h.Z,{align:"middle",children:[(0,S.jsx)("span",{className:"iconfont icon-shijian1 mr5 font14"}),(0,S.jsx)("span",{className:"font12",children:"实验环境倒计时:"}),(0,S.jsx)(B,{value:G,errorCode:ne,updateTime:ce,onAddTime:se,goBack:oe}),!(null==x||!x.get("operation"))&&(null==w?void 0:w.can_save)&&(0,S.jsx)(p.ZP,{disabled:ne||H,loading:E,className:"ml40",onClick:ue,type:"primary",children:"保存镜像"}),(0,S.jsx)("span",{className:"icon-kaiguan font16 current ml30",onClick:function(){var e,t=!1;f.Z.confirm({title:"退出环境",icon:null,content:(0,S.jsxs)("div",{children:[(0,S.jsx)("div",{style:{margin:"10px auto"},children:"您确定要退出环境吗?"}),(0,S.jsx)(v.Z,{onChange:function(e){return t=e.target.checked},children:"退出环境时,立即释放环境资源"})]}),centered:!0,okText:"确定",cancelText:"取消",onOk:(e=c()(i()().mark((function e(){var n;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=3;break}return oe(),e.abrupt("return");case 3:return e.next=5,(0,J.ZP)("/api/user_mirrors/".concat(null==b?void 0:b.id,"/exit_delete_pod.json"),{method:"post",body:{tab_type:null==O?void 0:O.tab_type}});case 5:0===(null==(n=e.sent)?void 0:n.status)&&oe();case 7:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)})})}})]})]}),(0,S.jsx)("div",{style:{background:"#111C24"},children:(0,S.jsx)(M.Z,{initTabs:(null==w?void 0:w.tabs)||[],tabs:L,copyProhibited:!0,setTabs:V,value:O,onChange:function(e){return U(e)}})}),(0,S.jsx)("aside",{className:T,children:ne?(0,S.jsxs)("div",{className:Q,children:[(0,S.jsx)("img",{src:"data:image/png;base64,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",width:139}),(0,S.jsx)("div",{className:"font14 mt20",style:{color:"#F6F7F9"},children:"镜像无法运行"})]}):L.map((function(e){return(0,S.jsxs)("div",{style:{display:e.index_tab===O.index_tab?"block":"none",position:"relative",overflow:"hidden",height:"100%"},children:[e.active&&3===e.tab_type&&(0,S.jsx)(C,{itemData:e,startInit:ie}),e.active&&4===e.tab_type&&(0,S.jsx)(N,{itemData:e,startInit:ie})]},e.index_tab)}))})]})}))},54863:function(e,t,n){n.d(t,{Z:function(){return N}});var r=n(26801),i=n.n(r),a=n(98190),c=n.n(a),s=n(11006),o=n.n(s),u=n(59301),l="scrollbar___lLOKh",d="scrollbarContent___J5uQ6",f="scrollbarTrack___ptQqt",v="scrollbarThumb___GFuZv",h="item___MSfbI",m="icon___AXhP9",p="dot___BA766",x="active___Rkf93",b="pathActive___l4hB4",g="paths___gzBRM",y=n(43418),w=n(38854),j=n(89392),k=n(89472),A=n(76374),E=n(85578),S=n(37712),N=function(e){var t=e.initTabs,n=void 0===t?[]:t,r=e.tabs,a=void 0===r?[]:r,s=e.setTabs,N=e.value,Z=e.onChange,C=e.codeUpdate,z=void 0!==C&&C,B=e.paths,I=void 0===B?[]:B,W=e.activePath,R=e.onChangePath,T=e.codeLoading,Q=e.copyProhibited,J=void 0!==Q&&Q,M=(0,u.useState)(!1),_=o()(M,2),H=_[0],F=_[1],X=(0,u.useState)(!1),P=o()(X,2),L=P[0],V=P[1],D=(0,u.useRef)(),q=(0,u.useRef)(),O=(0,u.useRef)(),U=(0,u.useRef)(!1);(0,u.useEffect)((function(){return k.Z.subscribe("send-tabs-result-data",(function(e){var t=(0,j.cloneDeep)(a),n=t.findIndex((function(t){return t.index_tab===e.index_tab}));t[n].resData=e,s(t)}))}),[a]),(0,u.useEffect)((function(){var e=new A.Z((function(e){var t,n=c()(e);try{for(n.s();!(t=n.n()).done;){t.value.contentRect.width;Y()}}catch(e){n.e(e)}finally{n.f()}})),t=new A.Z((function(e){var t,n=c()(e);try{for(n.s();!(t=n.n()).done;){t.value.contentRect.width;Y()}}catch(e){n.e(e)}finally{n.f()}}));return q.current&&(e.observe(q.current),t.observe(O.current)),function(){e.disconnect(),t.disconnect()}}),[]),(0,u.useEffect)((function(){if(n.length&&!U.current){var e=n.map((function(e,t){return i()(i()({},e),{},{active:0===t,resetKey:1,resData:{}})}));s((0,j.cloneDeep)(e)),Z(e[0]),U.current=!1}}),[null==n?void 0:n.length]),(0,u.useEffect)((function(){if(D.current){var e=function(e){r=D.current.offsetLeft,i=e.pageX,a=!0,document.onselectstart=function(){return!1},(0,E.kk)("none")},t=function(){a=!1,document.onselectstart=null,(0,E.kk)("auto")},n=function(e){if(a){var t=e.pageX-i,n=r+t,c=q.current.clientWidth-D.current.clientWidth;n<=0&&(n=0),n>=c&&(n=c),D.current.style.left="".concat(n,"px"),O.current.style.transform="translateX(".concat(-n/q.current.clientWidth*O.current.clientWidth,"px)")}},r=0,i=0,a=!1;return D.current.addEventListener("mousedown",e),document.addEventListener("mousemove",n),document.addEventListener("mouseup",t),function(){var r,i,a;null===(r=D.current)||void 0===r||r.removeEventListener("mousedown",e),null===(i=document)||void 0===i||i.removeEventListener("mousemove",n),null===(a=document)||void 0===a||a.removeEventListener("mouseup",t)}}}),[D.current,N]),(0,u.useEffect)((function(){return O.current.addEventListener("wheel",K,{passive:!1}),function(){var e;null===(e=O.current)||void 0===e||e.removeEventListener("wheel",K,{passive:!1})}}),[O.current]);var Y=function(){try{if(O.current.clientWidth>q.current.clientWidth){var e,t=q.current.clientWidth/O.current.clientWidth*q.current.clientWidth,n=Number(null===(e=D.current.style.left)||void 0===e?void 0:e.replace("px","")),r=n;n+t>=q.current.clientWidth&&(r=n-(n+t-q.current.clientWidth)),D.current.style.width="".concat(t,"px"),D.current.style.left="".concat(r,"px"),O.current.style.transform="translateX(".concat(-r/q.current.clientWidth*O.current.clientWidth,"px)"),F(!0)}else D.current.style.left="".concat(0,"px"),O.current.style.transform="translateX(0px)",F(!1)}catch(e){}},K=function(e){if(!(O.current.clientWidth<=q.current.clientWidth)){var t=0;t=-1!==navigator.userAgent.indexOf("Macintosh")?e.deltaX:e.shiftKey?e.deltaX||e.deltaY:e.deltaX;var n=O.current.style.transform.match(/translateX\(([-0-9.]+)px\)/),r=n?parseFloat(n[1]):0;r=Math.abs(r),(r+=t)<=0&&(r=0);var i=O.current.clientWidth-q.current.clientWidth;r>=i&&(r=i);var a=r/O.current.clientWidth*q.current.clientWidth;D.current.style.left="".concat(a,"px"),O.current.style.transform="translateX(".concat(-r,"px)"),e.preventDefault()}};return(0,S.jsxs)("div",{className:l,ref:q,children:[(0,S.jsx)("div",{className:d,ref:O,children:a.map((function(e,t){var n,r=e.index_tab,c=e.isCopy,o=e.tab_type,u=e.name;return(0,S.jsxs)("div",{onClick:function(){if(r!==N.index_tab){var n=i()(i()({},e),{},{active:!0}),c=(0,j.cloneDeep)(a);c[t]=n,Z(n),s(c)}},className:N.index_tab===r?"".concat(h," ").concat(x):h,children:[1===o&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)("i",{title:"代码编辑器",style:{color:"#3B86A0"},className:"iconfont icon-daimabianjiqi1"}),(0,S.jsx)("span",{children:u}),!!W&&(0,S.jsx)(w.Z,{className:m,overlayClassName:g,onOpenChange:function(e){V(e)},disabled:T,menu:{items:null===(n=(0,j.compact)(I))||void 0===n?void 0:n.map((function(e){return{key:e,label:(0,S.jsx)("span",{className:W===e?b:"",children:e}),onClick:function(){W!==e&&(V(!1),R(e))}}}))},children:(0,S.jsx)("div",{children:L?(0,S.jsx)("b",{className:"iconfont icon-a-xialazhankai"}):(0,S.jsx)("b",{className:"iconfont icon-shouqi4"})})}),z&&(0,S.jsx)("div",{className:p})]}),2===o&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)("i",{style:{color:"#608B4E"},title:"VSCode编辑器",className:"iconfont icon-vscode"}),(0,S.jsx)("span",{children:u})]}),3===o&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)("i",{style:{color:"#608B4E"},title:"图形化桌面",className:"iconfont icon-tuxinghuazhuomian"}),(0,S.jsx)("span",{children:u})]}),4===o&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)("i",{style:{color:"#3B86A0"},title:"命令行终端",className:"iconfont icon-minglinghang"}),(0,S.jsx)("span",{children:u}),!J&&(0,S.jsx)("aside",{title:"复制",onClick:function(n){return function(e,t,n){if(n.stopPropagation(),10!==a.length){var r=(0,j.cloneDeep)(a),c=String(Math.random()).slice(-10),o=e.index_tab.split("-")[0],u=i()(i()({},e),{},{active:!1,index_tab:"".concat(o,"-").concat(c),isCopy:!0});r.splice(t+1,0,u),s(r)}else y.Z.info({title:"提示",icon:null,okText:"我知道了",width:600,centered:!0,content:"实验界面窗口数量已达上限(10个),不允许再复制窗口。"})}(e,t,n)},className:"iconfont icon-fuzhihuanjing font14 ml10 current"}),c&&(0,S.jsx)("aside",{title:"关闭",onClick:function(n){return function(e,t,n){n.stopPropagation();var r=(0,j.cloneDeep)(a);r.splice(t,1),e.index_tab===N.index_tab&&(r[t-1].active=!0,Z(r[t-1])),s(r)}(e,t,n)},className:"iconfont icon-guanbishiyanhuanjing font14 ml10 current"})]}),5===o&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)("i",{style:{color:"#3B86A0"},title:"容器内服务",className:"iconfont icon-rongqi1"}),(0,S.jsx)("span",{children:u})]})]},r)}))}),(0,S.jsx)("div",{style:{display:H?"block":"none"},className:f,children:(0,S.jsx)("div",{ref:D,className:v})})]})}},27301:function(){}}]); |