diff --git a/CHANGELOG.md b/CHANGELOG.md index 2fe46ad1..2bde0251 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.2.0 release on 2023-06-03 + +1. appmanage docker 镜像更新到 0.2.0 +2. Portainer 插件修复自动登录 bug +3. My Apps 插件修复首次使用获取容器 bug + ## 0.1.0 release on 2023-05-26 1. stackhub 预发布,基本功能实现 diff --git a/cockpit/myapps/build/asset-manifest.json b/cockpit/myapps/build/asset-manifest.json index 9601e97d..c32b1e38 100644 --- a/cockpit/myapps/build/asset-manifest.json +++ b/cockpit/myapps/build/asset-manifest.json @@ -1,8 +1,8 @@ { "files": { "main.css": "./static/css/main.751babb1.css", - "main.js": "./static/js/main.ffda1723.js", - "static/js/145.796bcadc.chunk.js": "./static/js/145.796bcadc.chunk.js", + "main.js": "./static/js/main.9813c239.js", + "static/js/145.13333720.chunk.js": "./static/js/145.13333720.chunk.js", "static/js/376.bc0e5568.chunk.js": "./static/js/376.bc0e5568.chunk.js", "static/js/426.46c5e949.chunk.js": "./static/js/426.46c5e949.chunk.js", "static/js/603.8e18e7fa.chunk.js": "./static/js/603.8e18e7fa.chunk.js", @@ -64,8 +64,8 @@ "static/media/logo-sm.svg": "./static/media/logo-sm.53b8ca70620b0b2968874a3660f195dd.svg", "index.html": "./index.html", "main.751babb1.css.map": "./static/css/main.751babb1.css.map", - "main.ffda1723.js.map": "./static/js/main.ffda1723.js.map", - "145.796bcadc.chunk.js.map": "./static/js/145.796bcadc.chunk.js.map", + "main.9813c239.js.map": "./static/js/main.9813c239.js.map", + "145.13333720.chunk.js.map": "./static/js/145.13333720.chunk.js.map", "376.bc0e5568.chunk.js.map": "./static/js/376.bc0e5568.chunk.js.map", "426.46c5e949.chunk.js.map": "./static/js/426.46c5e949.chunk.js.map", "603.8e18e7fa.chunk.js.map": "./static/js/603.8e18e7fa.chunk.js.map", @@ -78,6 +78,6 @@ }, "entrypoints": [ "static/css/main.751babb1.css", - "static/js/main.ffda1723.js" + "static/js/main.9813c239.js" ] } \ No newline at end of file diff --git a/cockpit/myapps/build/config.json b/cockpit/myapps/build/config.json index 141ea470..03cfe1c3 100644 --- a/cockpit/myapps/build/config.json +++ b/cockpit/myapps/build/config.json @@ -1,7 +1,7 @@ { "PORTAINER": { "PORTAINER_AUTH_URL": "/portainer/api/auth", - "PORTAINER_HOME_PAGE": "/portainer", + "PORTAINER_HOME_PAGE": "/portainer/#!/home", "PORTAINER_USERNAME": "admin", "PORTAINER_PASSWORD": "websoft9@2023" }, diff --git a/cockpit/myapps/build/index.html b/cockpit/myapps/build/index.html index 963f8793..e3ca4d1b 100644 --- a/cockpit/myapps/build/index.html +++ b/cockpit/myapps/build/index.html @@ -1 +1 @@ -App Store
\ No newline at end of file +App Store
\ No newline at end of file diff --git a/cockpit/myapps/build/manifest.json b/cockpit/myapps/build/manifest.json index 19fffe11..2d21a25a 100644 --- a/cockpit/myapps/build/manifest.json +++ b/cockpit/myapps/build/manifest.json @@ -1,5 +1,5 @@ { - "version": "1.0.0", + "version": "1.0.1", "menu": { "appstore": { "label": "My Apps", diff --git a/cockpit/myapps/build/po.zh_CN.js b/cockpit/myapps/build/po.zh_CN.js index a3fec00b..38f4a97a 100644 --- a/cockpit/myapps/build/po.zh_CN.js +++ b/cockpit/myapps/build/po.zh_CN.js @@ -346,6 +346,10 @@ "Add Domain": [ null, "添加域名" + ], + "Admin Page": [ + null, + "访问后台" ] })); diff --git a/cockpit/myapps/build/static/js/145.13333720.chunk.js b/cockpit/myapps/build/static/js/145.13333720.chunk.js new file mode 100644 index 00000000..65a95db9 --- /dev/null +++ b/cockpit/myapps/build/static/js/145.13333720.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkapps=self.webpackChunkapps||[]).push([[145],{6239:function(e,n,a){a.r(n),a.d(n,{default:function(){return Ne}});var t=a(4165),r=a(5861),s=a(9439),i=a(1413),o=a(4358),l=a(3971),c=a(1694),d=a.n(c),u=a(7346),p=a.n(u),m=a(2791),h=a(2025),x=a(3360),f=a(2469),j=a(9743),g=a(2677),Z=a(42),v=a(7689),b=a(1087),y=a.p+"static/media/default.50b14dd03b88a6d9022a.png",N=a(5987),w=a(9410),k=a(5313),C=a(184),_=["label","type","name","value","readOnly","placeholder","register","errors","className","labelClassName","containerClass","refCallback","children"],S=function(e){var n=e.name,a=e.placeholder,t=e.refCallback,r=e.errors,o=e.register,l=e.className,c=e.value,u=e.readOnly,p=(0,m.useState)(!1),h=(0,s.Z)(p,2),x=h[0],f=h[1];return(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(w.Z,{className:"mb-0",children:[(0,C.jsx)(k.Z.Control,(0,i.Z)((0,i.Z)({type:x?"text":"password",placeholder:a,name:n,id:n,as:"input",ref:function(e){t&&t(e)},className:l,isInvalid:!(!r||!r[n])},o?o(n):{}),{},{autoComplete:n,defaultValue:c,readOnly:u})),(0,C.jsx)("div",{className:d()("input-group-text","input-group-password",{"show-password":x}),"data-password":x?"true":"false",children:(0,C.jsx)("span",{className:"password-eye",onClick:function(){f(!x)}})})]})})},E=function(e){var n=e.label,a=e.type,t=e.name,r=e.value,s=e.readOnly,o=e.placeholder,l=e.register,c=e.errors,d=e.className,u=e.labelClassName,p=e.containerClass,m=e.refCallback,h=e.children,x=(0,N.Z)(e,_),f="textarea"===a?"textarea":"select"===a?"select":"input";return(0,C.jsx)(C.Fragment,{children:"hidden"===a?(0,C.jsx)("input",(0,i.Z)((0,i.Z)({type:a,name:t},l?l(t):{}),x)):(0,C.jsx)(C.Fragment,{children:"password"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsxs)(C.Fragment,{children:[" ",(0,C.jsx)(k.Z.Label,{className:u,children:n})," ",h," "]}):null,(0,C.jsx)(S,{name:t,placeholder:o,refCallback:m,errors:c,register:l,className:d,value:r,readOnly:s}),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",className:"d-block",children:c[t].message}):null]})}):(0,C.jsx)(C.Fragment,{children:"select"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsx)(k.Z.Label,{className:u,children:n}):null,(0,C.jsx)(k.Z.Select,(0,i.Z)((0,i.Z)((0,i.Z)({type:a,label:n,name:t,id:t,ref:function(e){m&&m(e)},comp:f,className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x),{},{children:h})),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})}):(0,C.jsx)(C.Fragment,{children:"checkbox"===a||"radio"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[(0,C.jsx)(k.Z.Check,(0,i.Z)((0,i.Z)({type:a,label:n,name:t,id:t,ref:function(e){m&&m(e)},className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x)),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})}):(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsx)(k.Z.Label,{className:u,children:n}):null,(0,C.jsx)(k.Z.Control,(0,i.Z)((0,i.Z)((0,i.Z)({type:a,placeholder:o,value:r,name:t,id:t,as:f,ref:function(e){m&&m(e)},className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x),{},{autoComplete:t,children:h||null})),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})})})})})},A=a(4942),D=function(e){var n=e.children||null,a=e.tag||"div",t=e.color||"secondary",r=e.size||"";return(0,C.jsx)(a,{role:"status",className:d()({"spinner-border":"bordered"===e.type,"spinner-grow":"grow"===e.type},["text-".concat(t)],(0,A.Z)({},"avatar-".concat(r),r),e.className),children:n})};D.defaultProps={tag:"div",type:"bordered"};var P,R=D,F=a(3144),I=a(5671),M=a(1243);function B(){return T.apply(this,arguments)}function T(){return(T=(0,r.Z)((0,t.Z)().mark((function e(){var n,a,r,s;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(P){e.next=10;break}return e.next=3,fetch("./config.json");case 3:return n=e.sent,e.next=6,n.json();case 6:a=e.sent,r=a.APPMANAGE.APPMANAGE_USERNAME,s=a.APPMANAGE.APPMANAGE_PASSWORD,P=btoa(r+":"+s);case 10:return e.abrupt("return",P);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}M.Z.defaults.headers.post["Content-Type"]="application/json",M.Z.defaults.headers.get["Content-Type"]="application/json",M.Z.defaults.headers.common["Cache-Control"]="no-cache",M.Z.defaults.headers.common.Pragma="no-cache",M.Z.defaults.headers.common.Expires="0",M.Z.interceptors.response.use((function(e){return e}),(function(e){var n;if(e&&e.response&&404===e.response.status)v.Fg;else{if(!e||!e.response||500!==e.response.status)return n=e.response&&e.response.data?e.response.data.message:e.message||e,Promise.reject(n);v.Fg}}));var H=(0,F.Z)((function e(){(0,I.Z)(this,e),this.get=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r,s;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,B();case 2:return e.t0=e.sent,M.Z.defaults.headers.common.Authorization="Basic "+e.t0,a?(s=a?Object.keys(a).map((function(e){return e+"="+a[e]})).join("&"):"",r=M.Z.get("".concat(n,"?").concat(s),a)):r=M.Z.get("".concat(n),a),e.abrupt("return",r);case 6:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}(),this.create=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,B();case 2:return e.t0=e.sent,M.Z.defaults.headers.common.Authorization="Basic "+e.t0,e.abrupt("return",M.Z.post(n,a));case 5:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}()})),O=new H;function z(e){return O.get("".concat("/AppManage/AppList"),e)}function U(e){return O.get("".concat("/AppManage/AppUninstall"),e)}function V(e){return O.get("".concat("/AppManage/AppStop"),e)}function W(e){return O.get("".concat("/AppManage/AppStart"),e)}function G(e){return O.get("".concat("/AppManage/AppRestart"),e)}function L(e){return O.get("".concat("/AppManage/AppDomainAdd"),e)}var $=a(7798),J=a(2576),K=a(1752),q=a(4533),Q=a(3433),X=a(1131),Y=a(1473),ee=a(3721),ne=a(5818),ae=a(1123),te=a(9627),re=a(5736),se=p().gettext,ie=m.forwardRef((function(e,n){return(0,C.jsx)(o.Z,(0,i.Z)({elevation:6,ref:n,variant:"filled"},e))})),oe=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",style:{backgroundColor:"rgba(0,0,0,0.8)"},children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsx)("h4",{children:se("Delete domain binding")})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[se("Are you sure you want to delete the domain for:")," ",e.deleteRowData.domainValue," ? "]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:se("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,t={app_id:e.deleteRowData.app_id,domain:e.deleteRowData.domainValue},O.get("".concat("/AppManage/AppDomainDelete"),t);case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(l(!1),e.onClose(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:return a.prev=11,l(!1),a.finish(11);case 14:case"end":return a.stop()}var t}),a,null,[[0,8,11,14]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",se("Delete")]})]})]})},le=function(e){var n,a,i,o,c,d,u,p,h,f,Z,b,y,N,w,_,S,A,D,P,R,F,I,M,B,T,H,z,U,V=(0,v.s0)(),W=(0,m.useState)([]),G=(0,s.Z)(W,2),$=G[0],J=G[1],K=(0,m.useState)(!1),q=(0,s.Z)(K,2),le=q[0],ce=q[1],de=(0,m.useState)(!1),ue=(0,s.Z)(de,2),pe=ue[0],me=ue[1],he=(0,m.useState)(""),xe=(0,s.Z)(he,2),fe=xe[0],je=xe[1],ge=(0,m.useState)(""),Ze=(0,s.Z)(ge,2),ve=Ze[0],be=Ze[1],ye=(0,m.useState)(!1),Ne=(0,s.Z)(ye,2),we=Ne[0],ke=Ne[1],Ce=(0,m.useState)(null),_e=(0,s.Z)(Ce,2),Se=_e[0],Ee=_e[1],Ae=(0,m.useState)(""),De=(0,s.Z)(Ae,2),Pe=(De[0],De[1],m.useState(!0)),Re=(0,s.Z)(Pe,2),Fe=Re[0],Ie=Re[1],Me=m.useState(!0),Be=(0,s.Z)(Me,2),Te=Be[0],He=Be[1],Oe=m.useState(!1),ze=(0,s.Z)(Oe,2),Ue=ze[0],Ve=ze[1],We=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(){var a,r,s,i;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,t={app_id:e.data.app_id},O.get("".concat("/AppManage/AppDomainList"),t);case 3:(a=n.sent).data.Error?(me(!0),be("error"),je(a.data.Error.Message)):(r=a.data.ResponseData.Domain_set,s=r.default_domain,(i=r.domains.map((function(n){return{app_id:e.data.app_id,domainValue:n,newDomainValue:n,isEditable:!1,isFromAPI:!0,isDefaultDomain:n===s}}))).sort((function(e,n){return n.isDefaultDomain-e.isDefaultDomain})),J(i)),n.next=10;break;case 7:n.prev=7,n.t0=n.catch(0),V("/error-500");case 10:case"end":return n.stop()}var t}),n,null,[[0,7]])})));return function(){return n.apply(this,arguments)}}();(0,m.useEffect)((function(){We()}),[]);var Ge=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.isFromAPI?(ke(!0),Ee(n)):((r=(0,Q.Z)($)).splice(a,1),J(r));case 1:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}(),Le=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(a){var r,s;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=$[a].newDomainValue,ce(!0),n.prev=2,n.next=5,t={app_id:e.data.app_id,domain:r},O.get("".concat("/AppManage/AppDomainSet"),t);case 5:(s=n.sent).data.Error?(me(!0),be("error"),je(s.data.Error.Message)):(me(!0),be("success"),je("\u8bbe\u7f6e\u6210\u529f!"),We()),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),V("/error-500");case 12:return n.prev=12,ce(!1),n.finish(12);case 15:case"end":return n.stop()}var t}),n,null,[[2,9,12,15]])})));return function(e){return n.apply(this,arguments)}}(),$e=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(a,r){var s,i,o,l,c,d;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(s=document.getElementsByName("domain-".concat(r))[0],i=s.value,o=/^(?!https?:\/\/)([\da-z\.-]+\.)*([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/,!i){n.next=49;break}if(!o.test(i)){n.next=44;break}if(!a.isFromAPI){n.next=28;break}if(a.domainValue==a.newDomainValue){n.next=23;break}return ce(!0),n.prev=8,n.next=11,t={app_id:e.data.app_id,domain_old:a.domainValue,domain_new:i},O.get("".concat("/AppManage/AppDomainUpdate"),t);case 11:(l=n.sent).data.Error?(me(!0),be("error"),je(l.data.Error.Message)):(me(!0),be("success"),je("Success"),We()),n.next=18;break;case 15:n.prev=15,n.t0=n.catch(8),V("/error-500");case 18:return n.prev=18,ce(!1),n.finish(18);case 21:n.next=26;break;case 23:(c=(0,Q.Z)($))[r].isEditable=!c[r].isEditable,J(c);case 26:n.next=42;break;case 28:return n.prev=28,ce(!0),n.next=32,L({app_id:e.data.app_id,domains:i});case 32:(d=n.sent).data.Error?(me(!0),be("error"),je(d.data.Error.Message)):(me(!0),be("success"),je("Success"),We()),n.next=39;break;case 36:n.prev=36,n.t1=n.catch(28),V("/error-500");case 39:return n.prev=39,ce(!1),n.finish(39);case 42:n.next=47;break;case 44:me(!0),be("error"),je(se("Please enter the correct domain name and cannot start with http or https!"));case 47:n.next=52;break;case 49:me(!0),be("error"),je(se("Domain name cannot be empty"));case 52:case"end":return n.stop()}var t}),n,null,[[8,15,18,21],[28,36,39,42]])})));return function(e,a){return n.apply(this,arguments)}}();var Je=function(e,n){"clickaway"!==n&&(me(!1),je(""))},Ke=(0,m.useState)(!1),qe=(0,s.Z)(Ke,2);qe[0],qe[1];return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(te.Z,{children:[le&&(0,C.jsx)("div",{className:"card-disabled",style:{zIndex:999},children:(0,C.jsx)("div",{className:"card-portlets-loader"})}),(0,C.jsxs)(te.Z.Body,{children:[(0,C.jsxs)(Y.Z,{defaultExpanded:!0,onChange:function(e,n){Ie(n)},className:"mb-2",children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel1a-content",id:"panel1a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:se("Domain Access")}),(0,C.jsxs)("span",{className:"me-2 fs-6",style:{display:Fe?"inline":"none"},children:[se("Domain access for better application performance. HTTPS and custom configurations available"),(0,C.jsx)("a",{href:"/nginx",target:"_parent",children:se("More")})]})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsx)(j.Z,{className:"mb-2 align-items-center",children:(0,C.jsxs)(g.Z,{xs:12,md:12,className:"d-flex justify-content-end",children:[(0,C.jsx)(x.Z,{variant:"primary",size:"sm",className:"me-2",onClick:function(){$.length<10&&J([].concat((0,Q.Z)($),[{app_id:e.data.app_id,domainValue:"",newDomainValue:"",isEditable:!0,isFromAPI:!1,isDefaultDomain:!1}]))},children:se("Add Domain")}),(null===(n=e.data)||void 0===n||null===(a=n.config)||void 0===a?void 0:a.admin_domain_url)&&(0,C.jsx)("a",{href:null===(i=e.data)||void 0===i||null===(o=i.config)||void 0===o?void 0:o.admin_domain_url,target:"_blank",className:"me-2",children:(0,C.jsx)(x.Z,{variant:"primary",size:"sm",children:se("Admin Page")})}),(0,C.jsxs)(x.Z,{size:"sm",className:"me-2",variant:"primary",onClick:(0,r.Z)((0,t.Z)().mark((function e(){return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ce(!0),e.next=3,We();case 3:ce(!1);case 4:case"end":return e.stop()}}),e)}))),children:[" ",se("Refresh")]})]})})}),(0,C.jsx)(te.Z.Body,{children:$.map((function(e,n){return(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{xs:12,className:"d-flex justify-content-between",children:[(0,C.jsx)(g.Z,{children:(0,C.jsx)(E,{className:"mb-2 mb-md-0",type:"text",name:"domain-".concat(n),value:e.newDomainValue,disabled:!e.isEditable,onChange:function(e){return function(e,n){var a=(0,Q.Z)($);a[e].newDomainValue=n.target.value,J(a)}(n,e)}})}),(0,C.jsxs)(g.Z,{className:"col-auto ms-auto",children:[(0,C.jsx)(x.Z,{variant:"link text-danger",style:{padding:"5px"},onClick:function(){return Ge(e,n)},children:se("delete")}),e.isEditable&&e.isFromAPI&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return $e(e,n)},children:se("save")}),(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return function(e){var n=(0,Q.Z)($);n[e].newDomainValue=n[e].domainValue,n[e].isEditable=!n[e].isEditable,J(n)}(n)},children:se("cancel")})]}),e.isEditable&&!e.isFromAPI&&(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return $e(e,n)},children:se("save")}),!e.isEditable&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(x.Z,{variant:"link text-primary",style:{padding:"5px"},onClick:function(){return function(e){var n=(0,Q.Z)($);n[e].isEditable=!n[e].isEditable,J(n)}(n)},children:se("edit")}),(0,C.jsx)("a",{href:"http://"+e.domainValue,target:"_blank",children:(0,C.jsx)(x.Z,{variant:"link text-primary",style:{padding:"5px"},children:se("access")})}),e.isDefaultDomain?(0,C.jsxs)(re.Z,{className:"ms-2 bg-success",children:[" ",se("default")," "]}):(0,C.jsx)(x.Z,{variant:"link text-primary",onClick:function(){return Le(n)},children:se("set as default")})]})]})]})},n)}))})]})})})]}),(null===(c=e.data)||void 0===c||null===(d=c.config)||void 0===d?void 0:d.url)&&((null===(u=e.data)||void 0===u||null===(p=u.config)||void 0===p?void 0:p.default_domain)&&!(null!==(h=e.data)&&void 0!==h&&h.app_replace_url)||!(null!==(f=e.data)&&void 0!==f&&null!==(Z=f.config)&&void 0!==Z&&Z.default_domain))&&(0,C.jsxs)(Y.Z,{defaultExpanded:!0,onChange:function(e,n){He(n)},className:"mb-2",children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel2a-content",id:"panel2a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:"\u65e0\u57df\u540d\u8bbf\u95ee"}),(0,C.jsx)("span",{className:"me-2 fs-6",style:{display:Te?"inline":"none"},children:"\u6ca1\u6709\u57df\u540d\u53ef\u4ee5\u901a\u8fc7IP+\u7aef\u53e3\u7684\u65b9\u5f0f\u4e34\u65f6\u8bbf\u95ee\u5e94\u7528"})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsx)(te.Z,{children:(0,C.jsxs)(te.Z.Body,{children:[(null===(b=e.data)||void 0===b||null===(y=b.config)||void 0===y?void 0:y.url)&&(0,C.jsxs)("div",{children:[(0,C.jsx)("label",{className:"me-2 fs-5",children:"\u524d\u53f0:"}),(0,C.jsx)("a",{href:null===(N=e.data)||void 0===N||null===(w=N.config)||void 0===w?void 0:w.url,target:"_blank",className:"me-2",children:null===(_=e.data)||void 0===_||null===(S=_.config)||void 0===S?void 0:S.url})]}),(null===(A=e.data)||void 0===A||null===(D=A.config)||void 0===D?void 0:D.admin_url)&&(0,C.jsxs)("div",{children:[(0,C.jsx)("label",{className:"me-2 fs-5",children:"\u540e\u53f0:"}),(0,C.jsx)("a",{href:null===(P=e.data)||void 0===P||null===(R=P.config)||void 0===R?void 0:R.admin_url,target:"_blank",className:"me-2",children:null===(F=e.data)||void 0===F||null===(I=F.config)||void 0===I?void 0:I.admin_url})]})]})})})})]}),(null===(M=e.data)||void 0===M||null===(B=M.config)||void 0===B?void 0:B.admin_username)&&(0,C.jsxs)(Y.Z,{className:"mb-2",onChange:function(e,n){Ve(n)},children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel3a-content",id:"panel3a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:"\u521d\u59cb\u8d26\u53f7"}),(0,C.jsx)("span",{className:"me-2 fs-6",style:{display:Ue?"inline":"none"},children:"\u6b64\u5e94\u7528\u7a0b\u5e8f\u662f\u4f7f\u7528\u7ba1\u7406\u5458\u5e10\u6237\u9884\u5148\u8bbe\u7f6e\u7684\uff0c\u8bf7\u7acb\u5373\u66f4\u6539\u7ba1\u7406\u5458\u5bc6\u7801\u3002\u521d\u59cb\u51ed\u636e\u4e3a\uff1a"})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsx)(te.Z,{children:(0,C.jsxs)(te.Z.Body,{children:[(0,C.jsxs)(k.Z.Group,{as:j.Z,className:"mb-3",children:[(0,C.jsx)(k.Z.Label,{htmlFor:"username",column:!0,md:2,className:"fs-5",children:"UserName"}),(0,C.jsx)(g.Z,{md:4,children:(0,C.jsx)(k.Z.Control,{type:"text",name:"username",id:"username",defaultValue:null===(T=e.data)||void 0===T||null===(H=T.config)||void 0===H?void 0:H.admin_username,readOnly:!0})})]}),(0,C.jsxs)(k.Z.Group,{as:j.Z,className:"mb-3",children:[(0,C.jsx)(k.Z.Label,{htmlFor:"password",column:!0,md:2,className:"fs-5",children:"Password"}),(0,C.jsx)(g.Z,{md:4,children:(0,C.jsx)(E,{type:"password",name:"password",containerClass:"mb-3",value:null===(z=e.data)||void 0===z||null===(U=z.config)||void 0===U?void 0:U.admin_password,readOnly:!0})})]})]})})})})]})]})]}),we&&(0,C.jsx)(oe,{showConform:we,onClose:function(){ke(!1)},deleteRowData:Se,onDataChange:We}),pe&&(0,C.jsx)(l.Z,{open:pe,autoHideDuration:5e3,onClose:Je,anchorOrigin:{vertical:"top",horizontal:"center"},children:(0,C.jsx)(ie,{onClose:Je,severity:ve,sx:{width:"100%"},children:fe})})]})},ce=a(2591),de=p().gettext,ue=function(e){(0,v.s0)();var n=(0,m.useState)([]),a=(0,s.Z)(n,2),i=a[0],o=a[1],l=e.data.customer_name,c=(0,m.useState)(null),d=(0,s.Z)(c,2),u=d[0],p=d[1],h=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(){var n,a,r,s,i,c,d,u,m,h,x,f;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,n=window.localStorage.getItem("portainer.JWT2"),a=null,null!==n){e.next=17;break}return e.next=6,M.Z.get("./config.json");case 6:if(200!==(r=e.sent).status){e.next=16;break}return s=r.data.PORTAINER,i=s.PORTAINER_USERNAME,c=s.PORTAINER_PASSWORD,d=s.PORTAINER_AUTH_URL,s.PORTAINER_HOME_PAGE,e.next=12,M.Z.post(d,{username:i,password:c});case 12:200===(u=e.sent).status?(n='"'+u.data.jwt+'"',window.localStorage.setItem("portainer.JWT2",n)):console.error("Error:",u),e.next=17;break;case 16:console.error("Error:",r);case 17:return e.next=19,M.Z.get("/portainer/api/endpoints",{headers:{Authorization:"Bearer "+n.replace(/"/g,"")}});case 19:if(200!==(m=e.sent).status){e.next=36;break}if(0!=m.data.length){e.next=28;break}return e.next=24,M.Z.post("/portainer/api/endpoints",{},{params:{Name:"websoft9-local",EndpointCreationType:1},headers:{Authorization:"Bearer "+n.replace(/"/g,"")}});case 24:200===(h=e.sent).status?(a=null===(x=h.data)||void 0===x?void 0:x.Id,p(a)):console.error("Error:",h),e.next=30;break;case 28:a=m.data.find((function(e){return e.URL.includes("/var/run/docker.sock")})).Id,p(a);case 30:return e.next=32,M.Z.get("/portainer/api/endpoints/".concat(a,"/docker/containers/json"),{headers:{Authorization:"Bearer "+n.replace(/"/g,"")},params:{all:!0,filters:JSON.stringify({label:["com.docker.compose.project=".concat(l)]})}});case 32:200===(f=e.sent).status?o(f.data):console.error("Error:",f),e.next=37;break;case 36:console.error("Error:",m);case 37:e.next=42;break;case 39:e.prev=39,e.t0=e.catch(0),console.error("Error:",e.t0);case 42:case"end":return e.stop()}}),e,null,[[0,39]])})));return function(){return e.apply(this,arguments)}}();return(0,m.useEffect)((function(){h()}),[]),(0,C.jsx)(j.Z,{children:(0,C.jsx)(g.Z,{xs:12,children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsxs)(j.Z,{className:"align-items-center",children:[(0,C.jsxs)(g.Z,{xs:12,md:10,children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:de("Container")}),(0,C.jsxs)("span",{className:"me-2 fs-6",children:["\u672c\u5e94\u7528\u7531\u5982\u4e0b\u5bb9\u5668\u7ec4\u6210\uff0c\u540d\u79f0\u4e3a ",l," \u7684\u4e3a\u4e3b\u5bb9\u5668 "]})]}),(0,C.jsx)(g.Z,{xs:12,md:2,children:(0,C.jsx)("a",{href:"/portainer/#!/".concat(u,"/docker/stacks/").concat(l,"?type=2®ular=false&external=true&orphaned=false"),target:"_blank",className:"me-2",children:(0,C.jsx)(x.Z,{variant:"primary",size:"sm",className:"float-end",children:de("More")})})})]})}),(0,C.jsx)(te.Z.Body,{children:(0,C.jsxs)(ce.Z,{className:"mb-0",children:[(0,C.jsx)("thead",{children:(0,C.jsxs)("tr",{children:[(0,C.jsx)("th",{children:"Name"}),(0,C.jsx)("th",{children:"State"}),(0,C.jsx)("th",{style:{textAlign:"center"},children:"Actions"}),(0,C.jsx)("th",{children:"Image"}),(0,C.jsx)("th",{children:"Created"}),(0,C.jsx)("th",{children:"Ip Address"}),(0,C.jsx)("th",{children:"Published Ports"})]})}),(0,C.jsx)("tbody",{children:i.map((function(e,n){var a,t,r,s;return(0,C.jsxs)("tr",{children:[(0,C.jsx)("td",{children:null===(a=e.Names)||void 0===a||null===(t=a[0])||void 0===t?void 0:t.replace(/^\/|\/$/g,"")}),(0,C.jsx)("td",{children:(0,C.jsx)(re.Z,{className:"".concat("running"===e.State?"bg-success":"exited"===e.State?"bg-danger":"info"),children:e.State})}),(0,C.jsxs)("td",{style:{textAlign:"center"},children:[(0,C.jsxs)("a",{href:"/portainer/#!/".concat(u,"/docker/containers/").concat(e.Id,"/logs"),target:"_blank",title:"Logs",children:[(0,C.jsx)("i",{className:"dripicons-document-remove noti-icon"})," "]}),"running"===e.State&&(0,C.jsxs)("a",{href:"/portainer/#!/".concat(u,"/docker/containers/").concat(e.Id,"/stats"),target:"_blank",title:"Stats",children:[(0,C.jsx)("i",{className:"dripicons-pulse noti-icon"})," "]})]}),(0,C.jsx)("td",{children:e.Image}),(0,C.jsx)("td",{children:new Date(1e3*e.Created).toLocaleString()}),(0,C.jsx)("td",{children:e.NetworkSettings.Networks[e.HostConfig.NetworkMode].IPAddress}),(0,C.jsxs)("td",{children:[null===(r=e.Ports.find((function(e){return e.IP&&/^(\d{1,3}\.){3}\d{1,3}$/.test(e.IP)})))||void 0===r?void 0:r.PublicPort,":",null===(s=e.Ports.find((function(e){return e.IP&&/^(\d{1,3}\.){3}\d{1,3}$/.test(e.IP)})))||void 0===s?void 0:s.PrivatePort]})]},n)}))})]})})]})})})},pe=p().gettext,me=function(e){var n,a,t,r,s,i,o;return(0,C.jsx)(j.Z,{children:(0,C.jsx)(g.Z,{xs:12,children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:pe("App Overview")})}),(0,C.jsx)(te.Z.Body,{children:(0,C.jsx)(ce.Z,{responsive:!0,className:"mb-0",bordered:!1,style:{display:"flex"},children:(0,C.jsxs)("tbody",{children:[(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Name"),":"]}),(0,C.jsx)("td",{children:null===(n=e.data)||void 0===n?void 0:n.app_name})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Version"),":"]}),(0,C.jsx)("td",{children:null===(a=e.data)||void 0===a?void 0:a.app_version})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Port"),":"]}),(0,C.jsx)("td",{children:null===(t=e.data)||void 0===t||null===(r=t.config)||void 0===r?void 0:r.port})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Created Time"),":"]}),(0,C.jsx)("td",{children:null===(s=e.data)||void 0===s?void 0:s.create_time})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Config Path"),":"]}),(0,C.jsx)("td",{children:null===(i=e.data)||void 0===i?void 0:i.config_path})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Data Path"),":"]}),(0,C.jsx)("td",{children:null===(o=e.data)||void 0===o?void 0:o.volume_data})]})]})})})]})})})},he=p().gettext,xe=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",style:{backgroundColor:"rgba(0,0,0,0.8)"},children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsxs)("h4",{children:[he("Uninstall")," ",e.app.customer_name]})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[he("This will immediately uninstall")," ",e.app.customer_name," ",he("and remove all its data.")]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:he("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,U({app_id:e.app.app_id});case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(e.onClose(),e.onCloseFatherModal(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:case"end":return a.stop()}}),a,null,[[0,8]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Uninstall")]})]})]})},fe=(0,m.forwardRef)((function(e,n){var a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),d=(0,s.Z)(c,2),u=d[0],p=d[1],h=(0,v.s0)(),f=function(){p(!0)},Z=function(){p(!1)};return(0,m.useImperativeHandle)(n,(function(){return{setButtonDisable:f,setButtonEnable:Z}})),(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{sm:12,children:[(0,C.jsx)("label",{className:"me-1",style:{fontWeight:"bolder",marginBottom:"5px"},children:he("Start / Stop")}),(0,C.jsx)("p",{children:he("Apps can be stopped to conserve server resources instead of uninstalling.")}),"running"===e.data.status?(0,C.jsxs)(x.Z,{variant:"secondary",className:"float-end",disabled:u,onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,e.disabledButton(),p(!0),n.next=5,V({app_id:e.data.app_id});case 5:n.sent.data.Error?h("/error"):e.onDataChange(e.data.app_id),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(0),h("/error-500");case 12:return n.prev=12,p(!1),e.enableButton(),n.finish(12);case 16:case"end":return n.stop()}}),n,null,[[0,9,12,16]])}))),children:[u&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Stop")]}):(0,C.jsxs)(x.Z,{variant:"primary",className:"float-end",disabled:u,onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e.disabledButton(),p(!0),n.prev=2,n.next=5,W({app_id:e.data.app_id});case 5:n.sent.data.Error?h("/error"):e.onDataChange(e.data.app_id),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),h("/error-500");case 12:return n.prev=12,e.enableButton(),p(!1),n.finish(12);case 16:case"end":return n.stop()}}),n,null,[[2,9,12,16]])}))),children:[u&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Start")]})]})}),(0,C.jsx)("hr",{}),(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{sm:12,children:[(0,C.jsx)("label",{className:"me-1",style:{fontWeight:"bolder",marginBottom:"5px"},children:he("Uninstall")}),(0,C.jsx)("p",{children:he("This will uninstall the app immediately and remove all its data.The app will be inaccessible.")}),(0,C.jsx)(x.Z,{variant:"warning",className:"float-end",onClick:function(){l(!0)},children:he("Uninstall")})]})}),o&&(0,C.jsx)(xe,{showConform:o,onClose:function(){l(!1)},app:e.data,onDataChange:e.onDataChange,onCloseFatherModal:e.onCloseFatherModal})]})})),je=p().gettext,ge=function(e){var n=(0,m.useState)(!1),a=(0,s.Z)(n,2),i=a[0],o=a[1],l=(0,m.useState)(!1),c=(0,s.Z)(l,2),u=c[0],p=c[1],f=(0,m.useState)(e.current_app),Z=(0,s.Z)(f,2),N=Z[0],w=Z[1],k=(0,m.useState)(!1),_=(0,s.Z)(k,2),S=_[0],E=_[1],A=(0,m.useState)(!1),D=(0,s.Z)(A,2),P=D[0],F=D[1],I=(0,m.useState)(!1),M=(0,s.Z)(I,2),B=M[0],T=M[1],H=(0,v.s0)(),O=(0,m.useRef)(),z=function(){O.current.setButtonDisable()},U=function(){O.current.setButtonEnable()};(0,m.useEffect)((function(){w(e.current_app)}),[e.current_app]);var L=[{id:"1",title:je("Overview"),icon:"mdi dripicons-home",text:(0,C.jsx)(me,{data:N})},{id:"2",title:je("Access"),icon:"mdi dripicons-web",text:(0,C.jsx)(le,{data:N})},{id:"3",title:je("Container"),icon:"mdi dripicons-stack",text:(0,C.jsx)(ue,{data:N})},{id:"4",title:je("Uninstall"),icon:"mdi mdi-cog-outline",text:(0,C.jsx)(fe,{data:N,ref:O,disabledButton:function(){p(!0),o(!0)},enableButton:function(){p(!1),o(!1)},onDataChange:e.onDataChange,onCloseFatherModal:e.onClose})}];return N&&(0,C.jsxs)(h.Z,{show:e.showFlag,backdrop:"static",onHide:e.onClose,size:"lg",scrollable:"true",dialogClassName:"modal-full-width",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,children:(0,C.jsxs)("div",{style:{padding:"10px",display:"flex",width:"100%",alignItems:"center"},children:[(0,C.jsx)("div",{className:"appstore-item-content-icon col-same-height",children:(0,C.jsx)("img",{src:N.image_url,alt:"",className:"app-icon",onError:function(e){return e.target.src=y}})}),(0,C.jsxs)("div",{className:"col-same-height",children:[(0,C.jsx)("h4",{className:"appstore-item-content-title",style:{marginTop:"5px"},children:N.customer_name}),(0,C.jsx)("h5",{className:"appstore-item-content-title",style:{marginTop:"5px"},children:N.status})]}),(0,C.jsxs)("div",{className:"col-same-height",style:{flexGrow:1,display:"flex",justifyContent:"flex-end",alignItems:"center"},children:["exited"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Start App")}),children:(0,C.jsx)(x.Z,{variant:"primary",disabled:u,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return z(),E(!0),o(!0),n.prev=3,n.next=6,W({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(3),H("/error-500");case 13:return n.prev=13,U(),E(!1),o(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[3,10,13,18]])}))),children:S?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-media-play noti-icon"})})},"bottom1"),"running"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Stop App")}),children:(0,C.jsx)(x.Z,{variant:"primary",disabled:u,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return z(),F(!0),o(!0),n.prev=3,n.next=6,V({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(3),H("/error-500");case 13:return n.prev=13,U(),F(!1),o(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[3,10,13,18]])}))),children:P?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-power noti-icon"})})},"bottom2"),(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Restart App")}),children:(0,C.jsx)(x.Z,{disabled:i,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,z(),T(!0),p(!0),n.next=6,G({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(0),H("/error-500");case 13:return n.prev=13,U(),T(!1),p(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[0,10,13,18]])}))),children:B?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-clockwise noti-icon"})})},"bottom3"),"running"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Terminal")}),children:(0,C.jsxs)(b.rU,{to:{pathname:"/terminal",search:"?id=".concat(N.customer_name)},style:{color:"#fff",backgroundColor:"#727cf5",padding:"5px 10px",borderRadius:"3px",borderColor:"#727cf5",marginRight:"10px"},target:"_blank",children:[(0,C.jsx)("i",{className:"dripicons-code noti-icon"})," "]})},"bottom4"),(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Documentation")}),children:(0,C.jsxs)("a",{href:"https://support.websoft9.com/docs/"+N.app_name,style:{color:"#fff",backgroundColor:"#727cf5",padding:"5px 10px",borderRadius:"3px",borderColor:"#727cf5",marginRight:"10px"},target:"_blank",children:[(0,C.jsx)("i",{className:"dripicons-document noti-icon"})," "]})},"bottom5")]})]})}),(0,C.jsx)(h.Z.Body,{className:"row",children:(0,C.jsxs)(K.Z.Container,{defaultActiveKey:je("Overview"),children:[(0,C.jsx)(g.Z,{sm:2,className:"mb-2 mb-sm-0",children:(0,C.jsx)(q.Z,{variant:"pills",className:"flex-column",children:L.map((function(e,n){var a=function(){return(0,C.jsx)(q.Z.Item,{children:(0,C.jsxs)(q.Z.Link,{as:b.rU,to:"#",eventKey:e.title,children:[(0,C.jsx)("i",{className:d()(e.icon,"d-md-none","d-block","me-1")}),(0,C.jsx)("span",{className:"d-none d-md-block",children:e.title})]})},n)};return"Terminal"!==e.title||"running"===N.status?a():void 0}))})}),(0,C.jsx)(g.Z,{sm:10,children:(0,C.jsx)(K.Z.Content,{style:{height:"100%"},children:L.map((function(e,n){return(0,C.jsx)(K.Z.Pane,{eventKey:e.title,id:e.id,style:{height:"100%"},children:(0,C.jsx)(j.Z,{style:{height:"100%"},children:(0,C.jsx)(g.Z,{sm:"12",style:{height:"Terminal"===e.title?"600px":""},children:e.text})})},n)}))})})]})})]})},Ze=p().gettext,ve=m.forwardRef((function(e,n){return(0,C.jsx)(o.Z,(0,i.Z)({elevation:6,ref:n,variant:"filled"},e))})),be=function(e){return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,className:d()("modal-colored-header","bg-danger"),children:(0,C.jsxs)("h4",{children:[Ze("This is the error message for")," ",e.app.customer_name]})}),(0,C.jsx)(h.Z.Body,{className:"row",children:e.app.status_reason&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Code: ")}),e.app.status_reason.Code," "]}),(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Message: ")}),e.app.status_reason.Message," "]}),(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Detail: ")}),e.app.status_reason.Detail," "]})]})}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:Ze("Close")}),(0,C.jsx)(x.Z,{variant:"light",onClick:function(){return window.open("https://www.websoft9.com/ticket","_blank")},children:Ze("Support")})]})]})},ye=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsxs)("h4",{children:[Ze("Remove")," ",e.app.customer_name]})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[Ze("This will immediately remove")," ",e.app.customer_name," ",Ze("and remove all its data.")]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:Ze("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,U({app_id:e.app.app_id});case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(e.onClose(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:case"end":return a.stop()}}),a,null,[[0,8]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",Ze("Remove")]})]})]})},Ne=function(){var e,n=(0,m.useState)(!1),a=(0,s.Z)(n,2),i=a[0],o=a[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],h=u[1],f=(0,m.useState)(!1),N=(0,s.Z)(f,2),w=N[0],k=N[1],_=(0,m.useState)(!1),S=(0,s.Z)(_,2),A=(S[0],S[1],(0,m.useState)(!1)),D=(0,s.Z)(A,2),P=D[0],F=D[1],I=(0,m.useState)(!1),M=(0,s.Z)(I,2),B=M[0],T=M[1],H=(0,m.useState)(""),O=(0,s.Z)(H,2),L=O[0],$=O[1],J=(0,m.useState)(""),K=(0,s.Z)(J,2),q=K[0],Q=K[1],X=(0,m.useState)(null),Y=(0,s.Z)(X,2),ee=Y[0],ne=Y[1],ae=(0,m.useState)([]),te=(0,s.Z)(ae,2),re=te[0],se=te[1],ie=(0,m.useState)([]),oe=(0,s.Z)(ie,2),le=(oe[0],oe[1],(0,m.useState)("")),ce=(0,s.Z)(le,2),de=ce[0],ue=ce[1],pe=(0,m.useState)("all"),me=(0,s.Z)(pe,2),he=me[0],xe=me[1],fe=(0,m.useState)([]),je=(0,s.Z)(fe,2),Ne=(je[0],je[1],(0,m.useRef)(ee)),we=(0,v.s0)(),ke=(0,m.useState)(0),Ce=(0,s.Z)(ke,2),_e=Ce[0],Se=Ce[1],Ee=(0,m.useState)(null),Ae=(0,s.Z)(Ee,2),De=Ae[0],Pe=Ae[1],Re=(0,m.useState)(null),Fe=(0,s.Z)(Re,2),Ie=(Fe[0],Fe[1]),Me=(0,m.useState)(!1),Be=(0,s.Z)(Me,2),Te=Be[0],He=Be[1],Oe=function(){z().then((function(e){if(e.data.Error)Se(e.data.Error.Code),Pe(e.data.Error.Message),Ie(e.data.Error.Details);else{var n=e.data.ResponseData;if(se(n),Ne.current){var a=n.find((function(e){return e.app_id===Ne.current.app_id}));ne(a)}}He(!1)})).catch((function(e){v.Fg}))};if((0,m.useEffect)((function(){Oe()}),[]),(0,m.useEffect)((function(){He(!0),e=setInterval((function(){z().then((function(e){if(e.data.Error)Se(e.data.Error.Code),Pe(e.data.Error.Message),Ie(e.data.Error.Details);else{var n=e.data.ResponseData;if(se(n),Ne.current){var a=n.find((function(e){return e.app_id===Ne.current.app_id}));ne(a)}}He(!1)})).catch((function(e){v.Fg}))}),5e3)}),[]),(0,m.useEffect)((function(){Ne.current=ee}),[ee]),(0,m.useEffect)((function(){return function(){return clearInterval(e)}}),[]),Te)return(0,C.jsx)(R,{className:"dis_mid"});if(_e)return(0,C.jsxs)("p",{children:["Code : $",_e," "]});if(De)return(0,C.jsxs)("p",{children:["Error : $",De," "]});var ze=function(e,n){"clickaway"!==n&&(T(!1),$(""))},Ue=function(){Oe()},Ve={Stop:{api:V},Start:{api:W},Restart:{api:G},Uninstall:{api:U}},We=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Uninstall"!==n){e.next=4;break}return ne(a),h(!0),e.abrupt("return");case 4:return F(!0),e.prev=5,e.next=8,Ve[n].api({app_id:a.app_id});case 8:(r=e.sent).data.Error?(T(!0),Q("error"),$(r.data.Error.Message)):(T(!0),Q("success"),$("\u6267\u884c\u6210\u529f"),Ue()),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(5),we("/error-500");case 15:return e.prev=15,F(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[5,12,15,18]])})));return function(n,a){return e.apply(this,arguments)}}();return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(j.Z,{className:"mb-2 align-items-center",children:[(0,C.jsx)(g.Z,{xs:12,sm:6,md:3,lg:2,children:(0,C.jsx)("span",{style:{fontSize:"28px"},children:Ze("My Apps")})}),(0,C.jsx)(g.Z,{xs:12,sm:6,md:3,lg:2,children:(0,C.jsxs)(E,{value:he,name:"select",type:"select",className:"form-select",onChange:function(e){return function(e){xe(e)}(e.target.value)},children:[(0,C.jsx)("option",{value:"all",children:Ze("All States")}),(0,C.jsx)("option",{value:"installing",children:"installing"}),(0,C.jsx)("option",{value:"running",children:"running"}),(0,C.jsx)("option",{value:"exited",children:"exited"}),(0,C.jsx)("option",{value:"restarting",children:"restarting"}),(0,C.jsx)("option",{value:"failed",children:"failed"})]},"select")}),(0,C.jsx)(g.Z,{xs:12,sm:12,md:6,lg:7,children:(0,C.jsx)(E,{type:"text",name:"search",placeholder:Ze("Search for apps like WordPress, Dropbox, Slack, Trello, \u2026"),onChange:function(e){return function(e){ue(e)}(e.target.value)}})}),(0,C.jsx)(g.Z,{xs:12,sm:12,md:12,lg:1,children:(0,C.jsx)(x.Z,{variant:"primary",className:"float-end",onClick:function(){window.location.reload(!1)},children:Ze("Refresh")})})]}),[!0,!1].map((function(e){var n=re.filter((function(e){return"all"===he||e.status===he})).filter((function(n){return n.official_app===e})).filter((function(e){return e.customer_name.includes(de)}));return n.length>0?(0,C.jsxs)(j.Z,{children:[(0,C.jsx)("h4",{style:e?{}:{paddingTop:"10px"},children:Ze(e?"Websoft9's Apps":"Other Apps")}),n.map((function(n,a){return(0,C.jsx)(g.Z,{xxl:2,md:3,className:"appstore-item",children:(0,C.jsxs)("div",{className:"appstore-item-content highlight text-align-center",children:[!e&&("running"===n.status||"exited"===n.status)&&(0,C.jsxs)(Z.Z,{className:"float-end",children:[(0,C.jsx)(Z.Z.Toggle,{as:b.rU,to:"#",className:"arrow-none card-drop",children:P?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon"}):(0,C.jsx)("i",{className:"dripicons-gear noti-icon"})}),(0,C.jsx)(Z.Z.Menu,{align:"end",children:(t=n.status,[{label:"Stop",icon:"dripicons-power noti-icon",condition:"running"===t},{label:"Start",icon:"dripicons-media-play noti-icon",condition:"exited"===t},{label:"Restart",icon:"dripicons-clockwise noti-icon",condition:"running"===t||"exited"===t},{label:"Uninstall",icon:"dripicons-trash noti-icon",variant:"text-danger",hasDivider:!0,condition:!0}]||[]).map((function(e,a){return(0,C.jsxs)(m.Fragment,{children:[e.condition&&e.hasDivider&&(0,C.jsx)(Z.Z.Divider,{as:"div"}),e.condition&&(0,C.jsxs)(Z.Z.Item,{className:d()(e.variant?e.variant:""),onClick:function(){return We(e.label,n)},children:[e.icon&&(0,C.jsx)("i",{className:d()(e.icon,"me-1")}),e.label]})]},a)}))})]}),e&&("running"===n.status||"exited"===n.status)&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("div",{className:"float-end arrow-none card-drop p-0",onClick:function(){!function(e){ne(e),o(!0)}(n)},children:(0,C.jsx)("i",{className:"dripicons-gear noti-icon"})}),(0,C.jsx)("div",{className:"clearfix"})]}),e&&"installing"===n.status&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("div",{className:"float-end arrow-none card-drop p-0",children:(0,C.jsx)("i",{className:"dripicons-empty noti-icon"})}),(0,C.jsx)("div",{className:"clearfix"})]}),"failed"===n.status&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{className:"float-end arrow-none card-drop p-0",children:[(0,C.jsx)("i",{className:"dripicons-information noti-icon",style:{paddingRight:"10px"},onClick:function(){!function(e){ne(e),k(!0)}(n)}}),(0,C.jsx)("i",{className:"dripicons-trash noti-icon",onClick:function(){!function(e){ne(e),h(!0)}(n)}})]}),(0,C.jsx)("div",{className:"clearfix"})]}),(0,C.jsx)("div",{children:(0,C.jsx)("img",{src:n.image_url,alt:n.app_name,className:"app-icon",style:{margin:"20px 10px 20px 10px"},onError:function(e){return e.target.src=y}})}),(0,C.jsxs)("div",{children:[(0,C.jsx)("h3",{className:"appstore-item-content-title",style:{color:"#2196f3"},children:n.customer_name}),(0,C.jsxs)("div",{style:{color:"failed"===n.status?"red":"inherit",display:"flex",alignItems:"center",justifyContent:"center"},children:[n.status&&"installing"===n.status&&(0,C.jsx)(R,{className:"spinner-border-sm m-2"})," ",(0,C.jsx)("div",{className:"m-2",children:n.status})]})]})]})},n.app_id+a);var t}))]}):null})),i&&(0,C.jsx)(ge,{current_app:ee,showFlag:i,onClose:function(){o(!1),ne(null)},onDataChange:Ue}),p&&(0,C.jsx)(ye,{showConform:p,onClose:function(){h(!1)},app:ee,onDataChange:Ue}),w&&(0,C.jsx)(be,{showConform:w,onClose:function(){k(!1)},app:ee}),B&&(0,C.jsx)(l.Z,{open:B,autoHideDuration:5e3,onClose:ze,anchorOrigin:{vertical:"top",horizontal:"center"},children:(0,C.jsx)(ve,{onClose:ze,severity:q,sx:{width:"100%"},children:L})})]})}}}]); +//# sourceMappingURL=145.13333720.chunk.js.map \ No newline at end of file diff --git a/cockpit/myapps/build/static/js/145.13333720.chunk.js.map b/cockpit/myapps/build/static/js/145.13333720.chunk.js.map new file mode 100644 index 00000000..be8bb1eb --- /dev/null +++ b/cockpit/myapps/build/static/js/145.13333720.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/145.13333720.chunk.js","mappings":"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","sources":["components/FormInput.js","components/Spinner.js","helpers/api/apiCore.js","helpers/api/appManager.js","pages/appdetailtabs/appaccess.js","pages/appdetailtabs/appcontainer.js","pages/appdetailtabs/appoverview.js","pages/appdetailtabs/appuninstall.js","pages/appdetail.js","pages/myapps.js"],"sourcesContent":["// @flow\nimport classNames from 'classnames';\nimport React, { useState } from 'react';\nimport { Form, InputGroup } from 'react-bootstrap';\n\n/* Password Input */\nconst PasswordInput = ({ name, placeholder, refCallback, errors, register, className, value, readOnly }) => {\n const [showPassword, setShowPassword] = useState(false);\n\n return (\n <>\n \n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n autoComplete={name}\n defaultValue={value}\n readOnly={readOnly}\n />\n \n {\n setShowPassword(!showPassword);\n }}>\n \n \n \n );\n};\n\ntype FormInputProps = {\n label?: string,\n type?: string,\n name?: string,\n value?: string,\n placeholder?: string,\n register?: any,\n errors?: any,\n className?: string,\n labelClassName?: string,\n containerClass?: string,\n refCallback?: any,\n children?: any,\n};\n\nconst FormInput = ({\n label,\n type,\n name,\n value,\n readOnly,\n placeholder,\n register,\n errors,\n className,\n labelClassName,\n containerClass,\n refCallback,\n children,\n ...otherProps\n}: FormInputProps): React$Element => {\n // handle input type\n const comp = type === 'textarea' ? 'textarea' : type === 'select' ? 'select' : 'input';\n\n return (\n <>\n {type === 'hidden' ? (\n \n ) : (\n <>\n {type === 'password' ? (\n <>\n \n {label ? (\n <>\n {' '}\n {label} {children}{' '}\n \n ) : null}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n <>\n {type === 'select' ? (\n <>\n \n {label ? {label} : null}\n\n {\n if (refCallback) refCallback(r);\n }}\n comp={comp}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}>\n {children}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n <>\n {type === 'checkbox' || type === 'radio' ? (\n <>\n \n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}\n />\n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n \n {label ? {label} : null}\n\n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}\n autoComplete={name}>\n {children ? children : null}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n )}\n \n )}\n \n )}\n \n )}\n \n );\n};\n\nexport default FormInput;\n","// @flow\nimport React from 'react';\nimport classNames from 'classnames';\n\ntype SpinnerProps = {\n tag?: string,\n className?: string,\n size?: 'lg' | 'md' | 'sm',\n type?: 'bordered' | 'grow',\n color?: string,\n children?: any,\n};\n\n/**\n * Spinner\n */\nconst Spinner = (props: SpinnerProps): React$Element => {\n const children = props.children || null;\n const Tag = props.tag || 'div';\n const color = props.color || 'secondary';\n const size = props.size || '';\n\n return (\n \n {children}\n \n );\n};\n\nSpinner.defaultProps = {\n tag: 'div',\n type: 'bordered',\n};\n\nexport default Spinner;\n","import axios from 'axios';\nimport { Navigate } from \"react-router-dom\";\n\n// 定义一个全局变量来存储 config.json 的内容\nlet credentials;\n\nasync function getCredentials() {\n // 如果 credentials 不存在,就从 config.json 中获取它\n if (!credentials) {\n const response = await fetch('./config.json');\n const data = await response.json();\n const userName = data.APPMANAGE.APPMANAGE_USERNAME;\n const uerPassword = data.APPMANAGE.APPMANAGE_PASSWORD;\n credentials = btoa(userName + \":\" + uerPassword);\n }\n // 返回 credentials\n return credentials;\n}\n\n// 设置 axios 的默认配置\naxios.defaults.headers.post['Content-Type'] = 'application/json';\naxios.defaults.headers.get['Content-Type'] = 'application/json';\naxios.defaults.headers.common['Cache-Control'] = 'no-cache';\naxios.defaults.headers.common['Pragma'] = 'no-cache';\naxios.defaults.headers.common['Expires'] = '0';\n\n// 拦截响应以捕获错误\naxios.interceptors.response.use(\n (response) => {\n return response;\n },\n (error) => {\n // 任何不在 2xx 范围内的状态码都会触发这个函数\n let message;\n\n if (error && error.response && error.response.status === 404) {\n \n } else if (error && error.response && error.response.status === 500) {\n \n } else {\n message = error.response && error.response.data ? error.response.data['message'] : error.message || error;\n return Promise.reject(message);\n }\n }\n);\n\nclass APICore {\n /**\n * Fetches data from given url\n */\n get = async (url, params) => {\n // 等待获取凭证并设置授权头\n axios.defaults.headers.common['Authorization'] = 'Basic ' + await getCredentials();\n let response;\n if (params) {\n var queryString = params\n ? Object.keys(params)\n .map((key) => key + '=' + params[key])\n .join('&')\n : '';\n response = axios.get(`${url}?${queryString}`, params);\n } else {\n response = axios.get(`${url}`, params);\n }\n return response;\n };\n\n /**\n * post given data to url\n */\n create = async (url, data) => {\n // 等待获取凭证并设置授权头\n axios.defaults.headers.common['Authorization'] = 'Basic ' + await getCredentials();\n return axios.post(url, data);\n };\n}\n\nexport { APICore };\n","import { APICore } from './apiCore';\n\nconst api = new APICore();\n\n//App 安装\nfunction AppInstall(params: any): Promise {\n const baseUrl = '/AppManage/AppInstall';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 列表查询\nfunction AppList(params: any): Promise {\n const baseUrl = '/AppManage/AppList';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 卸载\nfunction AppUninstall(params: any): Promise {\n const baseUrl = '/AppManage/AppUninstall';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 停止\nfunction AppStop(params: any): Promise {\n const baseUrl = '/AppManage/AppStop';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 启动\nfunction AppStart(params: any): Promise {\n const baseUrl = '/AppManage/AppStart';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 重启\nfunction AppRestart(params: any): Promise {\n const baseUrl = '/AppManage/AppRestart';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 状态查询\nfunction AppStatus(params: any): Promise {\n const baseUrl = '/AppManage/AppStatus';\n return api.get(`${baseUrl}`, params);\n}\n\n//查询APP对应的域名\nfunction AppDomainList(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainList';\n return api.get(`${baseUrl}`, params);\n}\n\n//删除APP绑定的域名\nfunction AppDomainDelete(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainDelete';\n return api.get(`${baseUrl}`, params);\n}\n\n//修改APP绑定的域名\nfunction AppDomainUpdate(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainUpdate';\n return api.get(`${baseUrl}`, params);\n}\n\n//APP绑定域名\nfunction AppDomainAdd(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainAdd';\n return api.get(`${baseUrl}`, params);\n}\n\n//设定默认域名\nfunction AppDomainSet(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainSet';\n return api.get(`${baseUrl}`, params);\n}\n\nexport { AppInstall, AppList, AppUninstall, AppStop, AppStart, AppRestart, AppStatus, AppDomainList, AppDomainDelete, AppDomainUpdate, AppDomainAdd, AppDomainSet };\n\n","import ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport MuiAlert from '@mui/material/Alert';\nimport Snackbar from '@mui/material/Snackbar';\nimport Typography from '@mui/material/Typography';\nimport classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport { default as React, useEffect, useState } from 'react';\nimport { Alert, Badge, Button, Card, Col, Form, Modal, Row } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\nimport FormInput from '../../components/FormInput';\nimport Spinner from '../../components/Spinner';\nimport { AppDomainAdd, AppDomainDelete, AppDomainList, AppDomainSet, AppDomainUpdate } from '../../helpers';\n\nconst _ = cockpit.gettext;\n\nconst MyMuiAlert = React.forwardRef(function Alert(props, ref) {\n return ;\n});\n\n//删除绑定的域名\nconst RemoveDomain = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭所有弹窗\n props.onClose();\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Delete domain binding\")}

\n
\n \n {_(\"Are you sure you want to delete the domain for:\")} {props.deleteRowData.domainValue} ? \n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\nconst AppAccess = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [domains, setDomains] = useState([]); // 定义域名数组\n const [loading, setLoading] = useState(false); // 定义执行操作时的加载转态\n\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\"); //用于显示错误提示消息\n const [alertType, setAlertType] = useState(\"\"); //用于确定弹窗的类型:error\\success\n const [showRemoveDomain, setShowRemoveDomain] = useState(false); //用于显示状态为failed时显示确定删除的弹窗\n const [deleteRowData, setDeleteRowData] = useState(null); //用于保存将要删除的行数据\n const [inputDomainValue, setInputDomainValue] = useState(\"\");//用户保存用户输入的域名\n\n const [isExpandedForDomain, setIsExpandedForDomain] = React.useState(true); //用于保存“域名绑定”的折叠状态\n const [isExpandedForNoDomain, setIsExpandedForNoDomain] = React.useState(true);//用于保存“无域名访问”的折叠状态\n const [isExpandedForAccount, setIsExpandedForAccount] = React.useState(false);//用于保存“无域名访问”的折叠状态\n\n const getDomains = async () => {\n try {\n const response = await AppDomainList({ app_id: props.data.app_id });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n let responseData = response.data.ResponseData.Domain_set;\n let defaultdomain = responseData.default_domain; //获取返回的默认域名数据\n\n let resturnDomains = responseData.domains.map(domain => {\n return {\n app_id: props.data.app_id,\n domainValue: domain,\n newDomainValue: domain,\n isEditable: false,\n isFromAPI: true,\n isDefaultDomain: domain === defaultdomain ? true : false\n };\n });\n //排序:将默认域名放前面\n resturnDomains.sort((a, b) => {\n return b.isDefaultDomain - a.isDefaultDomain;\n });\n setDomains(resturnDomains);\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n }\n\n useEffect(() => {\n getDomains();\n }, []);\n\n //添加域名\n const addRow = () => {\n if (domains.length < 10) {\n // 限制最多只能有10个domain\n setDomains([\n ...domains,\n {\n app_id: props.data.app_id,\n domainValue: \"\",\n newDomainValue: \"\",\n isEditable: true,\n isFromAPI: false,\n isDefaultDomain: false\n },\n ]);\n }\n }\n\n //删除域名\n const deleteRow = async (row, index) => {\n if (!row.isFromAPI) { //如果是点“添加”产生的记录行,则直接删除,不需要调用接口\n const newRows = [...domains]; // 复制状态数组\n newRows.splice(index, 1); // 删除指定索引的对象\n setDomains(newRows); // 更新状态数组\n }\n else { //表示记录是从接口获取的,删除时需要调用接口删除\n setShowRemoveDomain(true);\n setDeleteRowData(row);\n }\n }\n\n //编辑\n const editRow = (index) => {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n\n //取消编辑\n const cancelEditRow = (index) => {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].newDomainValue = newRows[index].domainValue; // 用户有修改但是取消编辑,需要将数据还原\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n\n //设为默认域名\n const setDefaultDomain = async (index) => {\n const defaultDomain = domains[index].newDomainValue; //获取域名\n setLoading(true);\n try { //调用设定默认域名接口\n const response = await AppDomainSet({ app_id: props.data.app_id, domain: defaultDomain });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"设置成功!\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n\n //保存\n const saveRow = async (row, index) => {\n const input = document.getElementsByName(`domain-${index}`)[0]; // 获取搜索框元素\n const value = input.value; // 获取搜索框的值\n const regex = /^(?!https?:\\/\\/)([\\da-z\\.-]+\\.)*([\\da-z\\.-]+)\\.([a-z\\.]{2,6})([\\/\\w \\.-]*)*\\/?$/; // 定义一个正则表达式,用来验证域名的格式\n if (value) {\n if (regex.test(value)) {\n if (row.isFromAPI) { //如果取到isFromAPI为true,表示要修改数据\n if (row.domainValue != row.newDomainValue) { //如果修改前的数据不等于修改后的数据,则调用修改接口\n setLoading(true);\n try {\n const response = await AppDomainUpdate({ app_id: props.data.app_id, domain_old: row.domainValue, domain_new: value });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"Success\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n else {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n }\n else { //如果取到isFromAPI为false,表示是绑定数据 \n try {\n setLoading(true);\n const response = await AppDomainAdd({ app_id: props.data.app_id, domains: value });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"Success\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n } else {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(_(\"Please enter the correct domain name and cannot start with http or https!\"));\n }\n }\n else {\n // 如果搜索框的值为空\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(_(\"Domain name cannot be empty\"));\n }\n }\n\n //处理输入\n function handleChange(index, e) {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].newDomainValue = e.target.value; // 修改inputValue属性\n setDomains(newRows); // 更新状态数组\n }\n\n const handleAlertClose = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setShowAlert(false);\n setAlertMessage(\"\");\n };\n\n //用于取消删除域名弹窗\n const cancelRemoveDomain = () => {\n setShowRemoveDomain(false);\n };\n\n const [isOpen, setIsOpen] = useState(false);\n const toggle = () => setIsOpen(!isOpen);\n\n const handleChangefordomin = (event, newExpanded) => {\n setIsExpandedForDomain(newExpanded);\n };\n\n const handleChangefornodomin = (event, newExpanded) => {\n setIsExpandedForNoDomain(newExpanded);\n };\n\n const handleChangeforaccount = (event, newExpanded) => {\n setIsExpandedForAccount(newExpanded);\n };\n\n return (\n <>\n \n {loading && (\n
\n
\n
\n )}\n \n \n }\n aria-controls=\"panel1a-content\"\n id=\"panel1a-header\"\n >\n \n \n \n {_(\"Domain access for better application performance. HTTPS and custom configurations available\")}\n \n {_(\"More\")}\n \n \n \n \n \n \n \n \n \n \n \n {\n props.data?.config?.admin_domain_url && (\n \n \n \n )\n }\n \n \n \n \n \n {domains.map((row, index) => (\n \n \n \n handleChange(index, e)} />\n \n \n \n {row.isEditable && row.isFromAPI && (\n <>\n \n \n \n )}\n {row.isEditable && !row.isFromAPI && (\n\n \n )}\n {!row.isEditable && (\n <>\n \n \n \n \n {\n row.isDefaultDomain ? (\n {_(\"default\")} \n ) : (\n \n )\n }\n \n )}\n \n \n \n ))}\n \n {/* \n \n \n \n 如要需要进行Https设置,或者更多自定义配置,请点击更多\n \n \n \n \n \n \n */}\n \n \n \n \n {\n (props.data?.config?.url && ((props.data?.config?.default_domain && !props.data?.app_replace_url) || (!props.data?.config?.default_domain))) &&\n \n }\n aria-controls=\"panel2a-content\"\n id=\"panel2a-header\"\n >\n \n \n 没有域名可以通过IP+端口的方式临时访问应用\n \n \n \n \n \n \n {\n props.data?.config?.url &&\n (\n \n )\n }\n {\n props.data?.config?.admin_url &&\n (\n \n )\n }\n \n \n \n \n \n }\n {\n props.data?.config?.admin_username &&\n \n }\n aria-controls=\"panel3a-content\"\n id=\"panel3a-header\"\n >\n \n \n \n 此应用程序是使用管理员帐户预先设置的,请立即更改管理员密码。初始凭据为:\n \n \n \n \n \n \n \n {/*

\n This app is pre-setup with an admin account,Please change the admin password immediately. The initial credentials are:\n

*/}\n \n \n UserName\n \n \n \n \n \n\n \n \n Password\n \n \n \n \n \n
\n
\n
\n
\n
\n }\n
\n
\n {\n showRemoveDomain &&\n \n }\n {\n showAlert &&\n \n \n {alertMessage}\n \n \n }\n \n );\n}\n\nexport default AppAccess;","import axios from 'axios';\nimport cockpit from \"cockpit\";\nimport React, { useEffect, useState } from 'react';\nimport { Badge, Button, Card, Col, Row, Table } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\n\nconst _ = cockpit.gettext;\n\nconst AppContainer = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [containersInfo, setContainersInfo] = useState([]);\n const customer_name = props.data.customer_name;\n const [endpointsId, setEndpointsId] = useState(null);\n\n //通过Portainer的接口获取容器数据\n const getContainersData = async () => {\n try {\n let jwt = window.localStorage.getItem(\"portainer.JWT2\"); //获取存储在本地的JWT数据 \n let id = null;\n\n //如果获取不到jwt,则模拟登录并写入新的jwt\n if (jwt === null) {\n const response = await axios.get('./config.json'); //从项目下读取配置文件\n if (response.status === 200) {\n let config = response.data.PORTAINER;\n const { PORTAINER_USERNAME, PORTAINER_PASSWORD, PORTAINER_AUTH_URL, PORTAINER_HOME_PAGE } = config;\n\n //调用portainer的登录API,模拟登录\n const authResponse = await axios.post(PORTAINER_AUTH_URL, {\n username: PORTAINER_USERNAME,\n password: PORTAINER_PASSWORD\n });\n if (authResponse.status === 200) {\n jwt = \"\\\"\" + authResponse.data.jwt + \"\\\"\";\n //jwt = authResponse.data.jwt\n window.localStorage.setItem('portainer\\.JWT2', jwt); //关键是将通过API登录后获取的jwt,存储到本地localStorage\n } else {\n console.error('Error:', authResponse);\n }\n }\n else {\n console.error('Error:', response);\n }\n }\n\n //从portainer接口获取endpoints\n const endpointsData = await axios.get('/portainer/api/endpoints', {\n headers: {\n 'Authorization': 'Bearer ' + jwt.replace(/\"/g, '')\n }\n });\n if (endpointsData.status === 200) {\n //先判断是否获取了“本地”endpoint\n if (endpointsData.data.length == 0) { //没有“本地”endpoint\n //调用添加\"本地\"环境的接口\n const addEndpoint = await axios.post('/portainer/api/endpoints', {},\n {\n params: {\n Name: \"websoft9-local\",\n EndpointCreationType: 1\n },\n headers: {\n 'Authorization': 'Bearer ' + jwt.replace(/\"/g, '')\n }\n }\n );\n if (addEndpoint.status === 200) {\n id = addEndpoint.data?.Id;\n setEndpointsId(id);\n }\n else {\n console.error('Error:', addEndpoint);\n }\n }\n else {\n //应该可能会返回“远程”的endpoint,这里只获取“本地”endpoint,条件为URL包含'/var/run/docker.sock'\n id = endpointsData.data.find(({ URL }) => URL.includes('/var/run/docker.sock')).Id;\n setEndpointsId(id);\n }\n\n //调用接口获取\n const containersData = await axios.get(`/portainer/api/endpoints/${id}/docker/containers/json`, {\n headers: {\n 'Authorization': 'Bearer ' + jwt.replace(/\"/g, '')\n },\n params: {\n all: true,\n filters: JSON.stringify({ \"label\": [`com.docker.compose.project=${customer_name}`] })\n }\n })\n if (containersData.status === 200) {\n setContainersInfo(containersData.data);\n }\n else {\n console.error('Error:', containersData);\n }\n }\n else {\n console.error('Error:', endpointsData);\n }\n }\n catch (error) {\n console.error('Error:', error);\n //navigate(\"/error-500\");\n }\n }\n\n useEffect(() => {\n getContainersData();\n }, []);\n\n return (\n \n \n \n \n \n \n \n 本应用由如下容器组成,名称为 {customer_name} 的为主容器 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {containersInfo.map((container, index) => {\n return (\n \n \n \n \n \n \n \n \n \n );\n })}\n \n
NameStateActionsImageCreatedIp AddressPublished Ports
{container.Names?.[0]?.replace(/^\\/|\\/$/g, '')}\n \n {container.State}\n \n \n \n {' '}\n \n {\n container.State === \"running\" && (\n \n {' '}\n \n )\n }\n\n {container.Image}{new Date(container.Created * 1000).toLocaleString()}{container.NetworkSettings.Networks[container.HostConfig.NetworkMode].IPAddress}{container.Ports.find(port => port.IP && /^(\\d{1,3}\\.){3}\\d{1,3}$/.test(port.IP))?.PublicPort}:{container.Ports.find(port => port.IP && /^(\\d{1,3}\\.){3}\\d{1,3}$/.test(port.IP))?.PrivatePort}
\n
\n
\n \n
\n );\n}\n\nexport default AppContainer;","import cockpit from \"cockpit\";\nimport React from 'react';\nimport { Card, Col, Row, Table } from 'react-bootstrap';\n\nconst _ = cockpit.gettext;\n\nconst AppOverview = (props): React$Element => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{_(\"App Name\")}:{props.data?.app_name}
{_(\"App Version\")}:{props.data?.app_version}
{_(\"App Port\")}:{props.data?.config?.port}
{_(\"Created Time\")}:{props.data?.create_time}
{_(\"Config Path\")}:{props.data?.config_path}
{_(\"Data Path\")}:{props.data?.volume_data}
\n
\n
\n \n
\n );\n}\n\nexport default AppOverview;","import classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport React, { forwardRef, useImperativeHandle, useState } from 'react';\nimport { Alert, Button, Col, Modal, Row } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\nimport Spinner from '../../components/Spinner';\nimport { AppStart, AppStop, AppUninstall } from '../../helpers';\n\nconst _ = cockpit.gettext;\n\n//卸载应用时的确定/取消弹窗\nconst UninstallConform = (props) => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭弹窗\n props.onClose();\n props.onCloseFatherModal();\n\n //更新主页APP的数据\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Uninstall\")} {props.app.customer_name}

\n
\n \n {_(\"This will immediately uninstall\")} {props.app.customer_name} {_(\"and remove all its data.\")}\n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\n//卸载应用选项卡\nconst Uninstall = forwardRef((props, ref): React$Element => {\n const [showUninstallConform, setShowUninstallConform] = useState(false);//用于确认卸载弹窗的标识\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const navigate = useNavigate(); //用于页面跳转\n\n //用于显示确定/取消卸载应用的弹窗\n const handleClick = () => {\n setShowUninstallConform(true);\n };\n //用于关闭确定/取消卸载应用的弹窗\n const handleClose = () => {\n setShowUninstallConform(false);\n };\n\n //设置按钮禁用\n const setButtonDisable = () => {\n setDisable(true);\n };\n\n //设置按钮启用\n const setButtonEnable = () => {\n setDisable(false);\n };\n\n //提供给父组件调用的方法,用于在父组件中调用子组件的方法\n useImperativeHandle(ref, () => ({\n setButtonDisable,\n setButtonEnable,\n }));\n\n return (\n <>\n \n \n \n

\n {_(\"Apps can be stopped to conserve server resources instead of uninstalling.\")}\n

\n {props.data.status === \"running\" ?\n \n :\n \n }\n \n
\n
\n \n \n \n

\n {_(\"This will uninstall the app immediately and remove all its data.The app will be inaccessible.\")}\n

\n \n \n
\n {showUninstallConform && }\n \n );\n});\n\nexport default Uninstall;","import classnames from \"classnames\";\nimport cockpit from 'cockpit';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { Button, Col, Modal, Nav, OverlayTrigger, Row, Tab, Tooltip } from 'react-bootstrap';\nimport { Link, useNavigate } from 'react-router-dom';\nimport DefaultImg from '../assets/images/default.png';\nimport Spinner from '../components/Spinner';\nimport { AppRestart, AppStart, AppStop } from '../helpers';\nimport AppAccess from './appdetailtabs/appaccess';\nimport AppContainer from './appdetailtabs/appcontainer';\nimport AppOverview from './appdetailtabs/appoverview';\nimport Uninstall from './appdetailtabs/appuninstall';\n\nconst _ = cockpit.gettext;\n\nconst AppDetailModal = (props): React$Element => {\n const [restartDisable, setRestartDisable] = useState(false);//用于重启按钮的按钮禁用\n const [buttonDisable, setButtonDisable] = useState(false); //用于启动/停止按钮禁用\n const [currentApp, setCurrentApp] = useState(props.current_app);\n const [startAppLoading, setStartAppLoading] = useState(false); //用户显示启动应用的加载状态\n const [stopAppLoading, setStopAppLoading] = useState(false); //用户显示停止时应用的加载状态\n const [restartAppLoading, setRestartAppLoading] = useState(false); //用户显示重启时应用的加载状态\n const navigate = useNavigate(); //用于页面跳转\n const childRef = useRef();\n\n //设置卸载页面的按钮禁用\n const setUninstallButtonDisable = () => {\n // 通过ref调用子组件的方法\n childRef.current.setButtonDisable();\n };\n\n //设置卸载页面的按钮启用\n const setUninstallButtonEnable = () => {\n // 通过ref调用子组件的方法\n childRef.current.setButtonEnable();\n };\n\n //设置启动/停止按钮禁用,用于传递给卸载页面\n const setAppdetailButtonDisable = () => {\n setButtonDisable(true);\n setRestartDisable(true);\n };\n //设置启动/停止按钮启用,用于传递给卸载页面\n const setAppdetailButtonEnable = () => {\n setButtonDisable(false);\n setRestartDisable(false);\n };\n\n useEffect(() => {\n setCurrentApp(props.current_app);\n }, [props.current_app]);\n\n const tabContents = [\n {\n id: '1',\n title: _(\"Overview\"),\n icon: 'mdi dripicons-home',\n text: ,\n },\n {\n id: '2',\n title: _(\"Access\"),\n icon: 'mdi dripicons-web',\n text: ,\n },\n {\n id: '3',\n title: _(\"Container\"),\n icon: 'mdi dripicons-stack',\n text: ,\n },\n {\n id: '4',\n title: _(\"Uninstall\"),\n icon: 'mdi mdi-cog-outline',\n text: ,\n },\n ];\n\n return (\n currentApp && \n \n
\n
\n (e.target.src = DefaultImg)}\n />\n
\n
\n

\n {currentApp.customer_name}\n

\n
\n {currentApp.status}\n
\n
\n
\n {\n currentApp.status === \"exited\" &&\n \n {_(\"Start App\")}\n \n }>\n \n \n }\n {\n currentApp.status === \"running\" &&\n \n {_(\"Stop App\")}\n \n }>\n \n \n }\n \n {_(\"Restart App\")}\n \n }>\n \n \n {\n currentApp.status === \"running\" &&\n \n {_(\"Terminal\")}\n \n }>\n \n {' '}\n \n \n }\n {\n \n {_(\"Documentation\")}\n \n }>\n \n {' '}\n \n \n }\n
\n
\n
\n \n \n \n \n \n \n \n {tabContents.map((tab, index) => {\n return (\n \n \n \n {tab.text}\n \n \n \n );\n })}\n \n \n \n \n
\n );\n}\n\nexport default AppDetailModal;","import MuiAlert from '@mui/material/Alert';\nimport Snackbar from '@mui/material/Snackbar';\nimport classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { Alert, Button, Col, Dropdown, Modal, Row } from 'react-bootstrap';\nimport { Link, Navigate, useNavigate } from 'react-router-dom';\nimport DefaultImg from '../assets/images/default.png';\nimport FormInput from '../components/FormInput';\nimport Spinner from '../components/Spinner';\nimport { AppList, AppRestart, AppStart, AppStop, AppUninstall } from '../helpers';\nimport AppDetailModal from './appdetail';\n\nconst _ = cockpit.gettext;\n\nconst MyMuiAlert = React.forwardRef(function Alert(props, ref) {\n return ;\n});\n\n//应用状态为failed时,显示错误消息\nconst ErrorInfoModal = (props): React$Element => {\n return (\n \n \n

{_(\"This is the error message for\")} {props.app.customer_name}

\n
\n \n {\n props.app.status_reason &&\n <>\n {_(\"Code: \")}{props.app.status_reason.Code} \n {_(\"Message: \")}{props.app.status_reason.Message} \n {_(\"Detail: \")}{props.app.status_reason.Detail} \n \n }\n \n \n \n \n \n
\n );\n}\n\n//删除应用弹窗\nconst UninstallConform = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭所有弹窗\n props.onClose();\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Remove\")} {props.app.customer_name}

\n
\n \n {_(\"This will immediately remove\")} {props.app.customer_name} {_(\"and remove all its data.\")}\n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\nconst MyApps = (): React$Element => {\n const [showModal, setShowModal] = useState(false); //用于显示状态为running或exited弹窗的标识\n const [showUninstallConform, setShowUninstallConform] = useState(false); //用于显示状态为failed时显示确定删除的弹窗\n const [showErrorInfo, setShowErrorInfo] = useState(false); //用于显示状态为failed时显示错误消息的弹窗\n const [showOtherAppModal, setShowOtherAppModal] = useState(false); //用于显示非websoft9应用的的弹窗的标识\n const [isLoading, setIsLoading] = useState(false); //用于非官方应用启动 停止 重启 卸载时,显示加载中\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n const [alertType, setAlertType] = useState(\"\");//用于确定弹窗的类型:error\\success\n\n const [selectedApp, setSelectedApp] = useState(null); //用于存储被选中的产品(点击应用详情时使用)\n const [apps, setApps] = useState([]); //所有“我的应用”\n const [statusApps, setStatusApps] = useState([]);//根据状态筛选的应用\n const [searchString, setSearchString] = useState(\"\");//用户输入的筛选字符串\n const [selectedStatus, setSelectedStatus] = useState(\"all\"); //用于存储用户筛选应用状态的标识\n const [progressId, setProgressId] = useState([]); //用于存储当前正在安装的应用ID,用于做进度查询的参数\n\n const selectedAppRef = useRef(selectedApp);\n const navigate = useNavigate(); //用于页面跳转\n\n const [code, setCode] = useState(0);\n const [error, setError] = useState(null);\n const [errorDetails, setErrorDetails] = useState(null)\n const [loading, setLoading] = useState(false);\n\n const menuItems = (appStatus) => {\n return [\n { label: 'Stop', icon: 'dripicons-power noti-icon', condition: appStatus === \"running\" },\n { label: 'Start', icon: 'dripicons-media-play noti-icon', condition: appStatus === \"exited\" },\n { label: 'Restart', icon: 'dripicons-clockwise noti-icon', condition: appStatus === \"running\" || appStatus === \"exited\" },\n {\n label: 'Uninstall',\n icon: 'dripicons-trash noti-icon',\n variant: 'text-danger',\n hasDivider: true,\n condition: true\n }\n ]\n };\n\n let timer;\n\n //获取所有已安装的App(只执行一次)\n const getAllAppsOnce = () => {\n AppList().then((response) => {\n if (response.data.Error) {\n setCode(response.data.Error.Code);\n setError(response.data.Error.Message);\n setErrorDetails(response.data.Error.Details);\n }\n else {\n const newApps = response.data.ResponseData;\n setApps(newApps);\n if (selectedAppRef.current) {\n const updatedApp = newApps.find(\n (app) => app.app_id === selectedAppRef.current.app_id\n );\n setSelectedApp(updatedApp);\n }\n }\n setLoading(false);\n }).catch((error) => {\n \n });\n }\n\n //获取所有已安装的App(每隔5秒执行一次)\n const getAllApps = () => {\n setLoading(true);\n //调用接口获取已经安装应用\n timer = setInterval(() => {\n AppList().then((response) => {\n if (response.data.Error) {\n setCode(response.data.Error.Code);\n setError(response.data.Error.Message);\n setErrorDetails(response.data.Error.Details);\n }\n else {\n const newApps = response.data.ResponseData;\n setApps(newApps);\n if (selectedAppRef.current) {\n const updatedApp = newApps.find(\n (app) => app.app_id === selectedAppRef.current.app_id\n );\n setSelectedApp(updatedApp);\n }\n }\n setLoading(false);\n }).catch((error) => {\n \n });\n }, 5000);\n return () => clearInterval(timer);\n }\n\n useEffect(() => {\n getAllAppsOnce();\n }, []);\n\n useEffect(() => {\n getAllApps();\n }, []);\n\n useEffect(() => {\n selectedAppRef.current = selectedApp;\n }, [selectedApp]);\n\n useEffect(() => {\n return () => clearInterval(timer); //用于清除定时器\n }, []);\n\n if (loading) return ;\n if (code) return

Code : ${code}

;\n if (error) return

Error : ${error}

;\n\n //用于根据应用“状态”过滤应用\n const changeStatus = (selectedStatus) => {\n setSelectedStatus(selectedStatus);\n };\n\n //用于根据用户输入搜索应用\n const handleInputChange = (searchString) => {\n setSearchString(searchString);\n }\n\n //用于用户点击应用详情\n const handleClick = (app) => {\n setSelectedApp(app);\n setShowModal(true);\n };\n\n //用于应用为failed时删除应用\n const deleteApp = (app) => {\n setSelectedApp(app);\n setShowUninstallConform(true);\n };\n\n //用于应用为failed时显示错误信息弹窗\n const showError = (app) => {\n setSelectedApp(app);\n setShowErrorInfo(true);\n };\n\n //用于关闭显示错误消息弹窗\n const cancelShowError = () => {\n setShowErrorInfo(false);\n };\n\n //用于取消删除应用\n const canceldeleteApp = () => {\n setShowUninstallConform(false);\n };\n\n //用于关闭应用详情的弹窗\n const handleClose = () => {\n setShowModal(false);\n setSelectedApp(null);\n };\n\n const handleAlertClose = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setShowAlert(false);\n setAlertMessage(\"\");\n };\n\n //用于立即刷新数据\n const handleDataChange = () => {\n getAllAppsOnce();\n };\n\n //非官方应用的操作\n const appActions = {\n \"Stop\": {\n api: AppStop,\n },\n \"Start\": {\n api: AppStart,\n },\n \"Restart\": {\n api: AppRestart,\n },\n \"Uninstall\": {\n api: AppUninstall,\n }\n }\n\n //处理非官方应用的操作\n const NoOfficialAppClick = async (label, app) => {\n if (label === \"Uninstall\") {\n setSelectedApp(app);\n setShowUninstallConform(true);\n return;\n }\n\n setIsLoading(true);\n try {\n const response = await appActions[label].api({ app_id: app.app_id });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"执行成功\");\n handleDataChange();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setIsLoading(false);\n }\n }\n\n return (\n <>\n \n \n {_(\"My Apps\")}\n \n \n changeStatus(e.target.value)}\n >\n \n \n \n \n \n \n \n \n \n handleInputChange(e.target.value)}\n />\n \n \n {\n window.location.reload(false);\n }}\n >\n {_(\"Refresh\")}\n \n \n \n\n {\n [true, false].map((official_app) => {\n // 过滤出符合条件的apps\n const filteredApps = apps.filter((app) => selectedStatus === 'all' || app.status === selectedStatus)\n .filter((app) => app.official_app === official_app)\n .filter((app) => app.customer_name.includes(searchString));\n // 如果有数据,返回一个Row组件,否则返回null\n return filteredApps.length > 0 ? (\n \n {/* 根据official_app的值显示不同的标题 */}\n

{official_app ? _(\"Websoft9's Apps\") : _(\"Other Apps\")}

\n {filteredApps.map((app, i) => (\n \n
\n {\n (!official_app && (app.status === \"running\" || app.status === \"exited\")) &&\n \n \n {isLoading ? : }\n \n \n {(menuItems(app.status) || []).map((item, index) => {\n return (\n \n {item.condition && item.hasDivider && }\n {\n item.condition && NoOfficialAppClick(item.label, app)}\n >\n {item.icon && }\n {/* {isLoading ? : item.icon && } */}\n {item.label}\n \n }\n \n );\n })}\n \n \n }\n {\n (official_app && (app.status === \"running\" || app.status === \"exited\")) &&\n <>\n
{ handleClick(app) }}>\n \n
\n
\n \n }\n {\n (official_app && app.status === \"installing\") &&\n <>\n
\n \n
\n
\n \n }\n {\n app.status === 'failed' &&\n <>\n
\n { showError(app) }}>\n { deleteApp(app) }}>\n
\n
\n \n }\n
\n (e.target.src = DefaultImg)}\n />\n
\n
\n

\n {app.customer_name}\n

\n
\n {app.status && app.status === \"installing\" && }\n {\" \"}\n
{app.status}
\n
\n
\n
\n \n ))}\n
\n ) : null;\n })\n }\n {\n showModal && \n }\n {\n showUninstallConform &&\n \n }\n {\n showErrorInfo &&\n \n }\n {\n showAlert &&\n \n \n {alertMessage}\n \n \n }\n \n );\n};\n\nexport default MyApps;\n"],"names":["PasswordInput","_ref","name","placeholder","refCallback","errors","register","className","value","readOnly","_useState","useState","_useState2","_slicedToArray","showPassword","setShowPassword","_jsx","_Fragment","children","_jsxs","InputGroup","Form","Control","_objectSpread","type","id","as","ref","r","isInvalid","autoComplete","defaultValue","classNames","onClick","_ref2","label","labelClassName","containerClass","otherProps","_objectWithoutProperties","_excluded","comp","Group","Label","Feedback","Select","Check","Spinner","props","Tag","tag","color","size","role","concat","_defineProperty","defaultProps","credentials","getCredentials","_getCredentials","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee3","response","data","userName","uerPassword","wrap","_context3","prev","next","fetch","sent","json","APPMANAGE","APPMANAGE_USERNAME","APPMANAGE_PASSWORD","btoa","abrupt","stop","axios","defaults","headers","post","get","common","interceptors","use","error","message","status","Navigate","Promise","reject","APICore","_createClass","_classCallCheck","_callee","url","params","queryString","_context","t0","Object","keys","map","key","join","_x","_x2","create","_callee2","_context2","_x3","_x4","api","AppList","AppUninstall","AppStop","AppStart","AppRestart","AppDomainAdd","_","cockpit","MyMuiAlert","React","MuiAlert","elevation","variant","RemoveDomain","navigate","useNavigate","disable","setDisable","_useState3","_useState4","showAlert","setShowAlert","_useState5","_useState6","alertMessage","setAlertMessage","Modal","show","showConform","onHide","onClose","scrollable","backdrop","style","backgroundColor","Header","Body","margin","deleteRowData","domainValue","Alert","Footer","Button","disabled","app_id","domain","Error","Message","onDataChange","finish","_props$data","_props$data$config","_props$data2","_props$data2$config","_props$data3","_props$data3$config","_props$data4","_props$data4$config","_props$data5","_props$data6","_props$data6$config","_props$data7","_props$data7$config","_props$data8","_props$data8$config","_props$data9","_props$data9$config","_props$data10","_props$data10$config","_props$data11","_props$data11$config","_props$data12","_props$data12$config","_props$data13","_props$data13$config","_props$data14","_props$data14$config","_props$data15","_props$data15$config","_useState7","_useState8","domains","setDomains","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","_useState15","_useState16","alertType","setAlertType","_useState17","_useState18","showRemoveDomain","setShowRemoveDomain","_useState19","_useState20","setDeleteRowData","_useState21","_useState22","_React$useState","_React$useState2","isExpandedForDomain","setIsExpandedForDomain","_React$useState3","_React$useState4","isExpandedForNoDomain","setIsExpandedForNoDomain","_React$useState5","_React$useState6","isExpandedForAccount","setIsExpandedForAccount","getDomains","responseData","defaultdomain","resturnDomains","ResponseData","Domain_set","default_domain","newDomainValue","isEditable","isFromAPI","isDefaultDomain","sort","a","b","useEffect","deleteRow","_ref3","row","index","newRows","_toConsumableArray","splice","setDefaultDomain","_ref4","_callee4","defaultDomain","_context4","saveRow","_ref5","_callee5","input","regex","_response","_context5","document","getElementsByName","test","domain_old","domain_new","t1","_x5","handleAlertClose","event","reason","_useState23","_useState24","Card","zIndex","Accordion","defaultExpanded","onChange","newExpanded","AccordionSummary","expandIcon","ExpandMoreIcon","Typography","display","href","target","AccordionDetails","Row","Col","xs","md","length","config","admin_domain_url","_callee6","_context6","FormInput","e","handleChange","padding","cancelEditRow","editRow","Badge","app_replace_url","admin_url","admin_username","htmlFor","column","admin_password","Snackbar","open","autoHideDuration","anchorOrigin","vertical","horizontal","severity","sx","width","containersInfo","setContainersInfo","customer_name","endpointsId","setEndpointsId","getContainersData","jwt","PORTAINER_USERNAME","PORTAINER_PASSWORD","PORTAINER_AUTH_URL","authResponse","endpointsData","addEndpoint","_addEndpoint$data","containersData","window","localStorage","getItem","PORTAINER","PORTAINER_HOME_PAGE","username","password","setItem","console","replace","Name","EndpointCreationType","Id","find","URL","includes","all","filters","JSON","stringify","Table","textAlign","container","_container$Names","_container$Names$","_container$Ports$find","_container$Ports$find2","Names","State","title","Image","Date","Created","toLocaleString","NetworkSettings","Networks","HostConfig","NetworkMode","IPAddress","Ports","port","IP","PublicPort","PrivatePort","responsive","bordered","fontWeight","app_name","app_version","create_time","config_path","volume_data","UninstallConform","closeButton","app","onCloseFatherModal","forwardRef","showUninstallConform","setShowUninstallConform","setButtonDisable","setButtonEnable","useImperativeHandle","sm","marginBottom","disabledButton","enableButton","restartDisable","setRestartDisable","buttonDisable","current_app","currentApp","setCurrentApp","startAppLoading","setStartAppLoading","stopAppLoading","setStopAppLoading","restartAppLoading","setRestartAppLoading","childRef","useRef","setUninstallButtonDisable","current","setUninstallButtonEnable","tabContents","icon","text","AppOverview","AppAccess","AppContainer","Uninstall","showFlag","dialogClassName","alignItems","src","image_url","alt","onError","DefaultImg","marginTop","flexGrow","justifyContent","OverlayTrigger","placement","overlay","Tooltip","borderRadius","marginRight","Link","to","pathname","search","borderColor","Tab","Container","defaultActiveKey","Nav","tab","renderElement","Item","eventKey","classnames","Content","height","Pane","ErrorInfoModal","status_reason","Code","Detail","timer","showModal","setShowModal","showErrorInfo","setShowErrorInfo","isLoading","setIsLoading","selectedApp","setSelectedApp","_useState25","_useState26","apps","setApps","_useState27","_useState28","_useState29","_useState30","searchString","setSearchString","_useState31","_useState32","selectedStatus","setSelectedStatus","_useState33","_useState34","selectedAppRef","_useState35","_useState36","code","setCode","_useState37","_useState38","setError","_useState39","_useState40","setErrorDetails","_useState41","_useState42","getAllAppsOnce","then","Details","newApps","updatedApp","catch","setInterval","clearInterval","handleDataChange","appActions","NoOfficialAppClick","lg","fontSize","changeStatus","handleInputChange","location","reload","official_app","filteredApps","filter","paddingTop","i","xxl","Dropdown","Toggle","Menu","align","appStatus","condition","hasDivider","item","Divider","handleClick","paddingRight","showError","deleteApp","AppDetailModal"],"sourceRoot":""} \ No newline at end of file diff --git a/cockpit/myapps/build/static/js/145.796bcadc.chunk.js b/cockpit/myapps/build/static/js/145.796bcadc.chunk.js deleted file mode 100644 index 7ed91bb9..00000000 --- a/cockpit/myapps/build/static/js/145.796bcadc.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkapps=self.webpackChunkapps||[]).push([[145],{6239:function(e,n,a){a.r(n),a.d(n,{default:function(){return Ne}});var t=a(4165),r=a(5861),s=a(9439),i=a(1413),o=a(4358),l=a(3971),c=a(1694),d=a.n(c),u=a(7346),p=a.n(u),m=a(2791),h=a(2025),x=a(3360),f=a(2469),j=a(9743),g=a(2677),Z=a(42),v=a(7689),b=a(1087),y=a.p+"static/media/default.50b14dd03b88a6d9022a.png",N=a(5987),w=a(9410),k=a(5313),C=a(184),_=["label","type","name","value","readOnly","placeholder","register","errors","className","labelClassName","containerClass","refCallback","children"],S=function(e){var n=e.name,a=e.placeholder,t=e.refCallback,r=e.errors,o=e.register,l=e.className,c=e.value,u=e.readOnly,p=(0,m.useState)(!1),h=(0,s.Z)(p,2),x=h[0],f=h[1];return(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(w.Z,{className:"mb-0",children:[(0,C.jsx)(k.Z.Control,(0,i.Z)((0,i.Z)({type:x?"text":"password",placeholder:a,name:n,id:n,as:"input",ref:function(e){t&&t(e)},className:l,isInvalid:!(!r||!r[n])},o?o(n):{}),{},{autoComplete:n,defaultValue:c,readOnly:u})),(0,C.jsx)("div",{className:d()("input-group-text","input-group-password",{"show-password":x}),"data-password":x?"true":"false",children:(0,C.jsx)("span",{className:"password-eye",onClick:function(){f(!x)}})})]})})},E=function(e){var n=e.label,a=e.type,t=e.name,r=e.value,s=e.readOnly,o=e.placeholder,l=e.register,c=e.errors,d=e.className,u=e.labelClassName,p=e.containerClass,m=e.refCallback,h=e.children,x=(0,N.Z)(e,_),f="textarea"===a?"textarea":"select"===a?"select":"input";return(0,C.jsx)(C.Fragment,{children:"hidden"===a?(0,C.jsx)("input",(0,i.Z)((0,i.Z)({type:a,name:t},l?l(t):{}),x)):(0,C.jsx)(C.Fragment,{children:"password"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsxs)(C.Fragment,{children:[" ",(0,C.jsx)(k.Z.Label,{className:u,children:n})," ",h," "]}):null,(0,C.jsx)(S,{name:t,placeholder:o,refCallback:m,errors:c,register:l,className:d,value:r,readOnly:s}),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",className:"d-block",children:c[t].message}):null]})}):(0,C.jsx)(C.Fragment,{children:"select"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsx)(k.Z.Label,{className:u,children:n}):null,(0,C.jsx)(k.Z.Select,(0,i.Z)((0,i.Z)((0,i.Z)({type:a,label:n,name:t,id:t,ref:function(e){m&&m(e)},comp:f,className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x),{},{children:h})),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})}):(0,C.jsx)(C.Fragment,{children:"checkbox"===a||"radio"===a?(0,C.jsx)(C.Fragment,{children:(0,C.jsxs)(k.Z.Group,{className:p,children:[(0,C.jsx)(k.Z.Check,(0,i.Z)((0,i.Z)({type:a,label:n,name:t,id:t,ref:function(e){m&&m(e)},className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x)),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})}):(0,C.jsxs)(k.Z.Group,{className:p,children:[n?(0,C.jsx)(k.Z.Label,{className:u,children:n}):null,(0,C.jsx)(k.Z.Control,(0,i.Z)((0,i.Z)((0,i.Z)({type:a,placeholder:o,value:r,name:t,id:t,as:f,ref:function(e){m&&m(e)},className:d,isInvalid:!(!c||!c[t])},l?l(t):{}),x),{},{autoComplete:t,children:h||null})),c&&c[t]?(0,C.jsx)(k.Z.Control.Feedback,{type:"invalid",children:c[t].message}):null]})})})})})},A=a(4942),D=function(e){var n=e.children||null,a=e.tag||"div",t=e.color||"secondary",r=e.size||"";return(0,C.jsx)(a,{role:"status",className:d()({"spinner-border":"bordered"===e.type,"spinner-grow":"grow"===e.type},["text-".concat(t)],(0,A.Z)({},"avatar-".concat(r),r),e.className),children:n})};D.defaultProps={tag:"div",type:"bordered"};var P,R=D,F=a(3144),I=a(5671),M=a(1243);function B(){return T.apply(this,arguments)}function T(){return(T=(0,r.Z)((0,t.Z)().mark((function e(){var n,a,r,s;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(P){e.next=10;break}return e.next=3,fetch("./config.json");case 3:return n=e.sent,e.next=6,n.json();case 6:a=e.sent,r=a.APPMANAGE.APPMANAGE_USERNAME,s=a.APPMANAGE.APPMANAGE_PASSWORD,P=btoa(r+":"+s);case 10:return e.abrupt("return",P);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}M.Z.defaults.headers.post["Content-Type"]="application/json",M.Z.defaults.headers.get["Content-Type"]="application/json",M.Z.defaults.headers.common["Cache-Control"]="no-cache",M.Z.defaults.headers.common.Pragma="no-cache",M.Z.defaults.headers.common.Expires="0",M.Z.interceptors.response.use((function(e){return e}),(function(e){var n;if(e&&e.response&&404===e.response.status)v.Fg;else{if(!e||!e.response||500!==e.response.status)return n=e.response&&e.response.data?e.response.data.message:e.message||e,Promise.reject(n);v.Fg}}));var H=(0,F.Z)((function e(){(0,I.Z)(this,e),this.get=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r,s;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,B();case 2:return e.t0=e.sent,M.Z.defaults.headers.common.Authorization="Basic "+e.t0,a?(s=a?Object.keys(a).map((function(e){return e+"="+a[e]})).join("&"):"",r=M.Z.get("".concat(n,"?").concat(s),a)):r=M.Z.get("".concat(n),a),e.abrupt("return",r);case 6:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}(),this.create=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,B();case 2:return e.t0=e.sent,M.Z.defaults.headers.common.Authorization="Basic "+e.t0,e.abrupt("return",M.Z.post(n,a));case 5:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}()})),O=new H;function z(e){return O.get("".concat("/AppManage/AppList"),e)}function U(e){return O.get("".concat("/AppManage/AppUninstall"),e)}function V(e){return O.get("".concat("/AppManage/AppStop"),e)}function W(e){return O.get("".concat("/AppManage/AppStart"),e)}function G(e){return O.get("".concat("/AppManage/AppRestart"),e)}function L(e){return O.get("".concat("/AppManage/AppDomainAdd"),e)}var $=a(7798),J=a(2576),K=a(1752),q=a(4533),Q=a(3433),X=a(1131),Y=a(1473),ee=a(3721),ne=a(5818),ae=a(1123),te=a(9627),re=a(5736),se=p().gettext,ie=m.forwardRef((function(e,n){return(0,C.jsx)(o.Z,(0,i.Z)({elevation:6,ref:n,variant:"filled"},e))})),oe=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",style:{backgroundColor:"rgba(0,0,0,0.8)"},children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsx)("h4",{children:se("Delete domain binding")})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[se("Are you sure you want to delete the domain for:")," ",e.deleteRowData.domainValue," ? "]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:se("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,t={app_id:e.deleteRowData.app_id,domain:e.deleteRowData.domainValue},O.get("".concat("/AppManage/AppDomainDelete"),t);case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(l(!1),e.onClose(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:return a.prev=11,l(!1),a.finish(11);case 14:case"end":return a.stop()}var t}),a,null,[[0,8,11,14]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",se("Delete")]})]})]})},le=function(e){var n,a,i,o,c,d,u,p,h,f,Z,b,y,N,w,_,S,A,D,P,R,F,I,M,B,T,H,z,U,V=(0,v.s0)(),W=(0,m.useState)([]),G=(0,s.Z)(W,2),$=G[0],J=G[1],K=(0,m.useState)(!1),q=(0,s.Z)(K,2),le=q[0],ce=q[1],de=(0,m.useState)(!1),ue=(0,s.Z)(de,2),pe=ue[0],me=ue[1],he=(0,m.useState)(""),xe=(0,s.Z)(he,2),fe=xe[0],je=xe[1],ge=(0,m.useState)(""),Ze=(0,s.Z)(ge,2),ve=Ze[0],be=Ze[1],ye=(0,m.useState)(!1),Ne=(0,s.Z)(ye,2),we=Ne[0],ke=Ne[1],Ce=(0,m.useState)(null),_e=(0,s.Z)(Ce,2),Se=_e[0],Ee=_e[1],Ae=(0,m.useState)(""),De=(0,s.Z)(Ae,2),Pe=(De[0],De[1],m.useState(!0)),Re=(0,s.Z)(Pe,2),Fe=Re[0],Ie=Re[1],Me=m.useState(!0),Be=(0,s.Z)(Me,2),Te=Be[0],He=Be[1],Oe=m.useState(!1),ze=(0,s.Z)(Oe,2),Ue=ze[0],Ve=ze[1],We=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(){var a,r,s,i;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,t={app_id:e.data.app_id},O.get("".concat("/AppManage/AppDomainList"),t);case 3:(a=n.sent).data.Error?(me(!0),be("error"),je(a.data.Error.Message)):(r=a.data.ResponseData.Domain_set,s=r.default_domain,(i=r.domains.map((function(n){return{app_id:e.data.app_id,domainValue:n,newDomainValue:n,isEditable:!1,isFromAPI:!0,isDefaultDomain:n===s}}))).sort((function(e,n){return n.isDefaultDomain-e.isDefaultDomain})),J(i)),n.next=10;break;case 7:n.prev=7,n.t0=n.catch(0),V("/error-500");case 10:case"end":return n.stop()}var t}),n,null,[[0,7]])})));return function(){return n.apply(this,arguments)}}();(0,m.useEffect)((function(){We()}),[]);var Ge=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.isFromAPI?(ke(!0),Ee(n)):((r=(0,Q.Z)($)).splice(a,1),J(r));case 1:case"end":return e.stop()}}),e)})));return function(n,a){return e.apply(this,arguments)}}(),Le=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(a){var r,s;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=$[a].newDomainValue,ce(!0),n.prev=2,n.next=5,t={app_id:e.data.app_id,domain:r},O.get("".concat("/AppManage/AppDomainSet"),t);case 5:(s=n.sent).data.Error?(me(!0),be("error"),je(s.data.Error.Message)):(me(!0),be("success"),je("\u8bbe\u7f6e\u6210\u529f!"),We()),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),V("/error-500");case 12:return n.prev=12,ce(!1),n.finish(12);case 15:case"end":return n.stop()}var t}),n,null,[[2,9,12,15]])})));return function(e){return n.apply(this,arguments)}}(),$e=function(){var n=(0,r.Z)((0,t.Z)().mark((function n(a,r){var s,i,o,l,c,d;return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(s=document.getElementsByName("domain-".concat(r))[0],i=s.value,o=/^(?!https?:\/\/)([\da-z\.-]+\.)*([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/,!i){n.next=49;break}if(!o.test(i)){n.next=44;break}if(!a.isFromAPI){n.next=28;break}if(a.domainValue==a.newDomainValue){n.next=23;break}return ce(!0),n.prev=8,n.next=11,t={app_id:e.data.app_id,domain_old:a.domainValue,domain_new:i},O.get("".concat("/AppManage/AppDomainUpdate"),t);case 11:(l=n.sent).data.Error?(me(!0),be("error"),je(l.data.Error.Message)):(me(!0),be("success"),je("Success"),We()),n.next=18;break;case 15:n.prev=15,n.t0=n.catch(8),V("/error-500");case 18:return n.prev=18,ce(!1),n.finish(18);case 21:n.next=26;break;case 23:(c=(0,Q.Z)($))[r].isEditable=!c[r].isEditable,J(c);case 26:n.next=42;break;case 28:return n.prev=28,ce(!0),n.next=32,L({app_id:e.data.app_id,domains:i});case 32:(d=n.sent).data.Error?(me(!0),be("error"),je(d.data.Error.Message)):(me(!0),be("success"),je("Success"),We()),n.next=39;break;case 36:n.prev=36,n.t1=n.catch(28),V("/error-500");case 39:return n.prev=39,ce(!1),n.finish(39);case 42:n.next=47;break;case 44:me(!0),be("error"),je(se("Please enter the correct domain name and cannot start with http or https!"));case 47:n.next=52;break;case 49:me(!0),be("error"),je(se("Domain name cannot be empty"));case 52:case"end":return n.stop()}var t}),n,null,[[8,15,18,21],[28,36,39,42]])})));return function(e,a){return n.apply(this,arguments)}}();var Je=function(e,n){"clickaway"!==n&&(me(!1),je(""))},Ke=(0,m.useState)(!1),qe=(0,s.Z)(Ke,2);qe[0],qe[1];return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(te.Z,{children:[le&&(0,C.jsx)("div",{className:"card-disabled",style:{zIndex:999},children:(0,C.jsx)("div",{className:"card-portlets-loader"})}),(0,C.jsxs)(te.Z.Body,{children:[(0,C.jsxs)(Y.Z,{defaultExpanded:!0,onChange:function(e,n){Ie(n)},className:"mb-2",children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel1a-content",id:"panel1a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:se("Domain Access")}),(0,C.jsxs)("span",{className:"me-2 fs-6",style:{display:Fe?"inline":"none"},children:[se("Domain access for better application performance. HTTPS and custom configurations available"),(0,C.jsx)("a",{href:"/nginx",target:"_parent",children:se("More")})]})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsx)(j.Z,{className:"mb-2 align-items-center",children:(0,C.jsxs)(g.Z,{xs:12,md:12,className:"d-flex justify-content-end",children:[(0,C.jsx)(x.Z,{variant:"primary",size:"sm",className:"me-2",onClick:function(){$.length<10&&J([].concat((0,Q.Z)($),[{app_id:e.data.app_id,domainValue:"",newDomainValue:"",isEditable:!0,isFromAPI:!1,isDefaultDomain:!1}]))},children:se("Add Domain")}),(null===(n=e.data)||void 0===n||null===(a=n.config)||void 0===a?void 0:a.admin_domain_url)&&(0,C.jsx)("a",{href:null===(i=e.data)||void 0===i||null===(o=i.config)||void 0===o?void 0:o.admin_domain_url,target:"_blank",className:"me-2",children:(0,C.jsx)(x.Z,{variant:"primary",size:"sm",children:"\u8bbf\u95ee\u540e\u53f0"})}),(0,C.jsxs)(x.Z,{size:"sm",className:"me-2",variant:"primary",onClick:(0,r.Z)((0,t.Z)().mark((function e(){return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ce(!0),e.next=3,We();case 3:ce(!1);case 4:case"end":return e.stop()}}),e)}))),children:[" ",se("Refresh")]})]})})}),(0,C.jsx)(te.Z.Body,{children:$.map((function(e,n){return(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{xs:12,className:"d-flex justify-content-between",children:[(0,C.jsx)(g.Z,{children:(0,C.jsx)(E,{className:"mb-2 mb-md-0",type:"text",name:"domain-".concat(n),value:e.newDomainValue,disabled:!e.isEditable,onChange:function(e){return function(e,n){var a=(0,Q.Z)($);a[e].newDomainValue=n.target.value,J(a)}(n,e)}})}),(0,C.jsxs)(g.Z,{className:"col-auto ms-auto",children:[(0,C.jsx)(x.Z,{variant:"link text-danger",style:{padding:"5px"},onClick:function(){return Ge(e,n)},children:se("delete")}),e.isEditable&&e.isFromAPI&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return $e(e,n)},children:se("save")}),(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return function(e){var n=(0,Q.Z)($);n[e].newDomainValue=n[e].domainValue,n[e].isEditable=!n[e].isEditable,J(n)}(n)},children:se("cancel")})]}),e.isEditable&&!e.isFromAPI&&(0,C.jsx)(x.Z,{variant:"link text-success",style:{padding:"5px"},onClick:function(){return $e(e,n)},children:se("save")}),!e.isEditable&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(x.Z,{variant:"link text-primary",style:{padding:"5px"},onClick:function(){return function(e){var n=(0,Q.Z)($);n[e].isEditable=!n[e].isEditable,J(n)}(n)},children:se("edit")}),(0,C.jsx)("a",{href:"http://"+e.domainValue,target:"_blank",children:(0,C.jsx)(x.Z,{variant:"link text-primary",style:{padding:"5px"},children:se("access")})}),e.isDefaultDomain?(0,C.jsxs)(re.Z,{className:"ms-2 bg-success",children:[" ",se("default")," "]}):(0,C.jsx)(x.Z,{variant:"link text-primary",onClick:function(){return Le(n)},children:se("set as default")})]})]})]})},n)}))})]})})})]}),(null===(c=e.data)||void 0===c||null===(d=c.config)||void 0===d?void 0:d.url)&&((null===(u=e.data)||void 0===u||null===(p=u.config)||void 0===p?void 0:p.default_domain)&&!(null!==(h=e.data)&&void 0!==h&&h.app_replace_url)||!(null!==(f=e.data)&&void 0!==f&&null!==(Z=f.config)&&void 0!==Z&&Z.default_domain))&&(0,C.jsxs)(Y.Z,{defaultExpanded:!0,onChange:function(e,n){He(n)},className:"mb-2",children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel2a-content",id:"panel2a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:"\u65e0\u57df\u540d\u8bbf\u95ee"}),(0,C.jsx)("span",{className:"me-2 fs-6",style:{display:Te?"inline":"none"},children:"\u6ca1\u6709\u57df\u540d\u53ef\u4ee5\u901a\u8fc7IP+\u7aef\u53e3\u7684\u65b9\u5f0f\u4e34\u65f6\u8bbf\u95ee\u5e94\u7528"})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsx)(te.Z,{children:(0,C.jsxs)(te.Z.Body,{children:[(null===(b=e.data)||void 0===b||null===(y=b.config)||void 0===y?void 0:y.url)&&(0,C.jsxs)("div",{children:[(0,C.jsx)("label",{className:"me-2 fs-5",children:"\u524d\u53f0:"}),(0,C.jsx)("a",{href:null===(N=e.data)||void 0===N||null===(w=N.config)||void 0===w?void 0:w.url,target:"_blank",className:"me-2",children:null===(_=e.data)||void 0===_||null===(S=_.config)||void 0===S?void 0:S.url})]}),(null===(A=e.data)||void 0===A||null===(D=A.config)||void 0===D?void 0:D.admin_url)&&(0,C.jsxs)("div",{children:[(0,C.jsx)("label",{className:"me-2 fs-5",children:"\u540e\u53f0:"}),(0,C.jsx)("a",{href:null===(P=e.data)||void 0===P||null===(R=P.config)||void 0===R?void 0:R.admin_url,target:"_blank",className:"me-2",children:null===(F=e.data)||void 0===F||null===(I=F.config)||void 0===I?void 0:I.admin_url})]})]})})})})]}),(null===(M=e.data)||void 0===M||null===(B=M.config)||void 0===B?void 0:B.admin_username)&&(0,C.jsxs)(Y.Z,{className:"mb-2",onChange:function(e,n){Ve(n)},children:[(0,C.jsx)(ne.Z,{expandIcon:(0,C.jsx)(X.Z,{}),"aria-controls":"panel3a-content",id:"panel3a-header",children:(0,C.jsxs)(ae.Z,{children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:"\u521d\u59cb\u8d26\u53f7"}),(0,C.jsx)("span",{className:"me-2 fs-6",style:{display:Ue?"inline":"none"},children:"\u6b64\u5e94\u7528\u7a0b\u5e8f\u662f\u4f7f\u7528\u7ba1\u7406\u5458\u5e10\u6237\u9884\u5148\u8bbe\u7f6e\u7684\uff0c\u8bf7\u7acb\u5373\u66f4\u6539\u7ba1\u7406\u5458\u5bc6\u7801\u3002\u521d\u59cb\u51ed\u636e\u4e3a\uff1a"})]})}),(0,C.jsx)(ee.Z,{children:(0,C.jsx)(ae.Z,{children:(0,C.jsx)(te.Z,{children:(0,C.jsxs)(te.Z.Body,{children:[(0,C.jsxs)(k.Z.Group,{as:j.Z,className:"mb-3",children:[(0,C.jsx)(k.Z.Label,{htmlFor:"username",column:!0,md:2,className:"fs-5",children:"UserName"}),(0,C.jsx)(g.Z,{md:4,children:(0,C.jsx)(k.Z.Control,{type:"text",name:"username",id:"username",defaultValue:null===(T=e.data)||void 0===T||null===(H=T.config)||void 0===H?void 0:H.admin_username,readOnly:!0})})]}),(0,C.jsxs)(k.Z.Group,{as:j.Z,className:"mb-3",children:[(0,C.jsx)(k.Z.Label,{htmlFor:"password",column:!0,md:2,className:"fs-5",children:"Password"}),(0,C.jsx)(g.Z,{md:4,children:(0,C.jsx)(E,{type:"password",name:"password",containerClass:"mb-3",value:null===(z=e.data)||void 0===z||null===(U=z.config)||void 0===U?void 0:U.admin_password,readOnly:!0})})]})]})})})})]})]})]}),we&&(0,C.jsx)(oe,{showConform:we,onClose:function(){ke(!1)},deleteRowData:Se,onDataChange:We}),pe&&(0,C.jsx)(l.Z,{open:pe,autoHideDuration:5e3,onClose:Je,anchorOrigin:{vertical:"top",horizontal:"center"},children:(0,C.jsx)(ie,{onClose:Je,severity:ve,sx:{width:"100%"},children:fe})})]})},ce=a(2591),de=p().gettext,ue=function(e){(0,v.s0)();var n=(0,m.useState)([]),a=(0,s.Z)(n,2),i=a[0],o=a[1],l=e.data.customer_name,c=(0,m.useState)(null),d=(0,s.Z)(c,2),u=d[0],p=d[1],h=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(){var n,a,r,s,i,c,d,u,m,h;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,null!==(n=window.localStorage.getItem("portainer.JWT2"))){e.next=16;break}return e.next=5,M.Z.get("./config.json");case 5:if(200!==(a=e.sent).status){e.next=15;break}return r=a.data.PORTAINER,s=r.PORTAINER_USERNAME,i=r.PORTAINER_PASSWORD,c=r.PORTAINER_AUTH_URL,r.PORTAINER_HOME_PAGE,e.next=11,M.Z.post(c,{username:s,password:i});case 11:200===(d=e.sent).status?(n='"'+d.data.jwt+'"',window.localStorage.setItem("portainer.JWT2",n)):console.error("Error:",d),e.next=16;break;case 15:console.error("Error:",a);case 16:return e.next=18,M.Z.get("/portainer/api/endpoints",{headers:{Authorization:"Bearer "+n.replace(/"/g,"")}});case 18:if(200!==(u=e.sent).status){e.next=28;break}return m=u.data.find((function(e){return e.URL.includes("/var/run/docker.sock")})).Id,p(m),e.next=24,M.Z.get("/portainer/api/endpoints/".concat(m,"/docker/containers/json"),{headers:{Authorization:"Bearer "+n.replace(/"/g,"")},params:{all:!0,filters:JSON.stringify({label:["com.docker.compose.project=".concat(l)]})}});case 24:200===(h=e.sent).status?o(h.data):console.error("Error:",h),e.next=29;break;case 28:console.error("Error:",u);case 29:e.next=34;break;case 31:e.prev=31,e.t0=e.catch(0),console.error("Error:",e.t0);case 34:case"end":return e.stop()}}),e,null,[[0,31]])})));return function(){return e.apply(this,arguments)}}();return(0,m.useEffect)((function(){h()}),[]),(0,C.jsx)(j.Z,{children:(0,C.jsx)(g.Z,{xs:12,children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsxs)(j.Z,{className:"align-items-center",children:[(0,C.jsxs)(g.Z,{xs:12,md:10,children:[(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:de("Container")}),(0,C.jsxs)("span",{className:"me-2 fs-6",children:["\u672c\u5e94\u7528\u7531\u5982\u4e0b\u5bb9\u5668\u7ec4\u6210\uff0c\u540d\u79f0\u4e3a ",l," \u7684\u4e3a\u4e3b\u5bb9\u5668 "]})]}),(0,C.jsx)(g.Z,{xs:12,md:2,children:(0,C.jsx)("a",{href:"/portainer/#!/".concat(u,"/docker/stacks/").concat(l,"?type=2®ular=false&external=true&orphaned=false"),target:"_blank",className:"me-2",children:(0,C.jsx)(x.Z,{variant:"primary",size:"sm",className:"float-end",children:de("More")})})})]})}),(0,C.jsx)(te.Z.Body,{children:(0,C.jsxs)(ce.Z,{className:"mb-0",children:[(0,C.jsx)("thead",{children:(0,C.jsxs)("tr",{children:[(0,C.jsx)("th",{children:"Name"}),(0,C.jsx)("th",{children:"State"}),(0,C.jsx)("th",{style:{textAlign:"center"},children:"Actions"}),(0,C.jsx)("th",{children:"Image"}),(0,C.jsx)("th",{children:"Created"}),(0,C.jsx)("th",{children:"Ip Address"}),(0,C.jsx)("th",{children:"Published Ports"})]})}),(0,C.jsx)("tbody",{children:i.map((function(e,n){var a,t,r,s;return(0,C.jsxs)("tr",{children:[(0,C.jsx)("td",{children:null===(a=e.Names)||void 0===a||null===(t=a[0])||void 0===t?void 0:t.replace(/^\/|\/$/g,"")}),(0,C.jsx)("td",{children:(0,C.jsx)(re.Z,{className:"".concat("running"===e.State?"bg-success":"exited"===e.State?"bg-danger":"info"),children:e.State})}),(0,C.jsxs)("td",{style:{textAlign:"center"},children:[(0,C.jsxs)("a",{href:"/portainer/#!/".concat(u,"/docker/containers/").concat(e.Id,"/logs"),target:"_blank",title:"Logs",children:[(0,C.jsx)("i",{className:"dripicons-document-remove noti-icon"})," "]}),"running"===e.State&&(0,C.jsxs)("a",{href:"/portainer/#!/".concat(u,"/docker/containers/").concat(e.Id,"/stats"),target:"_blank",title:"Stats",children:[(0,C.jsx)("i",{className:"dripicons-pulse noti-icon"})," "]})]}),(0,C.jsx)("td",{children:e.Image}),(0,C.jsx)("td",{children:new Date(1e3*e.Created).toLocaleString()}),(0,C.jsx)("td",{children:e.NetworkSettings.Networks[e.HostConfig.NetworkMode].IPAddress}),(0,C.jsxs)("td",{children:[null===(r=e.Ports.find((function(e){return e.IP&&/^(\d{1,3}\.){3}\d{1,3}$/.test(e.IP)})))||void 0===r?void 0:r.PublicPort,":",null===(s=e.Ports.find((function(e){return e.IP&&/^(\d{1,3}\.){3}\d{1,3}$/.test(e.IP)})))||void 0===s?void 0:s.PrivatePort]})]},n)}))})]})})]})})})},pe=p().gettext,me=function(e){var n,a,t,r,s,i,o;return(0,C.jsx)(j.Z,{children:(0,C.jsx)(g.Z,{xs:12,children:(0,C.jsxs)(te.Z,{children:[(0,C.jsx)(te.Z.Header,{children:(0,C.jsx)("label",{className:"me-2 fs-5 d-block",children:pe("App Overview")})}),(0,C.jsx)(te.Z.Body,{children:(0,C.jsx)(ce.Z,{responsive:!0,className:"mb-0",bordered:!1,style:{display:"flex"},children:(0,C.jsxs)("tbody",{children:[(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Name"),":"]}),(0,C.jsx)("td",{children:null===(n=e.data)||void 0===n?void 0:n.app_name})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Version"),":"]}),(0,C.jsx)("td",{children:null===(a=e.data)||void 0===a?void 0:a.app_version})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("App Port"),":"]}),(0,C.jsx)("td",{children:null===(t=e.data)||void 0===t||null===(r=t.config)||void 0===r?void 0:r.port})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Created Time"),":"]}),(0,C.jsx)("td",{children:null===(s=e.data)||void 0===s?void 0:s.create_time})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Config Path"),":"]}),(0,C.jsx)("td",{children:null===(i=e.data)||void 0===i?void 0:i.config_path})]}),(0,C.jsxs)("tr",{children:[(0,C.jsxs)("td",{style:{fontWeight:"bold"},children:[pe("Data Path"),":"]}),(0,C.jsx)("td",{children:null===(o=e.data)||void 0===o?void 0:o.volume_data})]})]})})})]})})})},he=p().gettext,xe=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",style:{backgroundColor:"rgba(0,0,0,0.8)"},children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsxs)("h4",{children:[he("Uninstall")," ",e.app.customer_name]})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[he("This will immediately uninstall")," ",e.app.customer_name," ",he("and remove all its data.")]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:he("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,U({app_id:e.app.app_id});case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(e.onClose(),e.onCloseFatherModal(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:case"end":return a.stop()}}),a,null,[[0,8]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Uninstall")]})]})]})},fe=(0,m.forwardRef)((function(e,n){var a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),d=(0,s.Z)(c,2),u=d[0],p=d[1],h=(0,v.s0)(),f=function(){p(!0)},Z=function(){p(!1)};return(0,m.useImperativeHandle)(n,(function(){return{setButtonDisable:f,setButtonEnable:Z}})),(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{sm:12,children:[(0,C.jsx)("label",{className:"me-1",style:{fontWeight:"bolder",marginBottom:"5px"},children:he("Start / Stop")}),(0,C.jsx)("p",{children:he("Apps can be stopped to conserve server resources instead of uninstalling.")}),"running"===e.data.status?(0,C.jsxs)(x.Z,{variant:"secondary",className:"float-end",disabled:u,onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,e.disabledButton(),p(!0),n.next=5,V({app_id:e.data.app_id});case 5:n.sent.data.Error?h("/error"):e.onDataChange(e.data.app_id),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(0),h("/error-500");case 12:return n.prev=12,p(!1),e.enableButton(),n.finish(12);case 16:case"end":return n.stop()}}),n,null,[[0,9,12,16]])}))),children:[u&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Stop")]}):(0,C.jsxs)(x.Z,{variant:"primary",className:"float-end",disabled:u,onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e.disabledButton(),p(!0),n.prev=2,n.next=5,W({app_id:e.data.app_id});case 5:n.sent.data.Error?h("/error"):e.onDataChange(e.data.app_id),n.next=12;break;case 9:n.prev=9,n.t0=n.catch(2),h("/error-500");case 12:return n.prev=12,e.enableButton(),p(!1),n.finish(12);case 16:case"end":return n.stop()}}),n,null,[[2,9,12,16]])}))),children:[u&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",he("Start")]})]})}),(0,C.jsx)("hr",{}),(0,C.jsx)(j.Z,{className:"mb-2",children:(0,C.jsxs)(g.Z,{sm:12,children:[(0,C.jsx)("label",{className:"me-1",style:{fontWeight:"bolder",marginBottom:"5px"},children:he("Uninstall")}),(0,C.jsx)("p",{children:he("This will uninstall the app immediately and remove all its data.The app will be inaccessible.")}),(0,C.jsx)(x.Z,{variant:"warning",className:"float-end",onClick:function(){l(!0)},children:he("Uninstall")})]})}),o&&(0,C.jsx)(xe,{showConform:o,onClose:function(){l(!1)},app:e.data,onDataChange:e.onDataChange,onCloseFatherModal:e.onCloseFatherModal})]})})),je=p().gettext,ge=function(e){var n=(0,m.useState)(!1),a=(0,s.Z)(n,2),i=a[0],o=a[1],l=(0,m.useState)(!1),c=(0,s.Z)(l,2),u=c[0],p=c[1],f=(0,m.useState)(e.current_app),Z=(0,s.Z)(f,2),N=Z[0],w=Z[1],k=(0,m.useState)(!1),_=(0,s.Z)(k,2),S=_[0],E=_[1],A=(0,m.useState)(!1),D=(0,s.Z)(A,2),P=D[0],F=D[1],I=(0,m.useState)(!1),M=(0,s.Z)(I,2),B=M[0],T=M[1],H=(0,v.s0)(),O=(0,m.useRef)(),z=function(){O.current.setButtonDisable()},U=function(){O.current.setButtonEnable()};(0,m.useEffect)((function(){w(e.current_app)}),[e.current_app]);var L=[{id:"1",title:je("Overview"),icon:"mdi dripicons-home",text:(0,C.jsx)(me,{data:N})},{id:"2",title:je("Access"),icon:"mdi dripicons-web",text:(0,C.jsx)(le,{data:N})},{id:"3",title:je("Container"),icon:"mdi dripicons-stack",text:(0,C.jsx)(ue,{data:N})},{id:"4",title:je("Uninstall"),icon:"mdi mdi-cog-outline",text:(0,C.jsx)(fe,{data:N,ref:O,disabledButton:function(){p(!0),o(!0)},enableButton:function(){p(!1),o(!1)},onDataChange:e.onDataChange,onCloseFatherModal:e.onClose})}];return N&&(0,C.jsxs)(h.Z,{show:e.showFlag,backdrop:"static",onHide:e.onClose,size:"lg",scrollable:"true",dialogClassName:"modal-full-width",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,children:(0,C.jsxs)("div",{style:{padding:"10px",display:"flex",width:"100%",alignItems:"center"},children:[(0,C.jsx)("div",{className:"appstore-item-content-icon col-same-height",children:(0,C.jsx)("img",{src:N.image_url,alt:"",className:"app-icon",onError:function(e){return e.target.src=y}})}),(0,C.jsxs)("div",{className:"col-same-height",children:[(0,C.jsx)("h4",{className:"appstore-item-content-title",style:{marginTop:"5px"},children:N.customer_name}),(0,C.jsx)("h5",{className:"appstore-item-content-title",style:{marginTop:"5px"},children:N.status})]}),(0,C.jsxs)("div",{className:"col-same-height",style:{flexGrow:1,display:"flex",justifyContent:"flex-end",alignItems:"center"},children:["exited"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Start App")}),children:(0,C.jsx)(x.Z,{variant:"primary",disabled:u,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return z(),E(!0),o(!0),n.prev=3,n.next=6,W({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(3),H("/error-500");case 13:return n.prev=13,U(),E(!1),o(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[3,10,13,18]])}))),children:S?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-media-play noti-icon"})})},"bottom1"),"running"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Stop App")}),children:(0,C.jsx)(x.Z,{variant:"primary",disabled:u,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return z(),F(!0),o(!0),n.prev=3,n.next=6,V({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(3),H("/error-500");case 13:return n.prev=13,U(),F(!1),o(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[3,10,13,18]])}))),children:P?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-power noti-icon"})})},"bottom2"),(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Restart App")}),children:(0,C.jsx)(x.Z,{disabled:i,style:{padding:"5px 10px",borderRadius:"3px",marginRight:"10px"},onClick:(0,r.Z)((0,t.Z)().mark((function n(){return(0,t.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,z(),T(!0),p(!0),n.next=6,G({app_id:N.app_id});case 6:n.sent.data.Error?H("/error"):e.onDataChange(),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(0),H("/error-500");case 13:return n.prev=13,U(),T(!1),p(!1),n.finish(13);case 18:case"end":return n.stop()}}),n,null,[[0,10,13,18]])}))),children:B?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon",color:"light"}):(0,C.jsx)("i",{className:"dripicons-clockwise noti-icon"})})},"bottom3"),"running"===N.status&&(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Terminal")}),children:(0,C.jsxs)(b.rU,{to:{pathname:"/terminal",search:"?id=".concat(N.customer_name)},style:{color:"#fff",backgroundColor:"#727cf5",padding:"5px 10px",borderRadius:"3px",borderColor:"#727cf5",marginRight:"10px"},target:"_blank",children:[(0,C.jsx)("i",{className:"dripicons-code noti-icon"})," "]})},"bottom4"),(0,C.jsx)($.Z,{placement:"bottom",overlay:(0,C.jsx)(J.Z,{id:"tooltip-bottom",children:je("Documentation")}),children:(0,C.jsxs)("a",{href:"https://support.websoft9.com/docs/"+N.app_name,style:{color:"#fff",backgroundColor:"#727cf5",padding:"5px 10px",borderRadius:"3px",borderColor:"#727cf5",marginRight:"10px"},target:"_blank",children:[(0,C.jsx)("i",{className:"dripicons-document noti-icon"})," "]})},"bottom5")]})]})}),(0,C.jsx)(h.Z.Body,{className:"row",children:(0,C.jsxs)(K.Z.Container,{defaultActiveKey:je("Overview"),children:[(0,C.jsx)(g.Z,{sm:2,className:"mb-2 mb-sm-0",children:(0,C.jsx)(q.Z,{variant:"pills",className:"flex-column",children:L.map((function(e,n){var a=function(){return(0,C.jsx)(q.Z.Item,{children:(0,C.jsxs)(q.Z.Link,{as:b.rU,to:"#",eventKey:e.title,children:[(0,C.jsx)("i",{className:d()(e.icon,"d-md-none","d-block","me-1")}),(0,C.jsx)("span",{className:"d-none d-md-block",children:e.title})]})},n)};return"Terminal"!==e.title||"running"===N.status?a():void 0}))})}),(0,C.jsx)(g.Z,{sm:10,children:(0,C.jsx)(K.Z.Content,{style:{height:"100%"},children:L.map((function(e,n){return(0,C.jsx)(K.Z.Pane,{eventKey:e.title,id:e.id,style:{height:"100%"},children:(0,C.jsx)(j.Z,{style:{height:"100%"},children:(0,C.jsx)(g.Z,{sm:"12",style:{height:"Terminal"===e.title?"600px":""},children:e.text})})},n)}))})})]})})]})},Ze=p().gettext,ve=m.forwardRef((function(e,n){return(0,C.jsx)(o.Z,(0,i.Z)({elevation:6,ref:n,variant:"filled"},e))})),be=function(e){return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,closeButton:!0,className:d()("modal-colored-header","bg-danger"),children:(0,C.jsxs)("h4",{children:[Ze("This is the error message for")," ",e.app.customer_name]})}),(0,C.jsx)(h.Z.Body,{className:"row",children:e.app.status_reason&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Code: ")}),e.app.status_reason.Code," "]}),(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Message: ")}),e.app.status_reason.Message," "]}),(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[" ",(0,C.jsx)("b",{children:Ze("Detail: ")}),e.app.status_reason.Detail," "]})]})}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:Ze("Close")}),(0,C.jsx)(x.Z,{variant:"light",onClick:function(){return window.open("https://www.websoft9.com/ticket","_blank")},children:Ze("Support")})]})]})},ye=function(e){var n=(0,v.s0)(),a=(0,m.useState)(!1),i=(0,s.Z)(a,2),o=i[0],l=i[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],j=u[1],g=(0,m.useState)(""),Z=(0,s.Z)(g,2),b=Z[0],y=Z[1];return(0,C.jsxs)(h.Z,{show:e.showConform,onHide:e.onClose,size:"lg",scrollable:"true",backdrop:"static",children:[(0,C.jsx)(h.Z.Header,{onHide:e.onClose,className:d()("modal-colored-header","bg-warning"),children:(0,C.jsxs)("h4",{children:[Ze("Remove")," ",e.app.customer_name]})}),(0,C.jsxs)(h.Z.Body,{className:"row",children:[(0,C.jsxs)("span",{style:{margin:"10px 0px"},children:[Ze("This will immediately remove")," ",e.app.customer_name," ",Ze("and remove all its data.")]}),(0,C.jsx)("div",{children:p&&(0,C.jsx)(f.Z,{variant:"danger",className:"my-2",children:b})})]}),(0,C.jsxs)(h.Z.Footer,{children:[(0,C.jsx)(x.Z,{variant:"light",onClick:e.onClose,children:Ze("Close")})," ",(0,C.jsxs)(x.Z,{disabled:o,variant:"warning",onClick:(0,r.Z)((0,t.Z)().mark((function a(){var r;return(0,t.Z)().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,l(!0),a.next=4,U({app_id:e.app.app_id});case 4:(r=a.sent).data.Error?(j(!0),y(r.data.Error.Message)):(e.onClose(),e.onDataChange()),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(0),n("/error-500");case 11:case"end":return a.stop()}}),a,null,[[0,8]])}))),children:[o&&(0,C.jsx)(R,{className:"spinner-border-sm me-1",tag:"span",color:"white"})," ",Ze("Remove")]})]})]})},Ne=function(){var e,n=(0,m.useState)(!1),a=(0,s.Z)(n,2),i=a[0],o=a[1],c=(0,m.useState)(!1),u=(0,s.Z)(c,2),p=u[0],h=u[1],f=(0,m.useState)(!1),N=(0,s.Z)(f,2),w=N[0],k=N[1],_=(0,m.useState)(!1),S=(0,s.Z)(_,2),A=(S[0],S[1],(0,m.useState)(!1)),D=(0,s.Z)(A,2),P=D[0],F=D[1],I=(0,m.useState)(!1),M=(0,s.Z)(I,2),B=M[0],T=M[1],H=(0,m.useState)(""),O=(0,s.Z)(H,2),L=O[0],$=O[1],J=(0,m.useState)(""),K=(0,s.Z)(J,2),q=K[0],Q=K[1],X=(0,m.useState)(null),Y=(0,s.Z)(X,2),ee=Y[0],ne=Y[1],ae=(0,m.useState)([]),te=(0,s.Z)(ae,2),re=te[0],se=te[1],ie=(0,m.useState)([]),oe=(0,s.Z)(ie,2),le=(oe[0],oe[1],(0,m.useState)("")),ce=(0,s.Z)(le,2),de=ce[0],ue=ce[1],pe=(0,m.useState)("all"),me=(0,s.Z)(pe,2),he=me[0],xe=me[1],fe=(0,m.useState)([]),je=(0,s.Z)(fe,2),Ne=(je[0],je[1],(0,m.useRef)(ee)),we=(0,v.s0)(),ke=(0,m.useState)(0),Ce=(0,s.Z)(ke,2),_e=Ce[0],Se=Ce[1],Ee=(0,m.useState)(null),Ae=(0,s.Z)(Ee,2),De=Ae[0],Pe=Ae[1],Re=(0,m.useState)(null),Fe=(0,s.Z)(Re,2),Ie=(Fe[0],Fe[1]),Me=(0,m.useState)(!1),Be=(0,s.Z)(Me,2),Te=Be[0],He=Be[1],Oe=function(){z().then((function(e){if(e.data.Error)Se(e.data.Error.Code),Pe(e.data.Error.Message),Ie(e.data.Error.Details);else{var n=e.data.ResponseData;if(se(n),Ne.current){var a=n.find((function(e){return e.app_id===Ne.current.app_id}));ne(a)}}He(!1)})).catch((function(e){v.Fg}))};if((0,m.useEffect)((function(){Oe()}),[]),(0,m.useEffect)((function(){He(!0),e=setInterval((function(){z().then((function(e){if(e.data.Error)Se(e.data.Error.Code),Pe(e.data.Error.Message),Ie(e.data.Error.Details);else{var n=e.data.ResponseData;if(se(n),Ne.current){var a=n.find((function(e){return e.app_id===Ne.current.app_id}));ne(a)}}He(!1)})).catch((function(e){v.Fg}))}),5e3)}),[]),(0,m.useEffect)((function(){Ne.current=ee}),[ee]),(0,m.useEffect)((function(){return function(){return clearInterval(e)}}),[]),Te)return(0,C.jsx)(R,{className:"dis_mid"});if(_e)return(0,C.jsxs)("p",{children:["Code : $",_e," "]});if(De)return(0,C.jsxs)("p",{children:["Error : $",De," "]});var ze=function(e,n){"clickaway"!==n&&(T(!1),$(""))},Ue=function(){Oe()},Ve={Stop:{api:V},Start:{api:W},Restart:{api:G},Uninstall:{api:U}},We=function(){var e=(0,r.Z)((0,t.Z)().mark((function e(n,a){var r;return(0,t.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Uninstall"!==n){e.next=4;break}return ne(a),h(!0),e.abrupt("return");case 4:return F(!0),e.prev=5,e.next=8,Ve[n].api({app_id:a.app_id});case 8:(r=e.sent).data.Error?(T(!0),Q("error"),$(r.data.Error.Message)):(T(!0),Q("success"),$("\u6267\u884c\u6210\u529f"),Ue()),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(5),we("/error-500");case 15:return e.prev=15,F(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[5,12,15,18]])})));return function(n,a){return e.apply(this,arguments)}}();return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(j.Z,{className:"mb-2 align-items-center",children:[(0,C.jsx)(g.Z,{xs:12,sm:6,md:3,lg:2,children:(0,C.jsx)("span",{style:{fontSize:"28px"},children:Ze("My Apps")})}),(0,C.jsx)(g.Z,{xs:12,sm:6,md:3,lg:2,children:(0,C.jsxs)(E,{value:he,name:"select",type:"select",className:"form-select",onChange:function(e){return function(e){xe(e)}(e.target.value)},children:[(0,C.jsx)("option",{value:"all",children:Ze("All States")}),(0,C.jsx)("option",{value:"installing",children:"installing"}),(0,C.jsx)("option",{value:"running",children:"running"}),(0,C.jsx)("option",{value:"exited",children:"exited"}),(0,C.jsx)("option",{value:"restarting",children:"restarting"}),(0,C.jsx)("option",{value:"failed",children:"failed"})]},"select")}),(0,C.jsx)(g.Z,{xs:12,sm:12,md:6,lg:7,children:(0,C.jsx)(E,{type:"text",name:"search",placeholder:Ze("Search for apps like WordPress, Dropbox, Slack, Trello, \u2026"),onChange:function(e){return function(e){ue(e)}(e.target.value)}})}),(0,C.jsx)(g.Z,{xs:12,sm:12,md:12,lg:1,children:(0,C.jsx)(x.Z,{variant:"primary",className:"float-end",onClick:function(){window.location.reload(!1)},children:Ze("Refresh")})})]}),[!0,!1].map((function(e){var n=re.filter((function(e){return"all"===he||e.status===he})).filter((function(n){return n.official_app===e})).filter((function(e){return e.customer_name.includes(de)}));return n.length>0?(0,C.jsxs)(j.Z,{children:[(0,C.jsx)("h4",{style:e?{}:{paddingTop:"10px"},children:Ze(e?"Websoft9's Apps":"Other Apps")}),n.map((function(n,a){return(0,C.jsx)(g.Z,{xxl:2,md:3,className:"appstore-item",children:(0,C.jsxs)("div",{className:"appstore-item-content highlight text-align-center",children:[!e&&("running"===n.status||"exited"===n.status)&&(0,C.jsxs)(Z.Z,{className:"float-end",children:[(0,C.jsx)(Z.Z.Toggle,{as:b.rU,to:"#",className:"arrow-none card-drop",children:P?(0,C.jsx)(R,{className:"spinner-border-sm noti-icon"}):(0,C.jsx)("i",{className:"dripicons-gear noti-icon"})}),(0,C.jsx)(Z.Z.Menu,{align:"end",children:(t=n.status,[{label:"Stop",icon:"dripicons-power noti-icon",condition:"running"===t},{label:"Start",icon:"dripicons-media-play noti-icon",condition:"exited"===t},{label:"Restart",icon:"dripicons-clockwise noti-icon",condition:"running"===t||"exited"===t},{label:"Uninstall",icon:"dripicons-trash noti-icon",variant:"text-danger",hasDivider:!0,condition:!0}]||[]).map((function(e,a){return(0,C.jsxs)(m.Fragment,{children:[e.condition&&e.hasDivider&&(0,C.jsx)(Z.Z.Divider,{as:"div"}),e.condition&&(0,C.jsxs)(Z.Z.Item,{className:d()(e.variant?e.variant:""),onClick:function(){return We(e.label,n)},children:[e.icon&&(0,C.jsx)("i",{className:d()(e.icon,"me-1")}),e.label]})]},a)}))})]}),e&&("running"===n.status||"exited"===n.status)&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("div",{className:"float-end arrow-none card-drop p-0",onClick:function(){!function(e){ne(e),o(!0)}(n)},children:(0,C.jsx)("i",{className:"dripicons-gear noti-icon"})}),(0,C.jsx)("div",{className:"clearfix"})]}),e&&"installing"===n.status&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("div",{className:"float-end arrow-none card-drop p-0",children:(0,C.jsx)("i",{className:"dripicons-empty noti-icon"})}),(0,C.jsx)("div",{className:"clearfix"})]}),"failed"===n.status&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{className:"float-end arrow-none card-drop p-0",children:[(0,C.jsx)("i",{className:"dripicons-information noti-icon",style:{paddingRight:"10px"},onClick:function(){!function(e){ne(e),k(!0)}(n)}}),(0,C.jsx)("i",{className:"dripicons-trash noti-icon",onClick:function(){!function(e){ne(e),h(!0)}(n)}})]}),(0,C.jsx)("div",{className:"clearfix"})]}),(0,C.jsx)("div",{children:(0,C.jsx)("img",{src:n.image_url,alt:n.app_name,className:"app-icon",style:{margin:"20px 10px 20px 10px"},onError:function(e){return e.target.src=y}})}),(0,C.jsxs)("div",{children:[(0,C.jsx)("h3",{className:"appstore-item-content-title",style:{color:"#2196f3"},children:n.customer_name}),(0,C.jsxs)("div",{style:{color:"failed"===n.status?"red":"inherit",display:"flex",alignItems:"center",justifyContent:"center"},children:[n.status&&"installing"===n.status&&(0,C.jsx)(R,{className:"spinner-border-sm m-2"})," ",(0,C.jsx)("div",{className:"m-2",children:n.status})]})]})]})},n.app_id+a);var t}))]}):null})),i&&(0,C.jsx)(ge,{current_app:ee,showFlag:i,onClose:function(){o(!1),ne(null)},onDataChange:Ue}),p&&(0,C.jsx)(ye,{showConform:p,onClose:function(){h(!1)},app:ee,onDataChange:Ue}),w&&(0,C.jsx)(be,{showConform:w,onClose:function(){k(!1)},app:ee}),B&&(0,C.jsx)(l.Z,{open:B,autoHideDuration:5e3,onClose:ze,anchorOrigin:{vertical:"top",horizontal:"center"},children:(0,C.jsx)(ve,{onClose:ze,severity:q,sx:{width:"100%"},children:L})})]})}}}]); -//# sourceMappingURL=145.796bcadc.chunk.js.map \ No newline at end of file diff --git a/cockpit/myapps/build/static/js/145.796bcadc.chunk.js.map b/cockpit/myapps/build/static/js/145.796bcadc.chunk.js.map deleted file mode 100644 index 1c1f2d69..00000000 --- a/cockpit/myapps/build/static/js/145.796bcadc.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/145.796bcadc.chunk.js","mappings":"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","sources":["components/FormInput.js","components/Spinner.js","helpers/api/apiCore.js","helpers/api/appManager.js","pages/appdetailtabs/appaccess.js","pages/appdetailtabs/appcontainer.js","pages/appdetailtabs/appoverview.js","pages/appdetailtabs/appuninstall.js","pages/appdetail.js","pages/myapps.js"],"sourcesContent":["// @flow\nimport classNames from 'classnames';\nimport React, { useState } from 'react';\nimport { Form, InputGroup } from 'react-bootstrap';\n\n/* Password Input */\nconst PasswordInput = ({ name, placeholder, refCallback, errors, register, className, value, readOnly }) => {\n const [showPassword, setShowPassword] = useState(false);\n\n return (\n <>\n \n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n autoComplete={name}\n defaultValue={value}\n readOnly={readOnly}\n />\n \n {\n setShowPassword(!showPassword);\n }}>\n \n \n \n );\n};\n\ntype FormInputProps = {\n label?: string,\n type?: string,\n name?: string,\n value?: string,\n placeholder?: string,\n register?: any,\n errors?: any,\n className?: string,\n labelClassName?: string,\n containerClass?: string,\n refCallback?: any,\n children?: any,\n};\n\nconst FormInput = ({\n label,\n type,\n name,\n value,\n readOnly,\n placeholder,\n register,\n errors,\n className,\n labelClassName,\n containerClass,\n refCallback,\n children,\n ...otherProps\n}: FormInputProps): React$Element => {\n // handle input type\n const comp = type === 'textarea' ? 'textarea' : type === 'select' ? 'select' : 'input';\n\n return (\n <>\n {type === 'hidden' ? (\n \n ) : (\n <>\n {type === 'password' ? (\n <>\n \n {label ? (\n <>\n {' '}\n {label} {children}{' '}\n \n ) : null}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n <>\n {type === 'select' ? (\n <>\n \n {label ? {label} : null}\n\n {\n if (refCallback) refCallback(r);\n }}\n comp={comp}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}>\n {children}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n <>\n {type === 'checkbox' || type === 'radio' ? (\n <>\n \n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}\n />\n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n \n ) : (\n \n {label ? {label} : null}\n\n {\n if (refCallback) refCallback(r);\n }}\n className={className}\n isInvalid={errors && errors[name] ? true : false}\n {...(register ? register(name) : {})}\n {...otherProps}\n autoComplete={name}>\n {children ? children : null}\n \n\n {errors && errors[name] ? (\n \n {errors[name]['message']}\n \n ) : null}\n \n )}\n \n )}\n \n )}\n \n )}\n \n );\n};\n\nexport default FormInput;\n","// @flow\nimport React from 'react';\nimport classNames from 'classnames';\n\ntype SpinnerProps = {\n tag?: string,\n className?: string,\n size?: 'lg' | 'md' | 'sm',\n type?: 'bordered' | 'grow',\n color?: string,\n children?: any,\n};\n\n/**\n * Spinner\n */\nconst Spinner = (props: SpinnerProps): React$Element => {\n const children = props.children || null;\n const Tag = props.tag || 'div';\n const color = props.color || 'secondary';\n const size = props.size || '';\n\n return (\n \n {children}\n \n );\n};\n\nSpinner.defaultProps = {\n tag: 'div',\n type: 'bordered',\n};\n\nexport default Spinner;\n","import axios from 'axios';\nimport { Navigate } from \"react-router-dom\";\n\n// 定义一个全局变量来存储 config.json 的内容\nlet credentials;\n\nasync function getCredentials() {\n // 如果 credentials 不存在,就从 config.json 中获取它\n if (!credentials) {\n const response = await fetch('./config.json');\n const data = await response.json();\n const userName = data.APPMANAGE.APPMANAGE_USERNAME;\n const uerPassword = data.APPMANAGE.APPMANAGE_PASSWORD;\n credentials = btoa(userName + \":\" + uerPassword);\n }\n // 返回 credentials\n return credentials;\n}\n\n// 设置 axios 的默认配置\naxios.defaults.headers.post['Content-Type'] = 'application/json';\naxios.defaults.headers.get['Content-Type'] = 'application/json';\naxios.defaults.headers.common['Cache-Control'] = 'no-cache';\naxios.defaults.headers.common['Pragma'] = 'no-cache';\naxios.defaults.headers.common['Expires'] = '0';\n\n// 拦截响应以捕获错误\naxios.interceptors.response.use(\n (response) => {\n return response;\n },\n (error) => {\n // 任何不在 2xx 范围内的状态码都会触发这个函数\n let message;\n\n if (error && error.response && error.response.status === 404) {\n \n } else if (error && error.response && error.response.status === 500) {\n \n } else {\n message = error.response && error.response.data ? error.response.data['message'] : error.message || error;\n return Promise.reject(message);\n }\n }\n);\n\nclass APICore {\n /**\n * Fetches data from given url\n */\n get = async (url, params) => {\n // 等待获取凭证并设置授权头\n axios.defaults.headers.common['Authorization'] = 'Basic ' + await getCredentials();\n let response;\n if (params) {\n var queryString = params\n ? Object.keys(params)\n .map((key) => key + '=' + params[key])\n .join('&')\n : '';\n response = axios.get(`${url}?${queryString}`, params);\n } else {\n response = axios.get(`${url}`, params);\n }\n return response;\n };\n\n /**\n * post given data to url\n */\n create = async (url, data) => {\n // 等待获取凭证并设置授权头\n axios.defaults.headers.common['Authorization'] = 'Basic ' + await getCredentials();\n return axios.post(url, data);\n };\n}\n\nexport { APICore };\n","import { APICore } from './apiCore';\n\nconst api = new APICore();\n\n//App 安装\nfunction AppInstall(params: any): Promise {\n const baseUrl = '/AppManage/AppInstall';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 列表查询\nfunction AppList(params: any): Promise {\n const baseUrl = '/AppManage/AppList';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 卸载\nfunction AppUninstall(params: any): Promise {\n const baseUrl = '/AppManage/AppUninstall';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 停止\nfunction AppStop(params: any): Promise {\n const baseUrl = '/AppManage/AppStop';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 启动\nfunction AppStart(params: any): Promise {\n const baseUrl = '/AppManage/AppStart';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 重启\nfunction AppRestart(params: any): Promise {\n const baseUrl = '/AppManage/AppRestart';\n return api.get(`${baseUrl}`, params);\n}\n\n//App 状态查询\nfunction AppStatus(params: any): Promise {\n const baseUrl = '/AppManage/AppStatus';\n return api.get(`${baseUrl}`, params);\n}\n\n//查询APP对应的域名\nfunction AppDomainList(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainList';\n return api.get(`${baseUrl}`, params);\n}\n\n//删除APP绑定的域名\nfunction AppDomainDelete(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainDelete';\n return api.get(`${baseUrl}`, params);\n}\n\n//修改APP绑定的域名\nfunction AppDomainUpdate(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainUpdate';\n return api.get(`${baseUrl}`, params);\n}\n\n//APP绑定域名\nfunction AppDomainAdd(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainAdd';\n return api.get(`${baseUrl}`, params);\n}\n\n//设定默认域名\nfunction AppDomainSet(params: any): Promise {\n const baseUrl = '/AppManage/AppDomainSet';\n return api.get(`${baseUrl}`, params);\n}\n\nexport { AppInstall, AppList, AppUninstall, AppStop, AppStart, AppRestart, AppStatus, AppDomainList, AppDomainDelete, AppDomainUpdate, AppDomainAdd, AppDomainSet };\n\n","import ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport MuiAlert from '@mui/material/Alert';\nimport Snackbar from '@mui/material/Snackbar';\nimport Typography from '@mui/material/Typography';\nimport classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport { default as React, useEffect, useState } from 'react';\nimport { Alert, Badge, Button, Card, Col, Form, Modal, Row } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\nimport FormInput from '../../components/FormInput';\nimport Spinner from '../../components/Spinner';\nimport { AppDomainAdd, AppDomainDelete, AppDomainList, AppDomainSet, AppDomainUpdate } from '../../helpers';\n\nconst _ = cockpit.gettext;\n\nconst MyMuiAlert = React.forwardRef(function Alert(props, ref) {\n return ;\n});\n\n//删除绑定的域名\nconst RemoveDomain = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭所有弹窗\n props.onClose();\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Delete domain binding\")}

\n
\n \n {_(\"Are you sure you want to delete the domain for:\")} {props.deleteRowData.domainValue} ? \n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\nconst AppAccess = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [domains, setDomains] = useState([]); // 定义域名数组\n const [loading, setLoading] = useState(false); // 定义执行操作时的加载转态\n\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\"); //用于显示错误提示消息\n const [alertType, setAlertType] = useState(\"\"); //用于确定弹窗的类型:error\\success\n const [showRemoveDomain, setShowRemoveDomain] = useState(false); //用于显示状态为failed时显示确定删除的弹窗\n const [deleteRowData, setDeleteRowData] = useState(null); //用于保存将要删除的行数据\n const [inputDomainValue, setInputDomainValue] = useState(\"\");//用户保存用户输入的域名\n\n const [isExpandedForDomain, setIsExpandedForDomain] = React.useState(true); //用于保存“域名绑定”的折叠状态\n const [isExpandedForNoDomain, setIsExpandedForNoDomain] = React.useState(true);//用于保存“无域名访问”的折叠状态\n const [isExpandedForAccount, setIsExpandedForAccount] = React.useState(false);//用于保存“无域名访问”的折叠状态\n\n const getDomains = async () => {\n try {\n const response = await AppDomainList({ app_id: props.data.app_id });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n let responseData = response.data.ResponseData.Domain_set;\n let defaultdomain = responseData.default_domain; //获取返回的默认域名数据\n\n let resturnDomains = responseData.domains.map(domain => {\n return {\n app_id: props.data.app_id,\n domainValue: domain,\n newDomainValue: domain,\n isEditable: false,\n isFromAPI: true,\n isDefaultDomain: domain === defaultdomain ? true : false\n };\n });\n //排序:将默认域名放前面\n resturnDomains.sort((a, b) => {\n return b.isDefaultDomain - a.isDefaultDomain;\n });\n setDomains(resturnDomains);\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n }\n\n useEffect(() => {\n getDomains();\n }, []);\n\n //添加域名\n const addRow = () => {\n if (domains.length < 10) {\n // 限制最多只能有10个domain\n setDomains([\n ...domains,\n {\n app_id: props.data.app_id,\n domainValue: \"\",\n newDomainValue: \"\",\n isEditable: true,\n isFromAPI: false,\n isDefaultDomain: false\n },\n ]);\n }\n }\n\n //删除域名\n const deleteRow = async (row, index) => {\n if (!row.isFromAPI) { //如果是点“添加”产生的记录行,则直接删除,不需要调用接口\n const newRows = [...domains]; // 复制状态数组\n newRows.splice(index, 1); // 删除指定索引的对象\n setDomains(newRows); // 更新状态数组\n }\n else { //表示记录是从接口获取的,删除时需要调用接口删除\n setShowRemoveDomain(true);\n setDeleteRowData(row);\n }\n }\n\n //编辑\n const editRow = (index) => {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n\n //取消编辑\n const cancelEditRow = (index) => {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].newDomainValue = newRows[index].domainValue; // 用户有修改但是取消编辑,需要将数据还原\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n\n //设为默认域名\n const setDefaultDomain = async (index) => {\n const defaultDomain = domains[index].newDomainValue; //获取域名\n setLoading(true);\n try { //调用设定默认域名接口\n const response = await AppDomainSet({ app_id: props.data.app_id, domain: defaultDomain });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"设置成功!\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n\n //保存\n const saveRow = async (row, index) => {\n const input = document.getElementsByName(`domain-${index}`)[0]; // 获取搜索框元素\n const value = input.value; // 获取搜索框的值\n const regex = /^(?!https?:\\/\\/)([\\da-z\\.-]+\\.)*([\\da-z\\.-]+)\\.([a-z\\.]{2,6})([\\/\\w \\.-]*)*\\/?$/; // 定义一个正则表达式,用来验证域名的格式\n if (value) {\n if (regex.test(value)) {\n if (row.isFromAPI) { //如果取到isFromAPI为true,表示要修改数据\n if (row.domainValue != row.newDomainValue) { //如果修改前的数据不等于修改后的数据,则调用修改接口\n setLoading(true);\n try {\n const response = await AppDomainUpdate({ app_id: props.data.app_id, domain_old: row.domainValue, domain_new: value });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"Success\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n else {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].isEditable = !newRows[index].isEditable; // 切换isEditable属性\n setDomains(newRows); // 更新状态数组\n }\n }\n else { //如果取到isFromAPI为false,表示是绑定数据 \n try {\n setLoading(true);\n const response = await AppDomainAdd({ app_id: props.data.app_id, domains: value });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"Success\");\n getDomains();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setLoading(false);\n }\n }\n } else {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(_(\"Please enter the correct domain name and cannot start with http or https!\"));\n }\n }\n else {\n // 如果搜索框的值为空\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(_(\"Domain name cannot be empty\"));\n }\n }\n\n //处理输入\n function handleChange(index, e) {\n const newRows = [...domains]; // 复制状态数组\n newRows[index].newDomainValue = e.target.value; // 修改inputValue属性\n setDomains(newRows); // 更新状态数组\n }\n\n const handleAlertClose = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setShowAlert(false);\n setAlertMessage(\"\");\n };\n\n //用于取消删除域名弹窗\n const cancelRemoveDomain = () => {\n setShowRemoveDomain(false);\n };\n\n const [isOpen, setIsOpen] = useState(false);\n const toggle = () => setIsOpen(!isOpen);\n\n const handleChangefordomin = (event, newExpanded) => {\n setIsExpandedForDomain(newExpanded);\n };\n\n const handleChangefornodomin = (event, newExpanded) => {\n setIsExpandedForNoDomain(newExpanded);\n };\n\n const handleChangeforaccount = (event, newExpanded) => {\n setIsExpandedForAccount(newExpanded);\n };\n\n return (\n <>\n \n {loading && (\n
\n
\n
\n )}\n \n \n }\n aria-controls=\"panel1a-content\"\n id=\"panel1a-header\"\n >\n \n \n \n {_(\"Domain access for better application performance. HTTPS and custom configurations available\")}\n \n {_(\"More\")}\n \n \n \n \n \n \n \n \n \n \n \n {\n props.data?.config?.admin_domain_url && (\n \n \n \n )\n }\n \n \n \n \n \n {domains.map((row, index) => (\n \n \n \n handleChange(index, e)} />\n \n \n \n {row.isEditable && row.isFromAPI && (\n <>\n \n \n \n )}\n {row.isEditable && !row.isFromAPI && (\n\n \n )}\n {!row.isEditable && (\n <>\n \n \n \n \n {\n row.isDefaultDomain ? (\n {_(\"default\")} \n ) : (\n \n )\n }\n \n )}\n \n \n \n ))}\n \n {/* \n \n \n \n 如要需要进行Https设置,或者更多自定义配置,请点击更多\n \n \n \n \n \n \n */}\n \n \n \n \n {\n (props.data?.config?.url && ((props.data?.config?.default_domain && !props.data?.app_replace_url) || (!props.data?.config?.default_domain))) &&\n \n }\n aria-controls=\"panel2a-content\"\n id=\"panel2a-header\"\n >\n \n \n 没有域名可以通过IP+端口的方式临时访问应用\n \n \n \n \n \n \n {\n props.data?.config?.url &&\n (\n \n )\n }\n {\n props.data?.config?.admin_url &&\n (\n \n )\n }\n \n \n \n \n \n }\n {\n props.data?.config?.admin_username &&\n \n }\n aria-controls=\"panel3a-content\"\n id=\"panel3a-header\"\n >\n \n \n \n 此应用程序是使用管理员帐户预先设置的,请立即更改管理员密码。初始凭据为:\n \n \n \n \n \n \n \n {/*

\n This app is pre-setup with an admin account,Please change the admin password immediately. The initial credentials are:\n

*/}\n \n \n UserName\n \n \n \n \n \n\n \n \n Password\n \n \n \n \n \n
\n
\n
\n
\n
\n }\n
\n
\n {\n showRemoveDomain &&\n \n }\n {\n showAlert &&\n \n \n {alertMessage}\n \n \n }\n \n );\n}\n\nexport default AppAccess;","import axios from 'axios';\nimport cockpit from \"cockpit\";\nimport React, { useEffect, useState } from 'react';\nimport { Badge, Button, Card, Col, Row, Table } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\n\nconst _ = cockpit.gettext;\n\nconst AppContainer = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [containersInfo, setContainersInfo] = useState([]);\n const customer_name = props.data.customer_name;\n const [endpointsId, setEndpointsId] = useState(null);\n\n //通过Portainer的接口获取容器数据\n const getContainersData = async () => {\n try {\n let jwt = window.localStorage.getItem(\"portainer.JWT2\"); //获取存储在本地的JWT数据 \n\n //如果获取不到jwt,则模拟登录并写入新的jwt\n if (jwt === null) {\n const response = await axios.get('./config.json'); //从项目下读取配置文件\n if (response.status === 200) {\n let config = response.data.PORTAINER;\n const { PORTAINER_USERNAME, PORTAINER_PASSWORD, PORTAINER_AUTH_URL, PORTAINER_HOME_PAGE } = config;\n\n //调用portainer的登录API,模拟登录\n const authResponse = await axios.post(PORTAINER_AUTH_URL, {\n username: PORTAINER_USERNAME,\n password: PORTAINER_PASSWORD\n });\n if (authResponse.status === 200) {\n jwt = \"\\\"\" + authResponse.data.jwt + \"\\\"\";\n //jwt = authResponse.data.jwt\n window.localStorage.setItem('portainer\\.JWT2', jwt); //关键是将通过API登录后获取的jwt,存储到本地localStorage\n } else {\n console.error('Error:', authResponse);\n }\n }\n else {\n console.error('Error:', response);\n }\n }\n\n //从portainer接口获取endpoints\n const endpointsData = await axios.get('/portainer/api/endpoints', {\n headers: {\n 'Authorization': 'Bearer ' + jwt.replace(/\"/g, '')\n }\n });\n if (endpointsData.status === 200) {\n //应该可能会返回“远程”的endpoint,这里只获取“本地”endpoint,条件为URL包含'/var/run/docker.sock'\n const id = endpointsData.data.find(({ URL }) => URL.includes('/var/run/docker.sock')).Id;\n setEndpointsId(id)\n //调用接口获取\n const containersData = await axios.get(`/portainer/api/endpoints/${id}/docker/containers/json`, {\n headers: {\n 'Authorization': 'Bearer ' + jwt.replace(/\"/g, '')\n },\n params: {\n all: true,\n filters: JSON.stringify({ \"label\": [`com.docker.compose.project=${customer_name}`] })\n }\n })\n if (containersData.status === 200) {\n setContainersInfo(containersData.data);\n }\n else {\n console.error('Error:', containersData);\n }\n }\n else {\n console.error('Error:', endpointsData);\n }\n }\n catch (error) {\n console.error('Error:', error);\n //navigate(\"/error-500\");\n }\n }\n\n useEffect(() => {\n getContainersData();\n }, []);\n\n return (\n \n \n \n \n \n \n \n 本应用由如下容器组成,名称为 {customer_name} 的为主容器 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {containersInfo.map((container, index) => {\n return (\n \n \n \n \n \n \n \n \n \n );\n })}\n \n
NameStateActionsImageCreatedIp AddressPublished Ports
{container.Names?.[0]?.replace(/^\\/|\\/$/g, '')}\n \n {container.State}\n \n \n \n {' '}\n \n {\n container.State === \"running\" && (\n \n {' '}\n \n )\n }\n\n {container.Image}{new Date(container.Created * 1000).toLocaleString()}{container.NetworkSettings.Networks[container.HostConfig.NetworkMode].IPAddress}{container.Ports.find(port => port.IP && /^(\\d{1,3}\\.){3}\\d{1,3}$/.test(port.IP))?.PublicPort}:{container.Ports.find(port => port.IP && /^(\\d{1,3}\\.){3}\\d{1,3}$/.test(port.IP))?.PrivatePort}
\n
\n
\n \n
\n );\n}\n\nexport default AppContainer;","import cockpit from \"cockpit\";\nimport React from 'react';\nimport { Card, Col, Row, Table } from 'react-bootstrap';\n\nconst _ = cockpit.gettext;\n\nconst AppOverview = (props): React$Element => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{_(\"App Name\")}:{props.data?.app_name}
{_(\"App Version\")}:{props.data?.app_version}
{_(\"App Port\")}:{props.data?.config?.port}
{_(\"Created Time\")}:{props.data?.create_time}
{_(\"Config Path\")}:{props.data?.config_path}
{_(\"Data Path\")}:{props.data?.volume_data}
\n
\n
\n \n
\n );\n}\n\nexport default AppOverview;","import classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport React, { forwardRef, useImperativeHandle, useState } from 'react';\nimport { Alert, Button, Col, Modal, Row } from 'react-bootstrap';\nimport { useNavigate } from 'react-router-dom';\nimport Spinner from '../../components/Spinner';\nimport { AppStart, AppStop, AppUninstall } from '../../helpers';\n\nconst _ = cockpit.gettext;\n\n//卸载应用时的确定/取消弹窗\nconst UninstallConform = (props) => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭弹窗\n props.onClose();\n props.onCloseFatherModal();\n\n //更新主页APP的数据\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Uninstall\")} {props.app.customer_name}

\n
\n \n {_(\"This will immediately uninstall\")} {props.app.customer_name} {_(\"and remove all its data.\")}\n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\n//卸载应用选项卡\nconst Uninstall = forwardRef((props, ref): React$Element => {\n const [showUninstallConform, setShowUninstallConform] = useState(false);//用于确认卸载弹窗的标识\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const navigate = useNavigate(); //用于页面跳转\n\n //用于显示确定/取消卸载应用的弹窗\n const handleClick = () => {\n setShowUninstallConform(true);\n };\n //用于关闭确定/取消卸载应用的弹窗\n const handleClose = () => {\n setShowUninstallConform(false);\n };\n\n //设置按钮禁用\n const setButtonDisable = () => {\n setDisable(true);\n };\n\n //设置按钮启用\n const setButtonEnable = () => {\n setDisable(false);\n };\n\n //提供给父组件调用的方法,用于在父组件中调用子组件的方法\n useImperativeHandle(ref, () => ({\n setButtonDisable,\n setButtonEnable,\n }));\n\n return (\n <>\n \n \n \n

\n {_(\"Apps can be stopped to conserve server resources instead of uninstalling.\")}\n

\n {props.data.status === \"running\" ?\n \n :\n \n }\n \n
\n
\n \n \n \n

\n {_(\"This will uninstall the app immediately and remove all its data.The app will be inaccessible.\")}\n

\n \n \n
\n {showUninstallConform && }\n \n );\n});\n\nexport default Uninstall;","import classnames from \"classnames\";\nimport cockpit from 'cockpit';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { Button, Col, Modal, Nav, OverlayTrigger, Row, Tab, Tooltip } from 'react-bootstrap';\nimport { Link, useNavigate } from 'react-router-dom';\nimport DefaultImg from '../assets/images/default.png';\nimport Spinner from '../components/Spinner';\nimport { AppRestart, AppStart, AppStop } from '../helpers';\nimport AppAccess from './appdetailtabs/appaccess';\nimport AppContainer from './appdetailtabs/appcontainer';\nimport AppOverview from './appdetailtabs/appoverview';\nimport Uninstall from './appdetailtabs/appuninstall';\n\nconst _ = cockpit.gettext;\n\nconst AppDetailModal = (props): React$Element => {\n const [restartDisable, setRestartDisable] = useState(false);//用于重启按钮的按钮禁用\n const [buttonDisable, setButtonDisable] = useState(false); //用于启动/停止按钮禁用\n const [currentApp, setCurrentApp] = useState(props.current_app);\n const [startAppLoading, setStartAppLoading] = useState(false); //用户显示启动应用的加载状态\n const [stopAppLoading, setStopAppLoading] = useState(false); //用户显示停止时应用的加载状态\n const [restartAppLoading, setRestartAppLoading] = useState(false); //用户显示重启时应用的加载状态\n const navigate = useNavigate(); //用于页面跳转\n const childRef = useRef();\n\n //设置卸载页面的按钮禁用\n const setUninstallButtonDisable = () => {\n // 通过ref调用子组件的方法\n childRef.current.setButtonDisable();\n };\n\n //设置卸载页面的按钮启用\n const setUninstallButtonEnable = () => {\n // 通过ref调用子组件的方法\n childRef.current.setButtonEnable();\n };\n\n //设置启动/停止按钮禁用,用于传递给卸载页面\n const setAppdetailButtonDisable = () => {\n setButtonDisable(true);\n setRestartDisable(true);\n };\n //设置启动/停止按钮启用,用于传递给卸载页面\n const setAppdetailButtonEnable = () => {\n setButtonDisable(false);\n setRestartDisable(false);\n };\n\n useEffect(() => {\n setCurrentApp(props.current_app);\n }, [props.current_app]);\n\n const tabContents = [\n {\n id: '1',\n title: _(\"Overview\"),\n icon: 'mdi dripicons-home',\n text: ,\n },\n {\n id: '2',\n title: _(\"Access\"),\n icon: 'mdi dripicons-web',\n text: ,\n },\n {\n id: '3',\n title: _(\"Container\"),\n icon: 'mdi dripicons-stack',\n text: ,\n },\n {\n id: '4',\n title: _(\"Uninstall\"),\n icon: 'mdi mdi-cog-outline',\n text: ,\n },\n ];\n\n return (\n currentApp && \n \n
\n
\n (e.target.src = DefaultImg)}\n />\n
\n
\n

\n {currentApp.customer_name}\n

\n
\n {currentApp.status}\n
\n
\n
\n {\n currentApp.status === \"exited\" &&\n \n {_(\"Start App\")}\n \n }>\n \n \n }\n {\n currentApp.status === \"running\" &&\n \n {_(\"Stop App\")}\n \n }>\n \n \n }\n \n {_(\"Restart App\")}\n \n }>\n \n \n {\n currentApp.status === \"running\" &&\n \n {_(\"Terminal\")}\n \n }>\n \n {' '}\n \n \n }\n {\n \n {_(\"Documentation\")}\n \n }>\n \n {' '}\n \n \n }\n
\n
\n
\n \n \n \n
\n \n \n \n {tabContents.map((tab, index) => {\n return (\n \n \n \n {tab.text}\n \n \n \n );\n })}\n \n \n \n \n \n );\n}\n\nexport default AppDetailModal;","import MuiAlert from '@mui/material/Alert';\nimport Snackbar from '@mui/material/Snackbar';\nimport classNames from 'classnames';\nimport cockpit from 'cockpit';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { Alert, Button, Col, Dropdown, Modal, Row } from 'react-bootstrap';\nimport { Link, Navigate, useNavigate } from 'react-router-dom';\nimport DefaultImg from '../assets/images/default.png';\nimport FormInput from '../components/FormInput';\nimport Spinner from '../components/Spinner';\nimport { AppList, AppRestart, AppStart, AppStop, AppUninstall } from '../helpers';\nimport AppDetailModal from './appdetail';\n\nconst _ = cockpit.gettext;\n\nconst MyMuiAlert = React.forwardRef(function Alert(props, ref) {\n return ;\n});\n\n//应用状态为failed时,显示错误消息\nconst ErrorInfoModal = (props): React$Element => {\n return (\n \n \n

{_(\"This is the error message for\")} {props.app.customer_name}

\n
\n \n {\n props.app.status_reason &&\n <>\n {_(\"Code: \")}{props.app.status_reason.Code} \n {_(\"Message: \")}{props.app.status_reason.Message} \n {_(\"Detail: \")}{props.app.status_reason.Detail} \n \n }\n \n \n \n \n \n
\n );\n}\n\n//删除应用弹窗\nconst UninstallConform = (props): React$Element => {\n const navigate = useNavigate(); //用于页面跳转\n const [disable, setDisable] = useState(false);//用于按钮禁用\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n\n function closeAllModals() {\n //关闭所有弹窗\n props.onClose();\n props.onDataChange();\n }\n\n return (\n \n \n

{_(\"Remove\")} {props.app.customer_name}

\n
\n \n {_(\"This will immediately remove\")} {props.app.customer_name} {_(\"and remove all its data.\")}\n
\n {showAlert && \n {alertMessage}\n }\n
\n
\n \n {\" \"}\n \n \n
\n );\n}\n\nconst MyApps = (): React$Element => {\n const [showModal, setShowModal] = useState(false); //用于显示状态为running或exited弹窗的标识\n const [showUninstallConform, setShowUninstallConform] = useState(false); //用于显示状态为failed时显示确定删除的弹窗\n const [showErrorInfo, setShowErrorInfo] = useState(false); //用于显示状态为failed时显示错误消息的弹窗\n const [showOtherAppModal, setShowOtherAppModal] = useState(false); //用于显示非websoft9应用的的弹窗的标识\n const [isLoading, setIsLoading] = useState(false); //用于非官方应用启动 停止 重启 卸载时,显示加载中\n const [showAlert, setShowAlert] = useState(false); //用于是否显示错误提示\n const [alertMessage, setAlertMessage] = useState(\"\");//用于显示错误提示消息\n const [alertType, setAlertType] = useState(\"\");//用于确定弹窗的类型:error\\success\n\n const [selectedApp, setSelectedApp] = useState(null); //用于存储被选中的产品(点击应用详情时使用)\n const [apps, setApps] = useState([]); //所有“我的应用”\n const [statusApps, setStatusApps] = useState([]);//根据状态筛选的应用\n const [searchString, setSearchString] = useState(\"\");//用户输入的筛选字符串\n const [selectedStatus, setSelectedStatus] = useState(\"all\"); //用于存储用户筛选应用状态的标识\n const [progressId, setProgressId] = useState([]); //用于存储当前正在安装的应用ID,用于做进度查询的参数\n\n const selectedAppRef = useRef(selectedApp);\n const navigate = useNavigate(); //用于页面跳转\n\n const [code, setCode] = useState(0);\n const [error, setError] = useState(null);\n const [errorDetails, setErrorDetails] = useState(null)\n const [loading, setLoading] = useState(false);\n\n const menuItems = (appStatus) => {\n return [\n { label: 'Stop', icon: 'dripicons-power noti-icon', condition: appStatus === \"running\" },\n { label: 'Start', icon: 'dripicons-media-play noti-icon', condition: appStatus === \"exited\" },\n { label: 'Restart', icon: 'dripicons-clockwise noti-icon', condition: appStatus === \"running\" || appStatus === \"exited\" },\n {\n label: 'Uninstall',\n icon: 'dripicons-trash noti-icon',\n variant: 'text-danger',\n hasDivider: true,\n condition: true\n }\n ]\n };\n\n let timer;\n\n //获取所有已安装的App(只执行一次)\n const getAllAppsOnce = () => {\n AppList().then((response) => {\n if (response.data.Error) {\n setCode(response.data.Error.Code);\n setError(response.data.Error.Message);\n setErrorDetails(response.data.Error.Details);\n }\n else {\n const newApps = response.data.ResponseData;\n setApps(newApps);\n if (selectedAppRef.current) {\n const updatedApp = newApps.find(\n (app) => app.app_id === selectedAppRef.current.app_id\n );\n setSelectedApp(updatedApp);\n }\n }\n setLoading(false);\n }).catch((error) => {\n \n });\n }\n\n //获取所有已安装的App(每隔5秒执行一次)\n const getAllApps = () => {\n setLoading(true);\n //调用接口获取已经安装应用\n timer = setInterval(() => {\n AppList().then((response) => {\n if (response.data.Error) {\n setCode(response.data.Error.Code);\n setError(response.data.Error.Message);\n setErrorDetails(response.data.Error.Details);\n }\n else {\n const newApps = response.data.ResponseData;\n setApps(newApps);\n if (selectedAppRef.current) {\n const updatedApp = newApps.find(\n (app) => app.app_id === selectedAppRef.current.app_id\n );\n setSelectedApp(updatedApp);\n }\n }\n setLoading(false);\n }).catch((error) => {\n \n });\n }, 5000);\n return () => clearInterval(timer);\n }\n\n useEffect(() => {\n getAllAppsOnce();\n }, []);\n\n useEffect(() => {\n getAllApps();\n }, []);\n\n useEffect(() => {\n selectedAppRef.current = selectedApp;\n }, [selectedApp]);\n\n useEffect(() => {\n return () => clearInterval(timer); //用于清除定时器\n }, []);\n\n if (loading) return ;\n if (code) return

Code : ${code}

;\n if (error) return

Error : ${error}

;\n\n //用于根据应用“状态”过滤应用\n const changeStatus = (selectedStatus) => {\n setSelectedStatus(selectedStatus);\n };\n\n //用于根据用户输入搜索应用\n const handleInputChange = (searchString) => {\n setSearchString(searchString);\n }\n\n //用于用户点击应用详情\n const handleClick = (app) => {\n setSelectedApp(app);\n setShowModal(true);\n };\n\n //用于应用为failed时删除应用\n const deleteApp = (app) => {\n setSelectedApp(app);\n setShowUninstallConform(true);\n };\n\n //用于应用为failed时显示错误信息弹窗\n const showError = (app) => {\n setSelectedApp(app);\n setShowErrorInfo(true);\n };\n\n //用于关闭显示错误消息弹窗\n const cancelShowError = () => {\n setShowErrorInfo(false);\n };\n\n //用于取消删除应用\n const canceldeleteApp = () => {\n setShowUninstallConform(false);\n };\n\n //用于关闭应用详情的弹窗\n const handleClose = () => {\n setShowModal(false);\n setSelectedApp(null);\n };\n\n const handleAlertClose = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setShowAlert(false);\n setAlertMessage(\"\");\n };\n\n //用于立即刷新数据\n const handleDataChange = () => {\n getAllAppsOnce();\n };\n\n //非官方应用的操作\n const appActions = {\n \"Stop\": {\n api: AppStop,\n },\n \"Start\": {\n api: AppStart,\n },\n \"Restart\": {\n api: AppRestart,\n },\n \"Uninstall\": {\n api: AppUninstall,\n }\n }\n\n //处理非官方应用的操作\n const NoOfficialAppClick = async (label, app) => {\n if (label === \"Uninstall\") {\n setSelectedApp(app);\n setShowUninstallConform(true);\n return;\n }\n\n setIsLoading(true);\n try {\n const response = await appActions[label].api({ app_id: app.app_id });\n if (response.data.Error) {\n setShowAlert(true);\n setAlertType(\"error\")\n setAlertMessage(response.data.Error.Message);\n }\n else {\n setShowAlert(true);\n setAlertType(\"success\")\n setAlertMessage(\"执行成功\");\n handleDataChange();\n }\n }\n catch (error) {\n navigate(\"/error-500\");\n }\n finally {\n setIsLoading(false);\n }\n }\n\n return (\n <>\n \n \n {_(\"My Apps\")}\n \n \n changeStatus(e.target.value)}\n >\n \n \n \n \n \n \n \n \n \n handleInputChange(e.target.value)}\n />\n \n \n {\n window.location.reload(false);\n }}\n >\n {_(\"Refresh\")}\n \n \n \n\n {\n [true, false].map((official_app) => {\n // 过滤出符合条件的apps\n const filteredApps = apps.filter((app) => selectedStatus === 'all' || app.status === selectedStatus)\n .filter((app) => app.official_app === official_app)\n .filter((app) => app.customer_name.includes(searchString));\n // 如果有数据,返回一个Row组件,否则返回null\n return filteredApps.length > 0 ? (\n \n {/* 根据official_app的值显示不同的标题 */}\n

{official_app ? _(\"Websoft9's Apps\") : _(\"Other Apps\")}

\n {filteredApps.map((app, i) => (\n \n
\n {\n (!official_app && (app.status === \"running\" || app.status === \"exited\")) &&\n \n \n {isLoading ? : }\n \n \n {(menuItems(app.status) || []).map((item, index) => {\n return (\n \n {item.condition && item.hasDivider && }\n {\n item.condition && NoOfficialAppClick(item.label, app)}\n >\n {item.icon && }\n {/* {isLoading ? : item.icon && } */}\n {item.label}\n \n }\n \n );\n })}\n \n \n }\n {\n (official_app && (app.status === \"running\" || app.status === \"exited\")) &&\n <>\n
{ handleClick(app) }}>\n \n
\n
\n \n }\n {\n (official_app && app.status === \"installing\") &&\n <>\n
\n \n
\n
\n \n }\n {\n app.status === 'failed' &&\n <>\n
\n { showError(app) }}>\n { deleteApp(app) }}>\n
\n
\n \n }\n
\n (e.target.src = DefaultImg)}\n />\n
\n
\n

\n {app.customer_name}\n

\n
\n {app.status && app.status === \"installing\" && }\n {\" \"}\n
{app.status}
\n
\n
\n
\n \n ))}\n
\n ) : null;\n })\n }\n {\n showModal && \n }\n {\n showUninstallConform &&\n \n }\n {\n showErrorInfo &&\n \n }\n {\n showAlert &&\n \n \n {alertMessage}\n \n \n }\n \n );\n};\n\nexport default MyApps;\n"],"names":["PasswordInput","_ref","name","placeholder","refCallback","errors","register","className","value","readOnly","_useState","useState","_useState2","_slicedToArray","showPassword","setShowPassword","_jsx","_Fragment","children","_jsxs","InputGroup","Form","Control","_objectSpread","type","id","as","ref","r","isInvalid","autoComplete","defaultValue","classNames","onClick","_ref2","label","labelClassName","containerClass","otherProps","_objectWithoutProperties","_excluded","comp","Group","Label","Feedback","Select","Check","Spinner","props","Tag","tag","color","size","role","concat","_defineProperty","defaultProps","credentials","getCredentials","_getCredentials","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee3","response","data","userName","uerPassword","wrap","_context3","prev","next","fetch","sent","json","APPMANAGE","APPMANAGE_USERNAME","APPMANAGE_PASSWORD","btoa","abrupt","stop","axios","defaults","headers","post","get","common","interceptors","use","error","message","status","Navigate","Promise","reject","APICore","_createClass","_classCallCheck","_callee","url","params","queryString","_context","t0","Object","keys","map","key","join","_x","_x2","create","_callee2","_context2","_x3","_x4","api","AppList","AppUninstall","AppStop","AppStart","AppRestart","AppDomainAdd","_","cockpit","MyMuiAlert","React","MuiAlert","elevation","variant","RemoveDomain","navigate","useNavigate","disable","setDisable","_useState3","_useState4","showAlert","setShowAlert","_useState5","_useState6","alertMessage","setAlertMessage","Modal","show","showConform","onHide","onClose","scrollable","backdrop","style","backgroundColor","Header","Body","margin","deleteRowData","domainValue","Alert","Footer","Button","disabled","app_id","domain","Error","Message","onDataChange","finish","_props$data","_props$data$config","_props$data2","_props$data2$config","_props$data3","_props$data3$config","_props$data4","_props$data4$config","_props$data5","_props$data6","_props$data6$config","_props$data7","_props$data7$config","_props$data8","_props$data8$config","_props$data9","_props$data9$config","_props$data10","_props$data10$config","_props$data11","_props$data11$config","_props$data12","_props$data12$config","_props$data13","_props$data13$config","_props$data14","_props$data14$config","_props$data15","_props$data15$config","_useState7","_useState8","domains","setDomains","_useState9","_useState10","loading","setLoading","_useState11","_useState12","_useState13","_useState14","_useState15","_useState16","alertType","setAlertType","_useState17","_useState18","showRemoveDomain","setShowRemoveDomain","_useState19","_useState20","setDeleteRowData","_useState21","_useState22","_React$useState","_React$useState2","isExpandedForDomain","setIsExpandedForDomain","_React$useState3","_React$useState4","isExpandedForNoDomain","setIsExpandedForNoDomain","_React$useState5","_React$useState6","isExpandedForAccount","setIsExpandedForAccount","getDomains","responseData","defaultdomain","resturnDomains","ResponseData","Domain_set","default_domain","newDomainValue","isEditable","isFromAPI","isDefaultDomain","sort","a","b","useEffect","deleteRow","_ref3","row","index","newRows","_toConsumableArray","splice","setDefaultDomain","_ref4","_callee4","defaultDomain","_context4","saveRow","_ref5","_callee5","input","regex","_response","_context5","document","getElementsByName","test","domain_old","domain_new","t1","_x5","handleAlertClose","event","reason","_useState23","_useState24","Card","zIndex","Accordion","defaultExpanded","onChange","newExpanded","AccordionSummary","expandIcon","ExpandMoreIcon","Typography","display","href","target","AccordionDetails","Row","Col","xs","md","length","config","admin_domain_url","_callee6","_context6","FormInput","e","handleChange","padding","cancelEditRow","editRow","Badge","app_replace_url","admin_url","admin_username","htmlFor","column","admin_password","Snackbar","open","autoHideDuration","anchorOrigin","vertical","horizontal","severity","sx","width","containersInfo","setContainersInfo","customer_name","endpointsId","setEndpointsId","getContainersData","jwt","PORTAINER_USERNAME","PORTAINER_PASSWORD","PORTAINER_AUTH_URL","authResponse","endpointsData","containersData","window","localStorage","getItem","PORTAINER","PORTAINER_HOME_PAGE","username","password","setItem","console","replace","find","URL","includes","Id","all","filters","JSON","stringify","Table","textAlign","container","_container$Names","_container$Names$","_container$Ports$find","_container$Ports$find2","Names","State","title","Image","Date","Created","toLocaleString","NetworkSettings","Networks","HostConfig","NetworkMode","IPAddress","Ports","port","IP","PublicPort","PrivatePort","responsive","bordered","fontWeight","app_name","app_version","create_time","config_path","volume_data","UninstallConform","closeButton","app","onCloseFatherModal","forwardRef","showUninstallConform","setShowUninstallConform","setButtonDisable","setButtonEnable","useImperativeHandle","sm","marginBottom","disabledButton","enableButton","restartDisable","setRestartDisable","buttonDisable","current_app","currentApp","setCurrentApp","startAppLoading","setStartAppLoading","stopAppLoading","setStopAppLoading","restartAppLoading","setRestartAppLoading","childRef","useRef","setUninstallButtonDisable","current","setUninstallButtonEnable","tabContents","icon","text","AppOverview","AppAccess","AppContainer","Uninstall","showFlag","dialogClassName","alignItems","src","image_url","alt","onError","DefaultImg","marginTop","flexGrow","justifyContent","OverlayTrigger","placement","overlay","Tooltip","borderRadius","marginRight","Link","to","pathname","search","borderColor","Tab","Container","defaultActiveKey","Nav","tab","renderElement","Item","eventKey","classnames","Content","height","Pane","ErrorInfoModal","status_reason","Code","Detail","timer","showModal","setShowModal","showErrorInfo","setShowErrorInfo","isLoading","setIsLoading","selectedApp","setSelectedApp","_useState25","_useState26","apps","setApps","_useState27","_useState28","_useState29","_useState30","searchString","setSearchString","_useState31","_useState32","selectedStatus","setSelectedStatus","_useState33","_useState34","selectedAppRef","_useState35","_useState36","code","setCode","_useState37","_useState38","setError","_useState39","_useState40","setErrorDetails","_useState41","_useState42","getAllAppsOnce","then","Details","newApps","updatedApp","catch","setInterval","clearInterval","handleDataChange","appActions","NoOfficialAppClick","lg","fontSize","changeStatus","handleInputChange","location","reload","official_app","filteredApps","filter","paddingTop","i","xxl","Dropdown","Toggle","Menu","align","appStatus","condition","hasDivider","item","Divider","handleClick","paddingRight","showError","deleteApp","AppDetailModal"],"sourceRoot":""} \ No newline at end of file diff --git a/cockpit/myapps/build/static/js/main.ffda1723.js b/cockpit/myapps/build/static/js/main.9813c239.js similarity index 99% rename from cockpit/myapps/build/static/js/main.ffda1723.js rename to cockpit/myapps/build/static/js/main.9813c239.js index c7272e86..bc3cfda9 100644 --- a/cockpit/myapps/build/static/js/main.ffda1723.js +++ b/cockpit/myapps/build/static/js/main.9813c239.js @@ -1,3 +1,3 @@ -/*! For license information please see main.ffda1723.js.LICENSE.txt */ -!function(){var e={9470:function(e,t,n){"use strict";n.d(t,{X3:function(){return J},aU:function(){return d},Zq:function(){return B},J0:function(){return S},q_:function(){return w},Ep:function(){return x},WK:function(){return K},RQ:function(){return $},fp:function(){return T},cP:function(){return O},pC:function(){return W},Zn:function(){return Q}});var r=n(3144),o=n(5671),i=n(136),a=n(7277),u=n(1120),l=n(9611);var s=n(8814);function c(e,t,n){return c=(0,s.Z)()?Reflect.construct.bind():function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&(0,l.Z)(o,n.prototype),o},c.apply(null,arguments)}function f(e){var t="function"===typeof Map?new Map:void 0;return f=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!==typeof e)throw new TypeError("Super expression must either be null or a function");if("undefined"!==typeof t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return c(e,arguments,(0,u.Z)(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),(0,l.Z)(r,e)},f(e)}var d,p=n(9439),h=n(4506),v=n(7762),y=n(3433);function m(){return m=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(n),e=e.substr(0,n));var r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function C(e,t,n,r){void 0===r&&(r={});var o=r,i=o.window,a=void 0===i?document.defaultView:i,u=o.v5Compat,l=void 0!==u&&u,s=a.history,c=d.Pop,f=null,p=h();function h(){return(s.state||{idx:null}).idx}function v(){c=d.Pop;var e=h(),t=null==e?null:e-p;p=e,f&&f({action:c,location:g.location,delta:t})}function y(e){var t="null"!==a.location.origin?a.location.origin:a.location.href,n="string"===typeof e?e:x(e);return S(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==p&&(p=0,s.replaceState(m({},s.state,{idx:p}),""));var g={get action(){return c},get location(){return e(a,s)},listen:function(e){if(f)throw new Error("A history only accepts one active listener");return a.addEventListener(b,v),f=e,function(){a.removeEventListener(b,v),f=null}},createHref:function(e){return t(a,e)},createURL:y,encodeLocation:function(e){var t=y(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){c=d.Push;var r=_(g.location,e,t);n&&n(r,e);var o=E(r,p=h()+1),i=g.createHref(r);try{s.pushState(o,"",i)}catch(u){a.location.assign(i)}l&&f&&f({action:c,location:g.location,delta:1})},replace:function(e,t){c=d.Replace;var r=_(g.location,e,t);n&&n(r,e);var o=E(r,p=h()),i=g.createHref(r);s.replaceState(o,"",i),l&&f&&f({action:c,location:g.location,delta:0})},go:function(e){return s.go(e)}};return g}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(g||(g={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function T(e,t,n){void 0===n&&(n="/");var r=Q(("string"===typeof t?O(t):t).pathname||"/",n);if(null==r)return null;var o=N(e);!function(e){e.sort((function(e,t){return e.score!==t.score?t.score-e.score:function(e,t){var n=e.length===t.length&&e.slice(0,-1).every((function(e,n){return e===t[n]}));return n?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((function(e){return e.childrenIndex})),t.routesMeta.map((function(e){return e.childrenIndex})))}))}(o);for(var i=null,a=0;null==i&&a0&&(S(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+u+'".'),N(e.children,t,l,u)),(null!=e.path||e.index)&&t.push({path:u,score:M(u,e.index),routesMeta:l})};return e.forEach((function(e,t){var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?")){var r,i=(0,v.Z)(P(e.path));try{for(i.s();!(r=i.n()).done;){var a=r.value;o(e,t,a)}}catch(u){i.e(u)}finally{i.f()}}else o(e,t)})),t}function P(e){var t=e.split("/");if(0===t.length)return[];var n=(0,h.Z)(t),r=n[0],o=n.slice(1),i=r.endsWith("?"),a=r.replace(/\?$/,"");if(0===o.length)return i?[a,""]:[a];var u=P(o.join("/")),l=[];return l.push.apply(l,(0,y.Z)(u.map((function(e){return""===e?a:[a,e].join("/")})))),i&&l.push.apply(l,(0,y.Z)(u)),l.map((function(t){return e.startsWith("/")&&""===t?"/":t}))}var D=/^:\w+$/,R=3,I=2,j=1,L=10,F=-2,A=function(e){return"*"===e};function M(e,t){var n=e.split("/"),r=n.length;return n.some(A)&&(r+=F),t&&(r+=I),n.filter((function(e){return!A(e)})).reduce((function(e,t){return e+(D.test(t)?R:""===t?j:L)}),r)}function z(e,t){for(var n=e.routesMeta,r={},o="/",i=[],a=0;a and the router will parse it for you.'}function B(e){return e.filter((function(e,t){return 0===t||e.route.path&&e.route.path.length>0}))}function W(e,t,n,r){var o;void 0===r&&(r=!1),"string"===typeof e?o=O(e):(S(!(o=m({},e)).pathname||!o.pathname.includes("?"),U("?","pathname","search",o)),S(!o.pathname||!o.pathname.includes("#"),U("#","pathname","hash",o)),S(!o.search||!o.search.includes("#"),U("#","search","hash",o)));var i,a=""===e||""===o.pathname,u=a?"/":o.pathname;if(r||null==u)i=n;else{var l=t.length-1;if(u.startsWith("..")){for(var s=u.split("/");".."===s[0];)s.shift(),l-=1;o.pathname=s.join("/")}i=l>=0?t[l]:"/"}var c=function(e,t){void 0===t&&(t="/");var n="string"===typeof e?O(e):e,r=n.pathname,o=n.search,i=void 0===o?"":o,a=n.hash,u=void 0===a?"":a,l=r?r.startsWith("/")?r:function(e,t){var n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((function(e){".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(r,t):t;return{pathname:l,search:Z(i),hash:G(u)}}(o,i),f=u&&"/"!==u&&u.endsWith("/"),d=(a||"."===u)&&n.endsWith("/");return c.pathname.endsWith("/")||!f&&!d||(c.pathname+="/"),c}var $=function(e){return e.join("/").replace(/\/\/+/g,"/")},H=function(e){return e.replace(/\/+$/,"").replace(/^\/*/,"/")},Z=function(e){return e&&"?"!==e?e.startsWith("?")?e:"?"+e:""},G=function(e){return e&&"#"!==e?e.startsWith("#")?e:"#"+e:""},J=function(e){(0,i.Z)(n,e);var t=(0,a.Z)(n);function n(){return(0,o.Z)(this,n),t.apply(this,arguments)}return(0,r.Z)(n)}(f(Error));function K(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}var Y=["post","put","patch","delete"],X=(new Set(Y),["get"].concat(Y));new Set(X),new Set([301,302,303,307,308]),new Set([307,308]),"undefined"!==typeof window&&"undefined"!==typeof window.document&&window.document.createElement;Symbol("deferred")},1694:function(e,t){var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t