From e1c413f5add8f73db13e843e405a474946d645b2 Mon Sep 17 00:00:00 2001 From: baha Date: Mon, 10 Feb 2025 15:30:05 +0000 Subject: [PATCH] [fix] location after closing popup --- ...8880.js => Container.bundle.1739201236.js} | 0 ...s.gz => Container.bundle.1739201236.js.gz} | Bin ...80.js => Inctance-HA.bundle.1739201236.js} | 0 ...gz => Inctance-HA.bundle.1739201236.js.gz} | Bin ...lCloud_website_white-07-01.1739201236.png} | Bin ...ud.1739198880.png => cloud.1739201236.png} | Bin ...39198880.svg => empty-card.1739201236.svg} | 0 ...98880.png => load-balancer.1739201236.png} | Bin ...39198880.png => login-full.1739201236.png} | Bin ...r.1739198880.png => router.1739201236.png} | Bin .../static/auth.bundle.1739198880.js | 1 - .../static/auth.bundle.1739198880.js.gz | Bin 7770 -> 0 bytes .../static/auth.bundle.1739201236.js | 1 + .../static/auth.bundle.1739201236.js.gz | Bin 0 -> 7772 bytes ...739198880.js => base.bundle.1739201236.js} | 0 ...880.js.gz => base.bundle.1739201236.js.gz} | Bin ...39198880.js => basic.bundle.1739201236.js} | 2 +- ...80.js.gz => basic.bundle.1739201236.js.gz} | Bin 80637 -> 80636 bytes ...9198880.js => common.bundle.1739201236.js} | 0 ...0.js.gz => common.bundle.1739201236.js.gz} | Bin ...198880.js => compute.bundle.1739201236.js} | 0 ....js.gz => compute.bundle.1739201236.js.gz} | Bin ....js => configuration.bundle.1739201236.js} | 0 ... => configuration.bundle.1739201236.js.gz} | Bin ...s => container-infra.bundle.1739201236.js} | 0 ...> container-infra.bundle.1739201236.js.gz} | Bin ...739198880.js => heat.bundle.1739201236.js} | 0 ...880.js.gz => heat.bundle.1739201236.js.gz} | Bin ...98880.js => identity.bundle.1739201236.js} | 0 ...js.gz => identity.bundle.1739201236.js.gz} | Bin skyline_console/static/index.html | 2 +- ...739198880.js => main.bundle.1739201236.js} | 0 ...880.js.gz => main.bundle.1739201236.js.gz} | Bin ...880.js => management.bundle.1739201236.js} | 0 ...js => monitor-center.bundle.1739201236.js} | 0 ...=> monitor-center.bundle.1739201236.js.gz} | Bin .../static/network.bundle.1739198880.js.gz | Bin 86796 -> 0 bytes ...198880.js => network.bundle.1739201236.js} | 2 +- .../static/network.bundle.1739201236.js.gz | Bin 0 -> 86796 bytes ...me.1739198880.js => runtime.1739201236.js} | 2 +- ...39198880.js => share.bundle.1739201236.js} | 0 ...80.js.gz => share.bundle.1739201236.js.gz} | Bin ...198880.js => storage.bundle.1739201236.js} | 0 ....js.gz => storage.bundle.1739201236.js.gz} | Bin ...80.js => user-center.bundle.1739201236.js} | 0 ...gz => user-center.bundle.1739201236.js.gz} | Bin ...9198880.js => vendor.bundle.1739201236.js} | 0 ...0.js.gz => vendor.bundle.1739201236.js.gz} | Bin src/layouts/Auth/index.jsx | 2 +- src/pages/auth/containers/Login/index.jsx | 3 +-- 50 files changed, 7 insertions(+), 8 deletions(-) rename skyline_console/static/{Container.bundle.1739198880.js => Container.bundle.1739201236.js} (100%) rename skyline_console/static/{Container.bundle.1739198880.js.gz => Container.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{Inctance-HA.bundle.1739198880.js => Inctance-HA.bundle.1739201236.js} (100%) rename skyline_console/static/{Inctance-HA.bundle.1739198880.js.gz => Inctance-HA.bundle.1739201236.js.gz} (100%) rename skyline_console/static/asset/image/{FelCloud_website_white-07-01.1739198880.png => FelCloud_website_white-07-01.1739201236.png} (100%) rename skyline_console/static/asset/image/{cloud.1739198880.png => cloud.1739201236.png} (100%) rename skyline_console/static/asset/image/{empty-card.1739198880.svg => empty-card.1739201236.svg} (100%) rename skyline_console/static/asset/image/{load-balancer.1739198880.png => load-balancer.1739201236.png} (100%) rename skyline_console/static/asset/image/{login-full.1739198880.png => login-full.1739201236.png} (100%) rename skyline_console/static/asset/image/{router.1739198880.png => router.1739201236.png} (100%) delete mode 100644 skyline_console/static/auth.bundle.1739198880.js delete mode 100644 skyline_console/static/auth.bundle.1739198880.js.gz create mode 100644 skyline_console/static/auth.bundle.1739201236.js create mode 100644 skyline_console/static/auth.bundle.1739201236.js.gz rename skyline_console/static/{base.bundle.1739198880.js => base.bundle.1739201236.js} (100%) rename skyline_console/static/{base.bundle.1739198880.js.gz => base.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{basic.bundle.1739198880.js => basic.bundle.1739201236.js} (99%) rename skyline_console/static/{basic.bundle.1739198880.js.gz => basic.bundle.1739201236.js.gz} (54%) rename skyline_console/static/{common.bundle.1739198880.js => common.bundle.1739201236.js} (100%) rename skyline_console/static/{common.bundle.1739198880.js.gz => common.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{compute.bundle.1739198880.js => compute.bundle.1739201236.js} (100%) rename skyline_console/static/{compute.bundle.1739198880.js.gz => compute.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{configuration.bundle.1739198880.js => configuration.bundle.1739201236.js} (100%) rename skyline_console/static/{configuration.bundle.1739198880.js.gz => configuration.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{container-infra.bundle.1739198880.js => container-infra.bundle.1739201236.js} (100%) rename skyline_console/static/{container-infra.bundle.1739198880.js.gz => container-infra.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{heat.bundle.1739198880.js => heat.bundle.1739201236.js} (100%) rename skyline_console/static/{heat.bundle.1739198880.js.gz => heat.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{identity.bundle.1739198880.js => identity.bundle.1739201236.js} (100%) rename skyline_console/static/{identity.bundle.1739198880.js.gz => identity.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{main.bundle.1739198880.js => main.bundle.1739201236.js} (100%) rename skyline_console/static/{main.bundle.1739198880.js.gz => main.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{management.bundle.1739198880.js => management.bundle.1739201236.js} (100%) rename skyline_console/static/{monitor-center.bundle.1739198880.js => monitor-center.bundle.1739201236.js} (100%) rename skyline_console/static/{monitor-center.bundle.1739198880.js.gz => monitor-center.bundle.1739201236.js.gz} (100%) delete mode 100644 skyline_console/static/network.bundle.1739198880.js.gz rename skyline_console/static/{network.bundle.1739198880.js => network.bundle.1739201236.js} (99%) create mode 100644 skyline_console/static/network.bundle.1739201236.js.gz rename skyline_console/static/{runtime.1739198880.js => runtime.1739201236.js} (97%) rename skyline_console/static/{share.bundle.1739198880.js => share.bundle.1739201236.js} (100%) rename skyline_console/static/{share.bundle.1739198880.js.gz => share.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{storage.bundle.1739198880.js => storage.bundle.1739201236.js} (100%) rename skyline_console/static/{storage.bundle.1739198880.js.gz => storage.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{user-center.bundle.1739198880.js => user-center.bundle.1739201236.js} (100%) rename skyline_console/static/{user-center.bundle.1739198880.js.gz => user-center.bundle.1739201236.js.gz} (100%) rename skyline_console/static/{vendor.bundle.1739198880.js => vendor.bundle.1739201236.js} (100%) rename skyline_console/static/{vendor.bundle.1739198880.js.gz => vendor.bundle.1739201236.js.gz} (100%) diff --git a/skyline_console/static/Container.bundle.1739198880.js b/skyline_console/static/Container.bundle.1739201236.js similarity index 100% rename from skyline_console/static/Container.bundle.1739198880.js rename to skyline_console/static/Container.bundle.1739201236.js diff --git a/skyline_console/static/Container.bundle.1739198880.js.gz b/skyline_console/static/Container.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/Container.bundle.1739198880.js.gz rename to skyline_console/static/Container.bundle.1739201236.js.gz diff --git a/skyline_console/static/Inctance-HA.bundle.1739198880.js b/skyline_console/static/Inctance-HA.bundle.1739201236.js similarity index 100% rename from skyline_console/static/Inctance-HA.bundle.1739198880.js rename to skyline_console/static/Inctance-HA.bundle.1739201236.js diff --git a/skyline_console/static/Inctance-HA.bundle.1739198880.js.gz b/skyline_console/static/Inctance-HA.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/Inctance-HA.bundle.1739198880.js.gz rename to skyline_console/static/Inctance-HA.bundle.1739201236.js.gz diff --git a/skyline_console/static/asset/image/FelCloud_website_white-07-01.1739198880.png b/skyline_console/static/asset/image/FelCloud_website_white-07-01.1739201236.png similarity index 100% rename from skyline_console/static/asset/image/FelCloud_website_white-07-01.1739198880.png rename to skyline_console/static/asset/image/FelCloud_website_white-07-01.1739201236.png diff --git a/skyline_console/static/asset/image/cloud.1739198880.png b/skyline_console/static/asset/image/cloud.1739201236.png similarity index 100% rename from skyline_console/static/asset/image/cloud.1739198880.png rename to skyline_console/static/asset/image/cloud.1739201236.png diff --git a/skyline_console/static/asset/image/empty-card.1739198880.svg b/skyline_console/static/asset/image/empty-card.1739201236.svg similarity index 100% rename from skyline_console/static/asset/image/empty-card.1739198880.svg rename to skyline_console/static/asset/image/empty-card.1739201236.svg diff --git a/skyline_console/static/asset/image/load-balancer.1739198880.png b/skyline_console/static/asset/image/load-balancer.1739201236.png similarity index 100% rename from skyline_console/static/asset/image/load-balancer.1739198880.png rename to skyline_console/static/asset/image/load-balancer.1739201236.png diff --git a/skyline_console/static/asset/image/login-full.1739198880.png b/skyline_console/static/asset/image/login-full.1739201236.png similarity index 100% rename from skyline_console/static/asset/image/login-full.1739198880.png rename to skyline_console/static/asset/image/login-full.1739201236.png diff --git a/skyline_console/static/asset/image/router.1739198880.png b/skyline_console/static/asset/image/router.1739201236.png similarity index 100% rename from skyline_console/static/asset/image/router.1739198880.png rename to skyline_console/static/asset/image/router.1739201236.png diff --git a/skyline_console/static/auth.bundle.1739198880.js b/skyline_console/static/auth.bundle.1739198880.js deleted file mode 100644 index 15993954..00000000 --- a/skyline_console/static/auth.bundle.1739198880.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{1238:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(416)),i=a(n(1711)),l=e=>(0,o.default)(i.default,e);t.default=l},1492:function(e,t,n){"use strict";var r=n(162),a=n(20),o=n(25),i=n(21);a(t,"__esModule",{value:!0}),t.default=void 0;var l=i(n(54)),s=i(n(77)),d=i(n(58));n(1261);var u=i(n(1262)),f=i(n(343)),c=i(n(35)),m=i(n(570)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},i=a&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=i?o(e,l):null;s&&(s.get||s.set)?a(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(n(0)),h=(n(161),i(n(16))),g=i(n(4));function _(e){if("function"!=typeof r)return null;var t=new r,n=new r;return(_=function(e){return e?n:t})(e)}class x extends p.Component{constructor(){super(...arguments),(0,c.default)(this,"renderFormItem",(e=>{var{render:t}=e;return t?t():null})),(0,c.default)(this,"getFormItemRules",(e=>{var{rules:t,required:n=!1,message:r,otherRule:a}=e;if((0,m.default)(e,"rules"))return t;var o={required:n};return r&&(o.message=r),a?[o,a]:[o]})),(0,c.default)(this,"renderFormItems",(()=>{var{formItems:e}=this.props;return(0,l.default)(e).call(e,((e,t)=>{var n,{name:r,hidden:a,dependencies:o=[],className:i,onChange:l,extra:d,label:c}=e,m={name:r,rules:this.getFormItemRules(e),hidden:a,dependencies:o,className:i,extra:d,label:c};return l&&(m.onChange=l),p.default.createElement(u.default.Item,(0,f.default)({},m,{key:(0,s.default)(n="".concat(r,"-")).call(n,t)}),this.renderFormItem(e))}))}))}render(){var e=this.props,{formItems:t,formref:n,className:r}=e,a=(0,d.default)(e,["formItems","formref","className"]);return p.default.createElement(u.default,(0,f.default)({ref:n,className:(0,g.default)(r,"simple-form")},a,{style:{color:"white !important"}}),this.renderFormItems())}}t.default=x,(0,c.default)(x,"propTypes",{name:h.default.string,className:h.default.string,initialValues:h.default.object,onFinish:h.default.func,size:h.default.string,formItems:h.default.array,formref:h.default.any}),(0,c.default)(x,"defaultProps",{initialValues:{},size:"large",formItems:[],onFinish:e=>{}})},1711:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(1712)),i=a(n(1723)),l=a(n(1750)),s="/auth",d=[{path:s,component:o.default,routes:[{path:"".concat(s,"/login"),component:i.default,exact:!0},{path:"".concat(s,"/change-password"),component:l.default,exact:!0}]}];t.default=d},1712:function(e,t,n){"use strict";var r=n(162),a=n(20),o=n(25),i=n(21);a(t,"__esModule",{value:!0}),t.default=t.AuthLayout=void 0;var l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},i=a&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=i?o(e,l):null;s&&(s.get||s.set)?a(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(n(0)),s=n(412),d=i(n(416)),u=i(n(1713)),f=i(n(1719)),c=i(n(1720)),m=i(n(1721));function p(e){if("function"!=typeof r)return null;var t=new r,n=new r;return(p=function(e){return e?n:t})(e)}class h extends l.Component{constructor(e){super(e),this.routes=e.route.routes}renderRight(){return l.default.createElement("div",{className:m.default.right},l.default.createElement("img",{alt:"",className:m.default["login-full-image"],src:c.default}),l.default.createElement("div",{className:m.default["full-image-front"]}),l.default.createElement("img",{src:f.default,alt:"",className:m.default["login-right-logo"],style:{maxWidth:"200px"}}))}render(){return l.default.createElement("div",{className:m.default.container},l.default.createElement("div",{className:m.default.left,style:{background:"linear-gradient(-240deg, #3f004a 50%, #000000 100%)",color:"white"}},l.default.createElement("div",{className:m.default.lang},l.default.createElement(u.default,null)),l.default.createElement("div",{style:{padding:"2px"}},"tag : 5e5d471516"),l.default.createElement("div",{className:m.default.main},l.default.createElement("div",{className:m.default.top},l.default.createElement("div",{className:m.default.header,style:{width:"fit-content"}},l.default.createElement("img",{alt:"logo",className:m.default.logo,src:f.default}))),(0,d.default)(this.routes))),this.renderRight())}}t.AuthLayout=h;var g=(0,s.inject)("rootStore")((0,s.observer)(h));t.default=g},1713:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0,n(586);var o=a(n(424)),i=a(n(1344));n(1276);var l=a(n(421)),s=a(n(54)),d=(n(161),a(n(237))),u=a(n(0)),f=a(n(4)),c=(n(564),a(n(1717))),{getLocale:m,setLocale:p,SUPPORT_LOCALES:h}=d.default,g=e=>{if(h.length<=1)return null;var{className:t}=e,n=m(),r=(0,s.default)(h).call(h,(e=>e.value)),a=(0,s.default)(h).call(h,(e=>e.name)),d=(0,s.default)(h).call(h,(e=>e.icon)),g=u.default.createElement(l.default,{className:c.default.menu,selectedKeys:[n],onClick:e=>{var{key:t}=e;p(t,!1)}},(0,s.default)(r).call(r,((e,t)=>u.default.createElement(l.default.Item,{key:e},u.default.createElement("span",{role:"img","aria-label":a[t]},d[t])," ",a[t]))));return u.default.createElement(o.default,{overlay:g,placement:"bottomRight"},u.default.createElement("span",{className:(0,f.default)(c.default["drop-down"],t)},u.default.createElement(i.default,null)))};t.default=g},1717:function(e,t,n){var r=n(1718);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1718:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,".index__menu--25uep .anticon {\n margin-right: 8px;\n}\n.index__menu--25uep .ant-dropdown-menu-item {\n min-width: 160px;\n}\n.index__drop-down--37VUG {\n font-size: 16px;\n line-height: 20px;\n vertical-align: top;\n cursor: pointer;\n}\n.index__drop-down--37VUG > i {\n font-size: 16px !important;\n -webkit-transform: none !important;\n transform: none !important;\n}\n.index__drop-down--37VUG > i svg {\n position: relative;\n top: -1px;\n}\n",""]),t.locals={menu:"index__menu--25uep","drop-down":"index__drop-down--37VUG"}},1719:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/FelCloud_website_white-07-01.1739198880.png"},1720:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/login-full.1739198880.png"},1721:function(e,t,n){var r=n(1722);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1722:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,".index__container--PLjMT {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row;\n flex-flow: row;\n height: 100vh;\n overflow: hidden;\n background-color: #fff;\n}\n.index__container--PLjMT .index__left--1nLBx {\n position: relative;\n width: 576px;\n overflow-y: auto;\n /* TODO wait for RGB\n // background: rgb(253, 249, 252) no-repeat fixed left bottom;\n // background-size: 556px; */\n}\n.index__container--PLjMT .index__left--1nLBx .index__lang--1iG5n {\n position: absolute;\n top: 20px;\n right: 24px;\n width: 20px;\n height: 20px;\n text-align: right;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 {\n margin-top: 10vh;\n padding: 0 130px;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 {\n text-align: center;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF {\n height: 56px;\n line-height: 56px;\n text-align: left;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF a {\n text-decoration: none;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF .index__logo--2IrMw {\n height: 56px;\n margin-right: 16px;\n vertical-align: top;\n}\n.index__container--PLjMT .index__right--1kgDa {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1;\n text-align: center;\n background-color: #21242a;\n}\n.index__login-image--1VBMI {\n margin-top: calc(100vh - 668px);\n}\n.index__login-full-image--3lehL {\n width: 100%;\n height: 100%;\n}\n.index__full-image-front--1vn-y {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(14, 34, 181, 0.15);\n}\n.index__login-right-logo--31US1 {\n position: relative;\n top: -100px;\n}\n",""]),t.locals={container:"index__container--PLjMT",left:"index__left--1nLBx",lang:"index__lang--1iG5n",main:"index__main--1Zm84",top:"index__top--2uGv8",header:"index__header--15dtF",logo:"index__logo--2IrMw",right:"index__right--1kgDa","login-image":"index__login-image--1VBMI","login-full-image":"index__login-full-image--3lehL","full-image-front":"index__full-image-front--1vn-y","login-right-logo":"index__login-right-logo--31US1"}},1723:function(e,n,r){"use strict";var a=r(32),o=r(42),i=r(29),l=r(25),s=r(28),d=r(44),u=r(45),f=r(20),c=r(162),m=r(21);f(n,"__esModule",{value:!0}),n.default=n.Login=void 0;var p=m(r(430)),h=m(r(164)),g=m(r(77)),_=m(r(583)),x=m(r(63)),v=m(r(54));r(231);var w=m(r(341));r(1246);var b=m(r(1247));r(1244);var y=m(r(1245));r(569);var E=m(r(1253));r(568);var S=m(r(415)),P=m(r(617)),L=m(r(49)),O=m(r(35)),k=m(r(177)),C=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=M(t);if(n&&n.has(e))return n.get(e);var r={},a=f&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var i=a?l(e,o):null;i&&(i.get||i.set)?f(r,o,i):r[o]=e[o]}r.default=e,n&&n.set(e,r);return r}(r(0)),I=(r(161),r(412)),T=r(204),R=(r(564),m(r(1492))),j=m(r(1747)),D=m(r(237)),N=m(r(1748));function M(e){if("function"!=typeof c)return null;var t=new c,n=new c;return(M=function(e){return e?n:t})(e)}function F(e,t){var n=a(e);if(o){var r=o(e);t&&(r=i(r).call(r,(function(t){return l(e,t).enumerable}))),n.push.apply(n,r)}return n}function U(e){for(var t=1;t{this.setState({loginTypeOption:t})})),(0,O.default)(this,"getUserId",(e=>{var t;return(0,p.default)(t=e.split(":")[1]).call(t).split(".")[0]})),(0,O.default)(this,"onLoginFailed",((e,t)=>{this.setState({loading:!1});var{data:{detail:n=""}}=e.response,r=n||"";(0,h.default)(r).call(r,"The password is expired and needs to be changed for user")?this.dealWithChangePassword(r,t):this.setState({error:!0,message:r})})),(0,O.default)(this,"onLoginSuccess",(()=>{this.setState({loading:!1,error:!1}),this.rootStore.user&&!(0,k.default)(this.rootStore.user)&&this.rootStore.routing.push(this.nextPage)})),(0,O.default)(this,"onFinish",(e=>{if("sso"!==this.currentLoginType){this.setState({loading:!0,message:"",error:!1});var{password:t,region:n,domain:r}=e,a=U({password:t,region:n},this.getUsernameAndDomain({usernameDomain:r}));this.rootStore.login(a).then((()=>{this.onLoginSuccess()}),(t=>{this.onLoginFailed(t,e)}))}else{var o,i,l=(window.screen.width-400)/2,s=(window.screen.height-300)/2,d=window.open("https://identity.api.felcloud.io/v3/auth/OS-FEDERATION/websso/openid?origin=https://dashboard.felcloud.io/api/openstack/skyline/api/v1/websso","OIDCPopup",(0,g.default)(o=(0,g.default)(i="width=".concat(400,",height=").concat(300,",left=")).call(i,l,",top=")).call(o,s,",resizable=yes,scrollbars=yes"));d?(0,_.default)((()=>{d.close(),window.location.reload()}),7e3):alert("Popup was blocked! Please allow popups for this website.")}})),(0,O.default)(this,"getUsernameAndDomain",(e=>{var{usernameDomain:t}=e,n=(0,p.default)(t).call(t).split("@");return{username:n[0],domain:n[1]||"Default"}})),(0,O.default)(this,"usernameDomainValidator",((e,n)=>{if(!n||!(0,p.default)(n).call(n))return x.default.reject(t("Please input or @!"));var r=(0,p.default)(n).call(n).split("@"),a=t("Please input the correct format: or @.");if(r.length>2)return x.default.reject(new Error(a));var{username:o,domain:i}=this.getUsernameAndDomain({usernameDomain:n});return o&&i?x.default.resolve():x.default.reject(new Error(a))})),(0,O.default)(this,"dealWithChangePassword",((e,t)=>{var n=this.getUserId(e),r={region:t.region,oldPassword:t.password,userId:n};this.rootStore.setPasswordInfo(r),this.rootStore.routing.push("/auth/change-password")})),(0,O.default)(this,"updateDefaultValue",(()=>{this.formRef.current.resetFields(),this.formRef.current&&this.formRef.current.resetFields&&this.formRef.current.resetFields()})),this.init(),this.state={error:!1,message:"",loading:!1,loginTypeOption:this.passwordOption}}componentDidMount(){this.getRegions(),this.getSSO()}getRegions(){var e=this;return(0,L.default)((function*(){yield e.store.fetchRegionList(),e.updateDefaultValue()}))()}getSSO(){var e=this;return(0,L.default)((function*(){try{e.store.fetchSSO()}catch(e){}}))()}get rootStore(){return this.props.rootStore}get info(){var{info:e={}}=this.rootStore;return e||{}}get productName(){var{product_name:e={zh:t("Cloud Platform"),en:"Cloud Platform"}}=this.info,{getLocaleShortName:n}=D.default,r=e[n()]||t("Cloud Platform")||"Cloud Platform";return t("Welcome, {name}",{name:r})}get regions(){var e;return(0,v.default)(e=this.store.regions||[]).call(e,(e=>({label:e,value:e})))}get domains(){return[]}get nextPage(){var{location:e={}}=this.props,{search:t}=e;return t?t.split("=")[1]:"/base/overview"}get enableSSO(){var{sso:{enable_sso:e=!1}={}}=this.store;return e}get ssoProtocols(){return{openid:t("OpenID Connect")}}get SSOOptions(){if(!this.enableSSO)return[];var{sso:{protocols:e=[]}={}}=this.store;return(0,v.default)(e).call(e,(e=>{var{protocol:t,url:n}=e;return U({label:this.ssoProtocols[t]||t,value:n},e)}))}get passwordOption(){return{label:t("Keystone Credentials"),value:"password"}}get loginTypeOptions(){return this.enableSSO?[this.passwordOption,...this.SSOOptions]:[]}get currentLoginType(){var{loginTypeOption:{value:e}={}}=this.state;return"password"===e?"password":"sso"}get currentSSOLink(){var{loginTypeOption:{value:e}={}}=this.state;return e}get defaultValue(){var e={loginType:"password"};return 1===this.regions.length&&(e.region=this.regions[0].value),e}get formItems(){var{error:e,loading:n}=this.state,r=this.currentLoginType,a={name:"submit",render:()=>C.default.createElement(b.default,{gutter:8},C.default.createElement(y.default,{span:12},C.default.createElement(w.default,{loading:n,type:"primary",htmlType:"submit",className:"login-form-button"},t("Log in"))))},o=[{name:"error",hidden:!e,render:()=>C.default.createElement("div",{className:N.default["login-error"]},C.default.createElement(P.default,null),this.getErrorMessage())},{name:"region",required:!0,message:t("Please select your Region!"),render:()=>C.default.createElement(S.default,{placeholder:t("Select a region"),options:this.regions})},{name:"domain",required:!0,render:()=>C.default.createElement(E.default,{placeholder:t(" or @")}),extra:C.default.createElement("span",{style:{color:"white"}},t('Tips: without domain means "Default" domain.')),rules:[{required:!0,validator:this.usernameDomainValidator}]},{name:"username",required:!1,message:t("Please input your Username!"),render:()=>C.default.createElement(E.default,{placeholder:t("Username")}),hidden:!0},{name:"password",required:!0,message:t("Please input your Password!"),render:()=>C.default.createElement(E.default.Password,{placeholder:t("Password")})},{name:"extra",hidden:!0,render:()=>C.default.createElement(b.default,{gutter:8},C.default.createElement(y.default,{span:12},C.default.createElement(T.Link,{to:"password"},t("Forgot your password?"))),C.default.createElement(y.default,{span:12},C.default.createElement(T.Link,{to:"register",className:N.default.register},t("Sign up"))))}],i={name:"loginType",required:!0,message:t("Please select login type!"),extra:C.default.createElement("span",{style:{color:"white"}},t("If you are not sure which authentication method to use, please contact your administrator.")),render:()=>C.default.createElement(S.default,{placeholder:t("Select a login type"),options:this.loginTypeOptions,onChange:this.onLoginTypeChange})};return this.enableSSO?"password"===r?[i,...o,a]:[i,a]:[...o,a]}getErrorMessage(){var{message:e}=this.state;return(0,h.default)(e).call(e,"The account is locked for user")?t("Frequent login failure will cause the account to be temporarily locked, please operate after 5 minutes"):(0,h.default)(e).call(e,"The account is disabled for user")?t("The user has been disabled, please contact the administrator"):(0,h.default)(e).call(e,"You are not authorized for any projects or domains")?t("If you are not authorized to access any project, or if the project you are involved in has been deleted or disabled, contact the platform administrator to reassign the project"):t("Username or password is incorrect")}init(){this.store=j.default,this.formRef=C.default.createRef()}renderExtra(){return null}render(){return C.default.createElement(C.default.Fragment,null,C.default.createElement("h1",{style:{color:"white"},className:N.default.welcome},this.productName," "),C.default.createElement(R.default,{formItems:this.formItems,name:"normal_login",className:N.default["login-form"],initialValues:this.defaultValue,onFinish:this.onFinish,formref:this.formRef,size:"large"}),this.renderExtra())}}n.Login=z;var V=(0,I.inject)("rootStore")((0,I.observer)(z));n.default=V},1747:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=t.SkylineStore=void 0;var o,i,l,s,d=a(n(25)),u=a(n(49)),f=a(n(74)),c=(a(n(35)),a(n(55))),m=(a(n(75)),n(36)),p=a(n(50)),h=a(n(53)),g=(o=class extends h.default{constructor(){super(...arguments),(0,f.default)(this,"domains",i,this),(0,f.default)(this,"regions",l,this),(0,f.default)(this,"sso",s,this)}get client(){return p.default.skyline.contrib}fetchDomainList(){var e=this;return(0,u.default)((function*(){var t=yield e.client.domains();e.domains=t}))()}fetchRegionList(){var e=this;return(0,u.default)((function*(){var t=yield e.client.regions();e.regions=t}))()}fetchSSO(){var e=this;return(0,u.default)((function*(){var t=yield p.default.skyline.sso.list();e.sso=t}))()}},i=(0,c.default)(o.prototype,"domains",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),l=(0,c.default)(o.prototype,"regions",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),s=(0,c.default)(o.prototype,"sso",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),(0,c.default)(o.prototype,"fetchDomainList",[m.action],(0,d.default)(o.prototype,"fetchDomainList"),o.prototype),(0,c.default)(o.prototype,"fetchRegionList",[m.action],(0,d.default)(o.prototype,"fetchRegionList"),o.prototype),(0,c.default)(o.prototype,"fetchSSO",[m.action],(0,d.default)(o.prototype,"fetchSSO"),o.prototype),o);t.SkylineStore=g;var _=new g;t.default=_},1748:function(e,t,n){var r=n(1749);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1749:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__register--2dPww {\n float: right;\n}\n.index__welcome--Wrl8u {\n margin-top: 24px;\n margin-bottom: 24px;\n}\n.index__login-form--2ucoo {\n width: 310px;\n}\n.index__login-error--2XGt4 {\n padding: 8px 12px;\n color: #a43a39;\n font-size: 14px;\n line-height: 1.5;\n background: #f2dede;\n border: 1px solid #a43a39;\n border-radius: 4px;\n}\n.index__login-error--2XGt4 .anticon {\n margin-right: 8px;\n}\n.index__ant-form-item-extra--2TUD6 {\n color: white !important;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",register:"index__register--2dPww",welcome:"index__welcome--Wrl8u","login-form":"index__login-form--2ucoo","login-error":"index__login-error--2XGt4","ant-form-item-extra":"index__ant-form-item-extra--2TUD6"}},1750:function(e,n,r){"use strict";var a=r(162),o=r(20),i=r(25),l=r(21);o(n,"__esModule",{value:!0}),n.default=n.Password=void 0;var s=l(r(91));r(231);var d=l(r(341));r(569);var u=l(r(1253)),f=l(r(617)),c=l(r(35)),m=l(r(177)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=E(t);if(n&&n.has(e))return n.get(e);var r={},a=o&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=a?i(e,l):null;s&&(s.get||s.set)?o(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(r(0)),h=(r(161),r(204)),g=(r(564),r(565)),_=r(412),x=r(36),v=l(r(1255)),w=l(r(1270)),b=l(r(1492)),y=l(r(1780));function E(e){if("function"!=typeof a)return null;var t=new a,n=new a;return(E=function(e){return e?n:t})(e)}class S extends p.Component{constructor(e){super(e),(0,c.default)(this,"formRef",null),(0,c.default)(this,"onFinish",(e=>{var{rootStore:n}=this.props,{userId:r,oldPassword:a}=this.passwordData,{password:o}=e,i={id:r,password:o,original_password:a};this.setState({loading:!0}),v.default.changePasswordUser(i).then((()=>{this.setState({loading:!1}),w.default.success(t("Password changed successfully, please log in again.")),n.setPasswordInfo(null),n.routing.push("/auth/login")}),(e=>{var{response:{data:{error:{message:t}={}}={}}={}}=e;this.setState({error:!0,message:t,loading:!1})}))})),(0,c.default)(this,"getCount",(e=>{try{return e.split("be unique is ")[1].split(".")[0]}catch(e){return 0}})),(0,c.default)(this,"getErrorWord",(e=>{if(!e)return t("Reset failed, please retry");if((0,s.default)(e).call(e,"The new password cannot be identical to a previous password.")>=0){var n=this.getCount(e);return n?"2"===n?t("The password must not be the same as the previous two"):t("The password must not be the same as the previous {num}",{num:n}):t("The password must not be the same as the previous")}return t("Reset failed, please retry")})),this.init(),this.state={error:!1,message:"",loading:!1}}componentDidMount(){var{rootStore:{routing:e}={}}=this.props;this.passwordData&&!(0,m.default)(this.passwordData)||e.push("/auth/login")}componentWillUnmount(){var{rootStore:e}=this.props;e.setPasswordInfo(null)}get passwordData(){var{rootStore:{oldPassword:e}={}}=this.props;return(0,x.toJS)(e)||{}}get defaultValue(){var{oldPassword:e}=this.passwordData;return{oldPassword:e}}get formItems(){var{error:e,message:n,loading:r}=this.state,a=this.getErrorWord(n);return[{name:"hint",render:()=>p.default.createElement("div",{className:y.default.hint},p.default.createElement(f.default,{style:{color:globalCSS.warnColor}}),t("User need to change password"))},{name:"error",hidden:!e,render:()=>p.default.createElement("div",{className:y.default.error},p.default.createElement(f.default,null),a)},{name:"password",required:!0,message:t("Please input your password!"),otherRule:(0,g.getPasswordOtherRule)("password","user",!0),render:()=>p.default.createElement(u.default.Password,{placeholder:t("Password")})},{name:"confirmPassword",required:!0,message:t("Please confirm your password!"),dependencies:["password"],otherRule:(0,g.getPasswordOtherRule)("confirmPassword","user",!0),render:()=>p.default.createElement(u.default.Password,{placeholder:t("Confirm Password")})},{name:"submit",className:y.default.between,render:()=>p.default.createElement(p.default.Fragment,null,p.default.createElement(d.default,{type:"primary",htmlType:"submit",loading:r},t("Confirm")),p.default.createElement(h.Link,{style:{marginLeft:50},to:"/auth/login"},t("Back to login page")))}]}init(){this.formRef=p.default.createRef()}render(){return p.default.createElement(p.default.Fragment,null,p.default.createElement("h1",{className:y.default.welcome},t("Welcome")),p.default.createElement(b.default,{formref:this.formRef,formItems:this.formItems,name:"reset_password",className:y.default.reset,onFinish:this.onFinish,initialValues:this.defaultValue,size:"large",scrollToFirstError:!0}))}}n.Password=S;var P=(0,_.inject)("rootStore")((0,_.observer)(S));n.default=P},1780:function(e,t,n){var r=n(1781);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1781:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__register--3Uzk2 {\n float: right;\n}\n.index__welcome--3RISd {\n margin-top: 24px;\n margin-bottom: 24px;\n}\n.index__hint--1lIUh {\n padding: 8px 12px;\n color: rgba(0, 0, 0, 0.65);\n font-size: 14px;\n line-height: 1.5;\n background: #fffbe6;\n border: 1px solid #ffe58f;\n border-radius: 4px;\n}\n.index__hint--1lIUh .anticon {\n margin-right: 8px;\n}\n.index__reset--1EOoE {\n margin-top: 24px;\n}\n.index__reset--1EOoE .index__title--2znQU {\n margin-bottom: 24px;\n}\n.index__reset--1EOoE .index__info--3bS5M {\n margin-bottom: 24px;\n}\n.index__reset--1EOoE .index__between--10sD1 .ant-form-item-control-input-content {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.index__error--SAQ5q {\n padding-left: 12px;\n color: #a43a39;\n font-size: 14px;\n line-height: 38px;\n background: #f2dede;\n border: 1px solid #a43a39;\n border-radius: 4px;\n}\n.index__error--SAQ5q .anticon {\n margin-right: 8px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",register:"index__register--3Uzk2",welcome:"index__welcome--3RISd",hint:"index__hint--1lIUh",reset:"index__reset--1EOoE",title:"index__title--2znQU",info:"index__info--3bS5M",between:"index__between--10sD1",error:"index__error--SAQ5q"}}}]); \ No newline at end of file diff --git a/skyline_console/static/auth.bundle.1739198880.js.gz b/skyline_console/static/auth.bundle.1739198880.js.gz deleted file mode 100644 index c627cd9ebfefaf59920b78f63c365a7c005ab928..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7770 zcmV-g9;M+QiwFP!000021MNNAcH=gZze00PykrKFMO|#S9LAH_-C57NV^6y~*l?p5ndT$!`nr8X=0US{*d0vMei8H3W27LdKX<1& zbMhjK`-OXSM>8i2Q?J?Z3B|vGf0TIzac^%~{+dVAgt=sXN0TY*?lcxYDe4g$&}mYH zcRY@qhJe6B>ZM*g*!O)Bi|61V2;e0NS@^ZrAY6atd$E2b%s(ojB?}U?Uo^MFHrQ_} zbOCLSe>>Q*M4x^#`biiA%AGbKoQubU19*&N>7nl*L66OS0F8~Oq8Q$r&}JZBTJ07* z_vLd39>?<2g9bcLLVHO5JRW#E#qKVHfAtbeKV!u-OC5Fu_31Q8!Z2hXKf1j46N8cO zgvG;z@qq)Mxf-5Tsy?5q!FAa};F^ZFUf~OnySr(9M01b%x~sH4WCgq{s?HZUb-TO# zXuva1kj04sAs@bW6nTL6iX zz@rf71Ez5i8 zWyfi^Solz~=qEJKoqLDf7c7l(XHq}m;|Wh$TFm=A1vZ}c3!tt)&!<2tuU@ayY&ac5 zeeM%jC;f7r6r(sNZU%5z_KIiYvx1FX;=y`CqRwRnbR05Gk>a@UB#9UPdT2m%4eAXr zU2em}_ijNl_NQr_v8bDdI{_K9Jf}m}%?K|>EW?kw6uSgMLI>lr0|vMXkcPhsB^u@> z$c33aU;$oN(8CNC^YJw&^rm~wZ#E%cB?aQ{`3m`gE(FF8u{HAMB-hi{Ac=*juldsx z3sQn`QZi5J7)Lsaqll$lN+LGFF4KMtl;Pp^4H5JEJvNI8PftcP1==J8raPnEh$OVf zl5QX90}?=kQ-npNmdOveZ0fDj)iQidMOcd7xULZi6A(6fob`UjXu)1444KQDnsV$M z$vY@10xN$^=I_}<7s~UpJPlp94s6?}1*}iE22(3Zmjc;Pmg1PIvx4GfA^*t=Pl^C$ z%?h!mt04HCu|YSrMw}r9X$aUvHiKQegL3j+^&vc&58WFh9iAk_G7Xk-fa+mc4a3jl z@g!k2?AG-cgpzq)Jiu~*g`M!M>&`}T!JHjv#j}E@g}Yc!qTB=GEXsZ8eu>%diHl@< z3!({zDYUYEq4-N+gH#cA6Ydh(?}kFSOct_sj`Y@ z8GSJGW|gN83x9Pm>KQi&98VQJU_H^Xn}8gIt-9sfpM^9c=eT+ldW+2R@Gs3&YtXbgK`9uI*H(g?O0 zfJn32Fr!h7AZpEaBVt41{H8T%G}_eZG`@hBhWK%UM&k<~C}M5!FurHu1Co04how@2 ztHytl0o1@IG>Tx82FeS%6Sts4r|WcBCu$!AonYU64lC8iK=x-1vfz_veK%qhxJ6Ib zOmfp8E^5dFOlVSDEjYoLWG(rjhE%wH;Y%wcs#+OJTwtZ8x+$?C)HZ7q8wvR~429Ml zrzrD%&&@b5u0S#|*Y`vX@8vAJW0~)beB0wO6gzP17uIJ8x-j;A+fCDKms(A$-B$jM z1Jx)|jRLWCQ0*9rjFpW=&DMc0b`h#JnSuOD>>v2aep@z#5sH>`*v`&5YNud|z4_kF-PeTaNzGW-+j;a63#l@M)=!S@`zLHOJB^kR<^YV$nab z2hbH$RDe&Cxc|PZZFDrzguxG53)u;PA4wIhOrez-+xAI(q(LY^vjy4I+|4I61xCv_ zOqyJCF3nfOVLi?h+>-Kn2 z@Ud8b?$g*+tT)TJ>z5l@1UgtP;bT^3$n1G^9~DBYVIx#DOzAB{6uz68wtG)Eh#3%eB?z-ASJJqO~WI7JM%xLjxz>}P3r_*=Wud=^v87Z$8^(&HKaTez9wp5D;+C107S}s zC)jT+gE8|}tF;b(c=w(BW&j&QO&E^wjrhcIaBHuPm_(=9P^G|BfHO^MG>M04*MU7s zl=r7u4x73&;W6wn*%O_9?Zj(4w#Ms)B;UV7a0z>2gw@Y9H#-6^2%&M!*Y?B2Fobmo{R>=+z40bEDtXkus)(GmsLF+~E;_&dWQJ=s< z!XBHA&+W0)zt_SK9$D4R=HJb#ZZRU75HR=Yg^>Gj)387YeM2?}Pz-93K4R58wL zgM{6$RA6CcVL*!-&rtR5IwN@afQTe3O`8@$ zDD!tCQGz>-Y$KhoqOi0QYEs{Kelr*hs_SrtY`Ox?jan^8&%eEYl$1)&bq=)9(x}vc zSae!&QMmV|^Y-HO!kN*y0Ev@1Z@&9h4svhL!V_Q*dtS5CB2KgY0)BOxK9H-Hu?g&C z&LF;Lk%O2yau+>X14GHOP6rWkzTErt;hHkAaG)&yu9Gg4fcA2pfLdLOB_p2I?$K~D!C@Z1&710W1R;iY%W$9WD zT`NGFL9^YY)iKEJS30U{!4KcQK3iRTK!d&~R;X$W*3gg)ktusTZ_~(}Mqk!+5L+jmAc;&#;iu?3S6zB?5VOb$LJyMR(Jx#CHj|-_GY~Uo* zkL5XC>StwwrDol%_=QrEt?>)dF!NeX49H|&yNNEH%xk{D7*!?$G&%k~MCS$6x6xYz ze>>=_$%H?t4}V2uXN(1be>CvY&5otiQmM}obvuYN3CA7)Z^?WNd=B>8!XbjsBAw<| zJa!H-;BYUV_wn&g7NZvmkZ7qSo0%wWwF6NMVnjKodJ=ZCeV{Aavf@EkbVNmG|Aj1n zsmePoRemVTuOz|&X6sx^Y|v3f&Sg0ULM|i@*y6o}BF1s@H;q@l{*-tX4F|isiHTS7 zwec#xb-aqJcvT$IWBD%QRWX<;v5Z&6GF~+RGlr8G<5e8vReZa6RVG}CXQ5!9z$clA zTlwUzU|8VbH&`Wni()?7FPi9E{7KCYG6gvmFTy`bzSk9pcJ%7?=IB*_L-eYzqE~$# zy?Xsb^vZPhN-~L@Jc_deJ#%eTax5r>0U6uQI|IBZLns1J9qjZm%V;lQ!h@X(>#j~G zljOleDY4K4C{cKaC~6)k!r-X*$|M~rx9U;x+utfA37EPt_?^(Sxh`&w?U(L+frBW% zX!^OAhOa!yK7c>jX_P4o1 zC%WOqL~PQ)6e_9dVogTYyPRcbQJIS66lLDh#A*-LJ($&T;lUQ-Uk5je62KIyxDLgQ zn@v3_{9n;HVbNo_Q(^Ax1PdWa<`FGu7X%R~2}u`If))!5uCg3xm@{M-5NqxcbU9k* zh<4wOn4?n^oH&Phm|!xPL(|Af8G{)qxYJ{f%w~v$!3#TG=K9A1wTRK=$G8|tqF*XV zVy3%GxU($d!sBAn);1Gfk>hIG??YpqOtz62M8OVBQjZSv)DhX;-5u!U{Yo&&ZsYIn zE|p@i3BXGaji^h3OD_TQN6?lzF^XMKjO95;IWE5MPqPdd+i z){Imq%fsX|SP#`o$=DvI6{7$!A_Vp!(1<*hE}i!?#?rd55o+y5!{2Lyp0rdeErwc4 zR!2J38g|3fb4Nun$-8@daRh{pVRxjHxISP>AKjSsnD5=SL{iY+#Z~Rq%hQ){zIl6g z@%y+FyiQ#gW3lgl!g`2eAMGKiz2wlD`;sp2+=01-< z;C>W7u$%w^d6M*Kmg6flJ&KM2i`xW&7s3OX!cp#I5Q&Q?L~n&nt%TSmepRu> zC7HY;gMa60g~kBrrXZE|`bj}>gShWJ+84y18*|sHD9_VFpq}$}%$xTu(u)QiQh>Q|ZDesGumv z$99i7Pws$)yN_eBX@=MDYwl83as}112$hozGpdEa#SZa-@Fco4;<&CQGntBSFztFt z(87M8+n=Qaj;h;ZTa(OkT+KJ!$h;F^R;GAdWO`QiSDgJfY@jzQq$Dd|#Vm$odWs8N$zC4Yi*L<2{rkS3; zH)5j9_@LzK>H<)*tE^1vQUg49OUjd{D)OL*ZtB+O5tyt>-ZpQfRW>Lm0Y z9Kl@bQ#jQZ@N{=q+&$(tyo46pW6opE3 z(P?&EzIKJJWA_9&oX6?==k=o)E2>CHB@;_nHudy}L8$C4wFZ@9BEt2us8S93pGr6* zvdckv7DON}cOPbUoYck^M9x~<4sO!qsqE6wvx` zK{hphC>vvjRX1pEZaXX6no*EK(l3k0Gg_m2P2ED_AqH((n<}sx6HzCw4PgH6TGf z&HfF8nvqpcu$+aOwgf&EwYvUr1;t9Y0?(}|RVHzd}A-)vG_N*K}JL8*+B{h4de zJsTjI9GWpF1(M}cc!2u;2veCxsDwyG64oOu&j|gzuyTkqkvNIKvle?a8lztm5Q3!! z_WsW${>l+Ai@;?is65bXdlgG}Kd|!AdM&ASOG5mOW=iPNVTO)e}b(hCnt$%JP# zi<1Wh)XWzK0|7IK4uCD44kqs6SqazgZi{6U=SZ_+9RAO>#;gi>>b!Y&rujyodF4~eF34`;g&d6PB#$7((f@Zt(ovA zvx02*Nw~b=pv=>!x?ZBxC@ltY-N5pBuT2ZKEPs{JAr=WeYNNPxN5Liuv{q=&q=~KK z5SEhw4<&4t;BQJfVjWG_1QD-93S60uDpNPs%I#}Qk9BXB4r8l$R%vdON1T<+k#FX3 zwLK}7gVNQbsT`jw1k z2y7}RuQ6IfauSL2M9q#lWF%5DsG`erH(JotBTSCEQQK_asP^_mYFHy zu_Y2yJRZu>unr6xA+p_79fK8zu96`z0xVeHNGaYf403ZL5!lIP18MCh;z7OJ;FzAv|+ZbCr(3wLZS-1|Ofy5YVng*=yZ+jgFXp4h!k*TX8#nes9JNc4RzU zmEJZxF1P7sm2g1odLnQ?5-++lJndb*%Yc^&GS*~YkJTzdIetTscLworDpE917b_Ds z@NJgGg??7D0akTZE;P$Ehv#=6L&31pFN#9`7z%<>f1&Q@i^a-y5|z%ESY04O1&o`e zlbw%#25Mnh{d9*Vw|`QH)@PsCAu#+W^@Q!0y5M;1v?6hbLfGDlq^6;Dvh7v~{=-Mk zzpTR~&}2f~vEU;OiT zg*see&QTmr?wz2i`q!!AwB4eu7e~uy?Aq&29|ZNzQerh8)@ep8Vk#9I=MLIIM>$V` zvuyCPwuUzVO!KbO-U9zmI{1iZ9R<1Yh+|FI*Z}A4yVHI7xf=2EbwL~QwUzJmMC!i3 zX*Bi^2Ln(JWG0L*?i{ezi=InnG)r~afJK9LLzbP=?7bTmZ;ObUnYH57Xyq%vb$+eW&bkU8qwO9 zv}=<@Jr%_=i5hh9#AHkNWqWz$VPaCG|F%~izWlTlX-w<*1+Mg=$MK_A`tavn>67Uz z4^4_RCPoW;MrB6hpN`14m+8~w9*+s^W2U{DMXa5v7jZ>pPritBYVx2a@~~kiO~2fn zG)*@oO;eRLO|^>ta;qzUuAaO-aVb-G<)T1kFuN*7v#!Zf8l|`ZQ5(l5`lf>3DvKto zWZ6*NMirdWf|4>Pl4G`59L{6>t}G=o?~f+8lM>L;#uQCh$9JX6qLL?s?jA2*&6Hf9 z$V+CW-J^0SEjPVMy;XI1nB~E^-VzajbLbF5D6YskUrryAbWYbM4XNwRP?ayQu9UgM zU6orbqo2kPTF7v%{*N6!mE~Iyd#nqSa<%UI%MP7O?b0%c{1_+6yL7x3m+Hl+Z2cOpZt@ZVn{&zhXA)jW%3U@Jq`skGI0kET%Q$x6*!WtC(K8dhTVxH!F3v%StP7{zHd zono?WO2I>Us};alY`lX~kI| z$&7f$Fa)@5#vwNW>VHlsdSZp5%L|7^8vC&1*9%?adsZhRD(~VEq-{n#eP$F}IJdI# z<(6Yp%~wZPx$XD59LCL-<6gnzXCMBFLVYb6R`YjCj_I*t##p)y8j}t2piS+|o5AK! zrWTdUpOm9P{bdvIk&4Zmiw)7tKgYAsod&?*-HO;1P`{=9_qZITzh;8Rh((0H5^2*x zwaFtvwRNuj&m)x#ovoXnGDv1}QXeBruNoX%2}?Z@F%ucsx8*WjhmmNrDHirr2(5B| zusnbAmcNR#Tnc!hMvKUpF@vv!k#ZS|gDIPWW4Bgt?5YwRyF?5AuZH@EhYw%(jwMW5p%#jUrdkzMy zb2!+_?`aR>lN_F6^}?4gFZj!iRNU0w+^!NA2~0)vL;8nz6(F0bz7`JpA7Ms&SDn|N z14iv(P~6B*19^d6>Ch9wR-V*^=Av&YmEHZ^mu0Qqvr@SQYkf8Th#G-zUa7Z%-+=;RXliD1-`x-e^i+sdKV-F=ngeSwJLp;-}LI6KXm?7SsgWbNy=x10$PWv^p}YR zRB+#FQT)FH|I-}!LQ+5Cz!$O^t(mmE^Tm=>;`}MIu7j}_vrB|fDKDR~M2sA#sj{So gOB5HI%Bn2Tho#*$EaEN}3)t2F2QUp|;IC-_0JQ?_N&o-= diff --git a/skyline_console/static/auth.bundle.1739201236.js b/skyline_console/static/auth.bundle.1739201236.js new file mode 100644 index 00000000..21b6b43a --- /dev/null +++ b/skyline_console/static/auth.bundle.1739201236.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{1238:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(416)),i=a(n(1711)),l=e=>(0,o.default)(i.default,e);t.default=l},1492:function(e,t,n){"use strict";var r=n(162),a=n(20),o=n(25),i=n(21);a(t,"__esModule",{value:!0}),t.default=void 0;var l=i(n(54)),s=i(n(77)),d=i(n(58));n(1261);var u=i(n(1262)),f=i(n(343)),c=i(n(35)),m=i(n(570)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},i=a&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=i?o(e,l):null;s&&(s.get||s.set)?a(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(n(0)),h=(n(161),i(n(16))),g=i(n(4));function _(e){if("function"!=typeof r)return null;var t=new r,n=new r;return(_=function(e){return e?n:t})(e)}class x extends p.Component{constructor(){super(...arguments),(0,c.default)(this,"renderFormItem",(e=>{var{render:t}=e;return t?t():null})),(0,c.default)(this,"getFormItemRules",(e=>{var{rules:t,required:n=!1,message:r,otherRule:a}=e;if((0,m.default)(e,"rules"))return t;var o={required:n};return r&&(o.message=r),a?[o,a]:[o]})),(0,c.default)(this,"renderFormItems",(()=>{var{formItems:e}=this.props;return(0,l.default)(e).call(e,((e,t)=>{var n,{name:r,hidden:a,dependencies:o=[],className:i,onChange:l,extra:d,label:c}=e,m={name:r,rules:this.getFormItemRules(e),hidden:a,dependencies:o,className:i,extra:d,label:c};return l&&(m.onChange=l),p.default.createElement(u.default.Item,(0,f.default)({},m,{key:(0,s.default)(n="".concat(r,"-")).call(n,t)}),this.renderFormItem(e))}))}))}render(){var e=this.props,{formItems:t,formref:n,className:r}=e,a=(0,d.default)(e,["formItems","formref","className"]);return p.default.createElement(u.default,(0,f.default)({ref:n,className:(0,g.default)(r,"simple-form")},a,{style:{color:"white !important"}}),this.renderFormItems())}}t.default=x,(0,c.default)(x,"propTypes",{name:h.default.string,className:h.default.string,initialValues:h.default.object,onFinish:h.default.func,size:h.default.string,formItems:h.default.array,formref:h.default.any}),(0,c.default)(x,"defaultProps",{initialValues:{},size:"large",formItems:[],onFinish:e=>{}})},1711:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(1712)),i=a(n(1723)),l=a(n(1750)),s="/auth",d=[{path:s,component:o.default,routes:[{path:"".concat(s,"/login"),component:i.default,exact:!0},{path:"".concat(s,"/change-password"),component:l.default,exact:!0}]}];t.default=d},1712:function(e,t,n){"use strict";var r=n(162),a=n(20),o=n(25),i=n(21);a(t,"__esModule",{value:!0}),t.default=t.AuthLayout=void 0;var l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},i=a&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=i?o(e,l):null;s&&(s.get||s.set)?a(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(n(0)),s=n(412),d=i(n(416)),u=i(n(1713)),f=i(n(1719)),c=i(n(1720)),m=i(n(1721));function p(e){if("function"!=typeof r)return null;var t=new r,n=new r;return(p=function(e){return e?n:t})(e)}class h extends l.Component{constructor(e){super(e),this.routes=e.route.routes}renderRight(){return l.default.createElement("div",{className:m.default.right},l.default.createElement("img",{alt:"",className:m.default["login-full-image"],src:c.default}),l.default.createElement("div",{className:m.default["full-image-front"]}),l.default.createElement("img",{src:f.default,alt:"",className:m.default["login-right-logo"],style:{maxWidth:"200px"}}))}render(){return l.default.createElement("div",{className:m.default.container},l.default.createElement("div",{className:m.default.left,style:{background:"linear-gradient(-240deg, #3f004a 50%, #000000 100%)",color:"white"}},l.default.createElement("div",{className:m.default.lang},l.default.createElement(u.default,null)),l.default.createElement("div",{style:{padding:"2px"}},"tag : 3e19b4894b"),l.default.createElement("div",{className:m.default.main},l.default.createElement("div",{className:m.default.top},l.default.createElement("div",{className:m.default.header,style:{width:"fit-content"}},l.default.createElement("img",{alt:"logo",className:m.default.logo,src:f.default}))),(0,d.default)(this.routes))),this.renderRight())}}t.AuthLayout=h;var g=(0,s.inject)("rootStore")((0,s.observer)(h));t.default=g},1713:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0,n(586);var o=a(n(424)),i=a(n(1344));n(1276);var l=a(n(421)),s=a(n(54)),d=(n(161),a(n(237))),u=a(n(0)),f=a(n(4)),c=(n(564),a(n(1717))),{getLocale:m,setLocale:p,SUPPORT_LOCALES:h}=d.default,g=e=>{if(h.length<=1)return null;var{className:t}=e,n=m(),r=(0,s.default)(h).call(h,(e=>e.value)),a=(0,s.default)(h).call(h,(e=>e.name)),d=(0,s.default)(h).call(h,(e=>e.icon)),g=u.default.createElement(l.default,{className:c.default.menu,selectedKeys:[n],onClick:e=>{var{key:t}=e;p(t,!1)}},(0,s.default)(r).call(r,((e,t)=>u.default.createElement(l.default.Item,{key:e},u.default.createElement("span",{role:"img","aria-label":a[t]},d[t])," ",a[t]))));return u.default.createElement(o.default,{overlay:g,placement:"bottomRight"},u.default.createElement("span",{className:(0,f.default)(c.default["drop-down"],t)},u.default.createElement(i.default,null)))};t.default=g},1717:function(e,t,n){var r=n(1718);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1718:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,".index__menu--25uep .anticon {\n margin-right: 8px;\n}\n.index__menu--25uep .ant-dropdown-menu-item {\n min-width: 160px;\n}\n.index__drop-down--37VUG {\n font-size: 16px;\n line-height: 20px;\n vertical-align: top;\n cursor: pointer;\n}\n.index__drop-down--37VUG > i {\n font-size: 16px !important;\n -webkit-transform: none !important;\n transform: none !important;\n}\n.index__drop-down--37VUG > i svg {\n position: relative;\n top: -1px;\n}\n",""]),t.locals={menu:"index__menu--25uep","drop-down":"index__drop-down--37VUG"}},1719:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/FelCloud_website_white-07-01.1739201236.png"},1720:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/login-full.1739201236.png"},1721:function(e,t,n){var r=n(1722);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1722:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,".index__container--PLjMT {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row;\n flex-flow: row;\n height: 100vh;\n overflow: hidden;\n background-color: #fff;\n}\n.index__container--PLjMT .index__left--1nLBx {\n position: relative;\n width: 576px;\n overflow-y: auto;\n /* TODO wait for RGB\n // background: rgb(253, 249, 252) no-repeat fixed left bottom;\n // background-size: 556px; */\n}\n.index__container--PLjMT .index__left--1nLBx .index__lang--1iG5n {\n position: absolute;\n top: 20px;\n right: 24px;\n width: 20px;\n height: 20px;\n text-align: right;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 {\n margin-top: 10vh;\n padding: 0 130px;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 {\n text-align: center;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF {\n height: 56px;\n line-height: 56px;\n text-align: left;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF a {\n text-decoration: none;\n}\n.index__container--PLjMT .index__left--1nLBx .index__main--1Zm84 .index__top--2uGv8 .index__header--15dtF .index__logo--2IrMw {\n height: 56px;\n margin-right: 16px;\n vertical-align: top;\n}\n.index__container--PLjMT .index__right--1kgDa {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1;\n text-align: center;\n background-color: #21242a;\n}\n.index__login-image--1VBMI {\n margin-top: calc(100vh - 668px);\n}\n.index__login-full-image--3lehL {\n width: 100%;\n height: 100%;\n}\n.index__full-image-front--1vn-y {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(14, 34, 181, 0.15);\n}\n.index__login-right-logo--31US1 {\n position: relative;\n top: -100px;\n}\n",""]),t.locals={container:"index__container--PLjMT",left:"index__left--1nLBx",lang:"index__lang--1iG5n",main:"index__main--1Zm84",top:"index__top--2uGv8",header:"index__header--15dtF",logo:"index__logo--2IrMw",right:"index__right--1kgDa","login-image":"index__login-image--1VBMI","login-full-image":"index__login-full-image--3lehL","full-image-front":"index__full-image-front--1vn-y","login-right-logo":"index__login-right-logo--31US1"}},1723:function(e,n,r){"use strict";var a=r(32),o=r(42),i=r(29),l=r(25),s=r(28),d=r(44),u=r(45),f=r(20),c=r(162),m=r(21);f(n,"__esModule",{value:!0}),n.default=n.Login=void 0;var p=m(r(430)),h=m(r(164)),g=m(r(77)),_=m(r(583)),x=m(r(63)),v=m(r(54));r(231);var w=m(r(341));r(1246);var b=m(r(1247));r(1244);var y=m(r(1245));r(569);var E=m(r(1253));r(568);var S=m(r(415)),P=m(r(617)),L=m(r(49)),O=m(r(35)),k=m(r(177)),C=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=M(t);if(n&&n.has(e))return n.get(e);var r={},a=f&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var i=a?l(e,o):null;i&&(i.get||i.set)?f(r,o,i):r[o]=e[o]}r.default=e,n&&n.set(e,r);return r}(r(0)),I=(r(161),r(412)),T=r(204),R=(r(564),m(r(1492))),j=m(r(1747)),D=m(r(237)),N=m(r(1748));function M(e){if("function"!=typeof c)return null;var t=new c,n=new c;return(M=function(e){return e?n:t})(e)}function F(e,t){var n=a(e);if(o){var r=o(e);t&&(r=i(r).call(r,(function(t){return l(e,t).enumerable}))),n.push.apply(n,r)}return n}function U(e){for(var t=1;t{this.setState({loginTypeOption:t})})),(0,O.default)(this,"getUserId",(e=>{var t;return(0,p.default)(t=e.split(":")[1]).call(t).split(".")[0]})),(0,O.default)(this,"onLoginFailed",((e,t)=>{this.setState({loading:!1});var{data:{detail:n=""}}=e.response,r=n||"";(0,h.default)(r).call(r,"The password is expired and needs to be changed for user")?this.dealWithChangePassword(r,t):this.setState({error:!0,message:r})})),(0,O.default)(this,"onLoginSuccess",(()=>{this.setState({loading:!1,error:!1}),this.rootStore.user&&!(0,k.default)(this.rootStore.user)&&this.rootStore.routing.push(this.nextPage)})),(0,O.default)(this,"onFinish",(e=>{if("sso"!==this.currentLoginType){this.setState({loading:!0,message:"",error:!1});var{password:t,region:n,domain:r}=e,a=U({password:t,region:n},this.getUsernameAndDomain({usernameDomain:r}));this.rootStore.login(a).then((()=>{this.onLoginSuccess()}),(t=>{this.onLoginFailed(t,e)}))}else{var o,i,l=(window.screen.width-400)/2,s=(window.screen.height-300)/2,d=window.open("https://identity.api.felcloud.io/v3/auth/OS-FEDERATION/websso/openid?origin=https://dashboard.felcloud.io/api/openstack/skyline/api/v1/websso","OIDCPopup",(0,g.default)(o=(0,g.default)(i="width=".concat(400,",height=").concat(300,",left=")).call(i,l,",top=")).call(o,s,",resizable=yes,scrollbars=yes"));d?(0,_.default)((()=>{d.close(),window.location.href="/base/overview"}),7e3):alert("Popup was blocked! Please allow popups for this website.")}})),(0,O.default)(this,"getUsernameAndDomain",(e=>{var{usernameDomain:t}=e,n=(0,p.default)(t).call(t).split("@");return{username:n[0],domain:n[1]||"Default"}})),(0,O.default)(this,"usernameDomainValidator",((e,n)=>{if(!n||!(0,p.default)(n).call(n))return x.default.reject(t("Please input or @!"));var r=(0,p.default)(n).call(n).split("@"),a=t("Please input the correct format: or @.");if(r.length>2)return x.default.reject(new Error(a));var{username:o,domain:i}=this.getUsernameAndDomain({usernameDomain:n});return o&&i?x.default.resolve():x.default.reject(new Error(a))})),(0,O.default)(this,"dealWithChangePassword",((e,t)=>{var n=this.getUserId(e),r={region:t.region,oldPassword:t.password,userId:n};this.rootStore.setPasswordInfo(r),this.rootStore.routing.push("/auth/change-password")})),(0,O.default)(this,"updateDefaultValue",(()=>{this.formRef.current.resetFields(),this.formRef.current&&this.formRef.current.resetFields&&this.formRef.current.resetFields()})),this.init(),this.state={error:!1,message:"",loading:!1,loginTypeOption:this.passwordOption}}componentDidMount(){this.getRegions(),this.getSSO()}getRegions(){var e=this;return(0,L.default)((function*(){yield e.store.fetchRegionList(),e.updateDefaultValue()}))()}getSSO(){var e=this;return(0,L.default)((function*(){try{e.store.fetchSSO()}catch(e){}}))()}get rootStore(){return this.props.rootStore}get info(){var{info:e={}}=this.rootStore;return e||{}}get productName(){var{product_name:e={zh:t("Cloud Platform"),en:"Cloud Platform"}}=this.info,{getLocaleShortName:n}=D.default,r=e[n()]||t("Cloud Platform")||"Cloud Platform";return t("Welcome, {name}",{name:r})}get regions(){var e;return(0,v.default)(e=this.store.regions||[]).call(e,(e=>({label:e,value:e})))}get domains(){return[]}get nextPage(){var{location:e={}}=this.props,{search:t}=e;return t?t.split("=")[1]:"/base/overview"}get enableSSO(){var{sso:{enable_sso:e=!1}={}}=this.store;return e}get ssoProtocols(){return{openid:t("OpenID Connect")}}get SSOOptions(){if(!this.enableSSO)return[];var{sso:{protocols:e=[]}={}}=this.store;return(0,v.default)(e).call(e,(e=>{var{protocol:t,url:n}=e;return U({label:this.ssoProtocols[t]||t,value:n},e)}))}get passwordOption(){return{label:t("Keystone Credentials"),value:"password"}}get loginTypeOptions(){return this.enableSSO?[this.passwordOption,...this.SSOOptions]:[]}get currentLoginType(){var{loginTypeOption:{value:e}={}}=this.state;return"password"===e?"password":"sso"}get currentSSOLink(){var{loginTypeOption:{value:e}={}}=this.state;return e}get defaultValue(){var e={loginType:"password"};return 1===this.regions.length&&(e.region=this.regions[0].value),e}get formItems(){var{error:e,loading:n}=this.state,r=this.currentLoginType,a={name:"submit",render:()=>C.default.createElement(b.default,{gutter:8},C.default.createElement(y.default,{span:12},C.default.createElement(w.default,{loading:n,type:"primary",htmlType:"submit",className:"login-form-button"},t("Log in"))))},o=[{name:"error",hidden:!e,render:()=>C.default.createElement("div",{className:N.default["login-error"]},C.default.createElement(P.default,null),this.getErrorMessage())},{name:"region",required:!0,message:t("Please select your Region!"),render:()=>C.default.createElement(S.default,{placeholder:t("Select a region"),options:this.regions})},{name:"domain",required:!0,render:()=>C.default.createElement(E.default,{placeholder:t(" or @")}),extra:C.default.createElement("span",{style:{color:"white"}},t('Tips: without domain means "Default" domain.')),rules:[{required:!0,validator:this.usernameDomainValidator}]},{name:"username",required:!1,message:t("Please input your Username!"),render:()=>C.default.createElement(E.default,{placeholder:t("Username")}),hidden:!0},{name:"password",required:!0,message:t("Please input your Password!"),render:()=>C.default.createElement(E.default.Password,{placeholder:t("Password")})},{name:"extra",hidden:!0,render:()=>C.default.createElement(b.default,{gutter:8},C.default.createElement(y.default,{span:12},C.default.createElement(T.Link,{to:"password"},t("Forgot your password?"))),C.default.createElement(y.default,{span:12},C.default.createElement(T.Link,{to:"register",className:N.default.register},t("Sign up"))))}],i={name:"loginType",required:!0,message:t("Please select login type!"),extra:C.default.createElement("span",{style:{color:"white"}},t("If you are not sure which authentication method to use, please contact your administrator.")),render:()=>C.default.createElement(S.default,{placeholder:t("Select a login type"),options:this.loginTypeOptions,onChange:this.onLoginTypeChange})};return this.enableSSO?"password"===r?[i,...o,a]:[i,a]:[...o,a]}getErrorMessage(){var{message:e}=this.state;return(0,h.default)(e).call(e,"The account is locked for user")?t("Frequent login failure will cause the account to be temporarily locked, please operate after 5 minutes"):(0,h.default)(e).call(e,"The account is disabled for user")?t("The user has been disabled, please contact the administrator"):(0,h.default)(e).call(e,"You are not authorized for any projects or domains")?t("If you are not authorized to access any project, or if the project you are involved in has been deleted or disabled, contact the platform administrator to reassign the project"):t("Username or password is incorrect")}init(){this.store=j.default,this.formRef=C.default.createRef()}renderExtra(){return null}render(){return C.default.createElement(C.default.Fragment,null,C.default.createElement("h1",{style:{color:"white"},className:N.default.welcome},this.productName," "),C.default.createElement(R.default,{formItems:this.formItems,name:"normal_login",className:N.default["login-form"],initialValues:this.defaultValue,onFinish:this.onFinish,formref:this.formRef,size:"large"}),this.renderExtra())}}n.Login=z;var V=(0,I.inject)("rootStore")((0,I.observer)(z));n.default=V},1747:function(e,t,n){"use strict";var r=n(20),a=n(21);r(t,"__esModule",{value:!0}),t.default=t.SkylineStore=void 0;var o,i,l,s,d=a(n(25)),u=a(n(49)),f=a(n(74)),c=(a(n(35)),a(n(55))),m=(a(n(75)),n(36)),p=a(n(50)),h=a(n(53)),g=(o=class extends h.default{constructor(){super(...arguments),(0,f.default)(this,"domains",i,this),(0,f.default)(this,"regions",l,this),(0,f.default)(this,"sso",s,this)}get client(){return p.default.skyline.contrib}fetchDomainList(){var e=this;return(0,u.default)((function*(){var t=yield e.client.domains();e.domains=t}))()}fetchRegionList(){var e=this;return(0,u.default)((function*(){var t=yield e.client.regions();e.regions=t}))()}fetchSSO(){var e=this;return(0,u.default)((function*(){var t=yield p.default.skyline.sso.list();e.sso=t}))()}},i=(0,c.default)(o.prototype,"domains",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),l=(0,c.default)(o.prototype,"regions",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),s=(0,c.default)(o.prototype,"sso",[m.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),(0,c.default)(o.prototype,"fetchDomainList",[m.action],(0,d.default)(o.prototype,"fetchDomainList"),o.prototype),(0,c.default)(o.prototype,"fetchRegionList",[m.action],(0,d.default)(o.prototype,"fetchRegionList"),o.prototype),(0,c.default)(o.prototype,"fetchSSO",[m.action],(0,d.default)(o.prototype,"fetchSSO"),o.prototype),o);t.SkylineStore=g;var _=new g;t.default=_},1748:function(e,t,n){var r=n(1749);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1749:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__register--2dPww {\n float: right;\n}\n.index__welcome--Wrl8u {\n margin-top: 24px;\n margin-bottom: 24px;\n}\n.index__login-form--2ucoo {\n width: 310px;\n}\n.index__login-error--2XGt4 {\n padding: 8px 12px;\n color: #a43a39;\n font-size: 14px;\n line-height: 1.5;\n background: #f2dede;\n border: 1px solid #a43a39;\n border-radius: 4px;\n}\n.index__login-error--2XGt4 .anticon {\n margin-right: 8px;\n}\n.index__ant-form-item-extra--2TUD6 {\n color: white !important;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",register:"index__register--2dPww",welcome:"index__welcome--Wrl8u","login-form":"index__login-form--2ucoo","login-error":"index__login-error--2XGt4","ant-form-item-extra":"index__ant-form-item-extra--2TUD6"}},1750:function(e,n,r){"use strict";var a=r(162),o=r(20),i=r(25),l=r(21);o(n,"__esModule",{value:!0}),n.default=n.Password=void 0;var s=l(r(91));r(231);var d=l(r(341));r(569);var u=l(r(1253)),f=l(r(617)),c=l(r(35)),m=l(r(177)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=E(t);if(n&&n.has(e))return n.get(e);var r={},a=o&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=a?i(e,l):null;s&&(s.get||s.set)?o(r,l,s):r[l]=e[l]}r.default=e,n&&n.set(e,r);return r}(r(0)),h=(r(161),r(204)),g=(r(564),r(565)),_=r(412),x=r(36),v=l(r(1255)),w=l(r(1270)),b=l(r(1492)),y=l(r(1780));function E(e){if("function"!=typeof a)return null;var t=new a,n=new a;return(E=function(e){return e?n:t})(e)}class S extends p.Component{constructor(e){super(e),(0,c.default)(this,"formRef",null),(0,c.default)(this,"onFinish",(e=>{var{rootStore:n}=this.props,{userId:r,oldPassword:a}=this.passwordData,{password:o}=e,i={id:r,password:o,original_password:a};this.setState({loading:!0}),v.default.changePasswordUser(i).then((()=>{this.setState({loading:!1}),w.default.success(t("Password changed successfully, please log in again.")),n.setPasswordInfo(null),n.routing.push("/auth/login")}),(e=>{var{response:{data:{error:{message:t}={}}={}}={}}=e;this.setState({error:!0,message:t,loading:!1})}))})),(0,c.default)(this,"getCount",(e=>{try{return e.split("be unique is ")[1].split(".")[0]}catch(e){return 0}})),(0,c.default)(this,"getErrorWord",(e=>{if(!e)return t("Reset failed, please retry");if((0,s.default)(e).call(e,"The new password cannot be identical to a previous password.")>=0){var n=this.getCount(e);return n?"2"===n?t("The password must not be the same as the previous two"):t("The password must not be the same as the previous {num}",{num:n}):t("The password must not be the same as the previous")}return t("Reset failed, please retry")})),this.init(),this.state={error:!1,message:"",loading:!1}}componentDidMount(){var{rootStore:{routing:e}={}}=this.props;this.passwordData&&!(0,m.default)(this.passwordData)||e.push("/auth/login")}componentWillUnmount(){var{rootStore:e}=this.props;e.setPasswordInfo(null)}get passwordData(){var{rootStore:{oldPassword:e}={}}=this.props;return(0,x.toJS)(e)||{}}get defaultValue(){var{oldPassword:e}=this.passwordData;return{oldPassword:e}}get formItems(){var{error:e,message:n,loading:r}=this.state,a=this.getErrorWord(n);return[{name:"hint",render:()=>p.default.createElement("div",{className:y.default.hint},p.default.createElement(f.default,{style:{color:globalCSS.warnColor}}),t("User need to change password"))},{name:"error",hidden:!e,render:()=>p.default.createElement("div",{className:y.default.error},p.default.createElement(f.default,null),a)},{name:"password",required:!0,message:t("Please input your password!"),otherRule:(0,g.getPasswordOtherRule)("password","user",!0),render:()=>p.default.createElement(u.default.Password,{placeholder:t("Password")})},{name:"confirmPassword",required:!0,message:t("Please confirm your password!"),dependencies:["password"],otherRule:(0,g.getPasswordOtherRule)("confirmPassword","user",!0),render:()=>p.default.createElement(u.default.Password,{placeholder:t("Confirm Password")})},{name:"submit",className:y.default.between,render:()=>p.default.createElement(p.default.Fragment,null,p.default.createElement(d.default,{type:"primary",htmlType:"submit",loading:r},t("Confirm")),p.default.createElement(h.Link,{style:{marginLeft:50},to:"/auth/login"},t("Back to login page")))}]}init(){this.formRef=p.default.createRef()}render(){return p.default.createElement(p.default.Fragment,null,p.default.createElement("h1",{className:y.default.welcome},t("Welcome")),p.default.createElement(b.default,{formref:this.formRef,formItems:this.formItems,name:"reset_password",className:y.default.reset,onFinish:this.onFinish,initialValues:this.defaultValue,size:"large",scrollToFirstError:!0}))}}n.Password=S;var P=(0,_.inject)("rootStore")((0,_.observer)(S));n.default=P},1780:function(e,t,n){var r=n(1781);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:undefined,insertInto:void 0};n(65)(r,a);r.locals&&(e.exports=r.locals)},1781:function(e,t,n){(t=e.exports=n(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__register--3Uzk2 {\n float: right;\n}\n.index__welcome--3RISd {\n margin-top: 24px;\n margin-bottom: 24px;\n}\n.index__hint--1lIUh {\n padding: 8px 12px;\n color: rgba(0, 0, 0, 0.65);\n font-size: 14px;\n line-height: 1.5;\n background: #fffbe6;\n border: 1px solid #ffe58f;\n border-radius: 4px;\n}\n.index__hint--1lIUh .anticon {\n margin-right: 8px;\n}\n.index__reset--1EOoE {\n margin-top: 24px;\n}\n.index__reset--1EOoE .index__title--2znQU {\n margin-bottom: 24px;\n}\n.index__reset--1EOoE .index__info--3bS5M {\n margin-bottom: 24px;\n}\n.index__reset--1EOoE .index__between--10sD1 .ant-form-item-control-input-content {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.index__error--SAQ5q {\n padding-left: 12px;\n color: #a43a39;\n font-size: 14px;\n line-height: 38px;\n background: #f2dede;\n border: 1px solid #a43a39;\n border-radius: 4px;\n}\n.index__error--SAQ5q .anticon {\n margin-right: 8px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",register:"index__register--3Uzk2",welcome:"index__welcome--3RISd",hint:"index__hint--1lIUh",reset:"index__reset--1EOoE",title:"index__title--2znQU",info:"index__info--3bS5M",between:"index__between--10sD1",error:"index__error--SAQ5q"}}}]); \ No newline at end of file diff --git a/skyline_console/static/auth.bundle.1739201236.js.gz b/skyline_console/static/auth.bundle.1739201236.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..4837894ba58f489ea24e13cc8b70a33438b880fe GIT binary patch literal 7772 zcmV-i9;4wOiwFP!000021MNNAcH>5JzXD;86~No12wo%&Wms!VGmbVIOFNpelW28x znnaU?2SjrLP?UzlZ^%O)@)i4>yyS0o|07j>LxUHIqp`hvlIV;jpfA(G#`1_*X9s053_%!mqss;kuXa#rlyj|EPqPEJ)CP(cBK(V85x* z1++Q-?cl%?efr7hCt(aIciMn(E*=jK;4zY=hrWLVBR2N|G&Y`!Vt8*tn}K*~wOjDq zm(Lw|9Luf;4S1e}_LTg2Jn(jk-CYL%>Lr$b#)@f{I_wDQ(`k}~VaPsybb0S51~cCY zi-!s00|&af8lF|Ey3f_*x@;kEO~YHS@CC@--LyWUxyO7xR9YXh0^Su>=L=lA-Cce( z;F%}L;>3WE54~Ll7e)+|-Q5d;RDF{1f+Ge9_+pk`W_-f3;-TKBNdl8ie1DE`fTqV> zymxVCNBQoqm*e0cKj!tE75*{xGLn$o?`GG@O~~NaA~Orch(JC^WJw0>DbddsKw>2D zD8%)EzrsO!)3DUiym*XuMJPRCH6 z`vmq$zuYIqD9(wS0UVaS;@SADU}Kkfu%D2qb6EichfGtXI4(R%;)TB+8qi#WdILZajNK*lW3>5z3Z!iy2huv3@fkU&TnU|bHs09OIh@K>Qk!@LB! zFpCE)!0QTnn89W~zUGA9bg%i%CgiK6K-@iFAwSTC!1y7yM&6v{df6Hzu@Ln&e|lm= zN)S#;<|!THOh<7Pv9wD`#3ndo+K+)UJiNXkVtv2IW-;OE$%v*vn}on}XS5rUg!Wj{ z?E`&40%&lGu!z($`2m+rqg94lhOemzThSZWH6mdG!bZ=t-p?2<*vo_=b9qx!j)Nn4 z2PH*d=a0$!J$vXvd0v*Mq3hOxZTqx<{pr?VX(j1WAREe3oKtmGP`oVUKUv{P5x}ff zA=Yvg1fMfD=%&_;Go&C50h`EXuxocvF21We!jtLf-WcidBq5e*u#5v#56fzpejbk} z39I3-uD>9Z%=6*_wgYVJglAoMHi`@8>_97?6*Mi}#d;Fu9uQ|yoE&$Z}qb@ zqPwSJbzP`ZqwTbNT?Zs48E7OZ{l_ zzh6JfLsZS1TA`I%y3%3~f|k)@;pK%G-1TG5H!i zb3|I6eq(z7V;rGuYBm~^dpz~5v;X;ohBYo|oU&~3406;HHYhZPJur`lzy@gq#|%KE zS#6lnC`J&qX1fuwA#r}w8Z;Vh>U0`kz)M5?I6KWmZ&pFFGIh*97cy<9WN zO@p|oArCO2No}>^1Y?r56$;4dW6E(b-v+Ry#zBlr1kH=7)z^z|cpCRbN*!OKWO|xBUHLZ4A`8N(! zqeL|d#L+>uVuq-4u&l7U> z?(*{D&D-1ai<588UtV=bi_okInDMCk!AUcM9i0w~(N|%xe85;Ng~l+PGh@#uSy;7Y zM#^*<35%E21;u<{S{aYDL-kwE{?TSJu&Qu7OgHdpsgGIs_RBrT(kYN70TyD>Kd}eU z6;o7zPm;L*zN>9?G|_~?4_XV^34k9-6|GF6l^NUiNqnS1C_u9X+0@+4Co}~{%Q!5W z+;c9?VpsoSO3#m$05@Y^S@;}U#_WjD&mCb*@FJm;`Q68g{`l1W1QqPpw$cv0}N z*njTR*j21I%ed>82U!FkDX6&t`|6@fhm;-ffA3*MDGdI8&Y zzk@a@1^R+)gC$3mk=5Bf+Mao+3#G-h>H+pZX*7)iSljo2o3!T`(Q`qbMeP3e78$cv zYj&n=;(&!$Afr3;Kc~PWBnV!B7*1BlHnn90!l~+K5SXnhjM7Oa(a8q(+l?n06gFqeOXs zn&oh)I};wm8IwIR=+{oXc3{ig7f@?6)_V^JSGkT(3M%VzGyU^uv#0RM?}iem3D09( z-L8|dgck7~6NA7^yG||81a*<&@OY4{5zcWLU@Nbz7Bnn3iD|Hm0-nieFg$*GrFA%~ z>@z8?Pk!sdCS}E*&{g+dvE(G-)94l`2h(7;Ld&W(4r+~{9vrk@G#f#)wO^mWM#2%B zjn5si)W6rl4<6ao&F0_Du5LCzXIC5Lx>mb9|LOJHM;R%K^9c%O!`(f8zf>{KYlDQ{ zuT)@RWn(~#8qZMm?m8oQ_<)EcD@~#}V||HA3UpH~@J9~?zxWIg<+I9;T2rM(0x0u$ zBT<4Ujcg;GucEND5^7T4cYZS%466HZg>1S4&5c?uNYB5$f0UF;&UFs7(9)>XfLL@| za8bDTrStaU^un3ZxB!WhId8uER!(wn&%zU64|`s-(;`l@{Q`bSI zXOV-LIr0=eS_4DLvQ7sPa=zUA^y!*1uyCL({;rcQlYsVeo`70iiX|hS)#=e}t9L~p zQ@bfD~C$A|68ktR?KG`DCg%K>|^wQ@c^dq7_o*YiH0V8XYKK7N^NWrfnOU}Y7s4BeV$P*HB$C#<6;1U zu?a2Dve&Z>w5+O5MuS6obn?}w-KQ2}HNS(KG9`if|UGOJWe)v|OghprW% z&7j$C(&`-K@hcrwwcv+uU!Se+J)l9~6Y|=rIs5ydTl(vOST3(xD`BH^2}vuHjm8(t z2f!CqFv~tOK2z zkEyEcB^U{2T#i)kD3?g8yK6WfCTnq*YjY3`ZjuN;BN@Q(&wy4kUmS}OH9qHYIqCgIov;4PVtfzQEyTR24US)|k4ipS0& z1|06i^FBV_$zt?E0TL~hWHS?`t#%-aL5wKpR8PWgwhwegTUI>iijJu0?7xuZFI9P` zrOFRw`ISUCz-*mMi48ic$hj=XK*)u}0b9J6P{ce={-*J&*PjxvqTyh7H!<-lzBXRP zw~kkF6|agzdMw{%yebAWC6@83SjMXcV8(C~W4wxEyozrZugZig@hlYV6Zj+(aVwv^ z6$}d;{06IpZ&9pA`$ZFdi$AH=L8c(5;zjr;$@jYA(2icc-Wwd1rtZWe7z8s)L0$q%sMwK`!i6j)G+9A%r;`u>`~#z>EATR73zqmI-v|QSMQD2o0ZB z;SU5%q+KDiPc$8v3M76ofy9$70*O_0W%?0Mh1A2m44H4^mI*{6RsalrRnUTY^F%ki zn219fm_j8rU98E-dY7~8EGkp6oTAKInpo|@x(Bm5E<89w{OjOGQ39Ak71yD-akFV8 zh5suWCoFmlcPh-ConRp($vmP3?SdczB_ZizO3-3~!Bv(64ReO<0%FZQf+0ui9MSIE z5p#5kf)nSk4iiiUb7&elDPyoA1$TPPk=YE9FnHml%Uu6hpcXNj{1_J_N%TtvNvw2t z33rxdTzFhe+S+EqD{@>-`+aDvlgTy`gDBX6N$SyIo;o7CySoE}yk7|>*=_vY-KA0t zHUW6)p%HZ{aOovr{s`JKCq}Ugim^QBD91(r{xr*gu??sC8)sA!$#t#Ci6z&|CDH+h z$iXRzxKQy_YSue%U84ojX>Q2V7&`eTjZQ^JZ$4E;ry39j!>aTU`^KYwy%@37vsR?K zSRN*y!G5S#O2+mutr!J>5g~96fkx!1bm_dGF_zYajZkYh8vb4r^rWR)X))AVvO3bK z)^Hl8o;xavN#5Ptiz6U(45uTV#PtD7`sl{2$9(UuC6a>nF0N{?UY@>u^Ud3{i|_Z) zznSwrgb_!_9MnG0pfs$A=A#~`SyTZ8fJOVf01IL-fB%3sxG22~6g*HcFV0R+F8O3S zaY;32jfd6uICRCdLz6@V^Czf?<7`9M*TpSSjEa9~QvQI3MCkHm5huWpu=aWU0nelG zf#n1U$djZ;vm9Tc=}~kHSlpIa$W@K%Fw2~IK2fwq`vhfWeU!05=9IDi+QfprA+xsW8tA&&AbgM3^(A%`nG zYh}kSF|P_VE(z!rf&4pHYc~c!Hw6)`H&Y5y9E9hoQpPqSR~`Kau)RSj^Gpiy)R%H# z2juWh6{A!i#zsfHFB4gqI8l+Bl5}x8nHJ7hdaSPb9iMLD33Np(Oi0xu<#3EBYe|=seDG za-e{$tb!nc98`?{Ndp$y!@M$_oB+u1{s=Ycg@NrDHY(G>%3Sc0$wb>2`A=Xn$Hy+L z#X@aR(@^g~u%@9BdjX^fba)K>tIn$AR_t{E@?q2k2_yoIa8l4hCUFy%c9#qFa5%h` zv~o4#nHT`}Pk379^@44idOis8HQ+(AFBO@K8lL+job!Clh$9lb7dp`!6;?sCDjSpw za%Wjlq2gJwMP&zh15DpB+x{ZQB_-IbFZ$6zTc42J9GpvZLRvhWt4SqQ3VIbL2_b^!reU81+5&y#Wn zbE#b6QeVK+*{O5F(-hq;zGM^_QEpG{Bm6c9-eBWvLL3>SCVCLS2?(?vr=?}7&|kBo zfC8%WG)s_$%yi!A1(Hy$X@PwVY^9bBRBNf$3VyGMnsWLIkmq6oQGp2sCtzrymP!-Q z#S|#lh-^ueC25u~ZBs*?5f6Dj4!nZm0}`d_p+!`4f>zTJ|l9- zL3uGmATCcIW=@>c#uh}*T0;+XEGa?UeA*kw1uEv^f*78(CmWKSdS&+2a9R}5`fx!u zHGU`?W4cv0Xl`yhE8Ch`kV4Wgi^nv30JEbQCz7NZ<1&3qd*^{NwH{!`Qx|MY&xPqa zcv%8v7~$cynzEpntFKb+ux;kPl8^fRa<;RCdb4?!m(?6GbC?Tl@3mANFl$uFc2_ch zTVAoVjPO!HmRW$#1D|G&Jj6lU-eyKuCDBC&-3SyxydmhhR}v&u#|nVsa<6u6#$1$` zM#}!NG2H@#mm4v7O11wQ^+$Ej?c|9pzctscFlJJC|L`^jYucHC9t{esI^di!qiOCK zBTE(6{{i$rc{T5PZcp=0TUU}c8%(dojiHrpVN)wuv#!$c5zDGAjV%{;Gg&ntK|Rg> z4TGAIRZp;-g_^bmJ{7gP?zn>ErDY))%*0BUJGSvRl~!--cx;e)!EN!5^5zxKhFnob z*Bqnx`Ps+CJ($CsY$^D?WlG9gfz(wzOr7aOO2HcvYr$_0sVyapXz!p@#>M{3z2}|{ zkW3EEn3Dp@@+mw(eSd^`O(Rr7q#_CX5w>T9PG8tL#FLyXq<>8ij&0YQw%K^78L1{2c=}fGn&Q8 zg92*S3nPPonL`J_mQDw=c=6(d>vy-sGKzDg*)pEk3g4U&y7w4MO~Vyl5eVC?^4RGA zVlgLjBqkrK!D;${HY9p$ay*`tWhC)g;%lob(1;3uv<-kDfOsHqQ$?nKoZg|6D8evo zIXhs^0?Ke)Gf{hn6J}lp3YQAih1YeEDnBhAqoqWps!|LXX-gF5OYENdm1Enlou)tDuDC zB)}UAnn)HOlGE0F?Mrl!g~jJ=s?{$qWaq_;>J?P7nfH>=>e8P<-YhBi>Q`qD&nyv zvQ#`C$~du(5*s11-FG_%D-K;HLtqA2u)dK}yj_^&=0+mQlgkFu+D*jOMYF%kPaUWb zk+?gV#l3~_%t_5vIs(`F_@*0td@@}?yB6iBb>lTUV){8Oq_c0u?fChl88_IG@o-f} z+w8d9W|&pN0j=wa!2L+P=)v&nclE;tyv&xd7W;avb`i?)8-lzuh=)^=uYtN)nZ1E; zvn($3vyu(4tFv;WS*|&}%=;J$hLwI%6!OPV5RCc@4L@HjR=zD!8GMP=1tL_yxLLa9 z`Diy#3(M-K2Q0b$lLoZ9ed2(?@SijiwqF{8;~mtB#2pG@dn+=WhSoK=TOs%lAGr_% za`^A%LQMO`b1uZ}ed!?IiJK4boKILk9>je|s294_>4EyhtXGrJYl`v_jrh#G;x#e- z@|XYm^I!k%KmYpY|M<&)|GQ~G(|9b+Ap-#z-+HmelL|Y&m~?Mt4%TYT=yImA%m)d_ zDC(L^5lRuN)qc#9!|7_ewYhzv3Uw;8DqqdJMz>t8Iqh>^$+&I>jrARbCk=Z1^LK^1 zX<;r^98T_?psB{!dE>O*qOBK4%NOq2>#iaM_0Ce3HQwB5Ml50~FB{hm+QC3MPk^&* z@Upgsp97fYU8lVT{-1OU5-&aqa^Zc)ny|3}&f9mV`?9;5@$$EWHY9H=-|30eeSgzv z>>myWpd84w7+u^sV67KDm&|CE>aqcg2JMC{JEhrsQ%(>2!M-d%$2pja{a&*bsmvf< z$a<|#8ww*dflX<@-E6f$yBqVA8QcaP7!8AHsz9W?H;5B7+IUl`gDLN@yLB4)Kg!i~ z+xQ6yqI7kf(R7^Z&r7sKo#y>A1H8H!U@nr~O@k`?m#N>VlrJZJmz-_dNjLCPLz^S; zD)j0ympwM~fK2u7G`36i7OC1?MrAgzTj!3?jxzywy?+ol?+PzvutevSB@x98Pd=a_TOKH0+Uky|Sv#Vk>>zXX(REn=5YU9{M-&D|BWzl4n zEE}rZsDe{kP*NsHa?BQs!+DJT%2Fbe0BLeNDFGdA%-4i{d{??GDtSWa?(yQ)w8`~Z zy<}F}Ju0Ena?_hUTvdlRTON$-EfE1YhYm4>;)(?H<@6y*=X7n-kowjcs`BM`EM+2b zS0x(D=%?|67BXC`|6@l_rTiAep6kM-T&?>S<_Y>D)v9Agi{?U|!_Z^SG>!i>W#~H- z`3y^`)+XOY^=vF28BKV5f0SumDtC9s$UT7h2Gf&-W7hI@LUr~aGv2D7`dD(T;@&cz zzCKOSR|)9LBvoiAyp_%*V|Ov1=B6pkRHqB}d)4q7wPc$ycE z8VkLUIXWF_t~`=zuwurgTk_Mp&cR$1$uZM0X5T#vh-)rIJVE5=r-ZFf_o@n#x!Mqw z3Ew0`|Kmrtc54|#evFgkT{>QiOZ6+MZ2catZt@ZVn{&zhXA)jW%3U@KGBskGI0kET%Q#Y)XuWtC(K8dhTVxH-L4v%StP7{zHd zono?WO2I?GY@$PQ2%p6(Gx2aU4DI7x$# zUv4=!)qHh!l~4a(m(#e}a^5R={Or>|QK+va!)pFc$uT`v%ot0zL1VHZ9<-@_`I)f! zlc`1J_9x|RP=DD3e57LY<|~J2=AYxm=uQJ*@NPxy3aH=G{(Ibx(qA*dJH;YGUx~Eo zpxWe-pxQdu{^yZOhR)WlPZ=aLIjN74rB@A(t%RkXh?t2C?AvmiuER*Q*%S+VDuh<~ zn6SKz@|M4fvs?;zp+<|ym@$K|gpqO?id!n1f@8NRtu7|ccU$Qo!T#^{-ICobNrrzL67Zk@_P;j ztaCWn%I|4U;*%VnV)sJNmlyoyMk;PukxE-ee;LTpDMefCcl{SS)qW|p(_1l zVgVK0x7rl{@4){w2fmQhk2vs!Y({G)Ek6KbNh)y}m0910u{N_ygitBJL}Q5(0,l.default)(i.default,e);t.default=o},1241:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),n(t,"FormAction",{enumerable:!0,get:function(){return l.default}}),n(t,"StepAction",{enumerable:!0,get:function(){return i.default}}),n(t,"ConfirmAction",{enumerable:!0,get:function(){return o.default}}),n(t,"ModalAction",{enumerable:!0,get:function(){return s.default}});var l=r(a(1822)),i=r(a(2023)),o=r(a(2049)),s=r(a(1380))},1250:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(63)),h=f(n(29)),m=f(n(54)),g=f(n(28)),v=f(n(203)),y=f(n(1252)),b=f(n(91)),x=f(n(86)),w=f(n(345));n(347);var k=f(n(348));n(1271);var C=f(n(1272));n(1261);var _=f(n(1262));n(1246);var M=f(n(1247));n(1244);var S=f(n(1245)),I=f(n(343)),N=f(n(58));n(231);var E=f(n(341)),T=f(n(606)),A=f(n(35)),j=f(n(177)),P=f(n(102)),D=f(n(570)),L=f(n(352)),O=f(n(0)),R=f(n(1270)),z=(n(161),f(n(4))),U=(n(564),n(163)),F=n(349),B=f(n(1833)),V=n(662),K=n(567),Q=f(n(1563)),Y=f(n(1566)),G=f(n(2021));function H(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function W(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),a=this,(0,A.default)(this,"updateContext",(e=>{var{updateContext:t}=this.props;t&&t(e)})),(0,A.default)(this,"unescape",(e=>(0,U.unescapeHtml)(e))),(0,A.default)(this,"getFormInstance",(()=>this.formRef.current)),(0,A.default)(this,"onSubmit",(e=>p.default.resolve())),(0,A.default)(this,"updateSubmitting",(e=>{this.setState({isSubmitting:e||!1})})),(0,A.default)(this,"onOk",((e,n,r)=>{if(this.values=e,!this.codeError){if(this.updateSubmitting(!0),!this.onSubmit)return r(!0,!1);var l=this.getSubmitData(e);return this.onSubmit(l,n).then((e=>{if(this.updateSubmitting(!1),!this.isModal&&this.routing.push(this.listUrl),this.response=e,r&&(0,L.default)(r)&&r(!0,!1),e instanceof Array){var a,n=this.instanceName?this.instanceName.split(", "):null,l=(0,h.default)(a=(0,m.default)(e).call(e,((e,t)=>"rejected"===e.status?{reason:e.reason,name:n?n[t]:""}:null))).call(a,(e=>!!e));0!==l.length?(0,g.default)(l).call(l,(e=>{var{response:{data:a}={}}=e.reason;this.showNotice&&R.default.errorWithDetail(a,t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:e.name}))})):this.showNotice&&R.default.success(this.successText)}else this.showNotice&&R.default.success(this.successText)}),(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};a.updateSubmitting(!1),a.responseError=e;var{response:{data:t}={}}=e;a.showNotice&&R.default.errorWithDetail(t,a.errorText),r&&(0,L.default)(r)&&r(!1,!0)}))}})),(0,A.default)(this,"onCancel",(()=>{if(this.isSubmitting&&this.cancel){this.cancel();var e="download"===this.progressType?t("Cancel download successfully."):t("Cancel upload successfully.");R.default.success(e)}})),(0,A.default)(this,"getChangedFieldsValue",((e,t)=>{var a=e[t];return(0,P.default)(a)&&a.value?a.value:(0,P.default)(a)&&a.selectedRows?a.selectedRows[0]:a})),(0,A.default)(this,"onValuesChange",((e,t)=>{})),(0,A.default)(this,"onValuesChangeForm",((e,t)=>{var a,n={};this.currentFormValue=t,(0,g.default)(a=this.nameForStateUpdate).call(a,(t=>{if((0,D.default)(e,t)){var a=this.getChangedFieldsValue(e,t);n[t]=a}})),(0,j.default)(n)||this.setState(W({},n)),this.onValuesChange(e,t)})),(0,A.default)(this,"checkFormInput",((e,t)=>{this.formRef.current&&this.formRef.current.validateFields().then((t=>{e&&e(t),this.updateContext(t)}),(e=>{var{values:a,errorFields:n}=e;n&&n.length&&t&&t(a,n)}))})),(0,A.default)(this,"onClickSubmit",((e,t,a)=>{this.codeError||this.checkFormInput((n=>{t&&t(n),this.onOk(n,a,e)}))})),(0,A.default)(this,"onClickCancel",(()=>{this.onCancel(),this.listUrl&&this.routing.push(this.listUrl)})),(0,A.default)(this,"updateDefaultValue",(()=>{this.resetFormValue(),this.updateContext(this.defaultValue)})),(0,A.default)(this,"resetFormValue",(e=>{this.formRef.current&&this.formRef.current.resetFields&&(e?this.formRef.current.resetFields(e):this.formRef.current.resetFields())})),(0,A.default)(this,"updateFormValue",((e,t)=>{this.formRef.current&&this.formRef.current.setFieldsValue({[e]:t})})),(0,A.default)(this,"onUploadProgress",(e=>{var{loaded:t,total:a}=e,n=Math.floor(t/a*100);this.setState({percent:n})})),(0,A.default)(this,"getUploadRequestConf",(()=>({onUploadProgress:this.onUploadProgress,cancelToken:this.cancelToken}))),(0,A.default)(this,"onDownloadProgress",(e=>{var{loaded:t,total:a}=e,n=Math.floor(t/a*100);this.setState({percent:n})})),(0,A.default)(this,"getDownloadRequestConf",(()=>({onDownloadProgress:this.onDownloadProgress,cancelToken:this.cancelToken}))),this.options=n,this.state={defaultValue:{},formData:{},isSubmitting:!1,percent:""},this.values={},this.response=null,this.responseError=null,this.formRef=O.default.createRef(),this.tipRef=O.default.createRef(),this.codeError=!1,this.currentFormValue={},this.cancel=null,this.cancelToken=this.hasRequestCancelCallback?new V.CancelToken((e=>{this.cancel=e})):null,this.init()}componentDidMount(){try{this.updateState()}catch(e){}}componentWillUnmount(){this.unsubscribe&&this.unsubscribe(),this.disposer&&this.disposer(),this.unMountActions&&this.unMountActions()}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get disableSubmit(){return!1}get name(){return""}get title(){return""}get className(){return""}get prefix(){return this.props.match.url}get routing(){return this.props.rootStore.routing}get params(){return this.props.match.params||{}}get location(){return this.props.location||{}}get locationParams(){var e;return(0,F.parse)((0,v.default)(e=this.location.search).call(e,1))}get listUrl(){return""}get currentUser(){var{user:e}=this.props.rootStore||{};return e||{}}get isAdminPage(){var{pathname:e=""}=this.props.location||{};return(0,U.isAdminPage)(e)}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get currentProjectId(){return this.props.rootStore.projectId}get currentProjectName(){return this.props.rootStore.projectName}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,K.getPath)({key:n,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=this.getRouteName(e);return(0,K.getLinkRender)({key:r,params:a,query:n,value:t})}get isStep(){return!1}get isModal(){return!1}get hasFooter(){return!(this.isStep||this.isModal)}get formStyle(){return{}}get footerStyle(){return{}}get labelCol(){return{xs:{span:5},sm:{span:3}}}get wrapperCol(){return{xs:{span:10},sm:{span:8}}}get defaultValue(){return null}get formDefaultValue(){var{context:e={}}=this.props,{defaultValue:t}=this;return W(W({},t),e)}get okBtnText(){return t("Confirm")}get instanceName(){var{name:e}=(0,y.default)(this)||{};return e}get successText(){return this.instanceName?(0,U.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,U.firstUpperCase)(t("{action} successfully.",{action:this.name.toLowerCase()}))}get errorText(){return this.instanceName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get isSubmitting(){var{isSubmitting:e=!1}=this.state;return e}get formItems(){return[]}get validateMessages(){return[]}get tips(){return""}get showNotice(){return!0}get nameForStateUpdate(){var e,t,a=["radio","more"];return(0,m.default)(e=(0,h.default)(t=this.formItems).call(t,(e=>(0,b.default)(a).call(a,e.type)>=0))).call(e,(e=>e.name))}get hasRequestCancelCallback(){return!1}get showQuota(){return!1}get quotaInfo(){return null}get progressType(){return"upload"}getRightExtraSpan(){return{left:18,right:6}}getSubmitData(e){return W({},e)}checkContextValue(){var{context:e}=this.props,t=this.nameForStateUpdate;return!(0,j.default)(e)&&!!(0,x.default)(t).call(t,(t=>(0,D.default)(e,t)))}updateState(){var{context:e}=this.props,t=this.nameForStateUpdate;if(0!==t.length){var a={};this.checkContextValue()?(0,g.default)(t).call(t,(t=>{a[t]=this.getChangedFieldsValue(e,t)})):(0,g.default)(t).call(t,(e=>{a[e]=this.getChangedFieldsValue(this.defaultValue,e)})),this.setState(W({},a))}}init(){this.store={}}renderTips(){return this.tips?O.default.createElement("div",{className:G.default.tips,ref:this.tipRef,id:"tips"},O.default.createElement(T.default,{className:G.default["tips-icon"]}),this.tips):null}renderFooterLeft(){return null}renderFooter(){if(!this.hasFooter)return null;var e={};if(this.tips){var a=((document.getElementById("tips")||{}).clientHeight||35)+16;e.bottom=a}return O.default.createElement("div",{className:G.default.footer,style:W(W({},e),this.footerStyle)},O.default.createElement("div",{className:G.default["footer-left"]},this.renderFooterLeft()),O.default.createElement("div",{className:(0,z.default)(G.default.btns,"footer-btns")},O.default.createElement(E.default,{className:G.default.cancel,onClick:this.onClickCancel,loading:this.isSubmitting},t("Cancel")),O.default.createElement(E.default,{disabled:this.disableSubmit,type:"primary",className:G.default.submit,onClick:this.onClickSubmit,loading:this.isSubmitting},this.okBtnText)))}renderFormItems(){try{var e;return(0,m.default)(e=this.formItems).call(e,((e,t)=>{var{name:a,display:n=!0}=e,r=(0,N.default)(e,["name","display"]);return n?(this.codeError=!1,O.default.createElement(S.default,{span:24/(e.colNum||1),key:"form-item-col-".concat(t),id:"form-item-col-".concat(a)},O.default.createElement(B.default,(0,I.default)({},r,{name:a,key:"form-item-".concat(t),formref:this.formRef})))):""}))}catch(e){var a={type:"label",label:t("Error"),content:"Can Not Submit"===e.message?this.errorText:t("Unable to render form")};return this.codeError=!0,O.default.createElement(S.default,{span:24/(a.colNum||1),key:"form-item-col-".concat(0),id:"form-item-col-".concat("error")},O.default.createElement(B.default,(0,I.default)({},a,{key:"form-item-".concat(0),formref:this.formRef})))}}renderForms(){return O.default.createElement(_.default,{ref:this.formRef,labelCol:this.labelCol,colon:!1,labelAlign:"left",wrapperCol:this.wrapperCol,name:this.name,initialValues:this.formDefaultValue,onValuesChange:this.onValuesChangeForm,scrollToFirstError:!0},O.default.createElement("input",{type:"password",hidden:!0,autoComplete:"new-password"}),O.default.createElement(M.default,null,this.renderFormItems()))}renderAbortButton(){return!this.isSubmitting||this.isModal?null:O.default.createElement(E.default,{className:G.default.cancel,onClick:this.onClickCancel},t("Abort Upload"))}renderSubmittingTip(){if(this.hasRequestCancelCallback){var{percent:e}=this.state,a="download"===this.progressType?t("Download progress"):t("Upload progress");return O.default.createElement("div",{className:G.default["submit-tip"]},a,O.default.createElement("div",{className:G.default["progress-wrapper"]},O.default.createElement(C.default,{percent:e,size:"small"})),this.renderAbortButton())}}renderQuota(){if(!this.showQuota)return null;var e={};return this.quotaInfo&&this.quotaInfo.length?e={loading:!1,quotas:this.quotaInfo}:e.loading=!0,O.default.createElement(Y.default,e)}renderRightTopExtra(){if(this.isModal)return null;var e=this.renderQuota();if(!e)return null;var t=(0,w.default)(this.quotaInfo);return O.default.createElement("div",{className:G.default["right-top-extra-wrapper"]},O.default.createElement(Q.default,{content:e,checkValue:t}))}renderModalRightExtra(){if(!this.isModal)return null;var e=this.renderQuota();return e?O.default.createElement("div",{className:G.default["modal-right-extra-wrapper"]},e):null}render(){var e=this.listUrl||this.isStep||this.isModal&&this.tips?G.default["wrapper-page-padding"]:"",t=this.renderTips(),a={};if((this.listUrl||this.isStep)&&this.tips&&this.tipRef.current)if(this.isStep){var n=this.tipRef.current.clientHeight+219;a.height="calc(100vh - ".concat(n,"px)")}else{var r=this.tipRef.current.clientHeight+66;a.height="calc(100% - ".concat(r,"px)")}var l=O.default.createElement(k.default,{spinning:this.isSubmitting,tip:this.renderSubmittingTip()},this.renderRightTopExtra(),O.default.createElement("div",{className:(0,z.default)(G.default.form,"sl-form"),style:W(W({},a),this.formStyle)},this.renderForms()),this.renderFooter()),i=!this.isModal||this.isModal&&!this.showQuota,{left:o,right:s}=this.getRightExtraSpan(),u=this.isModal&&!i?O.default.createElement(M.default,{justify:"space-between",align:"top"},O.default.createElement(S.default,{span:o},l),O.default.createElement(S.default,{span:s},this.renderModalRightExtra())):null;return O.default.createElement("div",{className:(0,z.default)(G.default.wrapper,e,this.className)},t,i&&l,u)}}a.default=q},1251:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.checkSystemAdmin=t.onlyAdminCanChangePolicy=t.onlyAdminCanReadPolicy=t.allCanChangePolicy=t.allCanReadPolicy=t.default=t.systemRoleIsReader=t.checkPolicyRule=t.changeToActualPolicy=t.convertPolicyMap=t.policyMap=void 0;var l=r(a(28)),i=r(a(1289)),o=r(a(77)),s=r(a(29)),u=r(a(32)),d=r(a(164)),c=r(a(86)),f=r(a(1277)),p=r(a(232)),h=r(a(570)),m=r(a(134)),g=r(a(352)),v=r(a(102)),y=r(a(92)),b=r(a(133)),x={nova:["os_compute_api"],ironic:["baremetal:"],cinder:["volume:","volume_extension","backup:get","backup:restore","scheduler_extension"],glance:["get_image","add_image","delete_image","modify_image","get_members","add_member","delete_member","metadef"],neutron:["get_network","create_network","update_network","delete_network","get_agent","delete_agent","update_agent","get_dhcp-agents","get_l3-agents","create_subnet","get_subnet","update_subnet","delete_subnet","create_port","get_port","update_port","delete_port","router","policy_bandwidth_limit_rule","policy_dscp_marking_rule","security_group","floatingip","vpnservice","ipsec_site_connection","rbac_policy"],octavia:["os_load-balancer_api"],heat:["stacks:","resource:index"],magnum:["cluster:","clustertemplate:"],barbican:["secret:get","secret:decrypt","secret:delete","containers:post"],zun:["capsule:","container:","host:get"],panko:["segregation","telemetry:events:index"],manila:["share:","share_","scheduler_stats:pools"],trove:["instance:create","instance:delete","instance:update","instance:backups","instance:restart","instance:resize","instance:extension","instance:guest_log_list","configuration:","backup:index","backup:show"]};t.policyMap=x;var w=e=>{var t,a={};return(0,l.default)(t=(0,i.default)(e)).call(t,(e=>{var[t,n]=e;(0,l.default)(n).call(n,(e=>{if(a[e]);a[e]=t}))})),a};t.convertPolicyMap=w;var k=(e,t)=>{var a,n,r,i=w(t);if(i[e])return(0,o.default)(r="".concat(i[e],":")).call(r,e);var c=(0,s.default)(a=(0,u.default)(i)).call(a,(t=>(0,d.default)(e).call(e,t)));c.length>1&&(0,l.default)(c).call(c,(e=>{}));var f=c.length&&i[c[0]];return f?(0,o.default)(n="".concat(f,":")).call(n,e):e};t.changeToActualPolicy=k;var C=(e,t,a)=>{var n;if(!e)return!0;var r=a?e:k(e,x),l=(0,c.default)(n=b.default.policies).call(n,(e=>e.rule===r));return!l||l.allowed};t.checkPolicyRule=C;var _=()=>{var{roles:e=[]}=b.default.user||{},t=["admin"],a=(0,p.default)(e).call(e,(e=>"reader"===e.name));if(!a)return!1;var n=(0,p.default)(e).call(e,(e=>(0,d.default)(t).call(t,e.name)));return a&&!n};t.systemRoleIsReader=_;var M=e=>{var{policy:t,aliasPolicy:a,item:n,actionName:r,isAdminPage:l,enableSystemReader:i}=e;if(0===b.default.policies.length)return!1;if(l&&!i&&_())return!1;if(l&&!i&&_())return!1;if(!t&&!a)return!0;var o=a||t,s=(0,g.default)(o)?o(n):o,u=[],d=!0;return(0,y.default)(s)?u=s:(0,v.default)(s)?(u=s.rules,(0,h.default)(s,"every")&&(d=(0,f.default)(s))):(0,m.default)(s)&&(u=[s]),!u||((e,t,a,n)=>0===e.length||(t?(0,f.default)(e).call(e,(e=>C(e,0,n))):(0,p.default)(e).call(e,(e=>C(e,0,n)))))(u,d,0,!!a)};t.default=M;t.allCanReadPolicy={rules:["admin","reader","member"],every:!1};t.allCanChangePolicy={rules:["admin","member"],every:!1};t.onlyAdminCanReadPolicy={rules:["admin","reader"],every:!1};t.onlyAdminCanChangePolicy={rules:["admin"],every:!1};t.checkSystemAdmin=()=>b.default.hasAdminRole},1302:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.ItemActionButtons=void 0;var h=p(n(1277)),m=p(n(54)),g=p(n(77)),v=p(n(28)),y=p(n(49)),b=p(n(35));n(586);var x=p(n(424));n(231);var w=p(n(341)),k=p(n(611));n(1300);var C=p(n(1301)),_=p(n(343));n(1276);var M=p(n(421)),S=p(n(205)),I=p(n(92)),N=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=D(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),E=n(412),T=(n(161),n(564),p(n(4))),A=n(1435),j=p(n(1436)),P=p(n(1818));function D(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(D=function(e){return e?a:t})(e)}function L(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function O(e){for(var t=1;t!!e)):a}function F(e){var{firstAction:a=null,moreActions:n=[],alloweds:r=[],item:l,onFinishAction:i,routing:o,containerProps:s,firstActionClassName:u,onClickAction:d,onCancelAction:c,isWide:f}=e;if(0===r.length)return null;if(!a&&0===n.length)return null;var p=null,h=null,v=null;if(a){var y=U(r,0),b=z(a.action);p=N.default.createElement(j.default,(0,_.default)({},b,{buttonType:"link",routing:o,needHide:!1,isAllowed:y,item:l,onFinishAction:i,onCancelAction:c,buttonClassName:(0,T.default)(P.default["first-action"],u),containerProps:s,maxLength:8,onClickAction:d,isFirstAction:!0}))}var S=0,I=0,E=null;if(n.length>0){var A=f||n.length>1?P.default["more-action-btn"]:"",D=(0,m.default)(n).call(n,((e,t)=>{var a;if(!e.actions){var n=U(r,e.allowedIndex),u=e.key||"key-more-".concat(t),f=z(e.action);return n?(S+=1,I+=1,E=N.default.createElement(j.default,(0,_.default)({},f,{isAllowed:n,buttonType:"link",item:l,onFinishAction:i,onCancelAction:c,routing:o,style:{padding:0},containerProps:s,onClickAction:d,buttonClassName:A})),N.default.createElement(M.default.Item,{key:u},E)):null}var p=0,h=(0,m.default)(a=e.actions).call(a,((e,a)=>{var n,u=U(r,e.allowedIndex),f=e.key||(0,g.default)(n="key-more-".concat(t,"-")).call(n,a);u&&(p+=1,S+=1,I+=1);var h=z(e.action);return N.default.createElement(M.default.Item,{key:f},N.default.createElement(j.default,(0,_.default)({},h,{isAllowed:u,buttonType:"link",item:l,onFinishAction:i,onCancelAction:c,routing:o,containerProps:s,onClickAction:d,buttonClassName:A})))})),v="sub-menu-".concat(t);return N.default.createElement(R,{popupClassName:P.default["action-sub-menu"],title:e.title,disabled:0===p,key:v},h)})),L=N.default.createElement(M.default,null,D);if(a&&n.length>0&&S>0&&(h=N.default.createElement(C.default,{type:"vertical"})),1===S&&1===I&&E){var O=f?"":P.default["single-more-action"];v=N.default.createElement("span",{className:O},E)}else S>0&&(v=N.default.createElement(x.default,{overlay:L},N.default.createElement(w.default,{type:"link",className:P.default["more-action"]},t("More")," ",N.default.createElement(k.default,null))))}return N.default.createElement("div",{className:P.default["action-buttons"]},p,h,v)}class B extends N.Component{constructor(e){super(e),this.actionList=[],this.firstAction=null,this.moreActions=[],this.state={results:[]}}componentDidMount(){var e=this;return(0,y.default)((function*(){var{item:t,containerProps:a}=e.props;e.updateResult(t,a)}))()}shouldComponentUpdate(e,t){var{item:a,containerProps:n}=this.props,{results:r}=this.state;return(0,S.default)(e.item,a)?!(0,S.default)(r,t.results):(this.updateResult(e.item,n),!0)}static getDerivedStateFromProps(e,t){if(!(0,S.default)(e.item,t.item)){var{item:a}=e;return{item:a}}return null}get routing(){return this.props.rootStore.routing}updateResult(e,t){var a=this;return(0,y.default)((function*(){var{actions:n,isAdminPage:r}=a.props,{actionList:l,firstAction:i,moreActions:o}=function(e,t,a){var{firstAction:n=null,moreActions:r=[]}=e,l=[],i=n?{action:(0,A.getAction)(n,t,a),allowedIndex:0}:null,o=[];return n&&l.push(i),(0,v.default)(r).call(r,(e=>{if(e.actions){var n,r=[];(0,v.default)(n=e.actions).call(n,(e=>{var n={action:(0,A.getAction)(e,t,a),allowedIndex:l.length};r.push(n),l.push(n)})),o.push(O(O({},e),{},{actions:r}))}else if(e.action){var i={action:(0,A.getAction)(e.action,t,a),allowedIndex:l.length};o.push(i),l.push(i)}})),{actionList:l,firstAction:i,moreActions:o}}(n,e,t);a.actionList=l,a.firstAction=i,a.moreActions=o;var s=yield(0,A.getAllowedResults)({actions:a.actionList,data:e,key:"action",containerProps:t,isAdminPage:r});a.setState({results:s})}))()}render(){var{item:e,onFinishAction:t,containerProps:a,firstActionClassName:n,onClickAction:r,onCancelAction:l,isWide:i}=this.props,{results:o}=this.state;return N.default.createElement(F,{onFinishAction:t,onCancelAction:l,firstAction:this.firstAction,moreActions:this.moreActions,alloweds:o,item:e,routing:this.routing,containerProps:a,firstActionClassName:n,onClickAction:r,isWide:i})}}a.ItemActionButtons=B;var V=(0,E.inject)("rootStore")(B);a.default=V},1346:function(e,t,a){var n=a(1820);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1351:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(0)),o=l(n(2044)),s=n(163),u=n(204),d=l(n(2045));class c extends i.default.Component{render(){var{title:e,link:a,codeError:n,endpointError:r,goList:l,isAction:c}=this.props,f="";f=n?"Error":r?t("Not Open"):t("Resource Not Found");var p="",h="";p=c?t("Unable to {title}, please go back to ",{title:(0,s.firstUpperCase)(e)}):l?t("Unable to get {title}, please go back to ",{title:(0,s.firstUpperCase)(e)}):t("Unable to get {title}, please go to ",{title:(0,s.firstUpperCase)(e)}),h=l?i.default.createElement(u.Link,{to:a},t("list page")):i.default.createElement(u.Link,{to:a},t("Home page"));var m=i.default.createElement("p",null,p,h);return i.default.createElement("div",{className:d.default.wrapper},i.default.createElement("img",{className:d.default.image,src:o.default,alt:""}),i.default.createElement("div",{className:d.default.text},i.default.createElement("div",{className:"h1"},f),m))}}a.default=c},1376:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.renderClearButton=void 0,n(593);var p=f(n(427)),h=f(n(1313));n(1311);var m=f(n(1312)),g=f(n(49)),v=f(n(35)),y=f(n(54)),b=f(n(86)),x=f(n(32)),w=f(n(91)),k=f(n(29)),C=f(n(350)),_=f(n(591)),M=f(n(28)),S=f(n(596)),I=f(n(164));n(344);var N=f(n(202));n(231);var E,T,A,j=f(n(341)),P=f(n(1515)),D=f(n(177)),L=f(n(205)),O=f(n(134)),R=f(n(119)),z=f(n(0)),U=(n(161),n(564),n(412)),F=f(n(16)),B=f(n(1516)),V=f(n(1517)),K=f(n(1518)),Q=f(n(4)),Y=f(n(1870));function G(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function H(e){for(var t=1;te.key||e.id,q=(e,t,a)=>{var{selectedRowKeys:n=[],selectedRows:r=[]}=e;if(!n||0===n.length)return[];var l=(0,y.default)(r).call(r,(e=>W(e)));return(0,L.default)(n,l)?r:(0,y.default)(n).call(n,(e=>{var n,l=a?r:t;return(0,b.default)(n=l||[]).call(n,(t=>W(t)===e))||{key:e,id:e,name:e}}))},$=function(e,a){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{showSelected:r=!0}=n;return r&&a&&a.length?z.default.createElement(N.default,{title:t("Clear selected")},z.default.createElement(j.default,{size:"small",onClick:e.clearSelected},z.default.createElement(P.default,null))):null};a.renderClearButton=$;var Z=(0,U.observer)((A=T=class extends z.default.Component{constructor(e){var t;super(e),t=this,(0,v.default)(this,"getDataParams",(()=>{var{filters:e,current:t,pageSize:a}=this.state;return H({page:t,limit:a},e)})),(0,v.default)(this,"handleFooterPaginationChange",((e,t)=>{var{filters:a}=this.state;this.getBackendData(H({limit:t,page:e,current:e,sortKey:this.sortKey,sortOrder:this.sortOrder},a))})),(0,v.default)(this,"getBackendData",function(){var e=(0,g.default)((function*(e){var{extraParams:a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l}=t.props,i=H(H({},e),a);n&&(i.sortKey=i.sortKey||t.sortKey||r||"",i.sortOrder=i.sortOrder||t.sortOrder||l||"");var o=yield t.fetchDataByPage(i),{backendPageStore:s,backendPageDataKey:u}=t.props,{total:d}=s[u]||{};t.setState({data:o,total:d,current:e.page,pageSize:e.limit},(()=>{t.initTabChange()}))}));return function(t){return e.apply(this,arguments)}}()),(0,v.default)(this,"fetchDataByPage",function(){var e=(0,g.default)((function*(e){var{backendPageStore:a,backendPageFunc:n,backendPageDataKey:r}=t.props,l=yield a[n](e);return a[r].silent=!1,l}));return function(t){return e.apply(this,arguments)}}()),(0,v.default)(this,"filterData",((e,t)=>{var a;return!(0,b.default)(a=(0,x.default)(t)).call(a,(a=>{var n,r=(0,R.default)(e,a),l=t[a];return(0,O.default)(r)&&(0,O.default)(l)?(0,w.default)(n=r.toLowerCase()).call(n,l.toLowerCase())<0:(0,L.default)(r,l)}))})),(0,v.default)(this,"getDataSource",(()=>{try{var{backendPageStore:e,rowKey:t}=this.props;if(e)return this.getDataFromStore();var{data:a}=this.state;return(0,y.default)(a).call(a,(e=>e.key?e:H(H({},e),{},{key:(0,R.default)(e,t)})))}catch(e){return[]}})),(0,v.default)(this,"getDataFromStore",(()=>{var{backendPageStore:e,backendPageDataKey:t,rowKey:a}=this.props,{data:n=[]}=e[t]||{};return(0,y.default)(n).call(n,(e=>e.key?e:H(H({},e),{},{key:(0,R.default)(e,a)})))})),(0,v.default)(this,"getRealSelectedKeys",(e=>{var t,{isMulti:a,backendPageStore:n}=this.props;if(!n||!a)return e;var{selectedRowKeys:r,data:l}=this.state,i=(0,y.default)(l).call(l,(e=>W(e))),o=(0,k.default)(e).call(e,(e=>(0,w.default)(i).call(i,e)>=0)),s=(0,k.default)(r).call(r,(t=>(0,w.default)(i).call(i,t)>=0&&(0,w.default)(e).call(e,t)<0));return(0,k.default)(t=(0,C.default)(new _.default([...r,...o]))).call(t,(e=>(0,w.default)(s).call(s,e)<0))})),(0,v.default)(this,"handleSelectRow",(e=>{var t=this.getRealSelectedKeys(e),a=this.getSelectedRows(t);this.setState({selectedRowKeys:t,selectedRows:a})})),(0,v.default)(this,"handleFilterInput",(e=>{this.setState({tags:e});var{backendPageStore:t}=this.props,a={};if((0,M.default)(e).call(e,(e=>{a[(0,k.default)(e).name]=e.value})),t){var{pageSize:n}=this.state;this.getBackendData(H({limit:n,page:1},a)),this.setState({filters:a,current:1})}else this.setState({filters:a,current:1})})),(0,v.default)(this,"updateTab",(e=>{this.setState({tab:e},(()=>{this.onChange({tab:e})}))})),(0,v.default)(this,"onChange",(function(){var{tab:e,selectedRowKeys:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{onChange:n}=t.props;if(n){var{tab:r,selectedRowKeys:l,selectedRows:i=[]}=t.state,o=(0,D.default)(i)?t.getSelectedRows(a):i;n({tab:e||r,selectedRows:o,selectedRowKeys:a||l,data:t.getDataSource()})}})),(0,v.default)(this,"getSelectedRowsAll",(e=>{var{data:t=[],selectedRowKeys:a}=this.state;return e?(0,k.default)(t).call(t,(t=>(0,w.default)(e).call(e,W(t))>=0)):(0,k.default)(t).call(t,(e=>(0,w.default)(a).call(a,W(e))>=0))})),(0,v.default)(this,"getSelectedRowsBackend",(e=>{var{isMulti:t}=this.props,{data:a=[],selectedRowKeys:n,selectedRows:r}=this.state;if(t)return this.getSelectedRowsBackendMulti(e);var l=e||n,i=(0,k.default)(a).call(a,(e=>(0,w.default)(l).call(l,W(e))>=0));if(i.length===l.length)return i;var o=(0,k.default)(r).call(r,(e=>(0,w.default)(l).call(l,W(e))>=0));return o.length===l.length?o:(0,y.default)(l).call(l,(e=>({key:e,id:e,name:e})))})),(0,v.default)(this,"getSelectedRowsBackendMulti",(e=>{var{data:t=[],selectedRowKeys:a=[],selectedRows:n=[]}=this.state;if(!e)return n;var r=(0,k.default)(e).call(e,(e=>(0,w.default)(a).call(a,e)<0)),l=(0,k.default)(a).call(a,(t=>(0,w.default)(e).call(e,t)<0));return[...(0,k.default)(n).call(n,(e=>(0,w.default)(l).call(l,W(e))<0)),...(0,k.default)(t).call(t,(e=>(0,w.default)(r).call(r,W(e))>=0))]})),(0,v.default)(this,"getSelectedRows",(e=>{var{backendPageStore:t}=this.props;return t?this.getSelectedRowsBackend(e):this.getSelectedRowsAll(e)})),(0,v.default)(this,"getSortKey",(e=>{var{field:t,column:a}=e;return t&&a?a.sortKey||a.dataIndex:null})),(0,v.default)(this,"handleChange",((e,t,a,n)=>{var{current:r,pageSize:l}=e,{backendPageStore:i,isSortByBack:o}=this.props,s=H({limit:l||this.state.pageSize,page:r||this.state,current:r,sortKey:this.getSortKey(a),sortOrder:a.order},t);if(i){var{action:u}=n;"sort"===u?(this.sortKey=this.getSortKey(a),this.sortOrder=a.order,o?(this.setState({current:1}),s.current=1,s.page=1,this.getBackendData(s)):(r=this.state.current,l=this.state.pageSize,this.setState({current:r,pageSize:l}))):this.getBackendData(s)}else this.setState({current:r,pageSize:l})})),(0,v.default)(this,"onTabChange",(e=>{var{onTabChange:t}=this.props;t&&(e.target?(this.updateTab(e.target.value),t(e.target.value)):(t(e),this.updateTab(e)))})),(0,v.default)(this,"onTagClose",(e=>{var{selectedRowKeys:t}=this.state,a=(0,k.default)(t).call(t,(t=>t!==W(e))),n=this.getSelectedRows(a);this.setState({selectedRowKeys:a,selectedRows:n})})),(0,v.default)(this,"clearSelected",(()=>{this.setState({selectedRowKeys:[],selectedRows:[]})})),(0,v.default)(this,"handleRefresh",(()=>{var{backendPageStore:e,refreshFunc:t}=this.props,{tags:a=[]}=this.state;t?t():e&&this.handleFilterInput(a)})),(0,v.default)(this,"renderTableFooter",(e=>{var t,{page:a,current:n,pageSize:r,total:l}=this.state,i=this.getLoading(),o=(0,S.default)(t=(0,C.default)(new _.default([this.props.pageSize,10,20,50,100]))).call(t,((e,t)=>e-t));return z.default.createElement(K.default,{current:a||n||1,pageSize:r,size:"small",onChange:this.handleFooterPaginationChange,currentDataSize:e.length,total:l,isLoading:i,defaultPageSize:this.props.pageSize,pageSizeOptions:o,className:Y.default["pagination-footer"]})})),(0,v.default)(this,"renderTag",(e=>z.default.createElement(m.default,{key:e.key||(0,R.default)(e,this.props.rowKey),closable:!0,onClose:()=>this.onTagClose(e)},e[this.props.tagKey]||e[this.props.secondTagKey]))),(0,v.default)(this,"renderClearButton",(e=>$(this,e,this.props)));var{data:a=[],pageSize:n,initValue:r={}}=e,{selectedRowKeys:l,selectedRows:i}=this.getInitValue(e);this.state={data:a,filters:null,current:1,pageSize:n,total:this.getTotal(e),selectedRowKeys:l,selectedRows:i,tab:"",initValue:r},this.sortKey=e.defaultSortKey,this.sortOrder=e.defaultSortOrder}componentDidMount(){this.getData()}componentDidUpdate(e,t){(0,L.default)(e.backendPageStore,this.props.backendPageStore)||this.getData();var{selectedRowKeys:a}=this.state,{selectedRowKeys:n}=t;(0,L.default)(a,n)||this.onChange({selectedRowKeys:a})}getData(){var{backendPageStore:e,pageSize:t}=this.props;e?this.handleFooterPaginationChange(1,t):this.initTabChange()}getInitValue(e){var{value:t={},initValue:a={},data:n=[],backendPageStore:r}=e;if(!(0,D.default)(a)){var{selectedRowKeys:l=[]}=a;return{selectedRowKeys:l,selectedRows:q(a,n,r)}}var{selectedRowKeys:i=[]}=t||{};return{selectedRowKeys:i,selectedRows:q(t||{},n,r)}}getTotal(e){var{data:t=[],backendPageStore:a,backendPageDataKey:n}=e||this.props;return a?(a[n]||{}).total:t.length}static getDerivedStateFromProps(e,t){var{value:a,data:n=[],backendPageStore:r,initValue:l={}}=e,i={};if(r||(0,L.default)(n,t.data)||(i.data=n,i.total=n.length,i.current=t.current||1),!a)return(0,D.default)(i)?null:i;var{tab:o}=a;if(a&&o!==t.tab&&(i.tag=o),!(0,L.default)(l,t.initValue)){var{selectedRowKeys:s=[]}=l,u=q(l,n,r);i.selectedRowKeys=s,i.selectedRows=u,i.initValue=l}return(0,D.default)(i)?null:i}get tableColumns(){var{columns:e}=this.props;return(0,k.default)(e).call(e,(e=>!e.hidden))}get rowSelection(){var{isMulti:e,disabledFunc:t,maxSelectedCount:a,rowKey:n,tagKey:r}=this.props;if(-1===a)return null;var{selectedRowKeys:l}=this.state,i={selectedRowKeys:l,type:e?"checkbox":"radio",onChange:this.handleSelectRow};return t&&(i.getCheckboxProps=e=>({disabled:t(e),name:(0,R.default)(e,n)||(0,R.default)(e,r)})),a&&l.length===a&&(i.getCheckboxProps=e=>({disabled:!(0,I.default)(l).call(l,(0,R.default)(e,n))})),i}getLoading(){var{backendPageStore:e,backendPageDataKey:t,isLoading:a}=this.props;return e?e[t].isLoading:a}initTabChange(){var{defaultTabValue:e,onTabChange:t,value:a}=this.props;if(void 0!==e&&void 0!==t){var n=a&&a.tab||e;t(n),this.updateTab(n)}}renderRefresh(){var{hideRefresh:e,backendPageStore:t,refreshFunc:a}=this.props,n=!1;return e||(t||a)&&(n=!0),n?z.default.createElement(j.default,{type:"default",icon:z.default.createElement(h.default,null),onClick:this.handleRefresh}):null}renderSearch(){var{canSearch:e}=this.props;if(!e)return null;var{filterParams:t}=this.props,{filters:a}=this.state;return z.default.createElement("div",{className:(0,Q.default)("ant-col-xs-16","ant-col-sm-12",Y.default["search-wrapper"])},z.default.createElement(B.default,{filterParams:t,onInputChange:this.handleFilterInput,initValue:a}))}renderSearchLine(){return z.default.createElement("div",{className:Y.default["search-line"]},this.renderSearch(),this.renderRefresh())}renderHeader(){var{header:e}=this.props;return e||null}renderTableHeader(){var{tableHeader:e}=this.props;return e||null}renderTable(){var e,t,{backendPageStore:a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l,filterParams:i,onRow:o,rowKey:s,childrenColumnName:u}=this.props,{current:d,pageSize:c,total:f,filters:p}=this.state,h=(0,y.default)(e=(0,S.default)(t=[this.props.pageSize,10,20,50,100]).call(t,((e,t)=>e-t))).call(e,(e=>"".concat(e))),m=!a&&{current:d,pageSize:c,total:f,size:"small",position:["bottomLeft"],pageSizeOptions:h},g=a?this.renderTableFooter:null,v=this.getLoading(),b=this.getDataSource(),x=a?Y.default["sl-select-table-backend"]:"";return z.default.createElement(V.default,{className:(0,Q.default)(Y.default["sl-select-table"],"sl-select-table",x),rowSelection:this.rowSelection,rowKey:s,columns:this.tableColumns,data:b,filters:p,searchFilters:i,pagination:m,isLoading:v,filterByBackend:!!a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l,onChange:this.handleChange,footer:g,onRow:o,childrenColumnName:u})}renderImageTabs(){var{tabs:e,defaultTabValue:t,imageTabAuto:a}=this.props,{tab:n}=this.state,r=(0,y.default)(e).call(e,(e=>{var{value:t,image:n,component:r,label:l}=e;return z.default.createElement(p.default.Button,{className:a?"":Y.default["image-tab"],value:t,key:t},n&&z.default.createElement("img",{src:n,alt:l}),r,z.default.createElement("span",{className:Y.default["image-tab-label"]},l))}));return z.default.createElement(p.default.Group,{className:Y.default["image-tabs"],id:"select-table-tabs",onChange:this.onTabChange,defaultValue:t,value:n},r)}renderNormalTabs(){var{tabs:e,defaultTabValue:t}=this.props,{tab:a}=this.state,n=(0,y.default)(e).call(e,(e=>z.default.createElement(p.default.Button,{className:Y.default["normal-tab"],value:e.value,key:e.value},z.default.createElement("span",{className:Y.default["normal-tab-label"]},e.label))));return z.default.createElement(p.default.Group,{className:Y.default["normal-tabs"],onChange:this.onTabChange,buttonStyle:"solid",defaultValue:t,value:a},n)}renderTips(){var{tips:e}=this.props;return e?z.default.createElement("div",null,e):null}renderTabs(){var{tabs:e,tabsNode:t}=this.props;return t||(e?(0,b.default)(e).call(e,(e=>!!e.image||!!e.component))?this.renderImageTabs():this.renderNormalTabs():null)}renderSelected(){var{showSelected:e=!0,selectedLabel:a,maxSelectedCount:n}=this.props;if(-1===n)return null;var{selectedRows:r=[]}=this.state;if(!e)return null;var l=(0,D.default)(r)?this.getSelectedRows():r,i=(0,y.default)(l).call(l,(e=>this.renderTag(e))),o=this.renderClearButton(l);return z.default.createElement("div",null,t("Selected")," ",a,":  ",o,"  ",i)}render(){return z.default.createElement("div",{className:Y.default["select-table"]},this.renderHeader(),this.renderTabs(),this.renderSearchLine(),this.renderTableHeader(),this.renderTable(),this.renderSelected())}},(0,v.default)(T,"propTypes",{data:F.default.array,columns:F.default.array.isRequired,isMulti:F.default.bool,pageSize:F.default.number,tabs:F.default.array,defaultTabValue:F.default.any,tabsNode:F.default.node,onTabChange:F.default.func,canSearch:F.default.bool,filterParams:F.default.array,disabledFunc:F.default.func,onChange:F.default.func,selectedLabel:F.default.string,tips:F.default.string,isLoading:F.default.bool,tagKey:F.default.string,secondTagKey:F.default.string,maxSelectedCount:F.default.number,tableHeader:F.default.any,header:F.default.any,backendPageStore:F.default.any,backendPageFunc:F.default.string,backendPageDataKey:F.default.string,extraParams:F.default.object,initValue:F.default.object,rowKey:F.default.string,isSortByBack:F.default.bool,defaultSortKey:F.default.string,defaultSortOrder:F.default.string,onRow:F.default.func,childrenColumnName:F.default.string,imageTabAuto:F.default.bool,refreshFunc:F.default.func,hideRefresh:F.default.bool}),(0,v.default)(T,"defaultProps",{data:[],isMulti:!1,pageSize:5,canSearch:!0,filterParams:[],selectedLabel:"",tips:"",tableHeader:null,header:null,backendPageStore:null,backendPageFunc:"fetchListByPage",backendPageDataKey:"list",extraParams:{},initValue:{},rowKey:"id",tagKey:"name",secondTagKey:"id",isSortByBack:!1,defaultSortKey:"",defaultSortOrder:"",childrenColumnName:"children",imageTabAuto:!1,refreshFunc:null,hideRefresh:!1}),E=A))||E;a.default=Z},1380:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(63)),o=l(n(1252)),s=l(n(35)),u=n(163),d=l(n(1250));class c extends d.default{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>i.default.resolve()))}get name(){return t("Edit")}get isModal(){return!0}static get modalSize(){return"small"}getModalSize(){return"small"}getRightExtraSpan(){var e="large"===this.getModalSize();return{left:e?20:18,right:e?4:6}}static get showQuota(){return!1}get showQuota(){return!1}get labelCol(){return"large"===this.getModalSize()?{xs:{span:6},sm:{span:4}}:{xs:{span:8},sm:{span:6}}}get wrapperCol(){return{xs:{span:16},sm:{span:16}}}static allowed(){return i.default.resolve()}get messageHasItemName(){return!0}get instanceName(){return(this.item||{}).name||((0,o.default)(this)||{}).name||this.itemId}get isAsyncAction(){return!1}get successText(){return this.messageHasItemName?this.isAsyncAction?(0,u.firstUpperCase)(t("The {action} instruction has been issued, instance: {name}. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,u.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):this.isAsyncAction?(0,u.firstUpperCase)(t("The {action} instruction has been issued. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.name.toLowerCase()})):(0,u.firstUpperCase)(t("{action} successfully.",{action:this.name}))}get errorText(){return this.messageHasItemName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get containerProps(){return this.props.containerProps||{}}get isAdminPage(){var{isAdminPage:e=!1}=this.containerProps;return e}get item(){var{item:e}=this.props;return e||this.containerProps.detail||{name:""}}get itemId(){return(this.item||{}).id}get actionId(){var{action:e}=this.props;return null==e?void 0:e.id}get items(){var{items:e}=this.props;return e}get defaultValue(){var{name:e=""}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name")}]}}a.default=c,(0,s.default)(c,"id","modalAction"),(0,s.default)(c,"actionType","modal"),(0,s.default)(c,"title",t("Edit")),(0,s.default)(c,"buttonType","primary"),(0,s.default)(c,"isDanger",!1),(0,s.default)(c,"policy",""),(0,s.default)(c,"aliasPolicy","")},1433:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.getFirstLevelNavItemLink=t.navItemPropType=void 0;var l=r(a(16)),i=l.default.shape({name:l.default.string,path:l.default.string,children:l.default.arrayOf(i)});t.navItemPropType=i;t.getFirstLevelNavItemLink=e=>{var{children:t=[]}=e;return t.length?e.children[0].path:e.path}},1435:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.checkAllowed=p,t.getAllowedResults=function(e){return m.apply(this,arguments)},t.getPolicyResults=g,t.getAction=v,t.getActionsByPolicy=function(e){var{actions:t,containerProps:a,isAdminPage:n}=e,r=(0,o.default)(t).call(t,(e=>v(e,null,a))),l=g({actions:r,isAdminPage:n});return(0,s.default)(r).call(r,((e,t)=>l[t]))};var o=i(a(54)),s=i(a(29)),u=i(a(63)),d=i(a(49)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(1251));function f(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(f=function(e){return e?a:t})(e)}function p(e){return h.apply(this,arguments)}function h(){return(h=(0,d.default)((function*(e){var{item:t,policy:a,aliasPolicy:n,allowed:r,allowedExtra:l,containerProps:i,actionName:o,extra:s,isAdminPage:d,action:f}=e,{enableSystemReader:p}=f||{};if(!(0,c.default)({policy:a,aliasPolicy:n,item:t,actionName:o,isAdminPage:d,enableSystemReader:p}))return!1;var h=!1,m=!0;return l&&(m=l({item:t,containerProps:i,extra:s,action:f}))instanceof u.default&&(m=yield m),!!m&&(r&&(h=r(t,i,s))instanceof u.default&&(h=yield h),h)}))).apply(this,arguments)}function m(){return(m=(0,d.default)((function*(e){var{actions:t,data:a,key:n,containerProps:r,extra:l,isAdminPage:i}=e,s=(0,o.default)(t).call(t,function(){var e=(0,d.default)((function*(e){return p({item:a,policy:n?e[n].policy:e.policy,aliasPolicy:n?e[n].aliasPolicy:e.aliasPolicy,allowed:n?e[n].allowed:e.allowed,allowedExtra:n?e[n].allowedExtra:e.allowedExtra,containerProps:r,actionName:n?e[n].title:e.title,extra:l,isAdminPage:i,action:e.action})}));return function(t){return e.apply(this,arguments)}}());return yield u.default.all(s)}))).apply(this,arguments)}function g(e){var{actions:t,extra:a,isAdminPage:n}=e;return(0,o.default)(t).call(t,(e=>{var{policy:t,aliasPolicy:r,title:l,enableSystemReader:i}=e;return!(n&&!i&&(0,c.systemRoleIsReader)())&&(0,c.default)({policy:t,aliasPolicy:r,actionName:l,extra:a})}))}function v(e,t,a){var{actionType:n}=e;return"confirm"===n?new e({item:t,containerProps:a}):e}},1436:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.ActionButton=a.getDefaultMsg=void 0;var s=o(n(54)),u=o(n(63)),d=o(n(583)),c=o(n(29)),f=o(n(28));n(344);var p=o(n(202));n(231);var h=o(n(341));n(1325);var m=o(n(1326)),g=o(n(49)),v=o(n(35)),y=o(n(177)),b=o(n(434)),x=o(n(352)),w=o(n(92)),k=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=T(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),C=n(412),_=(n(161),o(n(1437))),M=o(n(16)),S=o(n(1270)),I=o(n(4)),N=n(163),E=o(n(1816));function T(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(T=function(e){return e?a:t})(e)}var A=(e,a)=>{var{actionName:n="",title:r=""}=e,l=(0,w.default)(a)?(0,s.default)(a).call(a,(e=>e.name)).join(", "):a.name,i=t("Unable to {action} {name}.",{action:n.toLowerCase()||r,name:l}),o=t("You are not allowed to { action } {name}.",{action:n.toLowerCase()||r,name:l});return{submitErrorMsg:i,submitSuccessMsg:(0,N.firstUpperCase)(t("{action} {name} successfully.",{action:n.toLowerCase()||r,name:l})),confirmContext:t("Are you sure to { action } {name}?",{action:n.toLowerCase()||r,name:l}),performErrorMsg:o}};a.getDefaultMsg=A;class j extends k.Component{static propTypes(){return{title:M.default.string.isRequired,id:M.default.string.isRequired,perform:M.default.func.isRequired,item:M.default.object,actionType:M.default.string,icon:M.default.string,isAllowed:M.default.bool,needHide:M.default.bool,buttonType:M.default.string,isDanger:M.default.bool,items:M.default.array,isBatch:M.default.bool,path:M.default.string,onFinishAction:M.default.func,action:M.default.any,containerProps:M.default.any,maxLength:M.default.number,isFirstAction:M.default.bool,onClickAction:M.default.func,visible:M.default.bool}}constructor(e){var t;super(e),t=this,(0,v.default)(this,"onClick",(()=>{var{actionType:e,onClickAction:t}=this.props;switch(e){case"confirm":this.onShowConfirm();break;case"link":var{action:a,item:n,containerProps:r}=this.props,{path:l}=a;if((0,x.default)(l)){var i=l(n,r);this.routing.push(i)}else this.routing.push(l);break;default:this.formRef=k.default.createRef(),this.showModalAction()}t&&t()})),(0,v.default)(this,"handleSubmitLoading",(e=>{this.setState({submitLoading:!!e})})),(0,v.default)(this,"handleSubmit",(e=>{var{item:t,isBatch:a,items:n}=this.props;if(this.onSubmit){this.handleSubmitLoading(!0);var r=a?n:t,l=this.onSubmit(e,r);l instanceof u.default?l.then((()=>{this.onShowSuccess(r)}),(e=>{this.onShowError(r,e)})).finally((()=>{this.handleSubmitLoading()})):(this.handleSubmitLoading(),l?this.onShowSuccess(r):this.onShowError(r,l))}})),(0,v.default)(this,"onOK",(()=>{var{onSubmit:e,form:t,item:a,isBatch:n,items:r}=this.props;e&&(this.handleSubmitLoading(!0),t.validateFields([],((l,i)=>{if(!l){var o=n?r:a,s=e(t.getFieldsValue(),o);s instanceof u.default?s.then((()=>{this.onShowSuccess(o)}),(e=>{this.onShowError(o,e)})).finally((()=>{this.handleSubmitLoading()})):(this.handleSubmitLoading(),s?this.onShowSuccess(o):this.onShowError(o,s))}})))})),(0,v.default)(this,"onShowSuccess",((e,t)=>{var{submitSuccessMsg:a}=this.props.action,n=a?a(e):A(this.props.action,e).submitSuccessMsg;S.default.success(n),this.onCallback(!0,!1,t)})),(0,v.default)(this,"onCallback",((e,t,a)=>{var{onFinishAction:n,id:r}=this.props;if(n){var l="delete"===r;(0,d.default)((()=>{n(e,t,l,a)}),500)}})),(0,v.default)(this,"onShowError",((e,t)=>{var{showConfirmErrorBeforeSubmit:a,confirmErrorMessageBeforeSubmit:n}=this.props.action;if(a)return _.default.error({content:n}),void this.onCallback(!1,!0);var{submitErrorMsg:r}=this.props.action,{data:l}=(t||{}).response||t||{},i=l||t,o=r?r(e,i):A(this.props.action,e).submitErrorMsg;S.default.errorWithDetail(i,o),this.onCallback(!1,!0)})),(0,v.default)(this,"getConfirmOkButtonProps",((e,t)=>{var{disableSubmit:a=!1,okButtonProps:n}=t;return n||{disabled:a}})),(0,v.default)(this,"getConfirmCancelButtonProps",((e,t)=>{var{cancelButtonProps:a}=t;return a||{}})),(0,v.default)(this,"getConfirmContent",((e,t)=>{var{confirmContext:a}=t;return a?a(e):A(t,e).confirmContext})),(0,v.default)(this,"onShowConfirm",(0,g.default)((function*(){var{item:e,items:a,isBatch:n,containerProps:r,onCancelAction:l,action:i}=t.props,{perform:o,title:s,okText:u,cancelText:d,onSubmit:c,afterSubmit:f}=i,p=n?a:e,h=t.getConfirmContent(p,i),m=t.getConfirmOkButtonProps(p,i),g=t.getConfirmCancelButtonProps(p,i);try{o(p).then((()=>{var e=_.default.confirm({title:s,content:h,okText:u,cancelText:d,okButtonProps:m,cancelButtonProps:g,onOk:()=>t.onConfirmOK(p,c,n,r,f,e),onCancel:()=>{l&&l()}})}),(e=>{var t=e||A(i,p).performErrorMsg;_.default.error({content:t})}))}catch(e){var v=e||A(i,p).performErrorMsg;_.default.error({content:v})}}))),(0,v.default)(this,"onSubmitOne",((e,t,a,n)=>new u.default(((r,l)=>{var i=t(e,a);i instanceof u.default?i.then((()=>{this.onShowSuccess(e,n),r()}),(e=>{l(e)})):i?(this.onShowSuccess(e,n),r()):l(i)})).catch((t=>{this.onShowError(e,t)})))),(0,v.default)(this,"onSubmitBatch",((e,t,a,n,r)=>new u.default(((l,i)=>{var o=(0,s.default)(e).call(e,((r,l)=>t(r,a,n,l,e)));(0,N.allSettled)(o).then((t=>{var a,n=(0,c.default)(a=(0,s.default)(t).call(t,((t,a)=>"rejected"===t.status?{data:e[a],reason:t.reason}:null))).call(a,(e=>!!e));return 0===n.length?(this.onShowSuccess(e,r),l()):((0,f.default)(n).call(n,(e=>{this.onShowError(e.data,e.reason)})),n.length===e.length?i():l())}))})))),(0,v.default)(this,"onConfirmOK",((e,t,a,n,r,l)=>a?this.onSubmitBatch(e,t,n,a,r).catch((()=>{l&&l.update({visible:!1})})):this.onSubmitOne(e,t,n,r))),(0,v.default)(this,"onClickModalActionOk",(()=>{var{containerProps:e}=this.props;return this.formRef.current.wrappedInstance.onClickSubmit(((e,t)=>{this.handleSubmitLoading(),this.onClickModalActionCancel(!0),this.onCallback(e,t)}),(()=>{this.handleSubmitLoading(!0)}),e)})),(0,v.default)(this,"onClickModalActionCancel",(e=>{var t=()=>{(0,b.default)(e)||this.formRef.current.wrappedInstance.onClickCancel();var{onCancelAction:t}=this.props;this.setState({visible:!1},(()=>{t&&t()}))},{action:{beforeCancel:a}}=this.props;if(a)return a(t);t()})),(0,v.default)(this,"getModalWidth",(e=>{var{modalSize:t,showQuota:a=!1}=e,n=a?1.25:1;switch(t){case"small":return 520*n;case"middle":return 720*n;case"large":return 1200;default:return 520*n}})),(0,v.default)(this,"getModalOkButtonProps",(e=>{var{item:t,action:a,items:n}=e,{disableSubmit:r=!1,okButtonProps:l}=a;return l||{disabled:(0,x.default)(r)?r({item:t,items:n,action:a}):r}})),(0,v.default)(this,"getModalCancelButtonProps",(e=>{var{item:t,action:a,items:n}=e,{readOnly:r,cancelButtonProps:l}=a;return l||(r?{style:{display:"none"}}:{})}));var{id:a}=e;if(!a)throw Error("need id!");this.state={visible:!1,submitLoading:!1}}get routing(){return this.props.rootStore.routing}showModalAction(){this.setState({visible:!0})}renderModal(){var{visible:e,submitLoading:t}=this.state;if(!e)return null;var{title:a,action:n,item:r,containerProps:l,items:i,onFinishAction:o,onCancelAction:s}=this.props,u=n,{okText:d,cancelText:c,id:f,className:p}=n,h=this.getModalWidth(n),g=this.getModalOkButtonProps({item:r,action:n,items:i}),v=this.getModalCancelButtonProps({item:r,action:n,items:i}),b={title:a,visible:e,className:(0,I.default)("modal-".concat(f),E.default["modal-action"],p),width:h,onOk:()=>this.onClickModalActionOk(),onCancel:this.onClickModalActionCancel,okButtonProps:g,confirmLoading:t,okText:d,cancelText:c,maskClosable:!1};return(0,y.default)(v)||(b.cancelButtonProps=v),k.default.createElement(m.default,b,k.default.createElement(u,{item:r,items:i,ref:this.formRef,containerProps:l,onFinishAction:o,onCancelAction:s,modalProps:b,action:n}))}render(){var{isAllowed:e,needHide:t,buttonType:a,buttonClassName:n,name:r,id:l,title:i,isDanger:o,style:s,maxLength:u,isFirstAction:d}=this.props;if(!e&&t)return null;var c=r||i,f=!1;d&&c&&c.length>u&&(f=!0);var m=k.default.createElement(h.default,{type:a,danger:o,onClick:this.onClick,key:l,disabled:!e,className:n,style:s},r||i),g=f?k.default.createElement(p.default,{title:c},m):m;return k.default.createElement(k.default.Fragment,null,g,this.renderModal())}}a.ActionButton=j,(0,v.default)(j,"defaultProps",{item:void 0,isAllowed:!1,confirm:!1,needHide:!0,buttonType:"link",isDanger:!1,isLink:!1,items:[],isBatch:!1,path:"",containerProps:{},maxLength:0,isFirstAction:!1,onClickAction:null,visible:!1});var P=(0,C.inject)("rootStore")((0,C.observer)(j));a.default=P},1437:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(618)),h=f(n(619)),m=f(n(35)),g=f(n(1438));n(1325);var v=f(n(1326)),y=f(n(0)),b=(n(161),n(564),f(n(4))),x=f(n(16)),w=n(163),k=f(n(1506));function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var{title:a=t("Confirm"),content:n,onOk:r,onCancel:l,icon:i,okText:o=t("Confirm"),cancelText:s=t("Cancel"),className:u,okButtonProps:d={},cancelButtonProps:c={}}=e;v.default.confirm({title:a,icon:i||y.default.createElement(g.default,{className:k.default.warn}),className:(0,b.default)(k.default["confirm-modal"],u),content:(0,w.unescapeHtml)(n),okText:o,cancelText:s,okButtonProps:d||{},cancelButtonProps:c||{},onOk:()=>r&&r(),onCancel(){l&&l()}})};S.propTypes=M,S.defaultProps={title:t("Confirm"),icon:y.default.createElement(g.default,null),isSubmitting:!1,okText:t("Confirm"),cancelText:t("Cancel")};var I={confirm:S,error:e=>{var a=_(_({title:t("Error")},e),{},{icon:y.default.createElement(h.default,{className:k.default.error})});S(a)},warn:e=>{var a=_(_({title:t("Warn")},e),{},{icon:y.default.createElement(g.default,{className:k.default.warn})});S(a)},success:e=>{var a=_(_({title:t("Success")},e),{},{icon:y.default.createElement(p.default,{className:k.default.success})});S(a)}};a.default=I},1444:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(86)),o=l(n(29)),s=l(n(54)),u=l(n(28));n(1261);var d=l(n(1262));n(1246);var c=l(n(1247));n(344);var f=l(n(202)),p=l(n(1299));n(569);var h=l(n(1253));n(1244);var m=l(n(1245)),g=l(n(35)),v=l(n(0)),y=(n(161),l(n(1519))),b=l(n(16)),x=n(565),w=(n(564),n(571)),k=l(n(1925)),{isIPv4:C,isIpv6:_,isIpInRangeAll:M}=x.ipValidate;class S extends v.default.Component{constructor(e){super(e),(0,g.default)(this,"onChange",(()=>{this.checkNetwork((()=>{var{onChange:e}=this.props,{network:t,subnet:a,ip:n,ipType:r,validateStatus:l,errorMsg:o}=this.state,s=this.getNetworkOptions(),u=this.getSubnetOptions(),d=(0,i.default)(s).call(s,(e=>e.value===t)),c=(0,i.default)(u).call(u,(e=>e.value===a)),f=(0,i.default)(w.ipTypeOptions).call(w.ipTypeOptions,(e=>e.value===r));e&&e({network:t,subnet:a,ip:n,ipType:r,networkOption:d,subnetOption:c,ipTypeOption:f,validateStatus:l,errorMsg:o})}))})),(0,g.default)(this,"onNetworkChange",(e=>{var{subnets:t}=this.state,a=(0,o.default)(t).call(t,(t=>t.network_id===e)),n=a.length?a[0].id:null;this.setState({network:e,subnet:n,ipType:0,ip:void 0},this.onChange)})),(0,g.default)(this,"onSubnetChange",(e=>{this.setState({subnet:e,ip:void 0},this.onChange)})),(0,g.default)(this,"onTypeChange",(e=>{this.setState({ipType:e},this.onChange)})),(0,g.default)(this,"onIPChange",(e=>{var{value:t}=e.currentTarget;this.setState({ip:t},this.onChange)})),(0,g.default)(this,"checkNetwork",(e=>{var{network:a,subnets:n,subnet:r,ip:l,ipType:o}=this.state,s=(0,i.default)(n).call(n,(e=>e.id===r)),{allocation_pools:u}=s||{};if(a)if(1!==o||C(l)||_(l)){if(u&&1===o)if(!(0,i.default)(u).call(u,(e=>M(l,e.start,e.end))))return void this.setState({errorMsg:t("The ip is not within the allocated pool!"),validateStatus:"error"},e);this.setState({errorMsg:void 0,validateStatus:"success"},e)}else this.setState({errorMsg:t("Please input a valid ip!"),validateStatus:"error"},e);else this.setState({errorMsg:t("Please select a network!"),validateStatus:"error"},e)})),(0,g.default)(this,"getNetworkOptions",(()=>{var{networks:e}=this.state,{optionsByIndex:t,index:a}=this.props,n=[...e];return t&&a({label:e.name,value:e.id})))})),(0,g.default)(this,"getSubnetOptions",(()=>{var e,{network:t,subnets:a}=this.state;return t?(0,s.default)(e=(0,o.default)(a).call(a,(e=>e.network_id===t))).call(e,(e=>({label:v.default.createElement("div",null,v.default.createElement("span",null,e.name),v.default.createElement("span",{className:k.default["subnet-options-cidr"]},e.cidr)),name:e.name,value:e.id}))):[]}));var{value:a}=e,{network:n,subnet:r,ip:l,ipType:u}=a;this.state={network:n||null,subnet:r||null,ip:l||"0.0.0.0",ipType:u||0}}static getDerivedStateFromProps(e,t){if(e.networks!==t.networks||e.subnets!==t.subnets){var{networks:a,subnets:n}=e;return{networks:a,subnets:n}}return null}componentDidMount(){this.checkNetwork()}renderNetwork(){var{network:e}=this.state;return v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{options:this.getNetworkOptions(),value:e,onChange:this.onNetworkChange,placeholder:t("please select network")}))}renderSubnet(){var{network:e,subnet:a,ipType:n}=this.state;return e&&n?v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{options:this.getSubnetOptions(),value:a,placeholder:t("please select subnet"),onChange:this.onSubnetChange})):null}renderIpType(){var{network:e,ipType:t}=this.state;return e?v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{value:t,options:w.ipTypeOptions,onChange:this.onTypeChange})):null}renderIp(){var{subnet:e,subnets:a,ipType:n,ip:r,network:l}=this.state;if(!l)return null;if(0===n){var d=[],c=(0,o.default)(a).call(a,(e=>e.network_id===l));(0,u.default)(c).call(c,(e=>{var{allocation_pools:t=[]}=e;(0,u.default)(t).call(t,(e=>{d.push(e)}))}));var g=(0,s.default)(d).call(d,((e,t)=>v.default.createElement("span",{key:"pool.start.".concat(t),style:{marginRight:10}},e.start,"--",e.end))),y=v.default.createElement("span",null,v.default.createElement("span",{className:k.default.label},t("Allocation Pools"),": "),v.default.createElement("span",{className:k.default.content},g));return v.default.createElement(m.default,{span:12},y)}if(!e)return null;var b=(0,i.default)(a).call(a,(t=>t.id===e));if(!b)return null;var{allocation_pools:x}=b,w=(0,s.default)(x).call(x,((e,t)=>v.default.createElement("div",{key:"pool.start.".concat(t)},e.start,"--",e.end))),C=v.default.createElement("span",null,v.default.createElement("span",{className:k.default.label},t("Allocation Pools"),": "),v.default.createElement("span",{className:k.default.content},w),v.default.createElement("span",{className:k.default.content},t("Please make sure this IP address be available to avoid creating VM failure.")));return v.default.createElement(m.default,{span:6},v.default.createElement(h.default,{value:r,onChange:this.onIPChange}),v.default.createElement(f.default,{title:C,color:"white"},v.default.createElement(p.default,null)))}render(){var{validateStatus:e,errorMsg:t}=this.state,{name:a}=this.props;return v.default.createElement(d.default.Item,{className:k.default["network-select"],name:a,validateStatus:e,help:t},v.default.createElement(c.default,{gutter:24},this.renderNetwork(),this.renderIpType(),this.renderSubnet(),this.renderIp()))}}a.default=S,(0,g.default)(S,"propTypes",{networks:b.default.array,subnets:b.default.array,value:b.default.object,ipType:b.default.number,name:b.default.string,optionsByIndex:b.default.bool,index:b.default.number}),(0,g.default)(S,"defaultProps",{networks:[],subnets:[],value:{},ipType:0,name:"network",optionsByIndex:!1,index:0})},1447:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1278);var p=f(a(1279)),h=f(a(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function g(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(g=function(e){return e?a:t})(e)}function v(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function y(e){for(var t=1;t"$ ".concat(e).replace(/\D/g,"")});return m.default.createElement(p.default,e)}}t.default=b},1448:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(29)),u=o(n(91)),d=o(n(86)),c=o(n(54));n(1315);var f=o(n(1316)),p=o(n(343));n(1311);var h=o(n(1312)),m=o(n(35)),g=o(n(177)),v=x(n(0)),y=x(n(1376));n(161);function b(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(b=function(e){return e?a:t})(e)}function x(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}return n.default=e,a&&a.set(e,n),n}class w extends v.Component{constructor(e){super(e),(0,m.default)(this,"handleChangeTab",(e=>{this.setState({tabKey:e})})),(0,m.default)(this,"onChangeValue",(()=>{var{onChange:e}=this.props;e&&e(this.state)})),(0,m.default)(this,"getMultiSelected",((e,t,a)=>{var n,r,{selectedRowKeys:l,selectedRows:i}=this.state,o=(0,s.default)(e).call(e,(e=>(0,u.default)(l).call(l,e)<0)),c=(0,s.default)(t).call(t,(e=>(0,u.default)(o).call(o,e.key)>=0||(0,u.default)(o).call(o,e.id)>=0)),f=(0,s.default)(l).call(l,(t=>(0,u.default)(e).call(e,t)<0&&!!(0,d.default)(a).call(a,(e=>e.key===t||e.id===t))));return[(0,s.default)(n=[...l,...o]).call(n,(e=>(0,u.default)(f).call(f,e)<0)),(0,s.default)(r=[...i,...c]).call(r,(e=>{var t=e.key||e.id;return(0,u.default)(f).call(f,t)<0}))]})),(0,m.default)(this,"onSelectTableChange",(e=>{var{selectedRowKeys:t,selectedRows:a,data:n}=e,{isMulti:r=!1}=this.props,[l,i]=r?this.getMultiSelected(t,a,n):[t,a],o={selectedRowKeys:l,selectedRows:i};this.setState(o,(()=>{this.onChangeValue()}))})),(0,m.default)(this,"clearSelected",(()=>{this.setState({selectedRowKeys:[],selectedRows:[]},(()=>{this.onChangeValue()}))})),(0,m.default)(this,"onTagClose",(e=>{var{selectedRowKeys:t,selectedRows:a}=this.state,n=(0,s.default)(t).call(t,(t=>t!==e)),r=(0,s.default)(a).call(a,(t=>t.key!==e&&t.id!==e));this.setState({selectedRowKeys:n,selectedRows:r},(()=>{this.onChangeValue()}))})),(0,m.default)(this,"renderTag",(e=>v.default.createElement(h.default,{key:e.key||e.id,closable:!0,onClose:()=>this.onTagClose(e.key||e.id)},this.props.tagKey?e[this.props.tagKey]:e.name))),(0,m.default)(this,"renderClearButton",(e=>(0,y.renderClearButton)(this,e)));var{tabs:t=[],defaultTab:a,value:n={}}=e;this.state={tabKey:n.tab||a||t[0]&&t[0].key,selectedRowKeys:n.selectedRowKeys||[],selectedRows:n.selectedRows||[]},this.init(e)}init(e){var{value:t={}}=e;(0,g.default)(t)||this.onChangeValue()}renderTabSelectTable(e){var{selectedRowKeys:t,selectedRows:a}=this.state,n={selectedRowKeys:t},r={selectedRowKeys:t,selectedRows:a};return v.default.createElement(y.default,(0,p.default)({},e.props,{onChange:this.onSelectTableChange,showSelected:!1,value:n,initValue:r}))}renderTab(e){var{tabKey:t}=this.state;return t!==e.key?v.default.createElement(f.default.TabPane,{tab:e.title,key:e.key}):v.default.createElement(f.default.TabPane,{tab:e.title,key:e.key},this.renderTabSelectTable(e))}renderTabs(){var{tabKey:e}=this.state,{tabs:t}=this.props;if(!e)return null;if(1===t.length)return this.renderTabSelectTable(t[0]);var a=(0,c.default)(t).call(t,(e=>this.renderTab(e)));return v.default.createElement(f.default,{activeKey:e,onChange:this.handleChangeTab},a)}renderSelected(){var{selectedRows:e}=this.state,a=(0,c.default)(e).call(e,(e=>this.renderTag(e))),n=this.renderClearButton(e);return v.default.createElement("div",null,t("Selected")," :  ",n,"  ",a)}renderHeader(){var{header:e}=this.props;return e||null}render(){return v.default.createElement(v.default.Fragment,null,this.renderHeader(),this.renderTabs(),this.renderSelected())}}a.default=w},1449:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,{used:n=0,add:r=0,reserved:l=0,limit:h=1,title:m="",secondTitle:g=t("Quota"),hasLabel:v=!1}=e,y=-1!==h,b=y,x=y?h:1/0,w=y?h:t("Infinity"),k=y?h-n-l-r:1;k<0&&(k=0);var C=[{type:t("Used"),value:y?n:0,color:f.used}];l&&C.push({type:t("Reserved"),value:y?l:0,color:f.reserved});C.push({type:t("New"),value:y?r:0,color:f.add}),C.push({type:t("Left"),value:k,color:f.left});var _=(0,o.default)(C).call(C,(e=>e.color)),M=v?200:120,S={width:M},I=M,N=n+r+l,E=y?N/x*100:0,T="";if(!y){var A,j,P,D=(0,s.default)(A="".concat(t("Used"),": ")).call(A,n),L=l?"":(0,s.default)(j="".concat(t("Reserved"),": ")).call(j,l),O=(0,s.default)(P="".concat(t("New"),": ")).call(P,r),R=[D,O];l&&(0,u.default)(R).call(R,1,0,L),T=R.join(" / ")}var z=m.length,U=(V=m,K=/[\u4e00-\u9fa5]+/g,V.match(K)?z>6?10:14:z>12?10:14),F=d.default.createElement(c.Chart,{placeholder:!1,height:I,padding:"auto",autoFit:!0},d.default.createElement(c.Legend,{visible:b&&v}),d.default.createElement(c.Tooltip,{visible:b}),d.default.createElement(c.View,{data:C},d.default.createElement(c.Coordinate,{type:"theta",innerRadius:.75}),d.default.createElement(c.Interval,{position:"value",adjust:"stack",color:["type",_],size:16}),d.default.createElement(c.Annotation.Text,{position:["50%","30%"],content:m,style:{lineHeight:1.5,fontSize:U,fill:"#000",textAlign:"center"}}),d.default.createElement(c.Annotation.Text,{position:["50%","50%"],content:g,style:{lineHeight:1.5,fontSize:14,fill:"#000",textAlign:"center"}}),d.default.createElement(c.Annotation.Text,{position:["50%","70%"],content:(0,s.default)(a="".concat(N,"/")).call(a,w),style:{lineHeight:1.5,fontSize:14,fill:p(E),textAlign:"center",fontWeight:"bold"}}))),B=y?F:d.default.createElement(i.default,{title:T},F);var V,K;return d.default.createElement("div",{style:S},B)},a.getUsedValueColor=a.getAddValueColor=a.typeColors=void 0,n(344);var i=l(n(202)),o=l(n(54)),s=l(n(77)),u=l(n(573)),d=l(n(0)),c=n(1349),f=(n(161),{used:globalCSS.primaryColor,reserved:"#5D7092",add:globalCSS.successColor,left:"#eee",danger:globalCSS.warnDarkColor});a.typeColors=f;a.getAddValueColor=e=>e>80?f.danger:f.add;var p=e=>e>80?f.danger:f.used;a.getUsedValueColor=p},1454:function(e,t,a){var n=a(2077);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1506:function(e,t,a){var n=a(1815);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1516:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.getTags=void 0;var h=p(n(77)),m=p(n(28)),g=p(n(32)),v=p(n(86)),y=p(n(29)),b=p(n(54)),x=p(n(91)),w=p(n(350)),k=p(n(591));n(1246);var C=p(n(1247)),_=p(n(612));n(569);var M=p(n(1253));n(584);var S=p(n(420));n(1244);var I=p(n(1245));n(1276);var N=p(n(421));n(1311);var E=p(n(1312));n(1300);var T=p(n(1301));n(231);var A=p(n(341)),j=p(n(605)),P=p(n(35)),D=p(n(434)),L=p(n(177)),O=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=F(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),R=p(n(16)),z=(n(161),n(564),p(n(4))),U=p(n(1864));function F(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(F=function(e){return e?a:t})(e)}function B(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function V(e){for(var t=1;t{var a;return(0,h.default)(a="".concat(e,"--")).call(a,t)},G=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=e.split("--")[0],a=e.split("--")[1];return{name:t,key:a}},H=(e,t)=>{var a;if(!e||(0,L.default)(e))return{};if((0,L.default)(t))return{};var n=[],r=[];return(0,m.default)(a=(0,g.default)(e)).call(a,(a=>{var l=(0,v.default)(t).call(t,(e=>e.name===a));if(l){var{options:i=[]}=l,o=e[a];if(i.length){var s=(0,v.default)(i).call(i,(e=>e.key===o));s&&s.isQuick&&r.push(Y(l.name,o))}n.push({value:o,filter:l})}})),{tags:n,checkValues:r}};a.getTags=H;class W extends O.PureComponent{constructor(e){super(e),(0,P.default)(this,"getFilterParams",(()=>{var{filterParams:e}=this.props,{tags:t}=this.state,a=[];return(0,m.default)(e).call(e,(e=>{(0,v.default)(t).call(t,(t=>(0,y.default)(t).name===e.name))||a.push(e)})),a})),(0,P.default)(this,"onTagsChange",(()=>{var{onInputChange:e}=this.props,{tags:t}=this.state;e&&e(t)})),(0,P.default)(this,"onFocusChange",(e=>{var{onInputFocus:t}=this.props;t&&t(e)})),(0,P.default)(this,"getDefaultFilter",(()=>{var{filterParams:e}=this.props;return(0,v.default)(e).call(e,(e=>!e.options))})),(0,P.default)(this,"handleEnter",(e=>{e&&e.preventDefault(),e&&e.stopPropagation();var{value:t}=e.currentTarget;t&&this.updateInput(t)})),(0,P.default)(this,"handleBlur",(()=>{var{currentFilter:e}=this.state;e?(this.setState({isFocus:!0}),this.onFocusChange(!0)):this.onFocusChange(!1)})),(0,P.default)(this,"handleKeyUp",(e=>{if(8===e.keyCode||46===e.keyCode){var{currentFilter:t,tags:a}=this.state,{value:n}=this.inputRef.current.state;t&&(0,L.default)(n)?this.setState({currentFilter:null}):a.length>0&&(0,L.default)(n)&&this.handleTagClose((0,y.default)(a[a.length-1]).name)}})),(0,P.default)(this,"handleFocus",(()=>{this.setState({isFocus:!0}),this.onFocusChange(!0)})),(0,P.default)(this,"handleInputChange",(e=>{this.setState({inputValue:e.target.value})})),(0,P.default)(this,"handleTagClose",(e=>{var{tags:t,checkValues:a}=this.state,n=(0,y.default)(t).call(t,(t=>(0,y.default)(t).name!==e)),r=(0,y.default)(a).call(a,(t=>G(t).name!==e));this.setState({tags:n,optionClear:!1,checkValues:r},(()=>{this.onTagsChange()}))})),(0,P.default)(this,"handleOptionClick",(e=>{var t,{key:a}=e;t="true"===a||"false"!==a&&a,this.updateInput(t),this.onFocusChange(!1)})),(0,P.default)(this,"handleSelectFilter",(e=>{var{key:t}=e,{filterParams:a}=this.props,n=(0,v.default)(a).call(a,(e=>e.name===t));this.setState({currentFilter:n,isFocus:!0},(()=>{this.inputRef.current.focus(),this.onFocusChange(!0)}))})),(0,P.default)(this,"clearOptions",(()=>{this.setState({optionClear:!0})})),(0,P.default)(this,"renderOptionsClose",(e=>{var{filterParams:t}=this.props,{optionClear:a}=this.state;return a||!e[0]||t.length===e.length?null:O.default.createElement(A.default,{className:U.default["close-option-btn"],type:"link",icon:O.default.createElement(j.default,null),onClick:this.clearOptions})})),(0,P.default)(this,"updateInput",(e=>{var{currentFilter:t,tags:a}=this.state,n={value:e,filter:t||this.getDefaultFilter()};this.clearInputValue();var r=(0,y.default)(a).call(a,(e=>(0,y.default)(e).name!==(0,y.default)(n).name));r.push(n);var l=(0,y.default)(r).call(r,(e=>{var{value:t,filter:{options:a=[]}={}}=e;return!!(0,v.default)(a).call(a,(e=>e.key===t&&e.isQuick))})),i=(0,b.default)(l).call(l,(e=>Y((0,y.default)(e).name,e.value)));this.setState({tags:r,currentFilter:null,inputValue:"",checkValues:i},(()=>{this.onTagsChange()}))})),(0,P.default)(this,"clearInputValue",(()=>{this.setState({inputValue:""})})),(0,P.default)(this,"clearAll",(()=>{this.clearInputValue(),this.setState({inputValue:"",tags:[],currentFilter:null,isFocus:!1,optionClear:!1,checkValues:[]},(()=>{this.onTagsChange(),this.onFocusChange(!1)}))})),(0,P.default)(this,"updateCheck",(()=>{})),(0,P.default)(this,"onChangeCheck",(e=>{var t,{checkValues:a}=this.state,n=[];(0,m.default)(e).call(e,(e=>{(0,x.default)(a).call(a,e)<0&&n.push({key:e,value:!0})})),(0,m.default)(a).call(a,(t=>{(0,x.default)(e).call(e,t)<0&&n.push({key:t,value:!1})}));var r=(0,b.default)(t=(0,w.default)(new k.default([...a,...e]))).call(t,(e=>G(e).name)),{filterParams:l}=this.props,{tags:i}=this.state,o=(0,y.default)(i).call(i,(e=>(0,x.default)(r).call(r,(0,y.default)(e).name)<0)),s=[];(0,m.default)(n).call(n,(e=>{var{key:t,value:a}=e;if(a){var{name:n,key:r}=G(t),i=(0,v.default)(l).call(l,(e=>e.name===n));s.push({value:r,filter:i})}})),this.setState({tags:[...o,...s],checkValues:e},(()=>{this.onTagsChange()}))})),this.inputRef=O.default.createRef(),this.state={tags:[],currentFilter:null,isFocus:!1,optionClear:!1,checkValues:[]}}componentDidMount(){this.initTags(this.props)}initTags(e){var{initValue:t,filterParams:a}=e,{tags:n=[],checkValues:r}=H(t,a);n.length&&this.setState({tags:n,checkValues:r},(()=>{this.onTagsChange()}))}renderKey(){var{currentFilter:e}=this.state;return e?O.default.createElement("span",{className:U.default.key},"".concat(e.label),O.default.createElement(T.default,{type:"vertical"})):null}renderTags(){var{tags:e}=this.state;return(0,b.default)(e).call(e,(e=>{var{filter:t,value:a}=e,{options:n}=t,r=a;if(n){var l=(0,v.default)(n).call(n,(e=>((0,D.default)(e.key)?e.key.toString():e.key)===((0,D.default)(a)?a.toString():a)));r=l?l.label:a}return O.default.createElement(E.default,{key:t.name,closable:!0,onClose:()=>this.handleTagClose(t.name)},O.default.createElement("span",null,t.label),O.default.createElement(T.default,{type:"vertical"}),O.default.createElement("span",null,r))}))}renderOptions(){var e,{currentFilter:t,tags:a}=this.state,{options:n,correlateOption:r}=t;if(!n)return null;var l=(0,y.default)(a).call(a,(e=>(0,y.default)(e).name===r)),i=[];r&&l[0]&&(i=(0,y.default)(n).call(n,(e=>{var t;return(0,x.default)(t=e.correlateValue).call(t,l[0].value)>-1})));var o=(0,b.default)(e=i[0]?i:n).call(e,(e=>O.default.createElement(N.default.Item,{key:e.key},e.label)));return O.default.createElement(N.default,{className:U.default["option-menu"],onClick:this.handleOptionClick},o)}renderMenu(){var{currentFilter:e,isFocus:t,optionClear:a,inputValue:n}=this.state;if(n)return null;if(!t)return null;if(e)return this.renderOptions();var r=this.getFilterParams();a&&(r=[]);var l=(0,b.default)(r).call(r,(e=>O.default.createElement(N.default.Item,{key:e.name},e.label)));return O.default.createElement(N.default,{className:U.default.menu,onClick:this.handleSelectFilter,id:"search-items-menu"},this.renderOptionsClose(r),l)}renderClose(){var{isFocus:e}=this.state;return e?O.default.createElement(I.default,{className:U.default["close-btn-col"]},O.default.createElement(A.default,{className:U.default["close-btn"],type:"link",icon:O.default.createElement(j.default,null),onClick:this.clearAll})):null}getChecks(){var{filterParams:e}=this.props,t=[];return(0,m.default)(e).call(e,(e=>{var{options:a=[]}=e;(0,m.default)(a).call(a,(a=>{var{isQuick:n=!1}=a;n&&t.push(V(V({},a),{},{father:e}))}))})),t}renderChecks(){var e=this.getChecks();if(0===e.length)return null;var{checkValues:t}=this.state,a=(0,b.default)(e).call(e,(e=>{var{checkLabel:t,key:a,father:n}=e;return{label:t,value:Y(n.name,a)}}));return O.default.createElement("div",{className:(0,z.default)(U.default["magic-input-checks"],"magic-input-checks")},O.default.createElement(S.default.Group,{options:a,onChange:this.onChangeCheck,value:t}))}render(){var e,{placeholder:t}=this.props,{isFocus:a,inputValue:n}=this.state;return O.default.createElement("div",{className:(0,z.default)(U.default["magic-input-outer-wrapper"],"magic-input-outer-wrapper")},this.renderChecks(),O.default.createElement(C.default,{className:(0,z.default)("magic-input-wrapper",U.default["magic-input-wrapper"],a?U.default["magic-input-wrapper-active"]:"",a?"magic-input-wrapper-active":"")},O.default.createElement(I.default,null,this.renderTags()),O.default.createElement(I.default,null,this.renderKey()),O.default.createElement(I.default,{className:U.default["input-wrapper"]},O.default.createElement(M.default,{className:U.default.input,ref:this.inputRef,autoFocus:a,placeholder:t,onChange:this.handleInputChange,onBlur:this.handleBlur,onFocus:this.handleFocus,onPressEnter:this.handleEnter,onKeyUp:this.handleKeyUp,value:n}),this.renderMenu()),O.default.createElement(I.default,{className:(0,h.default)(e="".concat(U.default["search-icon"]," ")).call(e,a?U.default["search-icon-hidden"]:"")},O.default.createElement(_.default,null)),this.renderClose()))}}(0,P.default)(W,"propTypes",{filterParams:R.default.arrayOf(Q),initValue:R.default.object,placeholder:R.default.string,onInputChange:R.default.func,onInputFocus:R.default.func}),(0,P.default)(W,"defaultProps",{filterParams:[],initValue:{},placeholder:t("Click here for filters.")});var q=W;a.default=q},1517:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(21);d(t,"__esModule",{value:!0}),t.default=void 0;var f=c(a(54)),p=c(a(77)),h=c(a(29)),m=c(a(91)),g=c(a(573)),v=c(a(86)),y=c(a(32));a(585);var b=c(a(587)),x=c(a(58)),w=c(a(35));a(594);var k=c(a(595)),C=c(a(570)),_=c(a(205)),M=c(a(177)),S=c(a(134)),I=c(a(119)),N=c(a(0)),E=c(a(4)),T=c(a(16)),A=(a(161),a(418)),j=a(163),P=c(a(1866));function D(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function L(e){for(var t=1;t{var{onChange:r}=this.props;r&&r(e,t,a,n)})),(0,w.default)(this,"getBaseColumns",(e=>(0,f.default)(e).call(e,(e=>{var{sortable:t,dataIndex:a,valueRender:n,sorter:r,sortOrder:l,render:i,isStatus:o,isName:s,isPrice:u,isLink:d,routeName:c,linkPrefix:f,valueMap:p,unit:h,copyable:m}=e,g=(0,x.default)(e,["sortable","dataIndex","valueRender","sorter","sortOrder","render","isStatus","isName","isPrice","isLink","routeName","linkPrefix","valueMap","unit","copyable"]);if("operation"===e.key)return e;var v=(0,A.getColumnSorter)(e,this.props),y=l||v?(0,A.getSortOrder)(a,this.props):null,b=i||(0,A.getRender)(n);if(p&&(b=(0,A.getValueMapRender)(e)),h&&(b=(0,A.getUnitRender)(e)),(0,A.checkIsStatusColumn)(a,o)&&(b=(0,A.getStatusRender)(b)),"description"===a&&(b=this.getNoValueRender(b)),"project_name"===a&&(b=(0,A.getProjectRender)(b)),"name"===a&&c||d){var{rowKey:w}=this.props;b=(0,A.getNameRenderByRouter)(b,e,w)}("name"===a&&f||s)&&(b=(0,A.getNameRender)(b,e)),("cost"===a||u)&&(b=this.getPriceRender(b,e)),m&&(b=e=>e&&"-"!==e?N.default.createElement(O,{copyable:!0},e):"-");var k=L(L({},g),{},{dataIndex:a,align:e.align||"left"});return v&&(k.sorter=v),l&&(k.sortOrder=y),b&&(k.render=b),(0,A.updateColumnSort)(k,this.props),k})))),(0,w.default)(this,"getNoValueRender",(e=>e||(e=>(0,j.getNoValue)(e)))),(0,w.default)(this,"getLinkUrl",((e,t)=>{var a,n;return e?"/"===e[e.length-1]?(0,p.default)(n="".concat(e)).call(n,t):(0,p.default)(a="".concat(e,"/")).call(a,t):null})),(0,w.default)(this,"getColumns",(()=>{var{columns:e}=this.props;return this.getBaseColumns(e)})),(0,w.default)(this,"getPriceRender",((e,t)=>e||(e=>{var t=(0,S.default)(e)?e:(e||0).toFixed(2);return N.default.createElement("span",{style:{color:globalCSS.moneyColor}},t)}))),(0,w.default)(this,"getDataSource",(()=>{var{data:e,filters:t,filterByBackend:a}=this.props;if(a)return e;var n=(0,f.default)(e).call(e,(e=>e.key?e:L(L({},e),{},{key:e.id})));return!t||(0,M.default)(t)?n:(0,h.default)(n).call(n,(e=>this.filterData(e,t)))})),(0,w.default)(this,"onRow",((e,t)=>{var{rowSelection:a,onRow:n}=this.props;return n?n(e,t):{onClick:()=>{var{selectedRowKeys:t=[],onChange:n,type:r,getCheckboxProps:l}=a||{};if(l){var{disabled:i}=l(e);if(i)return}var o=(0,m.default)(t).call(t,e.key);if("checkbox"===r){var s=[...t];o>-1?(0,g.default)(s).call(s,o,1):s.push(e.key),n(s)}else"radio"===r&&n([e.key])}}})),(0,w.default)(this,"filterData",((e,t)=>{var a,{searchFilters:n}=this.props;return!(0,v.default)(a=(0,y.default)(t)).call(a,(a=>{var r=(0,I.default)(e,a),l=t[a],{filterFunc:i}=(0,v.default)(n).call(n,(e=>e.name===a));if(i)return!i(r,l,e);var o,s=this.checkFilterInclude(a);return(0,S.default)(r)&&(0,S.default)(l)?s?(0,m.default)(o=r.toLowerCase()).call(o,l.toLowerCase())<0:r.toLowerCase()!==l.toLowerCase():!(0,_.default)(r,l)}))})),(0,w.default)(this,"checkFilterInclude",(e=>{var{searchFilters:t}=this.props,a=(0,v.default)(t).call(t,(t=>t.name===e));return(0,C.default)(a,"include")?a.include:!(0,C.default)(a,"options")}))}getPagination(e){var{pagination:t}=this.props;return t&&L(L({},t),{},{total:e.length})}render(){var{className:e,isLoading:t,rowSelection:a,footer:n,childrenColumnName:r}=this.props,l=this.getColumns(),i=this.getDataSource();return N.default.createElement(b.default,{className:(0,E.default)(P.default["sl-simple-table"],"sl-simple-table",e),columns:l,dataSource:i,loading:t,onChange:this.handleChange,pagination:this.getPagination(i),rowSelection:a,sortDirections:["ascend","descend","ascend"],showSorterTooltip:!1,footer:n,onRow:this.onRow,childrenColumnName:r})}}t.default=R,(0,w.default)(R,"propTypes",{data:T.default.array.isRequired,filters:T.default.object,searchFilters:T.default.array,columns:T.default.array.isRequired,className:T.default.string,onChange:T.default.func,isLoading:T.default.bool,rowSelection:T.default.object,pagination:T.default.oneOfType([T.default.object,T.default.bool]),filterByBackend:T.default.bool,isSortByBack:T.default.bool,defaultSortKey:T.default.string,defaultSortOrder:T.default.string,onRow:T.default.func,childrenColumnName:T.default.string}),(0,w.default)(R,"defaultProps",{filters:{},searchFilters:[],isLoading:!1,rowSelection:null,pagination:{},filterByBackend:!1,isSortByBack:!1,defaultSortKey:"",defaultSortOrder:""})},1518:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(54)),u=o(n(642));n(231);var d=o(n(341)),c=o(n(641));n(568);var f=o(n(415)),p=o(n(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),m=o(n(16)),g=(n(564),n(161),o(n(4))),v=o(n(1868));function y(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(y=function(e){return e?a:t})(e)}class b extends h.Component{static propTypes(){return{total:m.default.number,currentDataSize:m.default.number.isRequired,current:m.default.number.isRequired,pageSize:m.default.number.isRequired,defaultCurrent:m.default.number,defaultPageSize:m.default.number,pageSizeOptions:m.default.array,onChange:m.default.func,isLoading:m.default.bool,className:m.default.object}}constructor(e){super(e),(0,p.default)(this,"onChange",((e,t)=>{var{onChange:a}=this.props;a&&a(e,t)})),(0,p.default)(this,"onChangePageSize",(e=>{this.setState({pageSize:e},(()=>{this.onChange(1,e)}))})),(0,p.default)(this,"onClickPre",(()=>{var{current:e,pageSize:t}=this.state;1!==e&&this.setState({current:e-1},(()=>{this.onChange(e-1,t)}))})),(0,p.default)(this,"onClickNext",(()=>{var{current:e,pageSize:t,currentDataSize:a}=this.state;a{var{onFocusChange:t}=this.props;t&&t(e)})),(0,p.default)(this,"onFocus",(()=>{this.onFocusChange(!0)})),(0,p.default)(this,"onBlur",(()=>{this.onFocusChange(!1)}));var{current:t,pageSize:a,defaultCurrent:n,defaultPageSize:r,currentDataSize:l,isLoading:i,total:o}=e;this.state={current:t||n,pageSize:a||r,currentDataSize:l,isLoading:i,total:o}}static getDerivedStateFromProps(e,t){if(e.currentDataSize!==t.currentDataSize||e.current&&e.current!==t.current||e.isLoading!==t.isLoading||e.total!==t.total){var{currentDataSize:a,current:n=1,isLoading:r,total:l}=e;return{currentDataSize:a,current:n,isLoading:r,total:l}}return null}checkNextByTotal(){var{pageSize:e,total:t,current:a}=this.state;return void 0===t||!!t&&a({label:t("{pageSize} items/page",{pageSize:e}),value:e})));return h.default.createElement(f.default,{className:v.default["page-select"],options:r,value:n,defaultValue:a,onChange:e=>{this.onChangePageSize(e)}})}render(){var{current:e,currentDataSize:t,pageSize:a,isLoading:n}=this.state,{className:r}=this.props,l=n||1===e,i=n||t{}})},1519:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var s=o(n(1247));n(1244);var u=o(n(1245));n(584);var d=o(n(420));n(568);var c=o(n(415)),f=o(n(343)),p=o(n(58)),h=o(n(35)),m=o(n(1314)),g=o(n(601)),v=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),y=(n(161),o(n(1875)));function b(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(b=function(e){return e?a:t})(e)}class x extends v.Component{constructor(e){super(e),(0,h.default)(this,"onChange",((e,t)=>{var{onChange:a,isWrappedValue:n}=this.props;a&&a(n?t:e)})),(0,h.default)(this,"getValue",(()=>{var{value:e,isWrappedValue:t}=this.props;return void 0===e?e:t?e.value:e})),(0,h.default)(this,"onCheckChange",(()=>{var{selectAll:e}=this.state,{options:t,checkOptions:a}=this.props;this.setState({selectAll:1-e},this.onChange(1===e?a[a.length-1].value:t[t.length-1].value))}));var{checkOptions:t}=e;t&&(this.state={selectAll:!1})}render(){var e=this.props,{value:a,placeholder:n=t("Please select"),isWrappedValue:r,checkOptions:l,checkBoxInfo:i,allowClear:o=!0,showSearch:h=!0}=e,b=(0,p.default)(e,["value","placeholder","isWrappedValue","checkOptions","checkBoxInfo","allowClear","showSearch"]);if((0,g.default)(a)||(0,m.default)(a))return v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange}));if(l){var{options:x}=this.props,{selectAll:w}=this.state,k=v.default.createElement(d.default,{onChange:this.onCheckChange,checked:w},i||t("Show all Data"));return v.default.createElement(s.default,{gutter:24},v.default.createElement(u.default,{span:12},v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange,value:this.getValue(),options:1===w?l:x}))),v.default.createElement(u.default,{span:12,className:y.default.checkbox},k))}return v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange,value:this.getValue()}))}}a.default=x},1534:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(86));n(1261);var h=f(n(1262));n(1246);var m=f(n(1247));n(1244);var g=f(n(1245));n(584);var v=f(n(420));n(1278);var y=f(n(1279));n(568);var b=f(n(415)),x=f(n(35)),w=f(n(0)),k=(n(161),f(n(16))),C=f(n(1899));function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{var{type:a}=this.state;a?this.setState({errorMsg:void 0,validateStatus:"success"},e):this.setState({errorMsg:t("Please select a type!"),validateStatus:"error"},e)})),(0,x.default)(this,"onChange",(()=>{this.checkVolume((()=>{var{onChange:e,options:a=[]}=this.props;if(e){var{type:n,deleteType:r}=this.state,l=1===r?t("Deleted with the instance"):t("Not deleted with the instance"),i=(0,p.default)(a).call(a,(e=>e.value===n));e(M(M({},this.state),{},{deleteTypeLabel:l,typeOption:i}))}}))})),(0,x.default)(this,"onSelectChange",(e=>{this.setState({type:e},this.onChange)})),(0,x.default)(this,"onInputChange",(e=>{this.setState({size:e},this.onChange)})),(0,x.default)(this,"onDeleteChange",(()=>{var{deleteType:e}=this.state;this.setState({deleteType:1-e},this.onChange)}));var{type:a,size:n,deleteType:r}=e.value||{},{minSize:l}=e;this.state={type:a,size:n,deleteType:r,minSize:l}}static getDerivedStateFromProps(e,t){if(e.options!==t.options||e.minSize!==t.minSize){var{options:a,value:n,minSize:r}=e;return{options:a,type:n.type,minSize:r}}return null}componentDidMount(){this.onChange()}render(){var{options:e,type:a,size:n,deleteType:r,validateStatus:l,errorMsg:i,minSize:o}=this.state,{name:s,showDelete:u=!0}=this.props,d=w.default.createElement(b.default,{value:a,options:e,onChange:this.onSelectChange,className:C.default.select,placeholder:t("Please select type")}),c=w.default.createElement(y.default,{value:n,onChange:this.onInputChange,min:o,style:{maxWidth:"60%"},precision:0,formatter:e=>"$ ".concat(e).replace(/\D/g,""),onInput:e=>this.onInputChange(1*e)}),f=1===r,p=u?w.default.createElement(v.default,{onChange:this.onDeleteChange,checked:f},t("Deleted with the instance")):null;return w.default.createElement(h.default.Item,{className:C.default["instance-volume"],name:s,validateStatus:l,help:i},w.default.createElement(m.default,{gutter:24},w.default.createElement(g.default,{span:8},w.default.createElement("span",{className:C.default.label},t("Type")),d),w.default.createElement(g.default,{span:14},w.default.createElement("span",{className:C.default.label},t("Size")),c,w.default.createElement("span",{className:C.default["size-label"]},"GiB"),p)))}}a.default=S,(0,x.default)(S,"propTypes",{options:k.default.array,value:k.default.any,minSize:k.default.number}),(0,x.default)(S,"defaultProps",{options:[],value:{},minSize:0})},1552:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1278);var h=p(n(1279)),m=p(n(343)),g=p(n(35)),v=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),y=(n(161),p(n(16))),b=p(n(1963));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{var{onChange:t}=this.props;t&&t(e)})),(0,g.default)(this,"onCpuChange",(e=>{this.onChange(k(k({},this.state),{},{cpu:e}))})),(0,g.default)(this,"onRamChange",(e=>{this.onChange(k(k({},this.state),{},{ram:e}))})),this.state={cpu:1,ram:512}}static getDerivedStateFromProps(e,t){var{cpu:a,ram:n}=e.value||{};return a!==t.cpu||n!==t.ram?{cpu:a,ram:n}:null}render(){var{cpu:e,ram:a}=this.state,n={min:1,precision:0,style:{width:120},formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return v.default.createElement(v.default.Fragment,null,v.default.createElement("span",{className:b.default.cpu},t("CPU(Core)")),v.default.createElement(h.default,(0,m.default)({value:e,onChange:this.onCpuChange},n)),v.default.createElement("span",{className:b.default.ram},t("RAM (MiB)")),v.default.createElement(h.default,(0,m.default)({value:a,onChange:this.onRamChange},n)))}}a.default=C,(0,g.default)(C,"propTypes",{onChange:y.default.func,value:y.default.object}),(0,g.default)(C,"defaultProps",{onChange:null,value:{cpu:1,ram:1024}})},1553:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.getBase64=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))},t.getText=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsText(e,"UTF-8"),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))},t.getArrayBuffer=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsArrayBuffer(e),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))};var l=r(a(63))},1563:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=function(e){var{content:a,defaultCollapsed:n=!1,size:r="small",ableAuto:l=!0,tip:i=t("When auto-expand/close is enabled, if there is no operation in the pop-up window, the pop-up window will be closed automatically after { seconds } seconds, and it will be automatically expanded when the displayed content changes.",{seconds:v}),checkValue:o=""}=e,[g,y]=(0,m.useState)(n),[b,x]=(0,m.useState)(l),[w,k]=(0,m.useState)(!1),C=(0,m.useRef)(),_=()=>{C.current&&clearTimeout(C.current)},M=()=>{y(!1)},S=()=>{y(!0),_()},I=()=>{g||(C.current&&_(),C.current=(0,h.default)((()=>{g||S()}),1e3*v))};(0,m.useEffect)((()=>{b&&(g||(w?_():I()))}),[g,w]),(0,m.useEffect)((()=>(b&&(M(),I()),()=>{_()})),[o]);var N=e=>{x(e)},E=()=>{k(!0)},T=()=>{k(!1)};if(g)return m.default.createElement("div",{style:{padding:8},onMouseEnter:E,onMouseLeave:T,className:"content-wrapper"},m.default.createElement(f.default,{title:t("Expand")},m.default.createElement(d.default,{onClick:M,size:r},m.default.createElement(c.default,null))));var A=m.default.createElement(f.default,{title:t("Close")},m.default.createElement(d.default,{onClick:S,size:r},m.default.createElement(u.default,null)));return m.default.createElement("div",{onMouseEnter:E,onMouseLeave:T,className:"content-wrapper",style:{minWidth:150}},m.default.createElement(s.default,{title:l?m.default.createElement(f.default,{title:i},m.default.createElement(p.default,{size:"small",checked:b,onChange:N})):null,extra:A},a))},n(1280);var s=o(n(1281)),u=o(n(1564));n(231);var d=o(n(341)),c=o(n(1565));n(344);var f=o(n(202));n(1445);var p=o(n(1446)),h=o(n(583)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161),n(564);function g(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(g=function(e){return e?a:t})(e)}var v=5},1566:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=function(e){var{quotas:t=[],loading:a}=e;if(a)return o.default.createElement(i.default,null);var n=(0,l.default)(t).call(t,((e,a)=>{var{name:n}=e,r=a===t.length-1?{}:{marginBottom:10};return o.default.createElement("div",{key:n,style:r},function(e){var{type:t="ring",limit:a,unlimitByTable:n=!1}=e;if(-1===a&&n)return o.default.createElement(d.default,e);if("ring"===t)return o.default.createElement(s.default,e);if("line"===t)return o.default.createElement(u.default,e)}(e))}));return o.default.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",overflowY:"auto",overflowX:"hidden",maxHeight:400}},n)};var l=r(a(54));a(1317);var i=r(a(1318)),o=r(a(0)),s=(a(161),r(a(1449))),u=r(a(2019)),d=r(a(2020))},1569:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.AuthCatalogStore=void 0;var f=c(a(35)),p=c(a(50)),h=c(a(53));function m(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function g(e){for(var t=1;t{var t;return g(g({},e),{},{region:e.endpoints&&(null===(t=e.endpoints[0])||void 0===t?void 0:t.region)||""})}}}t.AuthCatalogStore=v;var y=new v;t.default=y},1782:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=a(0),i=r(a(1783)),o=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(5)]).then(a.t.bind(null,2084,7)))),s=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(7)]).then(a.t.bind(null,3503,7)))),u=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(18)]).then(a.t.bind(null,3772,7)))),d=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(15)]).then(a.t.bind(null,3837,7)))),c=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(11)]).then(a.t.bind(null,4021,7)))),f=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(8)]).then(a.t.bind(null,4090,7)))),p=(0,l.lazy)((()=>Promise.all([a.e(0),a.e(13)]).then(a.t.bind(null,4132,7)))),h=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(10)]).then(a.t.bind(null,4134,7)))),m=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(19)]).then(a.t.bind(null,4149,7)))),g=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4155,7)))),v=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4199,7)))),y=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(17)]).then(a.t.bind(null,4242,7)))),b=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(9)]).then(a.t.bind(null,4305,7)))),x=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(2)]).then(a.t.bind(null,4328,7)))),w=(0,l.lazy)((()=>Promise.resolve().then(a.t.bind(null,579,7)))),k=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(3)]).then(a.t.bind(null,4368,7)))),C=[{path:"/",component:i.default,routes:[{path:"/base",component:o},{path:"/compute",component:s},{path:"/storage",component:u},{path:"/network",component:d},{path:"/identity",component:c},{path:"/configuration-admin",component:f},{path:"/management",component:p},{path:"/heat",component:h},{path:"/monitor-center",component:g},{path:"/user",component:m},{path:"/database",component:v},{path:"/share",component:y},{path:"/container-infra",component:b},{path:"/container-service",component:x},{path:"/ha",component:k},{path:"*",component:w}]}];t.default=C},1783:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.BaseLayout=void 0;var h=p(n(29)),m=p(n(28)),g=p(n(86)),v=p(n(54));n(1325);var y=p(n(1326)),b=p(n(1503)),x=p(n(58)),w=p(n(343)),k=p(n(35));n(1431);var C=p(n(1432)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=z(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),M=n(412),S=n(36),I=p(n(237)),N=n(163),E=(n(564),p(n(1251))),T=(n(161),p(n(1794))),A=n(567),j=p(n(2057)),P=p(n(2067)),D=p(n(2068)),L=p(n(2069)),O=p(n(2078)),R=p(n(1454));function z(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(z=function(e){return e?a:t})(e)}function U(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function F(e){for(var t=1;t(this.props.rootStore.user||{}).keystone_token),(()=>{(0,A.setRouteMap)(this.menu)}))),(0,k.default)(this,"filterMenuByHidden",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(0===e.length)return e;var a=(0,h.default)(e).call(e,(e=>!e.hidden));return(0,m.default)(a).call(a,(e=>{e.children=t.filterMenuByHidden(e.children)})),a})),(0,k.default)(this,"checkItemEndpoints",(e=>this.rootStore.checkEndpoint(e))),(0,k.default)(this,"getMenuAllowed",(e=>{var t=[];return(0,m.default)(e).call(e,(e=>{var a=this.updateMenuItemByAllowed(e);a&&t.push(a)})),t})),(0,k.default)(this,"onCollapseChange",(e=>{this.setState({collapsed:e})})),(0,k.default)(this,"checkPath",((e,t,a)=>e instanceof RegExp?e.test(t):a?t===a:e===t)),(0,k.default)(this,"getCurrentMenu",(e=>{var t,a,n=(0,g.default)(t=this.menuAll).call(t,(t=>this.checkPath(t.path,e)));if(n)return[n];var r=!1,l=[];return(0,m.default)(a=this.menuAll).call(a,(t=>{if(!r&&t.children){var a,n,i=(0,g.default)(a=t.children).call(a,(t=>this.checkPath(t.path,e)));if(i&&(r=!0,l=[t,i]),!r)(0,m.default)(n=t.children).call(n,(a=>{if(a.children){var n,i=(0,g.default)(n=a.children).call(n,(t=>this.checkPath(t.path,e)));i&&(r=!0,l=[t,a,i])}}))}})),l})),(0,k.default)(this,"clearAllNotice",(()=>{for(var e=document.getElementsByClassName("ant-notification-notice");e.length>0;)e[0].parentNode.removeChild(e[0]);this.rootStore.clearNoticeCount()})),(0,k.default)(this,"renderHeader",(()=>_.default.createElement(T.default,(0,w.default)({},this.props,{isAdminPage:this.isAdminPage,navItems:this.globalNav,isUserCenterPage:this.isUserCenterPage})))),this.state={collapsed:!1},this.init()}componentWillUnmount(){this.autoReaction()}get isAdminPage(){var{pathname:e}=this.props.location;return(0,N.isAdminPage)(e)}get isUserCenterPage(){var{pathname:e}=this.props.location;return(0,N.isUserCenterPage)(e)}get rootStore(){return this.props.rootStore}get noticeCount(){return this.rootStore.noticeCount-(this.rootStore.noticeCountWaitRemove||0)}get user(){return(0,S.toJS)(this.rootStore.user)||null}get hasAdminRole(){return this.user&&this.rootStore.hasAdminRole}get hasAdminPageRole(){return this.user&&this.rootStore.hasAdminPageRole}get originMenu(){return this.isUserCenterPage?(0,D.default)(I.default.t):this.isAdminPage?(0,j.default)(I.default.t):(0,P.default)(I.default.t)}get globalNav(){return this.menu}get menu(){var e=this.filterMenuByHidden(this.originMenu),t=this.getMenuAllowed(e);return(0,h.default)(t).call(t,(e=>{var{hasChildren:t=!0,children:a}=e;return!t||t&&a.length}))}get menuAll(){return this.getMenuAllowed(this.originMenu)}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,A.getPath)({key:n,params:t,query:a})}updateMenuItemByAllowed(e){var t,{policy:a,endpoints:n,children:r=[]}=e,l=(0,x.default)(e,["policy","endpoints","children"]);if(a&&!(0,E.default)({policy:a}))return null;if(n&&!this.checkItemEndpoints(n))return null;if(0===r.length)return e;var i=(0,h.default)(t=(0,v.default)(r).call(r,(e=>this.updateMenuItemByAllowed(e)))).call(t,(e=>!!e));return F(F({},l),{},{children:i})}init(){this.isAdminPage&&!this.hasAdminPageRole&&(window.location.href="/base/overview"),this.routes=this.props.route.routes,(0,A.setRouteMap)(this.menu)}renderNotice(){return this.noticeCount<3?null:_.default.createElement("div",{className:R.default.notice,onClick:this.clearAllNotice},_.default.createElement(b.default,null),_.default.createElement("span",{style:{marginLeft:8,fontSize:12}},t("Close all notifications.")))}render(){var{pathname:e}=this.props.location,t=this.getCurrentMenu(e);return window.opener?_.default.createElement(y.default,{visible:!0,closable:!1,footer:null,style:{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},bodyStyle:{textAlign:"center",fontSize:"18px",padding:"20px"}},_.default.createElement("p",null,"Connexion,Please wait... ")):_.default.createElement("div",{className:R.default["base-layout"]},this.renderNotice(),_.default.createElement(B,{className:R.default.header},this.renderHeader()),_.default.createElement(O.default,{pathname:e,isAdminPage:this.isAdminPage,menu:this.menu,menuAll:this.menuAll,currentRoutes:t,onCollapseChange:this.onCollapseChange}),_.default.createElement(L.default,(0,w.default)({},this.props,this.state,{currentRoutes:t,isAdminPage:this.isAdminPage})))}}a.BaseLayout=V;var K=(0,M.inject)("rootStore")((0,M.observer)(V));a.default=K},1794:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=function(e){var{isAdminPage:t=!1,navItems:a=[]}=e;return l.default.createElement("div",{className:u.default.header},l.default.createElement(i.default,{navItems:a}),!t&&l.default.createElement(o.default,null),l.default.createElement(s.default,e))};var l=r(a(0)),i=r(a(1795)),o=r(a(1809)),s=r(a(2050)),u=r(a(1346))},1795:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.GlobalNav=void 0;var p=f(n(605));n(1796);var h=f(n(1799)),m=f(n(35)),g=f(n(0)),v=n(412),y=(n(564),f(n(16))),b=(n(161),f(n(1800))),x=n(1433),w=f(n(1801)),k=f(n(1804)),C=f(n(1807));function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{this.setState({visible:!1})})),(0,m.default)(this,"onToggleOpen",(()=>{this.setState((e=>{var{visible:t}=e;return{visible:!t}}))})),this.state={visible:!1}}render(){var{visible:e}=this.state,{navItems:a=[]}=this.props,n={top:globalCSS.headerHeight,height:"calc(100% - ".concat(globalCSS.headerHeight,")")},r=Number(globalCSS.productsColumnWidth.replace("px",""));return g.default.createElement(g.default.Fragment,null,g.default.createElement("div",{className:C.default["global-nav-icon"],onClick:this.onToggleOpen},g.default.createElement("img",{src:b.default,alt:"menu-icon",className:C.default["global-nav-icon-icon"]})),g.default.createElement(h.default,{title:t("Service List"),className:C.default["drawer-left"],placement:"left",closable:!1,onClose:this.onClose,visible:e,style:n,bodyStyle:{padding:0},width:r,destroyOnClose:!0},g.default.createElement(w.default,{items:a,onClose:this.onClose})),g.default.createElement(h.default,{title:null,className:C.default["drawer-right"],placement:"left",closable:!0,onClose:this.onClose,visible:e,style:M(M({},n),{},{left:e?globalCSS.productsColumnWidth:0}),bodyStyle:{padding:0},mask:!0,width:4*r,maskStyle:{backgroundColor:"transparent"},closeIcon:g.default.createElement(p.default,{style:{fontSize:"20px"}})},g.default.createElement("div",{className:C.default.main},g.default.createElement(k.default,{items:a,onClose:this.onClose}))))}}a.GlobalNav=S,(0,m.default)(S,"propTypes",{navItems:y.default.oneOfType([y.default.arrayOf(x.navItemPropType),y.default.array])}),(0,m.default)(S,"defaultProps",{navItems:[]});var I=(0,v.observer)(S);a.default=I},1800:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAA4CAYAAACPKLr2AAAAk0lEQVRoQ+3Y0QnAMAgA0bj/0HaIQzjK9d/EPE2QzpN/I8/vlSCtUIIJUgEaXw9iwd1dushl/JQg5PULwgOeh/fMUOIEE6QCNL4eTJAK0Hh/DzZuwRr7xy19iWEFzsP9t/icAG6QIATsByYFTDBBLEAX8L+D+mGhBGET+gdWeMDzcP8tPieAGyQIAZtmKGCC/xf8AMV4MAkwBaLlAAAAAElFTkSuQmCC"},1801:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(54)),i=r(a(35)),o=r(a(0)),s=a(204),u=r(a(16)),d=a(1433),c=r(a(1802));class f extends o.default.Component{constructor(){super(...arguments),(0,i.default)(this,"renderItem",(e=>o.default.createElement("div",{className:c.default.item,key:e.path},o.default.createElement(s.Link,{onClick:this.props.onClose,to:(0,d.getFirstLevelNavItemLink)(e),className:c.default["item-label"]},e.name))))}render(){var{items:e}=this.props;return o.default.createElement("div",{id:"global-nav-left",className:c.default.left},(0,l.default)(e).call(e,this.renderItem))}}t.default=f,(0,i.default)(f,"propTypes",{items:u.default.oneOfType([u.default.arrayOf(d.navItemPropType),u.default.array]),onClose:u.default.func}),(0,i.default)(f,"defaultProps",{items:[]})},1802:function(e,t,a){var n=a(1803);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1803:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__item--2Y2IS {\n padding: 12px 24px;\n cursor: pointer;\n}\n.index__item--2Y2IS:hover {\n background-color: rgba(0, 0, 0, 0.05);\n}\n.index__item-label--sz6t1 {\n display: block;\n width: 100%;\n color: #000;\n font-size: 13px;\n}\n.index__item-label--sz6t1:hover {\n color: #000;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",item:"index__item--2Y2IS","item-label":"index__item-label--sz6t1"}},1804:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(430)),h=f(n(28)),m=f(n(164)),g=f(n(29)),v=f(n(54)),y=f(n(77));n(569);var b=f(n(1253)),x=f(n(612)),w=f(n(35)),k=f(n(0)),C=n(204),_=(n(161),n(564),f(n(16))),M=n(1433),S=f(n(1805));function I(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function N(e){for(var t=1;t{var{value:t}=e.target;this.getNavItemsBySearch(t)})),(0,w.default)(this,"onSearch",(e=>{this.getNavItemsBySearch(e)})),(0,w.default)(this,"getNavItemsBySearch",(e=>{var t,a=(0,p.default)(t=(e||"").toLowerCase()).call(t),{items:n}=this.props,r=[];(0,h.default)(n).call(n,(e=>{if(a){var t,{name:n,children:l=[]}=e;if((0,m.default)(t=n.toLowerCase()).call(t,a))r.push(e);else{var i=(0,g.default)(l).call(l,(e=>{var t;return(0,m.default)(t=e.name.toLowerCase()).call(t,a)}));i.length&&r.push(N(N({},e),{},{children:i}))}}else r.push(e)})),this.setState({currentItems:r})})),(0,w.default)(this,"renderNavItemChildren",(e=>{var{children:t=[]}=e,a=t.length?t:[e],{onClose:n}=this.props;return(0,v.default)(a).call(a,(e=>{var t,{name:a,path:r}=e;return k.default.createElement("div",{key:(0,y.default)(t="".concat(a,"-")).call(t,r),className:S.default["children-item"]},k.default.createElement(C.Link,{onClick:n,to:r},k.default.createElement("span",{className:S.default["link-name"]},a)))}))})),(0,w.default)(this,"renderNavItem",(e=>{var{name:t=""}=e||{};return k.default.createElement("div",{className:S.default["nav-item"],key:e.name},k.default.createElement("div",{className:S.default.title},t),k.default.createElement("div",{classnames:S.default.children},this.renderNavItemChildren(e)))})),this.state={currentItems:e.items||[]}}renderSearch(){return k.default.createElement("div",{className:S.default.search},k.default.createElement(b.default,{prefix:k.default.createElement(x.default,null),placeholder:t("Search"),allowClear:!0,onChange:this.onInputChange}))}renderNavItems(){var{currentItems:e=[]}=this.state;return k.default.createElement("div",{className:S.default.right},(0,v.default)(e).call(e,this.renderNavItem))}render(){return k.default.createElement("div",{id:"global-nav-right"},this.renderSearch(),this.renderNavItems())}}a.default=E,(0,w.default)(E,"propTypes",{items:_.default.oneOfType([_.default.arrayOf(M.navItemPropType),_.default.array]),onClose:_.default.func}),(0,w.default)(E,"defaultProps",{items:[]})},1805:function(e,t,a){var n=a(1806);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1806:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__right--2sYP_ {\n -webkit-columns: 200px 3;\n -moz-columns: 200px 3;\n columns: 200px 3;\n -webkit-column-gap: 12px;\n -moz-column-gap: 12px;\n column-gap: 12px;\n}\n.index__nav-item--1_at0 {\n display: inline-block;\n width: 100%;\n margin-bottom: 20px;\n -webkit-column-break-inside: avoid;\n -moz-column-break-inside: avoid;\n break-inside: avoid;\n}\n.index__nav-item--1_at0 .index__title--2wx19 {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n height: 32px;\n margin-bottom: 4px;\n color: #000;\n font-weight: 600;\n font-size: 14px;\n line-height: 22px;\n -webkit-transition: color 0.2s ease;\n transition: color 0.2s ease;\n}\n.index__children-item--30iPf {\n position: relative;\n height: 32px;\n margin-right: 8px;\n line-height: 32px;\n cursor: pointer;\n}\n.index__children-item--30iPf a {\n display: block;\n}\n.index__children-item--30iPf:hover {\n color: #000;\n background-color: rgba(0, 0, 0, 0.05);\n}\n.index__children-item--30iPf:hover .index__link-name--2SSup {\n color: #000;\n}\n.index__children-item--30iPf .index__link-name--2SSup {\n color: #000;\n}\n.index__search--TO2Ca {\n width: 60%;\n margin-top: -8px;\n margin-bottom: 16px;\n margin-left: 0;\n}\n.index__search--TO2Ca .ant-input-affix-wrapper {\n background-color: #fff;\n border: 1px solid #d9d9d9;\n border-color: #d9d9d9;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__search--TO2Ca .anticon-search {\n color: rgba(0, 0, 0, 0.45) !important;\n}\n.index__search--TO2Ca .ant-input {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__search--TO2Ca .ant-input:hover {\n border: #0068ff;\n}\n.index__search--TO2Ca .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover {\n border-color: #0068ff;\n}\n.index__search--TO2Ca .ant-input-clear-icon,\n.index__search--TO2Ca .ant-input-clear-icon:active {\n color: rgba(0, 0, 0, 0.85);\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",right:"index__right--2sYP_","nav-item":"index__nav-item--1_at0",title:"index__title--2wx19","children-item":"index__children-item--30iPf","link-name":"index__link-name--2SSup",search:"index__search--TO2Ca"}},1807:function(e,t,a){var n=a(1808);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1808:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__global-nav-icon--oF9N7 {\n position: relative;\n float: left;\n width: 40px;\n height: 40px;\n color: #fff;\n font-size: 16px;\n line-height: 40px;\n text-align: center;\n background-color: #0068ff;\n cursor: pointer;\n}\n.index__global-nav-icon--oF9N7:hover {\n background-color: #0068ff;\n}\n.index__global-nav-icon-icon--10OVj {\n width: 20px;\n}\n.index__main--22yB3 {\n padding: 32px 32px 0;\n}\n.index__drawer-left--uUdzj .ant-drawer-header {\n background-color: #fff;\n border-bottom-color: #f0f0f0;\n}\n.index__drawer-left--uUdzj .ant-drawer-header .ant-drawer-title {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__drawer-left--uUdzj .ant-drawer-body {\n background-color: #fff;\n}\n.index__drawer-right--31wWn .ant-drawer-body {\n background-color: #fff;\n}\n.index__drawer-right--31wWn .ant-drawer-close {\n color: rgba(0, 0, 0, 0.45);\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","global-nav-icon":"index__global-nav-icon--oF9N7","global-nav-icon-icon":"index__global-nav-icon-icon--10OVj",main:"index__main--22yB3","drawer-left":"index__drawer-left--uUdzj","drawer-right":"index__drawer-right--31wWn"}},1809:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.ProjectDropdown=void 0,a(1300);var l=r(a(1301)),i=r(a(1505)),o=r(a(1434));a(347);var s=r(a(348)),u=r(a(0)),d=a(412),c=(a(161),a(564),r(a(1302))),f=r(a(1346)),p=r(a(1821));class h extends u.default.Component{get user(){var{user:e}=this.props.rootStore;return e}get project(){var{project:{id:e="",name:t="",domain:{name:a}={}}={}}=this.user||{};return{projectId:e,projectName:t,userDomainName:a}}render(){if(!this.user)return u.default.createElement(s.default,{size:"small",style:{marginLeft:8,marginRight:8,marginTop:-24}});var{projectName:e,userDomainName:t}=this.project;return u.default.createElement("div",{className:f.default.project,id:"project-switch",style:{paddingLeft:"8px"}},u.default.createElement(c.default,{actions:{moreActions:[{action:p.default}]}}),u.default.createElement(o.default,{style:{marginRight:10}}),u.default.createElement("span",null,e),u.default.createElement(i.default,{style:{color:"#A3A3A3",marginLeft:24}}),u.default.createElement(l.default,{type:"vertical"}),u.default.createElement("span",{className:f.default.domain},t))}}t.ProjectDropdown=h;var m=(0,d.inject)("rootStore")((0,d.observer)(h));t.default=m},1815:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__confirm-modal--3q6IU .ant-modal-confirm-body > .anticon {\n margin-right: 20px;\n font-size: 18px;\n}\n.index__confirm--3w0Sc {\n color: #fedf40 !important;\n}\n.index__error--2QqQF {\n color: #eb354d !important;\n}\n.index__success--3lQal {\n color: #57e39b !important;\n}\n.index__warn--ZLd6Q {\n color: #fedf40 !important;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","confirm-modal":"index__confirm-modal--3q6IU",confirm:"index__confirm--3w0Sc",error:"index__error--2QqQF",success:"index__success--3lQal",warn:"index__warn--ZLd6Q"}},1816:function(e,t,a){var n=a(1817);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1817:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__modal-action--t2EeP .ant-modal-body {\n padding: 0 0 16px;\n}\n",""]),t.locals={"modal-action":"index__modal-action--t2EeP"}},1818:function(e,t,a){var n=a(1819);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1819:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__first-action--2OPwj {\n padding: 0;\n text-align: left;\n}\n.index__first-action--2OPwj span {\n display: block;\n max-width: 48px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__more-action--3nzAh {\n padding: 0;\n}\n.index__action-sub-menu--m8uMB {\n padding: 0;\n}\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-submenu-popup ul {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-item,\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-submenu-title {\n padding: 0 12px;\n}\n.index__more-action-btn--1CkV8 {\n width: 100%;\n text-align: left;\n}\n.index__single-more-action--1AkZ2 .ant-btn-link {\n width: auto;\n}\n.index__action-buttons--3ReIW {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n",""]),t.locals={"first-action":"index__first-action--2OPwj","more-action":"index__more-action--3nzAh","action-sub-menu":"index__action-sub-menu--m8uMB","more-action-btn":"index__more-action-btn--1CkV8","single-more-action":"index__single-more-action--1AkZ2","action-buttons":"index__action-buttons--3ReIW"}},1820:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__menu--TIGc7 {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__menu--TIGc7 .anticon {\n margin-right: 8px;\n}\n.index__menu--TIGc7 .ant-dropdown-menu-item {\n min-width: 245px;\n color: rgba(0, 0, 0, 0.85);\n}\n.index__menu--TIGc7 .ant-dropdown-menu-item:hover {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__menu--TIGc7 .index__no-hover--3nEW_ {\n overflow: hidden;\n}\n.index__menu--TIGc7 .index__no-hover--3nEW_:hover {\n background-color: #fff;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 {\n padding: 0 12px;\n font-weight: bold;\n line-height: 40px;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 .index__user-label--2mhYg {\n margin-right: 8px;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 span {\n line-height: 40px;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z {\n line-height: 30px;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z .ant-btn {\n color: #0068ff;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z .ant-btn-link[disabled] {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__menu--TIGc7 .index__menu-btn--wBMeV {\n color: #0068ff;\n}\n.index__menu--TIGc7 .index__menu-divider--3m2zd {\n background-color: #fff;\n}\n.index__no-padding-top--2hYAA {\n padding-top: 0;\n}\n.index__logout--2w9f0 {\n float: right;\n line-height: 40px;\n}\n.index__right--X_kh6 {\n position: absolute;\n top: 0;\n right: 31px;\n line-height: 40px;\n}\n.index__right--X_kh6 .index__action--1gM_W {\n display: inline-block;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu {\n width: 170px;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu-item:hover,\n.index__project-menu--3gMKs .ant-dropdown-menu-submenu-title:hover {\n cursor: pointer;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu-item-disabled,\n.index__project-menu--3gMKs .ant-dropdown-menu-submenu-title-disabled {\n cursor: pointer;\n}\n.index__project-menu--3gMKs .index__title--3e97C {\n cursor: auto;\n}\n.index__project-menu--3gMKs .index__title--3e97C:hover {\n background-color: #fff;\n}\n.index__project--Iy5xg {\n float: left;\n font-size: 14px;\n line-height: 40px;\n cursor: pointer;\n}\n.index__project--Iy5xg .ant-divider {\n margin-right: 24px;\n margin-left: 24px;\n background-color: #d2d2d2;\n}\n.index__project--Iy5xg .ant-btn-link {\n position: absolute;\n min-width: 280px;\n min-height: 40px;\n}\n.index__header--138pB {\n position: relative;\n z-index: 200;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n height: 100%;\n padding-left: 0;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n}\n.index__avatar--C9tqm {\n width: 30px;\n height: 30px;\n color: #bfbfbf;\n border: none;\n -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n}\n.index__domain--Q8Gpn {\n font-size: 14px;\n}\n.index__links--IHsTT {\n display: inline-block;\n margin-right: 20px;\n}\n.index__links--IHsTT .ant-divider {\n margin-right: 24px;\n margin-left: 24px;\n background-color: #d2d2d2;\n}\n.index__links--IHsTT .index__link--1PjXM {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__links--IHsTT .index__link--1PjXM:hover {\n color: #0068ff;\n}\n.index__links--IHsTT .index__active--2ykOE {\n color: #0068ff;\n}\n.index__password-btn--1O5lH {\n max-width: 100px;\n}\n.index__password-btn--1O5lH span {\n max-width: 80px;\n}\n.index__single-link--1h19E {\n margin-right: 5px;\n color: #0068ff;\n}\n.index__single-link--1h19E:hover {\n color: #0068ff;\n}\n.index__token--2NsWx pre {\n padding: 0.4em 0.6em;\n white-space: pre-wrap;\n word-wrap: break-word;\n background: hsla(0, 0%, 58.8%, 0.1);\n border: 1px solid hsla(0, 0%, 39.2%, 0.2);\n border-radius: 3px;\n}\n.index__logo--VDnnm {\n float: left;\n width: 190px;\n height: 40px;\n line-height: 40px;\n text-align: center;\n}\n.index__logo--VDnnm img {\n height: 30px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",menu:"index__menu--TIGc7","no-hover":"index__no-hover--3nEW_","name-item":"index__name-item--3-Ls5","user-label":"index__user-label--2mhYg","menu-item":"index__menu-item--2EH8z","menu-btn":"index__menu-btn--wBMeV","menu-divider":"index__menu-divider--3m2zd","no-padding-top":"index__no-padding-top--2hYAA",logout:"index__logout--2w9f0",right:"index__right--X_kh6",action:"index__action--1gM_W","project-menu":"index__project-menu--3gMKs",title:"index__title--3e97C",project:"index__project--Iy5xg",header:"index__header--138pB",avatar:"index__avatar--C9tqm",domain:"index__domain--Q8Gpn",links:"index__links--IHsTT",link:"index__link--1PjXM",active:"index__active--2ykOE","password-btn":"index__password-btn--1O5lH","single-link":"index__single-link--1h19E",token:"index__token--2NsWx",logo:"index__logo--VDnnm"}},1821:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.ProjectSelect=void 0;var p=f(n(86)),h=f(n(63)),m=f(n(29)),g=f(n(54)),v=f(n(91)),y=f(n(58)),b=f(n(49)),x=f(n(35)),w=n(412),k=n(1241),C=n(1251),_=f(n(1255));function M(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class S extends k.ModalAction{constructor(){var e;super(...arguments),e=this,(0,x.default)(this,"state",{projectName:""}),(0,x.default)(this,"onSubmit",function(){var t=(0,b.default)((function*(t){var a,{project:{selectedRowKeys:n}}=t,r=n[0],l=(0,p.default)(a=e.projects).call(a,(e=>e.id===r)),{domain_id:i}=l||{},{rootStore:o}=e.props;try{return yield o.switchProject(r,i),e.routing.push("/base/overview"),h.default.resolve()}catch(e){return h.default.reject(e)}}));return function(e){return t.apply(this,arguments)}}())}init(){this.getAllUserProjects()}getAllUserProjects(){var e=this;return(0,b.default)((function*(){yield _.default.getUserProjects(),e.updateDefaultValue()}))()}get name(){return t("Switch Project")}static get modalSize(){return"large"}getModalSize(){return"large"}get messageHasItemName(){return!1}get user(){var{user:e}=this.props.rootStore;return e}get project(){var{project:{id:e="",name:t="",domain:{name:a}={}}={}}=this.user||{};return{projectId:e,projectName:t,userDomainName:a}}get projects(){var e,{projectName:t}=this.state,{data:a}=_.default.userProjects;return(0,m.default)(e=(0,g.default)(a).call(a,(e=>{var{id:t}=e;return function(e){for(var t=1;t{var a,n;return!t||((0,v.default)(a=e.name.toLowerCase()).call(a,t.toLowerCase())>=0||(0,v.default)(n=e.projectId.toLowerCase()).call(n,t.toLowerCase())>=0)}))}get defaultValue(){var e,{projectId:t=""}=this.project;return{project:{selectedRowKeys:[t],selectedRows:(0,m.default)(e=this.projects).call(e,(e=>e.id===t))}}}get formItems(){return[{name:"project",label:t("Owned Project"),type:"select-table",data:this.projects,isLoading:_.default.userProjects.isLoading,disabledFunc:e=>!e.enabled,filterParams:[{label:t("Project Name"),name:"name"}],columns:[{title:t("Project Name"),dataIndex:"name"},{title:t("ID"),dataIndex:"id"},{title:t("Enabled"),dataIndex:"enabled",valueRender:"yesNo"}]}]}}a.ProjectSelect=S,(0,x.default)(S,"id","project-id"),(0,x.default)(S,"title",t("Switch Project")),(0,x.default)(S,"buttonText"," "),(0,x.default)(S,"policy",C.allCanReadPolicy),(0,x.default)(S,"allowed",(()=>h.default.resolve(!0)));var I=(0,w.inject)("rootStore")((0,w.observer)(S));a.default=I},1822:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(63)),i=r(a(35)),o=r(a(1250)),s=a(567);class u extends o.default{static allowed(){return l.default.resolve()}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,s.getPath)({key:n,params:t,query:a})}}t.default=u,(0,i.default)(u,"id","formAction"),(0,i.default)(u,"actionType","link"),(0,i.default)(u,"title","form"),(0,i.default)(u,"buttonType","primary"),(0,i.default)(u,"isDanger",!1),(0,i.default)(u,"path","/"),(0,i.default)(u,"policy",""),(0,i.default)(u,"aliasPolicy","")},1833:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.type2component=void 0;var p=f(n(63)),h=f(n(77)),m=f(n(164)),g=f(n(343));n(1261);var v=f(n(1262));n(344);var y=f(n(202)),b=f(n(1299)),x=f(n(58)),w=f(n(35));n(1374);var k=f(n(1375));n(1848);var C=f(n(1851));n(1513);var _=f(n(1514));n(1278);var M=f(n(1279));n(1300);var S=f(n(1301));n(569);var I=f(n(1253)),N=f(n(177)),E=f(n(0)),T=f(n(16)),A=(n(161),n(564),f(n(1429))),j=f(n(1859)),P=f(n(1874)),D=f(n(1519)),L=f(n(1877)),O=f(n(1376)),R=f(n(1534)),z=f(n(1901)),U=f(n(1904)),F=f(n(1919)),B=f(n(1924)),V=f(n(1444)),K=f(n(1927)),Q=f(n(1930)),Y=f(n(1939)),G=f(n(1940)),H=f(n(1941)),W=f(n(1946)),q=f(n(1949)),$=f(n(1952)),Z=f(n(1953)),J=f(n(1552)),X=f(n(1965)),ee=f(n(1966)),te=f(n(1967)),ae=f(n(1970)),ne=f(n(1447)),re=f(n(1971)),le=f(n(1991)),ie=f(n(1995)),oe=f(n(1448)),se=f(n(1996)),ue=f(n(2001)),de=f(n(2002));function ce(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function fe(e){for(var t=1;t{var{selectedRowKeys:n=[]}=a||{};return 0===n.length?p.default.reject(new Error(e.placeholder||t("Please select {label}!",{label:e.label}))):p.default.resolve()})),(0,w.default)(this,"getDescriptionValidator",((e,a)=>{var n;return a&&a.length>255?p.default.reject(new Error((0,h.default)(n="".concat(t("Invalid: "))).call(n,t("The description can be up to 255 characters long.")))):p.default.resolve()}))}getComponentProps(e){switch(e){case"label":var{content:t,icon:a,iconType:n,showLoading:r}=this.props;return{content:t,icon:a,iconType:n,showLoading:r};case"divider":return{className:this.props.className};case"select":var l=this.props,{options:i,placeholder:o,mode:s,onChange:u,isWrappedValue:d,tip:c,disabled:f,showSearch:p,optionFilterProp:h="label",checkOptions:m,checkBoxInfo:g,allowClear:v,required:y}=l;return fe({options:i,placeholder:o,mode:s,onChange:u,isWrappedValue:d,tip:c,disabled:f,showSearch:p,optionFilterProp:h,checkOptions:m,checkBoxInfo:g,allowClear:y?v||!1:v},(0,x.default)(l,["options","placeholder","mode","onChange","isWrappedValue","tip","disabled","showSearch","optionFilterProp","checkOptions","checkBoxInfo","allowClear","required"]));default:var b=this.props,{validator:w}=b;return fe({},(0,x.default)(b,["validator"]))}}getFormItemProps(){var{name:e,label:t,type:a,help:n,extra:r,className:l,style:i,hidden:o,labelCol:s,wrapperCol:u,tip:d,dependencies:c}=this.props,f={name:e,label:this.renderLabel(t,d),help:n,extra:r,className:l,style:i,hidden:o,labelCol:s,wrapperCol:u,rules:this.getRules()};switch(c&&c.length>0&&(f.dependencies=c),a){case"title":return fe(fe({},f),{},{label:"",labelCol:null,wrapperCol:{xs:{span:24},sm:{span:24}}});case"label":return fe(fe({},f),{},{className:"form-item-text"});case"select-table":case"network-select-table":case"tab-select-table":case"instance-volume":case"network-select":case"add-select":case"descriptions":case"short-divider":case"transfer":case"NUMA":case"check-group":return fe(fe({},f),{},{wrapperCol:u||{xs:{span:24},sm:{span:t?18:24}}});default:return f}}getRules(){var{required:e,rules:a,validator:n,type:r="",otherRule:l,name:i,hidden:o,label:s,placeholder:u,hasRequiredCheck:d=!0}=this.props;if(o)return[];if(a)return a;var c=[],f={},p={};return e&&(r&&(0,m.default)(r).call(r,"select-table")?(p.required=!0,p.validator=(e,t)=>this.getSelectTableValidator(fe(fe({},e),this.props),t)):r&&(0,m.default)(r).call(r,"select")?(p.required=!0,p.message=u||t("Please select {label}!",{label:s})):d?(p.required=!0,p.message=u||t("Please input {label}!",{label:s})):n&&(f.required=e)),(0,N.default)(p)||c.push(p),n?f.validator=n:r&&(0,m.default)(r).call(r,"textarea")&&"description"===i&&(f.validator=this.getDescriptionValidator),(0,N.default)(f)||c.push(f),l&&c.push(l),c}getComponent(e){return pe[e]}renderTip(e){return e?E.default.createElement(y.default,{title:e},E.default.createElement(b.default,null)):null}renderLabel(e,t){return t?E.default.createElement("span",null,e," ",this.renderTip(t)):e}render(){var{component:e,type:t}=this.props,a=this.getFormItemProps();if(e)return E.default.createElement(v.default.Item,a,e);var n=this.getComponent(t),r=this.getComponentProps(t);if("divider"===t)return E.default.createElement(S.default,{className:"form-item-divider"});if("short-divider"===t)return E.default.createElement(v.default.Item,(0,g.default)({},a,{label:" ",style:{marginBottom:0}}),E.default.createElement(S.default,null));if(n){if(n.isFormItem)return E.default.createElement(n,{formItemProps:a,componentProps:r});var l=E.default.createElement(n,r);return E.default.createElement(v.default.Item,a,l)}var{content:i}=this.props;return i?E.default.createElement(v.default.Item,a,E.default.createElement("span",r,i)):null}}a.default=he,(0,w.default)(he,"propTypes",{component:T.default.object,type:T.default.string,content:T.default.any,className:T.default.string,name:T.default.string,label:T.default.string,rules:T.default.array,required:T.default.bool,validator:T.default.func,options:T.default.array,placeholder:T.default.string,mode:T.default.string,onChange:T.default.func,dependencies:T.default.array,formref:T.default.object,hasRequiredCheck:T.default.bool}),(0,w.default)(he,"defaultProps",{required:!1,dependencies:[]})},1859:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(1347)),u=o(n(1442)),d=o(n(343));n(1246);var c=o(n(1247));n(1244);var f=o(n(1245));n(1261);var p=o(n(1262));n(231);var h=o(n(341));n(568);var m=o(n(415)),g=o(n(54)),v=o(n(232)),y=o(n(91)),b=o(n(29)),x=o(n(63)),w=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=S(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),k=(n(161),n(564),o(n(1376))),C=n(565),_=n(461),M=o(n(1872));function S(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(S=function(e){return e?a:t})(e)}var{isIPv4:I,isIpv6:N}=C.ipValidate,E=e=>{var{componentProps:a,formItemProps:n}=e,{maxNumber:r=10,ports:l,isLoading:i,members:o=[],lbSubnetId:C}=a,{name:S,onChange:E}=n,[T,A]=(0,w.useState)(0),j=()=>{};return w.default.createElement("div",{style:{padding:20}},w.default.createElement(p.default.Item,{label:t("select an existing port"),wrapperCol:{xs:18,xm:12},extra:t("If you choose a port which subnet is different from the subnet of LB, please ensure connectivity between the two.")},w.default.createElement(k.default,{maxSelectedCount:-1,isLoading:i,data:l,columns:[{title:t("ID/Name"),dataIndex:"name",routeName:"portDetail"},{title:t("Binding Instance"),dataIndex:"server_name"},{title:t("IP"),dataIndex:"fixed_ips",render:(e,t)=>{if(0===e.length)return"-";var a=(0,g.default)(e).call(e,(e=>({label:e.ip_address,value:e.ip_address,subnet_id:e.subnet_id})));return t.currentOption=a[0].value,t.currentSubnetId=a[0].subnet_id,w.default.createElement(m.default,{style:{minWidth:200},options:a,defaultValue:a[0].value,onChange:(e,a)=>{t.currentSubnetId=a.subnet_id,t.currentOption=e}})},sorter:(e,t)=>{var a=e.fixed_ips[0].ip_address,n=t.fixed_ips[0].ip_address,r=(_.Address4.isValid(a)?new _.Address4(a):new _.Address6(a)).bigInteger(),l=(_.Address4.isValid(n)?new _.Address4(n):new _.Address6(n)).bigInteger();return r.compareTo(l)}},{title:t("Action"),key:"operation",render:(e,a)=>w.default.createElement(h.default,{disabled:!a.currentOption,onClick:()=>{j({ip_address:{ip:a.currentOption,protocol_port:void 0,weight:1,name:a.server_name,subnet_id:a.currentSubnetId},canEdit:!1})}},t("Add Member"))}],filterParams:[{label:t("ID"),name:"id"},{label:t("Name"),name:"name"},{label:t("Binding Instance"),name:"server_name"},{label:t("IP"),name:"fixed_ips",filterFunc:(e,t)=>(0,v.default)(e).call(e,(e=>{var a;return(0,y.default)(a=e.ip_address).call(a,t)>-1}))},{label:t("Same subnet with LB"),name:"origin_data",options:[{label:t("True"),key:!0}],filterFunc:(e,t)=>{var a;return!t||(0,v.default)(a=e.fixed_ips).call(a,(e=>e.subnet_id===C))}}]})),w.default.createElement(p.default.Item,(0,d.default)({},n,{label:t("Selected Members")}),w.default.createElement(p.default.List,{name:S},((e,a)=>{var{add:n,remove:r}=a;return j=n,A(e.length),0===e.length?t("Not yet selected"):w.default.createElement(w.default.Fragment,null,e.length>0&&w.default.createElement(c.default,{gutter:[16,16]},w.default.createElement(f.default,{span:22},w.default.createElement(c.default,null,w.default.createElement(f.default,{span:12},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("IP Address"))),w.default.createElement(f.default,{span:6},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("Port"))),w.default.createElement(f.default,{span:6},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("Weights")))))),(0,g.default)(e).call(e,(e=>w.default.createElement(c.default,{key:e.key,gutter:[16,16]},w.default.createElement(f.default,{span:22},w.default.createElement(p.default.Item,(0,d.default)({},e,{style:{width:"98%"},validateTrigger:["onChange","onBlur"],rules:[{required:!0,validator:(e,a)=>{var n=(0,b.default)(o).call(o,(e=>e.address===a.ip_address.ip&&e.protocol_port===a.ip_address.protocol_port));return a&&a.ip_address.ip?I(a.ip_address.ip)||N(a.ip_address.ip)?a.ip_address.ip&&a.ip_address.protocol_port?a.ip_address.weight?n[0]?x.default.reject(new Error(t("Invalid IP Address and Port"))):x.default.resolve(!0):x.default.reject(new Error(t("Missing Weight"))):x.default.reject(new Error(t("Missing Port"))):x.default.reject(new Error(t("Invalid IP Address"))):x.default.reject(new Error(t("Missing IP Address")))}}]}),w.default.createElement(M.default,{field:e,onChange:e=>{return t=e,void(E&&E(t));var t}}))),w.default.createElement(f.default,{span:2},w.default.createElement(u.default,{onClick:()=>r(e.name)}))))))}))),T{j()},block:!0,icon:w.default.createElement(s.default,null)},t("Add External Members"))))};E.isFormItem=!0;var T=E;a.default=T},1864:function(e,t,a){var n=a(1865);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1865:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__magic-input-outer-wrapper--2caFk {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n.index__magic-input-wrapper--3jKxQ {\n position: relative;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n min-width: 200px;\n padding: 3px 0 3px 8px;\n background-color: #fff;\n border: 1px solid #d9d9d9;\n border-radius: 4px;\n}\n.index__magic-input-wrapper--3jKxQ .ant-tag {\n height: 24px;\n margin-right: 4px;\n margin-bottom: 1px;\n padding: 0 4px;\n color: #fff;\n font-size: 10px;\n line-height: 24px;\n background-color: #0068ff;\n border: none;\n}\n.index__magic-input-wrapper--3jKxQ .ant-tag .anticon-close {\n margin-left: 16px;\n color: #fff;\n}\n.index__magic-input-wrapper--3jKxQ .ant-btn {\n margin-top: -3px;\n margin-right: 0;\n}\n.index__magic-input-wrapper--3jKxQ .ant-btn-icon-only {\n background-color: #fff;\n}\n.index__magic-input-wrapper-active--225GJ {\n border-color: #0068ff;\n -webkit-box-shadow: 0 0 0 2px rgba(0, 104, 255, 0.2);\n box-shadow: 0 0 0 2px rgba(0, 104, 255, 0.2);\n}\n.index__input-wrapper--1osyl {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n height: 24px;\n line-height: 24px;\n}\n.index__input-wrapper--1osyl .ant-input {\n padding: 0;\n background: none;\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__input-wrapper--1osyl .ant-input:focus {\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__input-wrapper--1osyl input::-webkit-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::-moz-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input:-ms-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::-ms-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl .ant-menu-vertical > .ant-menu-item {\n height: 26px;\n line-height: 26px;\n}\n.index__input-wrapper--1osyl .ant-menu-vertical .ant-menu-item {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 10px;\n}\n.index__menu--2CcQt {\n -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09) !important;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09) !important;\n}\n.index__menu--2CcQt,\n.index__option-menu--1Wni_ {\n position: absolute;\n top: 34px;\n z-index: 100;\n max-height: 310px;\n overflow-x: hidden;\n overflow-y: auto;\n border-radius: 4px;\n}\n.index__key--1C5xL {\n font-size: 10px;\n line-height: 24px;\n}\n.index__key--1C5xL .ant-divider,\n.index__key--1C5xL .ant-divider-vertical {\n margin-right: 4px;\n margin-left: 4px;\n}\n.ant-form-item-has-error .magic-input-wrapper .ant-input,\n.ant-form-item-has-error .magic-input-wrapper .ant-input:focus,\n.ant-form-item-has-error .magic-input-wrapper .ant-input:not([disabled]):hover {\n background: none;\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.magic-input-wrapper .ant-tag {\n display: inline-block;\n height: 24px;\n margin: 0 5px 0 0;\n margin-bottom: 1px;\n line-height: 24px;\n}\n.index__search-icon--1c2YI {\n position: absolute;\n top: 0;\n right: 8px;\n color: rgba(0, 0, 0, 0.65);\n font-size: 12px;\n line-height: 32px;\n}\n.index__search-icon-hidden--3mkNv {\n display: none;\n}\n.index__close-btn-col--1qQC_ {\n position: absolute;\n top: 0;\n right: 0;\n height: 30px;\n line-height: 30px;\n}\n.index__close-btn-col--1qQC_ .index__close-btn--1gDiH {\n height: 28px !important;\n padding: 0;\n background-color: #fff;\n border: none;\n}\n.index__close-option-btn--2fpQF {\n top: 3px;\n height: 24px !important;\n}\n.index__magic-input-checks--3sSga {\n margin-left: 8px;\n line-height: 32px;\n}\n.index__magic-input-checks--3sSga .ant-checkbox + span {\n text-wrap: nowrap;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","magic-input-outer-wrapper":"index__magic-input-outer-wrapper--2caFk","magic-input-wrapper":"index__magic-input-wrapper--3jKxQ","magic-input-wrapper-active":"index__magic-input-wrapper-active--225GJ","input-wrapper":"index__input-wrapper--1osyl",menu:"index__menu--2CcQt","option-menu":"index__option-menu--1Wni_",key:"index__key--1C5xL","search-icon":"index__search-icon--1c2YI","search-icon-hidden":"index__search-icon-hidden--3mkNv","close-btn-col":"index__close-btn-col--1qQC_","close-btn":"index__close-btn--1gDiH","close-option-btn":"index__close-option-btn--2fpQF","magic-input-checks":"index__magic-input-checks--3sSga"}},1866:function(e,t,a){var n=a(1867);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1867:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__sl-simple-table--3t0n0 .ant-table-content .ant-table-thead tr .ant-table-cell {\n padding: 8px 8px 8px 0;\n}\n.index__sl-simple-table--3t0n0 .ant-table-column-sorters {\n padding: 8px 0;\n}\n.index__sl-simple-table--3t0n0 .ant-table-tbody > tr > td {\n padding: 8px 8px 8px 0;\n word-break: break-all;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","sl-simple-table":"index__sl-simple-table--3t0n0"}},1868:function(e,t,a){var n=a(1869);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1869:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__wrapper--W62k9 {\n height: 32px;\n text-align: right;\n}\n.index__inner--1yC3_ {\n display: inline-block;\n width: 300px;\n overflow: hidden;\n}\n",""]),t.locals={wrapper:"index__wrapper--W62k9",inner:"index__inner--1yC3_"}},1870:function(e,t,a){var n=a(1871);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1871:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__search-wrapper--2qjcr {\n margin-bottom: 16px;\n}\n.index__search-wrapper--2qjcr .ant-menu-root.ant-menu-vertical {\n -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2) !important;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2) !important;\n}\n.index__image-tabs--Y02Y0 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: 52px;\n margin-bottom: 8px;\n}\n.index__image-tabs--Y02Y0 img {\n display: block;\n width: 20px;\n height: 20px;\n margin: 0 auto;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper {\n width: 70px;\n height: 50px;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.65);\n text-align: center;\n border: none;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper:not(:first-child)::before {\n width: 0;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {\n color: #0068ff;\n font-weight: bold;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__image-tab--i9nyz {\n -webkit-box-flex: 1;\n -ms-flex: 1 auto;\n flex: 1 auto;\n}\n.index__image-tab-label--qzyGd {\n font-size: 10px;\n}\n.index__normal-tabs--1Lx8V {\n margin-bottom: 8px;\n}\n.index__pagination-footer--1r5HD .ant-select {\n width: unset;\n min-width: 80px;\n}\n.index__sl-select-table-backend--7Wvxx .ant-table-footer {\n padding: 8px 16px;\n background: #fff;\n}\n.index__search-line--2qRf5 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n gap: 8px;\n}\n.index__search-line--2qRf5 .ant-btn-default {\n color: #0068ff;\n background-color: #f6f7fb;\n border-color: #0068ff;\n}\n.index__search-line--2qRf5 .ant-btn-default:hover {\n color: #0068ff;\n border-color: #0068ff;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","search-wrapper":"index__search-wrapper--2qjcr","image-tabs":"index__image-tabs--Y02Y0","image-tab":"index__image-tab--i9nyz","image-tab-label":"index__image-tab-label--qzyGd","normal-tabs":"index__normal-tabs--1Lx8V","pagination-footer":"index__pagination-footer--1r5HD","sl-select-table-backend":"index__sl-select-table-backend--7Wvxx","search-line":"index__search-line--2qRf5"}},1872:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0;var p=f(a(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),m=f(a(1873));function g(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(g=function(e){return e?a:t})(e)}function v(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function y(e){for(var t=1;t{var{onChange:t,value:a}=e;a=a||{ip_address:{ip:void 0,protocol_port:void 0,weight:1,subnet_id:void 0},canEdit:!0};var[n,r]=(0,h.useState)(a.ip_address);return h.default.createElement(m.default,{onChange:e=>{var l,i;r(e),l={ip_address:e},i=y(y({},a),{},{ip_address:n},l),t&&t(i)},value:n,disabled:!a.canEdit})};t.default=b},1873:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1246);var p=f(a(1247));a(1278);var h=f(a(1279));a(1244);var m=f(a(1245));a(569);var g=f(a(1253)),v=f(a(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function b(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(b=function(e){return e?a:t})(e)}function x(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t{var{value:t={},onChange:a,disabled:n}=e,[r,l]=(0,y.useState)(t.ip||void 0),[i,o]=(0,y.useState)(t.protocol_port||void 0),[s,u]=(0,y.useState)(t.weight),d=e=>{a(w(w({ip:r,protocol_port:i,weight:s},t),e))};return y.default.createElement(p.default,{gutter:[16]},y.default.createElement(m.default,{span:12},y.default.createElement(g.default,{style:{maxWidth:210},onChange:e=>{var{target:{value:t}}=e;l(t),d({ip:t})},value:r,disabled:n})),y.default.createElement(m.default,{span:6},y.default.createElement(h.default,{min:1,max:65535,style:{width:"100%"},value:i,onChange:e=>{e&&o(e),e&&d({protocol_port:e})}})),y.default.createElement(m.default,{span:6},y.default.createElement(h.default,{min:1,max:256,style:{width:"100%"},value:s,onChange:e=>{e&&u(e),e&&d({weight:e})}})))}},1874:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1261);var p=f(a(1262)),h=f(a(58)),m=f(a(35)),g=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),v=(a(161),a(565)),y=f(a(1429));function b(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(b=function(e){return e?a:t})(e)}function x(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t0&&(t=w(w({},t),e[0])),[t]}render(){var{componentProps:e,formItemProps:t}=this.props,{rules:a}=t,n=(0,h.default)(t,["rules"]),r=this.getRules(a),l=w(w({},n),{},{rules:r}),i=w(w({},e),{},{mode:"json",wrapEnabled:!0,tabSize:2,width:"100%",height:"200px",setOptions:{enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableSnippets:!0}});return g.default.createElement(p.default.Item,l,g.default.createElement(y.default,i))}}t.default=k,(0,m.default)(k,"isFormItem",!0)},1875:function(e,t,a){var n=a(1876);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1876:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__checkbox--2qAZO {\n padding-top: 5px;\n padding-bottom: 5px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",checkbox:"index__checkbox--2qAZO"}},1877:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(164)),s=i(a(616)),u=i(a(58)),d=i(a(35)),c=i(a(1520)),f=i(a(1521)),p=i(a(1522)),h=i(a(1523)),m=i(a(1524)),g=i(a(1525)),v=i(a(1526)),y=i(a(1527)),b=i(a(1528)),x=i(a(1529)),w=i(a(1348)),k=i(a(1530)),C=i(a(1531)),_=i(a(1532)),M=i(a(1344)),S=i(a(1533)),I=i(a(1377)),N=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=D(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),E=i(a(16)),T=i(a(1894)),A=i(a(1895)),j=i(a(1896)),P=(a(564),i(a(1897)));function D(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(D=function(e){return e?a:t})(e)}var L=N.default.createElement("img",{src:T.default,alt:"image_icon",style:{width:"12px"}}),O=N.default.createElement("img",{src:A.default,alt:"security_icon",style:{width:"12px"}}),R=N.default.createElement("img",{src:j.default,alt:"lb_icon",style:{width:"12px"}}),z={instance:N.default.createElement(I.default,null),router:N.default.createElement(S.default,null),externalNetwork:N.default.createElement(M.default,null),network:N.default.createElement(M.default,null),firewall:N.default.createElement(_.default,null),volume:N.default.createElement(C.default,null),gateway:N.default.createElement(k.default,null),user:N.default.createElement(w.default,null),snapshot:N.default.createElement(x.default,null),backup:N.default.createElement(b.default,null),keypair:N.default.createElement(y.default,null),image:L,aggregate:N.default.createElement(v.default,null),metadata:N.default.createElement(g.default,null),flavor:N.default.createElement(m.default,null),host:N.default.createElement(h.default,null),security:O,lb:R,group:N.default.createElement(p.default,null),project:N.default.createElement(f.default,null),floatingIp:N.default.createElement(c.default,null)};class U extends N.Component{renderIcon(){var{icon:e,iconType:t}=this.props;if(t){var a=z[t]||null;return N.default.createElement("span",{className:P.default.icon},a)}return N.default.createElement("span",{className:P.default.icon},e||null)}render(){var e=this.props,{content:t,value:a,iconType:n,showLoading:r}=e,l=(0,u.default)(e,["content","value","iconType","showLoading"]),i=[void 0,null,""];return t||N.default.createElement("span",l,this.renderIcon(),r&&(0,o.default)(i).call(i,a)?N.default.createElement(s.default,null):a)}}t.default=U,(0,d.default)(U,"propTypes",{content:E.default.any,value:E.default.any,icon:E.default.node,iconType:E.default.string}),(0,d.default)(U,"defaultProps",{icon:null,iconType:"",content:"",value:null})},1894:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjIwMHB4IiBoZWlnaHQ9IjIwMC4wMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiAxMDA3LjE2MWMtMjc2LjcwNyAwLTQ5NS4xNjEtMjI1LjczNS00OTUuMTYxLTQ5NS4xNjEgMC0yNzYuNzA3IDIyNS43MzUtNDk1LjE2MSA0OTUuMTYxLTQ5NS4xNjEgMjc2LjcwNyAwIDQ5NS4xNjEgMjI1LjczNSA0OTUuMTYxIDQ5NS4xNjEgMCAyNzYuNzA3LTIxOC40NTMgNDk1LjE2MS00OTUuMTYxIDQ5NS4xNjF6TTUxMiA3NS4wOTNjLTI0MC4yOTkgMC00MzYuOTA3IDE5Ni42MDgtNDM2LjkwNyA0MzYuOTA3czE5Ni42MDggNDM2LjkwNyA0MzYuOTA3IDQzNi45MDcgNDM2LjkwNy0xOTYuNjA4IDQzNi45MDctNDM2LjkwNy0xOTYuNjA4LTQzNi45MDctNDM2LjkwNy00MzYuOTA3eiIgIC8+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiA2MjguNTA5Yy02NS41MzYgMC0xMTYuNTA5LTUwLjk3My0xMTYuNTA5LTExNi41MDlzNTAuOTczLTExNi41MDkgMTE2LjUwOS0xMTYuNTA5IDExNi41MDkgNTAuOTczIDExNi41MDkgMTE2LjUwOWMwIDY1LjUzNi01MC45NzMgMTE2LjUwOS0xMTYuNTA5IDExNi41MDl6TTUxMiA0NjEuMDI3Yy0yOS4xMjcgMC01MC45NzMgMjEuODQ1LTUwLjk3MyA1MC45NzNzMjEuODQ1IDUwLjk3MyA1MC45NzMgNTAuOTczYzI5LjEyNyAwIDUwLjk3My0yMS44NDUgNTAuOTczLTUwLjk3M3MtMjEuODQ1LTUwLjk3My01MC45NzMtNTAuOTczek0xNTUuMTkzIDU0OC40MDljLTcuMjgyIDAtMTQuNTYzLTcuMjgyLTE0LjU2My0xNC41NjN2LTIxLjg0NWMwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzdjE0LjU2M2MwIDE0LjU2My03LjI4MiAyMS44NDUtMTQuNTYzIDIxLjg0NXpNMzM3LjIzNyA4MzkuNjhoLTcuMjgyYy0xMDEuOTQ1LTU4LjI1NC0xNjcuNDgxLTE1Mi45MTctMTgyLjA0NS0yNjIuMTQ0IDAtNy4yODIgNy4yODItMTQuNTYzIDE0LjU2My0xNC41NjNzMTQuNTYzIDcuMjgyIDE0LjU2MyAxNC41NjNjMTQuNTYzIDEwMS45NDUgODAuMDk5IDE4OS4zMjYgMTY3LjQ4MSAyNDAuMjk5IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyA3LjI4MiAyMS44NDVoLTE0LjU2M3pNMzE1LjM5MiA3MTUuODljLTcuMjgyIDAtNy4yODIgMC0xNC41NjMtNy4yODItNDMuNjkxLTQzLjY5MS03Mi44MTgtMTA5LjIyNy03Mi44MTgtMTc0Ljc2MyAwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzYzAgNTguMjU0IDIxLjg0NSAxMDkuMjI3IDY1LjUzNiAxNTIuOTE3IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyAwIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTcuMjgyIDcuMjgyek0zNjYuMzY1IDc1Mi4yOTloLTcuMjgyYy03LjI4MiAwLTcuMjgyLTcuMjgyLTE0LjU2My03LjI4Mi03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMtNy4yODItMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUtNy4yODIgNy4yODIgMCA3LjI4MiA3LjI4MiAxNC41NjMgNy4yODIgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NS03LjI4MiA3LjI4Mi0xNC41NjMgNy4yODItMTQuNTYzIDcuMjgyek0zODAuOTI4IDY2NC45MTdoLTcuMjgyYy0zNi40MDktMjEuODQ1LTY1LjUzNi02NS41MzYtNjUuNTM2LTEwOS4yMjcgMC03LjI4MiA3LjI4Mi0xNC41NjMgMTQuNTYzLTE0LjU2M3MxNC41NjMgNy4yODIgMTQuNTYzIDE0LjU2M2MwIDM2LjQwOSAxNC41NjMgNjUuNTM2IDUwLjk3MyA4MC4wOTkgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTE0LjU2MyA3LjI4MnpNODYxLjUyNSA1NTUuNjkxYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDE0LjU2My0xMjMuNzktMzYuNDA5LTI0Ny41ODEtMTM4LjM1NC0zMjAuMzk4LTcuMjgyLTcuMjgyLTcuMjgyLTE0LjU2MyAwLTIxLjg0NSA3LjI4Mi03LjI4MiAxNC41NjMtNy4yODIgMjEuODQ1IDAgMTA5LjIyNyA4MC4wOTkgMTY3LjQ4MSAyMTEuMTcxIDE1Mi45MTcgMzQ5LjUyNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6IiAgLz48cGF0aCBmaWxsPSIjMzMzMzMzIiBkPSJNNzc0LjE0NCA1MjYuNTYzYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDcuMjgyLTgwLjA5OS0yMS44NDUtMTUyLjkxNy04Ny4zODEtMTk2LjYwOC03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMgMC0yMS44NDVzMTQuNTYzLTcuMjgyIDIxLjg0NSAwYzcyLjgxOCA1MC45NzMgMTA5LjIyNyAxMzguMzU0IDEwMS45NDUgMjI1LjczNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6TTY5NC4wNDUgNDkwLjE1NWMtNy4yODIgMC0xNC41NjMtNy4yODItMTQuNTYzLTE0LjU2MyA3LjI4Mi0zNi40MDktNy4yODItNjUuNTM2LTM2LjQwOS04Ny4zODEtNy4yODItNy4yODItNy4yODItMTQuNTYzIDAtMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUgMCAzNi40MDkgMjkuMTI3IDU4LjI1NCA3Mi44MTggNTAuOTczIDExNi41MDktNy4yODIgMC0xNC41NjMgNy4yODItMjEuODQ1IDcuMjgyeiIgIC8+PC9zdmc+"},1895:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyODEzNzAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE0NDAiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTIxLjI1IDg4My4zNGMtMS4yNCAwLTIuNDktMC4xNS0zLjc0LTAuNDgtNjAuMTctMTUuNDUtMTEyLjk2LTQwLjA2LTE1Ni45MS03My4xNC0zNS4zNC0yNi42LTY1LjAzLTU4LjY3LTg4LjI1LTk1LjMzLTM5LjY2LTYyLjYyLTQ2LjY0LTExNi43MS00Ni45MS0xMTguOThsLTAuMTEtMC45MVYyNTUuMDZsMTcuMzcgMi43OGM3MC41NiAxMS4zMSAxMzYuNTctMi43OCAxOTYuMi00MS44NyA0NS0yOS41IDY5LjMzLTYyLjk4IDY5LjU4LTYzLjMxIDQuODMtNi43MiAxNC4xOS04LjI3IDIwLjkyLTMuNDUgNi43MyA0LjgyIDguMjkgMTQuMTYgMy40OCAyMC45LTEuMDkgMS41Mi0yNy4xOCAzNy42OC03Ni40OCA3MC4yNy0yOC45OCAxOS4xNi02MC4wNyAzMy4xNS05Mi4zOSA0MS42LTM1IDkuMTUtNzEuNDggMTEuNzYtMTA4LjY3IDcuODF2MzAyLjc2YzAuOTkgNi41NCA5LjExIDUzLjggNDMuMTUgMTA3LjAyIDQ4Ljc4IDc2LjI4IDEyNC45OSAxMjguMTcgMjI2LjUgMTU0LjI0IDguMDIgMi4wNiAxMi44NiAxMC4yNCAxMC44IDE4LjI2LTEuNzcgNi43Ni03Ljg2IDExLjI2LTE0LjU0IDExLjI3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0MSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjIuOTQgODgzLjM0Yy02LjY4IDAtMTIuNzgtNC41LTE0LjUyLTExLjI3LTIuMDYtOC4wMiAyLjc3LTE2LjIgMTAuOC0xOC4yNiAxMDIuMDgtMjYuMjIgMTc4LjU1LTc4LjUyIDIyNy4yOC0xNTUuNDYgMzYuMDgtNTYuOTcgNDIuNDItMTA2LjA4IDQyLjQ4LTEwNi41NyAxLjAxLTguMjIgOC40Ny0xNC4wNyAxNi43MS0xMy4wNyA4LjIyIDEgMTQuMDcgOC40OSAxMy4wNyAxNi43MS0wLjI4IDIuMjctNy4yNSA1Ni4zNi00Ni45MSAxMTguOTgtMjMuMjEgMzYuNjUtNTIuOTEgNjguNzMtODguMjUgOTUuMzMtNDMuOTUgMzMuMDgtOTYuNzQgNTcuNjktMTU2LjkyIDczLjE0LTEuMjUgMC4zMS0yLjUgMC40Ny0zLjc0IDAuNDd6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQyIj48L3BhdGg+PHBhdGggZD0iTTgwNC4xOSA2MDguNTljLTguMjggMC0xNS02LjcyLTE1LTE1VjI4OS43OGMtMzcuMTkgMy45NS03My42NyAxLjM0LTEwOC42Ny03LjgxLTMyLjMzLTguNDUtNjMuNDEtMjIuNDQtOTIuMzktNDEuNi00OS4zLTMyLjU5LTc1LjQtNjguNzQtNzYuNDgtNzAuMjctNC44MS02Ljc0LTMuMjUtMTYuMTEgMy41LTIwLjkyIDYuNzQtNC44MSAxNi4wOS0zLjI1IDIwLjkxIDMuNDggMC4yNCAwLjMzIDI0LjU3IDMzLjgxIDY5LjU4IDYzLjMxIDU5LjYyIDM5LjA5IDEyNS42NCA1My4xOCAxOTYuMTkgNDEuODdsMTcuMzctMi43OHYzMzguNTNjLTAuMDEgOC4yOS02LjcyIDE1LTE1LjAxIDE1ek01MjEuNjEgNzU2LjQxYy0xLjI0IDAtMi40OS0wLjE1LTMuNzQtMC40OC0zOS4yNS0xMC4wOC03My43My0yNi4xNi0xMDIuNDctNDcuNzktMjMuMTctMTcuNDQtNDIuNjQtMzguNDctNTcuODctNjIuNTItMjYuMDYtNDEuMTUtMzAuNjgtNzYuOTgtMzAuODYtNzguNDhsLTAuMTEtMC45MXYtMjI0LjJsMTcuMzcgMi43OGMxMDUuMTggMTYuODUgMTY0LjUtNjQuMzkgMTY1LjA5LTY1LjIxIDQuODEtNi43NCAxNC4xOC04LjMxIDIwLjkyLTMuNSA2Ljc0IDQuODEgOC4zMSAxNC4xOCAzLjUgMjAuOTItMC43MiAxLjAxLTE4LjAxIDI0Ljk3LTUwLjQzIDQ2LjQtMzguMTUgMjUuMjItODEuNTYgMzYuNTEtMTI2LjQ1IDMzLjA3djE4Ny43NGMwLjc5IDQuOTMgNi4xNCAzMy45NyAyNy4wOCA2Ni41NCAzMC41MyA0Ny40NiA3OC4yIDc5Ljc5IDE0MS42OSA5Ni4xIDguMDIgMi4wNiAxMi44NiAxMC4yNCAxMC44IDE4LjI2LTEuNzQgNi43Ny03LjgzIDExLjI3LTE0LjUyIDExLjI4eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0MyI+PC9wYXRoPjxwYXRoIGQ9Ik01MjIuNjkgNzU2LjQxYy02LjY4IDAtMTIuNzgtNC41LTE0LjUyLTExLjI3LTIuMDYtOC4wMiAyLjc3LTE2LjIgMTAuOC0xOC4yNiA2My40OS0xNi4zMSAxMTEuMTYtNDguNjQgMTQxLjY5LTk2LjEgMjIuOTEtMzUuNjEgMjcuMTYtNjcuMDEgMjcuMi02Ny4zMiAxLjA2LTguMiA4LjU1LTE0LjAzIDE2Ljc1LTEyLjk5IDguMiAxLjAzIDE0LjAzIDguNDcgMTMuMDMgMTYuNjgtMC4xOCAxLjUtNC44IDM3LjM0LTMwLjg2IDc4LjQ4LTE1LjIzIDI0LjA0LTM0LjcgNDUuMDgtNTcuODcgNjIuNTItMjguNzQgMjEuNjMtNjMuMjEgMzcuNzEtMTAyLjQ3IDQ3Ljc5LTEuMjYgMC4zMS0yLjUxIDAuNDctMy43NSAwLjQ3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0NCI+PC9wYXRoPjxwYXRoIGQ9Ik03MDIuOTUgNTgwLjMyYy04LjI4IDAtMTUtNi43Mi0xNS0xNVYzNzYuNWMtNDQuOSAzLjQ1LTg4LjI5LTcuODQtMTI2LjQ1LTMzLjA3LTMyLjQyLTIxLjQzLTQ5LjcxLTQ1LjM5LTUwLjQzLTQ2LjQtNC44MS02Ljc0LTMuMjUtMTYuMTEgMy41LTIwLjkyIDYuNzQtNC44IDE2LjA4LTMuMjUgMjAuOSAzLjQ3IDAuMiAwLjI4IDE1LjQ0IDIxLjEzIDQzLjUyIDM5LjQ1IDM2Ljk3IDI0LjEyIDc3Ljg4IDMyLjggMTIxLjU5IDI1Ljc5bDE3LjM3LTIuNzh2MjIzLjI5YzAgOC4yOC02LjcyIDE0Ljk5LTE1IDE0Ljk5eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0NSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjAuNTYgNzQ2Ljk3Yy04LjI4IDAtMTUtNi43Mi0xNS0xNVYyOTQuNzhjMC04LjI4IDYuNzItMTUgMTUtMTVzMTUgNi43MiAxNSAxNXY0MzcuMTljMCA4LjI4LTYuNzIgMTUtMTUgMTV6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQ2Ij48L3BhdGg+PHBhdGggZD0iTTY5My45OCA1MjguMzhIMzQ3LjEzYy04LjI4IDAtMTUtNi43Mi0xNS0xNXM2LjcyLTE1IDE1LTE1aDM0Ni44NWM4LjI4IDAgMTUgNi43MiAxNSAxNXMtNi43MiAxNS0xNSAxNXpNMzQ1LjUzNSA0MzMuODgybDY5LjU3OS02OS41NzkgNy4wNzEgNy4wNzEtNjkuNTc5IDY5LjU3OXpNMzQ2LjExMSA0ODIuODgybDE2Ni4wNzctMTY2LjA3NiA3LjA3MSA3LjA3LTE2Ni4wNzcgMTY2LjA3N3oiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NDciPjwvcGF0aD48cGF0aCBkPSJNMzc1LjM5MiA1MTMuNzc5bDE0NS4wNC0xNDUuMDYxIDcuMDcyIDcuMDctMTQ1LjA0IDE0NS4wNjJ6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQ4Ij48L3BhdGg+PHBhdGggZD0iTTQzNS45NTcgNTA3LjY5Nmw4MC40ODItODAuNDgyIDcuMDcgNy4wNy04MC40ODEgODAuNDgzeiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0OSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjMuNDM3IDYzNC4yNjVsNy4wNzEtNy4wNzEgNjkuNTc5IDY5LjU3OC03LjA3MSA3LjA3MXoiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NTAiPjwvcGF0aD48cGF0aCBkPSJNNTEzLjI1MyA1NjUuNTAybDcuMDctNy4wNyAxMjAuOTc4IDEyMC45NzctNy4wNyA3LjA3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ1MSI+PC9wYXRoPjxwYXRoIGQ9Ik01MzUuODYzIDUyN2w3LjA3LTcuMDcyTDY3Mi44ODYgNjQ5Ljg4bC03LjA3MSA3LjA3MXoiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NTIiPjwvcGF0aD48cGF0aCBkPSJNNTkyLjM0OCA1MjQuOTQxbDcuMDctNy4wNyA4Ni4xODIgODYuMTgtNy4wNzEgNy4wNzJ6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDUzIj48L3BhdGg+PC9zdmc+"},1896:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/load-balancer.1739198880.png"},1897:function(e,t,a){var n=a(1898);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1898:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__icon--2-Vz_ {\n margin-right: 8px;\n}\n",""]),t.locals={icon:"index__icon--2-Vz_"}},1899:function(e,t,a){var n=a(1900);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1900:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__instance-volume--3uVzj {\n display: block;\n margin-bottom: 8px;\n}\n.index__label--12eU8 {\n max-width: 20%;\n margin-right: 10px;\n}\n.index__select--YPu8L {\n max-width: 80%;\n}\n.index__size-label--1i0IC {\n margin-right: 40px;\n margin-left: 10px;\n}\n",""]),t.locals={"instance-volume":"index__instance-volume--3uVzj",label:"index__label--12eU8",select:"index__select--YPu8L","size-label":"index__size-label--1i0IC"}},1901:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(647));n(231);var u=o(n(341)),d=o(n(648)),c=o(n(35)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),p=(n(161),n(564),o(n(1902)));function h(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(h=function(e){return e?a:t})(e)}class m extends f.Component{constructor(e){super(e),(0,c.default)(this,"onChangeValue",(()=>{var{moreValue:e}=this.state;this.setState({moreValue:!e},(()=>{var{onChange:e}=this.props;e&&e(this.state.moreValue)}))}));var{value:t}=e;this.state={moreValue:t}}render(){var{moreValue:e}=this.state;return e?f.default.createElement(u.default,{type:"link",className:p.default.btn,onClick:this.onChangeValue},t("Hide Advanced Options")," ",f.default.createElement(d.default,null)):f.default.createElement(u.default,{type:"link",className:p.default.btn,onClick:this.onChangeValue},t("Expand Advanced Options"),f.default.createElement(s.default,null))}}a.default=m},1902:function(e,t,a){var n=a(1903);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1903:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__btn--2tisu {\n padding-left: 0;\n}\n",""]),t.locals={btn:"index__btn--2tisu"}},1904:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(422));n(1535);var m=p(n(1536));n(231);var g=p(n(341)),v=p(n(1545)),y=p(n(35)),b=p(n(92)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=w(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161),n(564);function w(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(w=function(e){return e?a:t})(e)}function k(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function C(e){for(var t=1;t{this.setState({file:e},(()=>{var{onChange:t}=this.props;t&&t(e)}))})),(0,y.default)(this,"handleChange",(e=>{var{file:t,fileList:a=[]}=e,{status:n}=t||{};"removed"===n&&0===a.length&&this.onChange(null),n||this.onChange(t),e.file.status})),(0,y.default)(this,"beforeUpload",(()=>!1)),this.state={file:""}}get progress(){return{strokeColor:{"0%":globalCSS.primaryColor,"100%":globalCSS.successColor},strokeWidth:3,format:e=>"".concat((0,h.default)(e.toFixed(2)),"%")}}render(){var e,{value:a}=this.props,{file:n}=this.state;e=a?(0,b.default)(a)?a:[a]:n?[n]:[];var r=C(C({},this.props),{},{name:"file",action:"",headers:{authorization:"authorization-text"},onChange:this.handleChange,progress:this.progress,beforeUpload:this.beforeUpload,fileList:e});return x.default.createElement(m.default,r,this.props.children||x.default.createElement(g.default,null,x.default.createElement(v.default,null)," ",t("Click to Upload")))}}a.default=_},1919:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(573)),u=o(n(91)),d=o(n(345)),c=o(n(54)),f=o(n(77)),p=o(n(1546));n(231);var h=o(n(341)),m=o(n(1547)),g=o(n(343));n(568);var v=o(n(415));n(569);var y=o(n(1253)),b=o(n(35)),x=o(n(352)),w=o(n(177)),k=o(n(205)),C=o(n(92)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=E(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),M=(n(161),n(564),o(n(16))),S=o(n(4)),I=n(163),N=o(n(1922));function E(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(E=function(e){return e?a:t})(e)}class T extends _.Component{constructor(e){super(e),(0,b.default)(this,"getInitItems",(e=>{var{value:t,initValue:a}=e;return(0,w.default)(a)?(0,C.default)(t)?[...t]||!1:[]:(0,C.default)(a)?[...a]||!1:[]})),(0,b.default)(this,"addItem",(()=>{var{items:e}=this.state,{maxCount:t}=this.props;if(!(e.length>=t)){var{defaultItemValue:a}=this.props,n={value:a,index:e.length};this.updateItems([...e,n])}})),(0,b.default)(this,"updateItems",(e=>{this.setState({items:e},(()=>{var{onChange:t}=this.props;t&&t(e)}))})),(0,b.default)(this,"canRemove",((e,t)=>{var a=this.checkItemRemoveDisabled(t),{minCount:n}=this.props;return e>=n&&!a})),(0,b.default)(this,"removeItem",(e=>{var{items:t}=this.state;(0,s.default)(t).call(t,e,1),this.updateItems(t)})),(0,b.default)(this,"onItemChange",((e,t)=>{var{items:a}=this.state;a[t]={value:e,index:t},this.updateItems(a)})),(0,b.default)(this,"onItemChangeInput",((e,t)=>{var{items:a}=this.state;a[t]={value:e,index:t},this.updateItems(a)})),(0,b.default)(this,"getOptions",(e=>{var{optionsByIndex:t,options:a}=this.props;return t&&e{var{items:t=[]}=this.state,{disabledRemoveFunc:a}=this.props;return(0,x.default)(a)?a({item:e,items:t}):this.checkDisabledKey(e)})),(0,b.default)(this,"checkDisabledKey",(e=>{var{key:t=""}=e.value||{},{disableEditKeys:a=[]}=this.props;return(0,u.default)(a).call(a,t)>=0})),(0,b.default)(this,"renderItem",((e,a)=>{var{itemComponent:n,readonlyKeys:r=[],isInput:l=!1,placeholder:i,width:o}=this.props;if(!n)return l?_.default.createElement(y.default,{value:e.value,placeholder:i||t("Please input"),style:{width:o},onChange:e=>{this.onItemChange(e.currentTarget.value,a)}}):_.default.createElement(v.default,{className:N.default.float,options:this.getOptions(a),value:e.value,placeholder:i,style:{width:o},onChange:e=>{this.onItemChange(e,a)}});var s=n,{key:d=""}=e.value||{},c=(0,u.default)(r).call(r,d)>=0,f=this.checkItemRemoveDisabled(e);return _.default.createElement(s,(0,g.default)({},this.props,{name:"name-".concat(a),value:e.value,index:a,keyReadonly:c,disabled:f,onChange:e=>{this.onItemChange(e,a)}}))}));var{initValue:a=[]}=e;this.state={items:this.getInitItems(e),initValue:a,keyId:(0,I.generateId)()}}static getDerivedStateFromProps(e,t){return(0,k.default)(e.initValue,t.initValue)?null:{initValue:e.initValue,items:JSON.parse((0,d.default)(e.initValue)),keyId:(0,I.generateId)()}}renderTip(){var{tips:e}=this.props;return e?_.default.createElement("div",null,e):null}renderItems(){var{items:e,keyId:t}=this.state,a=(0,c.default)(e).call(e,((e,a)=>{var n;return _.default.createElement("div",{className:N.default.item,key:(0,f.default)(n="add-select-item-".concat(t,"-")).call(n,a)},_.default.createElement(h.default,{type:"link",onClick:()=>this.removeItem(a),className:(0,S.default)(N.default.float,N.default["remove-btn"]),disabled:!this.canRemove(a,e)},_.default.createElement(m.default,null)),_.default.createElement("div",{className:(0,S.default)(N.default.float,N.default["item-detail"],"item-detail")},this.renderItem(e,a)))}));return _.default.createElement("div",{className:N.default.items},a)}renderAdd(){var{maxCount:e,addText:a,addTextTips:n}=this.props,{items:r}=this.state,l="";return e!==1/0&&(l+=t("Can add { number } {name}",{number:e-r.length,name:n||""})),_.default.createElement("div",null,_.default.createElement(h.default,{className:(0,S.default)(N.default["add-btn"],"add-btn"),type:"link",onClick:this.addItem},_.default.createElement(p.default,null),a),l)}render(){return _.default.createElement("div",{className:N.default["add-select"]},this.renderTip(),this.renderItems(),this.renderAdd())}}a.default=T,(0,b.default)(T,"propTypes",{minCount:M.default.number,maxCount:M.default.number,tips:M.default.node,options:M.default.array,placeholder:M.default.string,defaultItemValue:M.default.any,addText:M.default.string,addTextTips:M.default.string,width:M.default.number,itemComponent:M.default.any,optionsByIndex:M.default.bool,initValue:M.default.array,readonlyKeys:M.default.array,disableEditKeys:M.default.array,disabledRemoveFunc:M.default.func}),(0,b.default)(T,"defaultProps",{minCount:0,maxCount:1/0,addText:t("Add"),placeholder:t("Please select"),width:200,itemComponent:null,optionsByIndex:!1,initValue:[],readonlyKeys:[],disableEditKeys:[],disabledRemoveFunc:null})},1922:function(e,t,a){var n=a(1923);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1923:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__items--2qLhh {\n float: left;\n width: 100%;\n}\n.index__item--2Klpp {\n position: relative;\n float: left;\n width: 100%;\n margin-top: 8px;\n}\n.index__item--2Klpp .ant-form-item-has-success .ant-select:not(.ant-select-borderless) .ant-select-selector {\n border: 1px solid #d9d9d9 !important;\n}\n.index__item-detail--1dhkA {\n width: 90%;\n}\n.index__float--QNRx6 {\n float: left;\n}\n.index__remove-btn--11OFO,\n.index__add-btn--1uutt {\n padding-right: 8px;\n padding-left: 0;\n}\n.index__desc--wLQSa {\n margin-left: 16px;\n}\n",""]),t.locals={items:"index__items--2qLhh",item:"index__item--2Klpp","item-detail":"index__item-detail--1dhkA",float:"index__float--QNRx6","remove-btn":"index__remove-btn--11OFO","add-btn":"index__add-btn--1uutt",desc:"index__desc--wLQSa"}},1924:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1261);var h=p(n(1262));n(569);var m=p(n(1253)),g=p(n(58)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),n(565));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t0&&(a=k(k({},a),e[0])),[a]}render(){var{componentProps:e={},formItemProps:a={}}=this.props,{version:n=4}=e,r=(0,g.default)(e,["version"]),l=k({placeholder:4===n?t("Please input ipv4"):t("Please input ipv6")},r),{rules:i}=a,o=(0,g.default)(a,["rules"]),s=this.getRules(i,n),u=k(k({},o),{},{rules:s});return y.default.createElement(h.default.Item,u,y.default.createElement(m.default,l))}}a.default=M,(0,v.default)(M,"isFormItem",!0)},1925:function(e,t,a){var n=a(1926);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1926:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__network-select--FVaPO {\n position: relative;\n display: block;\n height: 61.6px;\n margin-bottom: 0 !important;\n}\n.index__network-select--FVaPO .ant-form-item-control-input-content {\n height: 61.6px;\n}\n.index__network-select--FVaPO .ant-form-item-explain {\n position: absolute;\n bottom: 0;\n}\n.index__select--2cAyT {\n margin-right: 40px;\n}\n.index__size-label--3Ry8T {\n margin-right: 40px;\n margin-left: 10px;\n}\n.index__tips--3wgea {\n margin-top: 0;\n}\n.index__label--2hqHr {\n margin-right: 10px;\n color: rgba(0, 0, 0, 0.45);\n line-height: 30px;\n}\n.index__content--14doI {\n color: rgba(0, 0, 0, 0.65);\n}\n.index__subnet-options-cidr--7bWem {\n margin-left: 5px;\n padding-left: 5px;\n border-left: 1px solid;\n opacity: 0.6;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","network-select":"index__network-select--FVaPO",select:"index__select--2cAyT","size-label":"index__size-label--3Ry8T",tips:"index__tips--3wgea",label:"index__label--2hqHr",content:"index__content--14doI","subnet-options-cidr":"index__subnet-options-cidr--7bWem"}},1927:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(86)),s=i(a(54)),u=i(a(343));a(593);var d=i(a(427)),c=i(a(58)),f=i(a(35)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=v(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),h=(a(161),i(a(16))),m=i(a(4)),g=i(a(1928));function v(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(v=function(e){return e?a:t})(e)}class y extends p.Component{constructor(){super(...arguments),(0,f.default)(this,"onChange",(e=>{var{value:t}=e.target,{options:a,onChange:n,isWrappedValue:r}=this.props;if(r){var l=(0,o.default)(a).call(a,(e=>e.value===t));n&&n(l)}else n&&n(t)})),(0,f.default)(this,"getValue",((e,t)=>void 0===t?t:e?t.value:t))}render(){var e=this.props,{options:t,optionType:a,buttonStyle:n,onlyRadio:r,className:l,value:i,isWrappedValue:o}=e,f=(0,c.default)(e,["options","optionType","buttonStyle","onlyRadio","className","value","isWrappedValue"]),h=(0,s.default)(t).call(t,(e=>"default"===a?p.default.createElement(d.default,{value:e.value,key:e.value,disabled:e.disabled},e.label):p.default.createElement(d.default.Button,{value:e.value,key:e.value,disabled:e.disabled},e.label)));return p.default.createElement(d.default.Group,(0,u.default)({optionType:a,buttonStyle:n},f,{className:(0,m.default)(l,r?g.default["only-radio"]:""),onChange:this.onChange,value:this.getValue(o,i)}),h)}}t.default=y,(0,f.default)(y,"propTypes",{options:h.default.array,onChange:h.default.func,optionType:h.default.string,buttonStyle:h.default.string,onlyRadio:h.default.bool,isWrappedValue:h.default.bool}),(0,f.default)(y,"defaultProps",{options:[],optionType:"button",buttonStyle:"solid",onlyRadio:!1,isWrappedValue:!1})},1928:function(e,t,a){var n=a(1929);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1929:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__only-radio--3nQs4 .ant-radio-button-wrapper {\n margin-left: 8px;\n border-left-width: 1px;\n border-radius: 4px;\n}\n.index__only-radio--3nQs4 .ant-radio-button-wrapper::before {\n display: none;\n}\n.index__only-radio--3nQs4 .ant-radio-button-wrapper:first-child {\n margin-left: 0;\n border-radius: 4px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","only-radio":"index__only-radio--3nQs4"}},1930:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(54)),s=i(a(77));a(1303);var u=i(a(1290)),d=i(a(343));a(231);var c=i(a(341)),f=i(a(1378)),p=i(a(35)),h=i(a(601)),m=i(a(92)),g=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),v=(a(161),a(564),i(a(1937)));function y(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(y=function(e){return e?a:t})(e)}class b extends g.Component{constructor(){super(...arguments),(0,p.default)(this,"getValueContent",(e=>(0,h.default)(e)?"-":(0,m.default)(e)?(0,o.default)(e).call(e,((t,a)=>g.default.createElement(g.default.Fragment,null,g.default.createElement("div",{key:"value-".concat(a)},t),a!==e.length-1&&g.default.createElement("br",null)))):e)),(0,p.default)(this,"onClick",(()=>{var{onClick:e}=this.props;e&&e()}))}renderTitle(){var{title:e}=this.props;return g.default.createElement("span",null,e," ",g.default.createElement(c.default,{type:"link",icon:g.default.createElement(f.default,null),onClick:this.onClick}))}renderItem(){var{items:e}=this.props,t=(0,o.default)(e).call(e,((e,t)=>{var a,{label:n,value:r,span:l,contentStyle:i={}}=e,o=this.getValueContent(r),c={label:n,key:(0,s.default)(a="item-".concat(n,"-")).call(a,t),className:v.default.label};return l&&(c.span=l),g.default.createElement(u.default.Item,(0,d.default)({contentStyle:i},c),o)}));return g.default.createElement(u.default,{title:this.renderTitle(),colon:!1},t)}render(){return g.default.createElement("div",null,this.renderItem())}}t.default=b},1937:function(e,t,a){var n=a(1938);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1938:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__label--1lhix {\n vertical-align: top;\n}\n.index__label--1lhix .ant-descriptions-item-label {\n width: 100px;\n color: #8a8a8a;\n}\n",""]),t.locals={label:"index__label--1lhix"}},1939:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(164)),m=p(n(63)),g=p(n(77));n(1261);var v=p(n(1262));n(569);var y=p(n(1253)),b=p(n(58)),x=p(n(35)),w=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),k=(n(161),n(565));function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{if(a&&a.length&&(0,h.default)(a).call(a,n)){var r,l=t("Name can not be duplicated");return m.default.reject(new Error((0,g.default)(r="".concat(t("Invalid: "))).call(r,l)))}return m.default.resolve(!0)}},i={validator:this.getRuleValidator(r)};return n&&n.length>0?[...n,i,l]:[i,l]}getMessage(e){var{withoutChinese:t,isFile:a,isKeypair:n,isStack:r,isCrontab:l,isImage:i,isInstance:o,isSwiftFile:s,isDatabaseName:u,isDatabaseUserName:d}=e;return t?I:r?T:a?N:n?E:l?A:i?j:o?P:s?D:u?L:d?O:S}getPropsFromComponentProps(){var{componentProps:e}=this.props,{withoutChinese:t=!1,isFile:a=!1,isKeypair:n=!1,isSwiftFile:r=!1,isDatabaseName:l=!1,isDatabaseUserName:i=!1,isStack:o,isCrontab:s,isImage:u,isInstance:d,names:c}=e;return{ruleProps:{names:c,withoutChinese:t,isFile:a,isKeypair:n,isStack:o,isCrontab:s,isImage:u,isInstance:d,isSwiftFile:r,isDatabaseName:l,isDatabaseUserName:i},messageProps:{withoutChinese:t,isFile:a,isKeypair:n,isStack:o,isCrontab:s,isImage:u,isInstance:d,isSwiftFile:r,isDatabaseName:l,isDatabaseUserName:i},restProps:(0,b.default)(e,["withoutChinese","isFile","isKeypair","isSwiftFile","isDatabaseName","isDatabaseUserName","isStack","isCrontab","isImage","isInstance","names"])}}get ruleProps(){var{formItemProps:e}=this.props,{rules:t}=e,{ruleProps:a}=this.getPropsFromComponentProps();return M(M({},a),{},{rules:t})}get messageProps(){var{messageProps:e}=this.getPropsFromComponentProps();return e}get formItemProps(){var{formItemProps:e}=this.props,{rules:t}=e,a=(0,b.default)(e,["rules"]),n=this.getRules(this.ruleProps),r=this.getMessage(this.messageProps);return M(M({},a),{},{rules:n,extra:r})}get inputProps(){var{isFile:e}=this.ruleProps,{restProps:a}=this.getPropsFromComponentProps();return M({placeholder:e?t("Please input file name"):t("Please input name")},a)}render(){var e=this.formItemProps,{inputProps:t}=this;return w.default.createElement(v.default.Item,e,w.default.createElement(y.default,t))}}a.default=W,(0,x.default)(W,"isFormItem",!0)},1940:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1261);var h=p(n(1262));n(569);var m=p(n(1253)),g=p(n(58)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),n(565));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{this.setState({inputValue:e});var{onChange:t}=this.props;t&&t(e)}));var{value:t,max:a,min:n,description:r}=e,l=(0,o.default)(t,10);this.state={inputValue:(0,s.default)(l)?1:t,inputMax:a,inputMin:n,description:r}}static getDerivedStateFromProps(e,t){var{min:a,max:n,description:r}=e;return a!==t.inputMin||n!==t.inputMax||r!==t.description?{inputMin:a,inputMax:n,description:r}:null}render(){var{inputValue:e,inputMax:t,inputMin:a,description:n}=this.state;return h.default.createElement(u.default,null,h.default.createElement(c.default,{span:16},h.default.createElement(f.default,{min:a,max:t,onChange:this.onChange,value:e})),h.default.createElement(c.default,{span:4},h.default.createElement(d.default,{min:a,max:t,style:{marginLeft:8},precision:0,formatter:e=>"$ ".concat(e).replace(/\D/g,""),value:e,onChange:this.onChange})),h.default.createElement(c.default,{span:24},h.default.createElement("span",{style:{fontStyle:"italic",color:"#7b8997"}},n)))}}t.default=v,(0,p.default)(v,"propTypes",{value:m.default.number,max:m.default.number,min:m.default.number,description:m.default.string}),(0,p.default)(v,"defaultProps",{max:500,min:0,value:0})},1946:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(35)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),u=i(a(16)),d=i(a(4)),c=i(a(1947));function f(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(f=function(e){return e?a:t})(e)}class p extends s.Component{render(){var{label:e,className:t}=this.props;return s.default.createElement("div",{className:(0,d.default)(c.default.title,t)},e)}}t.default=p,(0,o.default)(p,"propTypes",{label:u.default.string,className:u.default.string}),(0,o.default)(p,"defaultProps",{label:""})},1947:function(e,t,a){var n=a(1948);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1948:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__title--30RRB {\n margin-left: 12px;\n font-weight: bold;\n font-size: 14px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",title:"index__title--30RRB"}},1949:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1445);var s=o(n(1446)),u=o(n(35)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),c=(n(161),o(n(16)));function f(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(f=function(e){return e?a:t})(e)}class p extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)}))}render(){var{value:e,className:t,checkedText:a,uncheckedText:n,disabled:r}=this.props,l={checked:e,className:t,checkedChildren:a,unCheckedChildren:n,disabled:r,onChange:this.onChange};return d.default.createElement(s.default,l)}}a.default=p,(0,u.default)(p,"propTypes",{value:c.default.bool,className:c.default.string,checkedText:c.default.string,uncheckedText:c.default.string,disabled:c.default.bool,onChange:c.default.func}),(0,u.default)(p,"defaultProps",{value:!1,checkedText:t("On"),uncheckedText:t("Off"),disabled:!1})},1952:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(584);var o=i(a(420)),s=i(a(35)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=c(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),d=(a(161),i(a(16)));function c(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(c=function(e){return e?a:t})(e)}class f extends u.Component{constructor(){super(...arguments),(0,s.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e.target.checked)}))}render(){var{value:e,className:t,content:a,disabled:n}=this.props,r={checked:e,className:t,disabled:n,onChange:this.onChange};return u.default.createElement(o.default,r,a)}}t.default=f,(0,s.default)(f,"propTypes",{value:d.default.bool,className:d.default.string,content:d.default.any,disabled:d.default.bool,onChange:d.default.func}),(0,s.default)(f,"defaultProps",{value:!1,content:""})},1953:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(54)),u=o(n(29)),d=o(n(164)),c=o(n(91)),f=o(n(35));n(1548);var p=o(n(1549)),h=o(n(343));n(585);var m=o(n(587)),g=o(n(58)),v=o(n(177)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=w(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),o(n(1960))),x=o(n(16));function w(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(w=function(e){return e?a:t})(e)}var k=e=>{var{leftColumns:t,rightColumns:a,pageSize:n,loading:r,onRowLeft:l,onRowRight:i}=e,o=(0,g.default)(e,["leftColumns","rightColumns","pageSize","loading","onRowLeft","onRowRight"]);return y.default.createElement(p.default,(0,h.default)({},o,{showSelectAll:!1}),(e=>{var{direction:o,filteredItems:c,onItemSelectAll:f,onItemSelect:p,selectedKeys:h,disabled:g}=e,v="left"===o?t:a,x={getCheckboxProps:e=>({disabled:g||e.disabled}),onSelectAll(e,t){var a,n=(0,s.default)(a=(0,u.default)(t).call(t,(e=>!e.disabled))).call(a,(e=>{var{key:t}=e;return t})),r=e?(0,b.default)(n,h):(0,b.default)(h,n);f(r,e)},onSelect(e,t){var{key:a}=e;p(a,t)},selectedRowKeys:h},w={pageSize:n},k=("left"===o?l:i)||(e=>{var{key:t,disabled:a}=e;return{onClick:()=>{a||g||p(t,!(0,d.default)(h).call(h,t))}}});return y.default.createElement(m.default,{loading:r,rowSelection:x,columns:v,dataSource:c,pagination:w,size:"small",style:{pointerEvents:g?"none":null},onRow:k})}))};class C extends y.Component{constructor(e){super(e),(0,f.default)(this,"getTargetKey",(()=>{var{oriTargetKeys:e,value:t}=this.props;if(!(0,v.default)(e)||!(0,v.default)(t)){var{onChange:a}=this.props;a&&a(e||t||[])}})),(0,f.default)(this,"onChange",(e=>{this.setState({targetKeys:e});var{onChange:t}=this.props;t&&t(e)})),this.state={targetKeys:[]}}static getDerivedStateFromProps(e,t){var{value:a=[]}=e;return a!==t.targetKeys?{targetKeys:a}:null}componentDidMount(){this.getTargetKey()}render(){var{disabled:e,showSearch:t,leftTableColumns:a,rightTableColumns:n,dataSource:r,filterOption:l,titles:i,pageSize:o,loading:s,onRowLeft:u,onRowRight:d}=this.props,{targetKeys:c}=this.state;return y.default.createElement(y.default.Fragment,null,y.default.createElement(k,{titles:i,pageSize:o,dataSource:r,targetKeys:c,disabled:e,showSearch:t,onChange:this.onChange,filterOption:l,leftColumns:a,rightColumns:n,loading:s,onRowLeft:u,onRowRight:d}))}}a.default=C,(0,f.default)(C,"propTypes",{titles:x.default.array,leftTableColumns:x.default.array.isRequired,rightTableColumns:x.default.array.isRequired,dataSource:x.default.array.isRequired,disabled:x.default.bool,showSearch:x.default.bool,filterOption:x.default.func,onChange:x.default.func,value:x.default.array,pageSize:x.default.number,loading:x.default.bool,onRowLeft:x.default.func,onRowRight:x.default.func}),(0,f.default)(C,"defaultProps",{titles:[t("Optional list"),t("Selected list")],disabled:!1,showSearch:!0,filterOption:(e,t)=>{var a;return-1!==(0,c.default)(a=t.name).call(a,e)},onChange:null,value:[],pageSize:5,loading:!1})},1963:function(e,t,a){var n=a(1964);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1964:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__cpu--1lkn3 {\n margin-right: 8px;\n}\n.index__ram--1uTZP {\n margin-right: 8px;\n margin-left: 16px;\n}\n",""]),t.locals={cpu:"index__cpu--1lkn3",ram:"index__ram--1uTZP"}},1965:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(28)),s=i(a(91)),u=i(a(54)),d=i(a(343));a(1246);var c=i(a(1247));a(1244);var f=i(a(1245));a(584);var p=i(a(420)),h=i(a(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=v(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),g=(a(161),i(a(16)));function v(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(v=function(e){return e?a:t})(e)}class y extends m.Component{constructor(){super(...arguments),(0,h.default)(this,"onChange",(e=>{var{onChange:t,options:a}=this.props,n={};(0,o.default)(e).call(e,(e=>{n[e]=!0})),(0,o.default)(a).call(a,(t=>{var{value:a}=t;n[a]=(0,s.default)(e).call(e,a)>=0})),t&&t(n)})),(0,h.default)(this,"getValues",(()=>{var{value:e,options:t}=this.props,a=[];return(0,o.default)(t).call(t,(t=>{var n=t.value;e[n]&&a.push(n)})),a}))}render(){var{className:e,options:t,span:a}=this.props,n=this.getValues(),r={className:e,onChange:this.onChange};return m.default.createElement(p.default.Group,(0,d.default)({},r,{value:n,style:{width:"100%"}}),m.default.createElement(c.default,null,(0,u.default)(t).call(t,(e=>m.default.createElement(f.default,{span:a,key:e.value},m.default.createElement(p.default,{value:e.value,disabled:!!e.disabled},e.label))))))}}t.default=y,(0,h.default)(y,"propTypes",{value:g.default.object,className:g.default.string,options:g.default.array,onChange:g.default.func,span:g.default.number}),(0,h.default)(y,"defaultProps",{value:{},options:[],span:8})},1966:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1535);var s=o(n(1536));n(231);var u=o(n(341));n(569);var d=o(n(1253)),c=o(n(343)),f=o(n(58)),p=o(n(49)),h=o(n(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),g=(n(161),n(1553)),v=o(n(16));function y(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(y=function(e){return e?a:t})(e)}class b extends m.Component{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,h.default)(this,"handleUpload",function(){var t=(0,p.default)((function*(t){var a=yield(0,g.getText)(t);return e.onChange(a),!1}));return function(e){return t.apply(this,arguments)}}()),(0,h.default)(this,"onChangeInput",(e=>{this.onChange(e)}))}render(){var e=this.props,{value:a,placeholder:n,accept:r}=e,l=(0,f.default)(e,["value","placeholder","accept"]);return m.default.createElement(m.default.Fragment,null,m.default.createElement(d.default.TextArea,(0,c.default)({placeholder:n,value:a,onChange:this.onChange,style:{fontFamily:'"Menlo", "Liberation Mono", "Consolas", "DejaVu Sans Mono", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace'}},l)),m.default.createElement(s.default,{beforeUpload:this.handleUpload,showUploadList:!1,accept:r},m.default.createElement(u.default,{type:"link"},t("Load from local files"))))}}a.default=b,(0,h.default)(b,"propTypes",{value:v.default.string,placeholder:v.default.string,accept:v.default.any,onChange:v.default.func}),(0,h.default)(b,"defaultProps",{value:"",placeholder:t("Please input"),accept:"",onChange:e=>{}})},1967:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(231);var p=f(n(341)),h=f(n(1347));n(1246);var m=f(n(1247)),g=f(n(1442));n(1244);var v=f(n(1245));n(1261);var y=f(n(1262)),b=f(n(343)),x=f(n(35)),w=f(n(29)),k=f(n(54)),C=f(n(232)),_=f(n(63)),M=f(n(0)),S=(n(161),n(564),f(n(1968))),I=n(565);function N(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}var{isIPv4:E,isIpv6:T}=I.ipValidate,A=e=>{var a,{componentProps:n,formItemProps:r}=e,{subnets:l,maxNumber:i=10,formRef:f}=n,{name:I,value:A=[],onChange:j}=r,P=(0,w.default)(a=(0,k.default)(l).call(l,(e=>function(e){for(var t=1;t!(0,C.default)(A).call(A,(t=>!!t&&t.subnet===e.value))));return M.default.createElement(M.default.Fragment,null,M.default.createElement(y.default.Item,r,0===P.length?M.default.createElement("div",null,t("The selected network has no subnet")):M.default.createElement(y.default.List,{name:I},((e,a)=>{var{add:n,remove:r}=a;return M.default.createElement(M.default.Fragment,null,(0,k.default)(e).call(e,(e=>M.default.createElement(m.default,{key:e.key,gutter:[16,16]},M.default.createElement(v.default,{span:22},M.default.createElement(y.default.Item,(0,b.default)({},e,{validateTrigger:["onChange","onBlur"],rules:[{required:!0,validator:(e,a)=>{if(!a||!a.subnet)return _.default.reject(new Error(t("Missing Subnet")));if("manual"===a.ip_address.type){var{ip:n}=a.ip_address||{};if(!n)return _.default.reject(new Error(t("Missing IP Address")));if(!E(n)&&!T(n))return _.default.reject(new Error(t("Invalid: Please input a valid ip")))}return _.default.resolve(!0)}}]}),M.default.createElement(S.default,{field:e,subnetsAvailable:P,onChange:e=>{return t=e,void(j&&j(t));var t}}))),M.default.createElement(v.default,{span:2},M.default.createElement(g.default,{onClick:()=>{r(e.name),f.current.validateFields([I])}}))))),e.length{n(),f.current.validateFields([I])},block:!0,icon:M.default.createElement(h.default,null)},t("Add IP")))}))))};A.isFormItem=!0;var j=A;a.default=j},1968:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(1244);var m=p(n(1245));n(568);var g=p(n(415)),v=p(n(35)),y=p(n(86)),b=p(n(77)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=k(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),w=(n(161),p(n(1969)));function k(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(k=function(e){return e?a:t})(e)}function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var a,{subnetsAvailable:n,onChange:r,value:l}=e;l=l||{subnet:void 0,ip_address:{type:"dhcp",ip:void 0}};var[i,o]=(0,x.useState)(l.subnet),[s,u]=(0,x.useState)(l.ip_address),[d,c]=(0,x.useState)(!!l.subnet||!1),f=(0,y.default)(n).call(n,(e=>e.id===i)),p=e=>{var t=_(_({},l),{},{subnet:i,ip_address:s},e);r&&r(t)};return x.default.createElement(h.default,{gutter:[16,16]},x.default.createElement(m.default,{span:8},x.default.createElement(g.default,{placeholder:t("Please select"),options:n,value:i,onChange:(e,t)=>{o(t.value),c(!0),p({subnet:t.value})}}),f&&x.default.createElement("div",{style:{marginTop:16}},(0,b.default)(a="".concat(t("Cidr"),": ")).call(a,f.cidr))),f&&d&&x.default.createElement(m.default,{span:14},x.default.createElement(w.default,{value:s,version:f.ip_version||4,onChange:e=>{u(e),p({ip_address:e})}})))};a.default=M},1969:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(569);var m=p(n(1253));n(1244);var g=p(n(1245));n(568);var v=p(n(415)),y=p(n(35)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161);function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{var{value:a={},onChange:n}=e,[r,l]=(0,b.useState)(a.type||"dhcp"),[i,o]=(0,b.useState)(a.ip||void 0),s=e=>{n&&n(k(k({ip:i,type:r},a),e))};return b.default.createElement(h.default,{gutter:[16]},b.default.createElement(g.default,{span:12},b.default.createElement(v.default,{value:r,onChange:e=>{var t=e||"dhcp";l(t),s({type:t})},options:[{value:"dhcp",label:t("Automatically Assigned Address")},{value:"manual",label:t("Manual input")}]})),b.default.createElement(g.default,{span:12},"manual"===r&&b.default.createElement(m.default,{onChange:e=>{var t=e.currentTarget.value;o(t),s({ip:t})},defaultValue:i})))}},1970:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(569);var m=p(n(1253));n(1244);var g=p(n(1245));n(1261);var v=p(n(1262));n(568);var y=p(n(415)),b=p(n(35)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=k(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),w=(n(161),n(565));function k(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(k=function(e){return e?a:t})(e)}function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var{name:t}=this.state;this.setState({name:_(_({},t),{},{type:e})},(()=>{var{onChange:e}=this.props;e&&e(this.state.name)}))})),(0,b.default)(this,"handleInputChange",(e=>{var{name:t}=this.state;this.setState({name:_(_({},t),{},{mac:e})})})),this.state={name:{type:"",mac:""}}}render(){var{value:e,name:a,options:n}=this.props,{type:r}=e||{type:void 0};return x.default.createElement(h.default,{gutter:16},x.default.createElement(g.default,{span:12},x.default.createElement(v.default.Item,{name:[a,"type"],style:{marginBottom:0}},x.default.createElement(y.default,{placeholder:t("Please select"),options:n||[{label:t("Auto allocate mac address"),value:"auto"},{label:t("Manual input"),value:"manual"}],onChange:this.handleSelectChange}))),x.default.createElement(g.default,{span:12},e&&"manual"===r?x.default.createElement(v.default.Item,{hidden:"auto"===r||void 0===r,name:[a,"mac"],rules:[{validator:w.macAddressValidate,required:!0,message:t('Invalid Mac Address. Please Use ":" as separator.')}],style:{marginBottom:0}},x.default.createElement(m.default,{maxLength:17,onChange:this.handleInputChange})):null))}}var S=M;a.default=S},1971:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(28)),m=p(n(32)),g=p(n(86)),v=p(n(91)),y=p(n(77)),b=p(n(54)),x=p(n(29)),w=p(n(164)),k=p(n(350)),C=p(n(591));n(1548);var _=p(n(1549));n(344);var M=p(n(202));n(585);var S=p(n(587));n(1972);var I=p(n(1975)),N=p(n(58));n(1278);var E=p(n(1279));n(569);var T=p(n(1253));n(568);var A=p(n(415)),j=p(n(35)),P=p(n(570)),D=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=z(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),L=n(36),O=(n(161),n(163)),R=p(n(1990));function z(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(z=function(e){return e?a:t})(e)}function U(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function F(e){for(var t=1;t{var t,{value:a,metadata:n=[]}=e,r=[],l={};return(0,h.default)(t=(0,m.default)(a)).call(t,(e=>{var t=(0,g.default)(n).call(n,(t=>{var a,{detail:{properties:n={}}={}}=t;return(0,v.default)(a=(0,m.default)(n)).call(a,e)>=0}));if(t){var i,{namespace:o}=t,s=(0,y.default)(i="".concat(o,"--")).call(i,e);r.push(s),l[s]=a[e]}})),{checkedKeys:[],targetKeys:r,values:l,selectedKeysTable:[]}})),(0,j.default)(this,"onValuesChange",(e=>{var t,{onChange:a}=this.props,n={};(0,h.default)(t=(0,m.default)(e)).call(t,(t=>{var a=t.split("--")[1];n[a]=String(e[t])})),a&&a(n)})),(0,j.default)(this,"onInputChange",((e,t)=>{var{key:a}=t,{values:n={}}=this.state,r=e.target?e.target.value:e;n[a]=r,this.setState({values:n}),this.onValuesChange(n)})),(0,j.default)(this,"renderInput",(e=>{var{type:a,defaultValue:n,operators:r,enum:l=[],minimum:i,maximum:o,items:s={}}=e&&e.detail||{};if("boolean"===a){var u=(0,O.getYesNoList)();return D.default.createElement(A.default,{options:u,defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please select")})}if("integer"===a||"number"===a||"string"===a&&0===l.length){var d={defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please input"),required:!0};return void 0!==i&&(d.minimum=i),void 0!==o&&(d.maximum=o),"string"===a?D.default.createElement(T.default,d):("integer"===a&&(d.precision=0,d.formatter=e=>"$ ".concat(e).replace(/\D/g,"")),D.default.createElement(E.default,d))}if(l.length>0){var c=(0,b.default)(l).call(l,(e=>({value:e,label:e})));return D.default.createElement(A.default,{options:c,defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please select")})}if(s.enum){var f={defaultValue:n,items:s,operators:r,onChange:t=>this.onInputChange(t,e)};return D.default.createElement(R.default,f)}return null})),(0,j.default)(this,"flatten",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];(0,h.default)(e).call(e,(e=>{var{children:n=[]}=e;t.push(e),a.flatten(n,t)}))})),(0,j.default)(this,"getTreeData",(()=>{var e=[];return this.flatten(this.metadata,e),e})),(0,j.default)(this,"getTreeDataWithoutFather",(()=>{var e=[];return this.flatten(this.metadata,e),(0,x.default)(e).call(e,(e=>{var t;return(0,v.default)(t=e.key).call(t,"--")>=0}))})),(0,j.default)(this,"getAllTreeKeys",(()=>{var e=this.getTreeData();return(0,b.default)(e).call(e,(e=>e.key))})),(0,j.default)(this,"generateTree",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return(0,b.default)(e).call(e,(e=>{var{children:n}=e,r=(0,N.default)(e,["children"]);return F(F({},r),{},{disabled:(0,w.default)(t).call(t,r.key),children:a.generateTree(n,t)})}))})),(0,j.default)(this,"isChecked",((e,t)=>-1!==(0,v.default)(e).call(e,t))),(0,j.default)(this,"isChildKey",(e=>(0,v.default)(e).call(e,"--")>=0)),(0,j.default)(this,"onCheckTree",(e=>t=>{var a=this.getAllTreeKeys();(0,h.default)(a).call(a,(a=>{var n=(0,v.default)(t).call(t,a)>=0;this.isChildKey(a)&&e(a,n)})),this.setState({checkedKeys:t})})),(0,j.default)(this,"renderTree",(e=>{var{onItemSelect:t,targetKeys:a}=e,{checkedKeys:n}=this.state;return D.default.createElement(I.default,{blockNode:!0,checkable:!0,checkedKeys:n,treeData:this.generateTree(this.metadata,a),onCheck:this.onCheckTree(t)})})),(0,j.default)(this,"renderTable",(e=>{var{filteredItems:t,onItemSelectAll:a,onItemSelect:n,disabled:r}=e,{selectedKeysTable:l}=this.state,i=this,o={getCheckboxProps:e=>({disabled:r||e.disabled}),onSelectAll(e,t){var n=e?(0,b.default)(t).call(t,(e=>e.key)):[];a(e?n:l,e),i.setState({selectedKeysTable:n})},onSelect(e,t){var{key:a}=e;n(a,t);var r=[];r=t?[...l,a]:(0,x.default)(l).call(l,(e=>e!==a)),i.setState({selectedKeysTable:r})},selectedRowKeys:l};return D.default.createElement(S.default,{rowSelection:o,columns:this.columns,dataSource:t,size:"small",pagination:!1,style:{pointerEvents:r?"none":null}})})),(0,j.default)(this,"getChildKeys",(e=>{var t,a=[];return(0,h.default)(t=this.metadata).call(t,(t=>{var n;(0,h.default)(n=t.children||[]).call(n,(t=>{t.namespace===e&&a.push(t.key)}))})),a})),(0,j.default)(this,"getDefaultValue",((e,t)=>{var{type:a,default:n,defaultValue:r,operators:l,enum:i=[],minimum:o,items:s={}}=e||{},{values:u}=this.state;return(0,P.default)(u,t)?u[t]:n||(r||("boolean"===a||("string"===a&&0===i.length?r:"string"===a&&i.length>0?r||i[0]:"integer"===a||"number"===a?r||o||0:i.length>0?i[0]:s.enum?l[0]:null)))})),(0,j.default)(this,"getItemDefaultValue",(e=>{var t,a,n=e.split("--");if(!(n.length<1)){var r=n[0],l=n[1],i=(0,g.default)(t=this.metadata).call(t,(e=>e.key===r));if(i){var o=(0,g.default)(a=i.children).call(a,(e=>e.realKey===l));if(o)return this.getDefaultValue(o.detail||{},e)}}})),(0,j.default)(this,"onTransferChange",((e,t,a)=>{var n=[];(0,h.default)(e).call(e,(e=>{if(e.split("--").length>1)n.push(e);else{var t=this.getChildKeys(e);n.push(...t)}}));var r=(0,k.default)(new C.default(n)),{values:l={}}=this.state,i={};(0,h.default)(r).call(r,(e=>{l[e]?i[e]=l[e]:i[e]=this.getItemDefaultValue(e)}));var{selectedKeysTable:o}=this.state,s="right"===t?[...o,...r]:(0,x.default)(o).call(o,(e=>(0,v.default)(a).call(a,e)<0)),u="right"===t?[]:a;this.setState({targetKeys:r,values:i,selectedKeysTable:s,checkedKeys:u}),this.onValuesChange(i)})),(0,j.default)(this,"onTransferSelectChange",((e,t)=>{this.setState({checkedKeys:e,selectedKeysTable:t})})),(0,j.default)(this,"getTransferSelectedKeys",(()=>{var{checkedKeys:e=[],selectedKeysTable:t=[]}=this.state,a=(0,x.default)(e).call(e,(e=>this.isChildKey(e)));return(0,k.default)(new C.default([...a,...t]))})),(0,j.default)(this,"renderTransferItem",(e=>D.default.createElement(M.default,{title:e.description},e.title||e.display_name))),this.state=this.initState(e)}get metadata(){var e,t=this,{metadata:a}=this.props;return(0,b.default)(e=a||[]).call(e,(e=>{var a,n,r,{detail:{properties:l={}}={},namespace:i,description:o,display_name:s,isObject:u,objName:d}=(0,L.toJS)(e),c=(0,b.default)(a=(0,m.default)(l)).call(a,(e=>{var a,n,r,o,c=(0,L.toJS)(l[e]),f=(0,y.default)(a="".concat(i,"--")).call(a,e),p=F(F({},c),{},{defaultValue:t.getDefaultValue(c,f)}),h=u?(0,y.default)(r=(0,y.default)(o="".concat(s," - ")).call(o,d," > ")).call(r,c.title):(0,y.default)(n="".concat(s," > ")).call(n,c.title),m=D.default.createElement("div",null,D.default.createElement("p",null,h),D.default.createElement("p",null,c.description));return{key:f,namespace:i,realKey:e,title:D.default.createElement(M.default,{title:m},c.title),description:c.description,detail:p}})),f=u?(0,y.default)(n="".concat(s," - ")).call(n,d):s,p=u?(0,y.default)(r="".concat(i,"-")).call(r,d):null,h=u?D.default.createElement("div",null,D.default.createElement("p",null,o),D.default.createElement("p",null,e.objDescription)):null;return{key:p||i,namespace:i,objectNamespace:p,description:h||o,title:D.default.createElement(M.default,{title:h||o},f),children:c}}))}get columns(){return[{dataIndex:"title",title:t("Name")},{dataIndex:"detail",title:t("Value"),render:(e,t)=>this.renderInput(t)}]}render(){var{targetKeys:e}=this.state,t=this.getTreeDataWithoutFather(),a=this.getTransferSelectedKeys();return D.default.createElement(_.default,{onChange:this.onTransferChange,onSelectChange:this.onTransferSelectChange,targetKeys:e,selectedKeys:a,dataSource:t,className:"tree-transfer",render:this.renderTransferItem,showSelectAll:!1},(a=>{var{direction:n,onItemSelect:r,onItemSelectAll:l,filteredItems:i,disabled:o}=a;return"left"===n?this.renderTree({onItemSelect:r,dataSource:t,targetKeys:e}):"right"===n?this.renderTable({filteredItems:i,onItemSelectAll:l,onItemSelect:r,disabled:o}):void 0}))}}a.default=B},1990:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(86)),u=o(n(91)),d=o(n(54)),c=o(n(77));n(568);var f=o(n(415)),p=o(n(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161);function m(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(m=function(e){return e?a:t})(e)}class g extends h.Component{constructor(e){super(e),(0,p.default)(this,"getDefaultOperator",(()=>{var{defaultValue:e,operators:t}=this.props;return(0,s.default)(t).call(t,(t=>0===(0,u.default)(e).call(e,t)))||t[0]})),(0,p.default)(this,"getDefaultEnums",(()=>{var{defaultValue:e}=this.props,t=this.getDefaultOperator(),a=e.split("".concat(t," "));return 2===a.length&&a[1]?a[1].split(","):[]})),(0,p.default)(this,"getOptions",(()=>{var{operators:e=[]}=this.props;return(0,d.default)(e).call(e,(e=>({value:e,label:e})))})),(0,p.default)(this,"getEnumOptions",(()=>{var e,{items:t={enum:[]}}=this.props;return(0,d.default)(e=t.enum).call(e,(e=>({value:e,label:e})))})),(0,p.default)(this,"onChangeValue",(()=>{var{onChange:e}=this.props;if(e){var t,{operator:a,enums:n}=this.state;e((0,c.default)(t="".concat(a," ")).call(t,n.join(",")))}})),(0,p.default)(this,"onChangeOperator",(e=>{this.setState({operator:e},this.onChangeValue)})),(0,p.default)(this,"onChangeEnum",(e=>{this.setState({enums:e},this.onChangeValue)})),this.state={operator:this.getDefaultOperator(e),enums:this.getDefaultEnums(e)}}render(){var e=this.getOptions(),a=this.getEnumOptions(),n=this.getDefaultOperator(),r=this.getDefaultEnums();return h.default.createElement("div",null,h.default.createElement(f.default,{options:e,defaultValue:n,onChange:this.onChangeOperator,placeholder:t("Please select")}),h.default.createElement(f.default,{options:a,mode:"tags",defaultValue:r,onChange:this.onChangeEnum,placeholder:t("Please select")}))}}a.default=g},1991:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.NetworkSelectTable=void 0;var h=p(n(29)),m=p(n(91)),g=p(n(28)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=S(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=n(412),x=p(n(1448)),w=n(233),k=n(342),C=n(571),_=n(163),M=n(567);function S(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(S=function(e){return e?a:t})(e)}function I(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class N extends y.Component{constructor(e){super(e),(0,v.default)(this,"getSelectTableProps",(e=>function(e){for(var t=1;t{var t,a=(0,C.networkColumns)(this);a[0].render=null;var{key:n}=e;return"project"===n?(0,h.default)(a).call(a,(e=>"project_id"!==e.dataIndex)):(0,m.default)(t=["shared","router:external"]).call(t,n)>=0?(0,h.default)(a).call(a,(e=>e.dataIndex!==n)):a})),(0,v.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,v.default)(this,"getNetworkFilters",(e=>{var{key:a}=e,n=[{label:t("Name"),name:"name"}];return"shared"!==a&&n.push({label:t("Shared"),name:"shared",options:k.yesNoOptions}),this.showExternal&&"external"!==a&&n.push({label:t("External Network"),name:"router:external",options:k.yesNoOptions}),"project"!==a&&n.push({label:t("Project Range"),name:"project_id",options:[{label:t("Current Project"),key:this.currentProjectId},{label:t("All"),key:"all"}]}),n})),(0,v.default)(this,"getNetworkExtraParams",(e=>{var{key:t}=e;return"project"===t?{project_id:this.currentProjectId}:"shared"===t?{shared:!0}:"external"===t?{"router:external":!0}:{}})),this.stores={project:new w.NetworkStore,shared:new w.NetworkStore,external:new w.NetworkStore,all:new w.NetworkStore}}get location(){var{location:e={}}=(this.props.rootStore||{}).routing||{};return e}get isAdminPage(){var{pathname:e}=this.location;return(0,_.isAdminPage)(e)}get currentProjectId(){return this.props.rootStore.projectId}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get showExternal(){var{showExternal:e=!1}=this.props;return e}get networkTabs(){var e=[{title:t("Current Project Networks"),key:"project"},{title:t("Shared Networks"),key:"shared"}];return this.showExternal&&e.push({title:t("External Networks"),key:"external"}),this.hasAdminRole&&e.push({title:t("All Networks"),key:"all"}),(0,g.default)(e).call(e,(e=>{e.props=this.getSelectTableProps(e)})),e}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,M.getPath)({key:n,params:t,query:a})}get labelStyle(){return{marginRight:16}}getStore(e){var{key:t}=e;return this.stores[t]}getDisabledFunc(){return this.props.disabledFunc}render(){var{isMulti:e=!1,header:t,value:a}=this.props;return y.default.createElement(x.default,{tabs:this.networkTabs,onChange:this.onChange,isMulti:e,header:t,value:a})}}a.NetworkSelectTable=N;var E=(0,b.inject)("rootStore")((0,b.observer)(N));a.default=E},1995:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.VolumeSelectTable=void 0;var h=p(n(29)),m=p(n(86)),g=p(n(28)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=n(412),x=p(n(1448)),w=n(414),k=n(566);function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class M extends y.Component{constructor(e){super(e),(0,v.default)(this,"getSelectTableProps",(e=>function(e){for(var t=1;t{var t=k.volumeColumns,{key:a}=e;return"available"===a?(0,h.default)(t).call(t,(e=>"status"!==e.dataIndex&&"attachments"!==e.dataIndex)):"shared"===a?(0,h.default)(t).call(t,(e=>"multiattach"!==e.dataIndex)):t})),(0,v.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,v.default)(this,"getVolumeFilters",(e=>{var{key:t}=e,a=[...k.volumeFilters];return"shared"===t?(0,h.default)(a).call(a,(e=>"multiattach"!==e.name)):"available"===t?(0,h.default)(a).call(a,(e=>"status"!==e.name)):a})),(0,v.default)(this,"getVolumeExtraParams",(e=>{var{key:t}=e;return"shared"===t?{multiattach:!0}:"available"===t?{status:"available"}:{}})),(0,v.default)(this,"disallowedMultiAttach",(e=>{var{attachments:t=[]}=e,{serverId:a}=this.props;return!!(0,m.default)(t).call(t,(e=>e.server_id===a))})),this.stores={available:new w.VolumeStore,shared:new w.VolumeStore}}get currentProjectId(){return this.props.rootStore.projectId}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get showExternal(){var{showExternal:e=!1}=this.props;return e}get networkTabs(){var e=[{title:t("Available"),key:"available"},{title:t("Shared"),key:"shared"}];return(0,g.default)(e).call(e,(e=>{e.props=this.getSelectTableProps(e)})),e}get labelStyle(){return{marginRight:16}}getStore(e){var{key:t}=e;return this.stores[t]}getDisabledFunc(e){if("available"===e.key){var{disabledFunc:t=null}=this.props;return t}return this.disallowedMultiAttach}render(){var{isMulti:e=!1,header:t,value:a}=this.props;return y.default.createElement(x.default,{tabs:this.networkTabs,onChange:this.onChange,isMulti:e,header:t,value:a})}}a.VolumeSelectTable=M;var S=(0,b.inject)("rootStore")((0,b.observer)(M));a.default=S},1996:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1997);var s=o(n(2e3)),u=o(n(35)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),c=(n(161),o(n(16)));function f(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(f=function(e){return e?a:t})(e)}class p extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,u.default)(this,"getValue",(()=>{var{value:e,isWrappedValue:t}=this.props;return void 0===e?e:t?e.value:e}))}render(){var{treeData:e,placeholder:a=t("Please select"),disabled:n=!1}=this.props;return d.default.createElement(s.default,{className:this.props.className,showSearch:!0,allowClear:!0,placeholder:a,treeData:e,disabled:n,value:this.getValue(),onChange:this.onChange})}}a.default=p,p.propTypes={value:c.default.oneOfType([c.default.array,c.default.string]),isWrappedValue:c.default.bool,treeData:c.default.array,onChange:c.default.func}},2001:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(568);var o=i(a(415)),s=i(a(35)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=d(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function d(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(d=function(e){return e?a:t})(e)}class c extends u.Component{constructor(e){super(e),(0,s.default)(this,"onChange",(e=>{this.setState({value:e,inputVal:void 0},(()=>{var{formRef:t,onChange:a,name:n}=this.props;t.current&&t.current.setFieldsValue({[n]:e}),a&&a(e)}))})),(0,s.default)(this,"onSearch",(e=>{e&&this.setState({inputVal:e})})),(0,s.default)(this,"onBlur",(()=>{var{inputVal:e}=this.state;e&&this.onChange(e)})),this.state={value:void 0,inputVal:void 0}}render(){var{options:e=[],filterOption:t=!1}=this.props,{value:a}=this.state;return u.default.createElement(o.default,{showSearch:!0,value:a,style:{width:"100%",height:"100%"},onChange:this.onChange,onSearch:this.onSearch,onBlur:this.onBlur,filterOption:t,onFocus:this.onFocusSelect,showArrow:!1,options:e,getPopupContainer:()=>document.body})}}t.default=c},2002:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=k;var p=f(a(77)),h=f(a(164));a(569);var m=f(a(1253));a(568);var g=f(a(415)),v=f(a(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),b=(a(161),a(2003));function x(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function k(e){var{value:t,options:a,onChange:n}=e,[r,l]=(0,y.useState)(t.split(" ")[0]),[c,f]=(0,y.useState)(t.split(" ")[1]);(0,y.useEffect)((()=>{var[e,a]=t.split(" ");e===r&&a===c||(l(e),f(a))}),[t]);var b=e=>{var t,a=function(e){for(var t=1;t{l(e),b({prefix:e})},style:{width:"50%"},options:a,filterOption:(e,t)=>{var a;return(0,h.default)(a=t.label.toLowerCase()).call(a,e.toLowerCase())},getPopupContainer:()=>document.body}),y.default.createElement(m.default,{value:c,onChange:e=>{var t=e.target.value;f(t),b({number:t})},style:{width:"50%"}}))}k.defaultProps={value:"+86 ",options:b.defaultCountries}},2003:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.defaultCountries=void 0;var i,o=l(n(54)),s=l(n(32)),u=l(n(77)),d={1:["US","AG","AI","AS","BB","BM","BS","CA","DM","DO","GD","GU","JM","KN","KY","LC","MP","MS","PR","SX","TC","TT","VC","VG","VI"],7:["RU","KZ"],20:["EG"],27:["ZA"],30:["GR"],31:["NL"],32:["BE"],33:["FR"],34:["ES"],36:["HU"],39:["IT","VA"],40:["RO"],41:["CH"],43:["AT"],44:["GB","GG","IM","JE"],45:["DK"],46:["SE"],47:["NO","SJ"],48:["PL"],49:["DE"],51:["PE"],52:["MX"],53:["CU"],54:["AR"],55:["BR"],56:["CL"],57:["CO"],58:["VE"],60:["MY"],61:["AU","CC","CX"],62:["ID"],63:["PH"],64:["NZ"],65:["SG"],66:["TH"],81:["JP"],82:["KR"],84:["VN"],86:["CN"],90:["TR"],91:["IN"],92:["PK"],93:["AF"],94:["LK"],95:["MM"],98:["IR"],212:["MA","EH"],213:["DZ"],216:["TN"],218:["LY"],220:["GM"],221:["SN"],222:["MR"],223:["ML"],224:["GN"],225:["CI"],226:["BF"],227:["NE"],228:["TG"],229:["BJ"],230:["MU"],231:["LR"],232:["SL"],233:["GH"],234:["NG"],235:["TD"],236:["CF"],237:["CM"],238:["CV"],240:["GQ"],241:["GA"],242:["CG"],244:["AO"],245:["GW"],246:["IO"],248:["SC"],249:["SD"],250:["RW"],251:["ET"],252:["SO"],253:["DJ"],254:["KE"],255:["TZ"],256:["UG"],257:["BI"],258:["MZ"],260:["ZM"],261:["MG"],262:["RE","YT"],263:["ZW"],264:["NA"],265:["MW"],266:["LS"],267:["BW"],268:["SZ"],269:["KM"],291:["ER"],297:["AW"],298:["FO"],299:["GL"],350:["GI"],351:["PT"],352:["LU"],353:["IE"],354:["IS"],355:["AL"],356:["MT"],357:["CY"],358:["FI","AX"],359:["BG"],371:["LV"],372:["EE"],373:["MD"],374:["AM"],375:["BY"],376:["AD"],377:["MC"],378:["SM"],380:["UA"],385:["HR"],386:["SI"],387:["BA"],420:["CZ"],421:["SK"],423:["LI"],500:["FK"],501:["BZ"],502:["GT"],503:["SV"],504:["HN"],505:["NI"],506:["CR"],507:["PA"],509:["HT"],590:["GP","BL","MF"],591:["BO"],592:["GY"],593:["EC"],594:["GF"],595:["PY"],596:["MQ"],597:["SR"],598:["UY"],672:["NF"],673:["BN"],674:["NR"],675:["PG"],676:["TO"],677:["SB"],678:["VU"],679:["FJ"],680:["PW"],681:["WF"],682:["CK"],685:["WS"],687:["NC"],688:["TV"],689:["PF"],690:["TK"],691:["FM"],692:["MH"],850:["KP"],852:["HK"],853:["MO"],855:["KH"],856:["LA"],880:["BD"],886:["TW"],960:["MV"],961:["LB"],962:["JO"],963:["SY"],964:["IQ"],965:["KW"],966:["SA"],967:["YE"],968:["OM"],970:["PS"],971:["AE"],972:["IL"],973:["BH"],974:["QA"],975:["BT"],976:["MN"],977:["NP"],992:["TJ"],993:["TM"],994:["AZ"],995:["GE"],996:["KG"],998:["UZ"]},c={CN:t("China"),TW:t("Taiwan"),HK:t("Hong Kong"),MO:t("Macau"),KR:t("South Korea"),JP:t("Japan"),MY:t("Malaysia"),SG:t("Singapore"),NZ:t("New Zealand"),AU:t("Australia"),US:t("United States"),CA:t("Canada"),VN:t("Vietnam"),IN:t("India"),ID:t("Indonesia"),TH:t("Thailand"),PH:t("Philippines"),DK:t("Denmark"),FI:t("Finland"),FR:t("France"),DE:t("Germany"),GR:t("Greece"),IE:t("Ireland"),IL:t("Israel"),IT:t("Italy"),MX:t("Mexico"),NL:t("Netherlands"),NO:t("Norway"),PT:t("Portugal"),RU:t("Russia"),ZA:t("South Africa"),ES:t("Spain"),SE:t("Sweden"),CH:t("Switzerland"),BE:t("Belgium"),GB:t("United Kingdom"),AR:t("Argentina"),BR:t("Brazil"),KH:t("Kampuchea"),LTU:t("Lithuania"),LK:t("Sri Lanka"),NG:t("Nigeria"),AF:t("Afghanistan"),AL:t("Albania"),DZ:t("Algeria"),AS:t("American Samoa"),AD:t("Andorra"),AG:t("Antigua and Barbuda"),AM:t("Armenia"),AT:t("Austria"),BS:t("Bahamas"),BH:t("Bahrain"),BD:t("Bangladesh"),BY:t("Belarus"),BM:t("Bermuda"),BA:t("Bosnia and Herzegovina"),IO:t("British Indian Ocean Territory"),BF:t("Burkina Faso"),CF:t("Central African Republic"),TD:t("Chad"),CX:t("Christmas Island"),CC:t("Cocos (Keeling) Islands"),CO:t("Colombia"),CG:t("Republic of the Congo"),ZR:t("Democratic Republic of the Congo"),CR:t("Costa Rica"),CI:t("Cote D'Ivoire"),CU:t("Cuba"),CZ:t("Czech Republic"),GQ:t("Equatorial Guinea"),EE:t("Estonia"),FK:t("Falkland Islands (Malvinas)"),PF:t("French Polynesia"),GA:t("Gabon"),GP:t("Guadeloupe"),GW:t("Guinea Bissau"),GY:t("Guyana"),HN:t("Honduras"),HU:t("Hungary"),JO:t("Jordan"),KZ:t("Kazakhstan"),KE:t("Kenya"),KW:t("Kuwait"),KG:t("Kyrgyzstan"),LS:t("Lesotho"),MG:t("Madagascar"),MV:t("Maldives"),YT:t("Mayotte"),FM:t("Micronesia"),MC:t("Monaco"),MN:t("Mongolia"),MNE:t("Montenegro"),MS:t("Montserrat"),MM:t("Myanmar"),NR:t("Nauru"),NP:t("Nepal"),AN:t("Netherlands Antilles"),NC:t("New Caledonia"),NI:t("Nicaragua"),NF:t("Norfolk Island"),KP:t("North Korea"),MP:t("Northern Mariana Islands"),OM:t("Oman"),PK:t("Pakistan"),PW:t("Palau"),PA:t("Panama"),PG:t("Papua New Guinea"),PN:t("Pitcairn"),PL:t("Poland"),PR:t("Puerto Rico"),QA:t("Qatar"),RE:t("Reunion"),VCT:t("Saint Vincent and the Grenadines"),STP:t("Sao Tome and Principe"),SA:t("Saudi Arabia"),SRB:t("Serbia"),SC:t("Seychelles"),SK:t("Slovakia (Slovak Republic)"),SI:t("Slovenia"),SZ:t("Swaziland"),TJ:t("Tajikistan"),KNA:t("The Federation of Saint Kitts and Nevis"),ABH:t("the Republic of Abkhazia"),MKD:t("The Republic of Macedonia"),SSD:t("The Republic of South Sudan"),TN:t("Tunisia"),TM:t("Turkmenistan"),TV:t("Tuvalu"),UG:t("Uganda"),UA:t("Ukraine"),AE:t("United Arab Emirates"),UY:t("Uruguay"),UZ:t("Uzbekistan"),VA:t("Vatican City State (Holy See)"),WF:t("Wallis And Futuna Islands"),EH:t("Western Sahara"),YU:t("Yugoslavia"),ZM:t("Zambia"),AO:t("Angola"),AI:t("Anguilla"),AW:t("Aruba"),AZ:t("Azerbaijan"),BB:t("Barbados"),BZ:t("Belize"),BJ:t("Benin"),BT:t("Bhutan"),BO:t("Bolivia"),BW:t("Botswana"),BN:t("Brunei Darussalam"),BG:t("Bulgaria"),BI:t("Burundi"),CM:t("Cameroon"),CV:t("Cape Verde"),KY:t("Cayman Islands"),CL:t("Chile"),KM:t("Comoros"),CK:t("Cook Islands"),HR:t("Croatia (local name: Hrvatska)"),CY:t("Cyprus"),DJ:t("Djibouti"),DM:t("Dominica"),TP:t("East Timor"),EC:t("Ecuador"),EG:t("Egypt"),SV:t("El Salvador"),ER:t("Eritrea"),ET:t("Ethiopia"),FO:t("Faroe Islands"),FJ:t("Fiji"),GF:t("French Guiana"),GM:t("Gambia"),GE:t("Georgia"),GH:t("Ghana"),GI:t("Gibraltar"),GL:t("Greenland"),GD:t("Grenada"),GU:t("Guam"),GT:t("Guatemala"),GN:t("Guinea"),HT:t("Haiti"),IS:t("Iceland"),IR:t("Iran (Islamic Republic of)"),IQ:t("Iraq"),JM:t("Jamaica"),LAO:t("Lao People's Democratic Republic"),LV:t("Latvia"),LB:t("Lebanon"),LR:t("Liberia"),LY:t("Libyan Arab Jamahiriya"),LI:t("Liechtenstein"),LU:t("Luxembourg"),MW:t("Malawi"),ML:t("Mali"),MT:t("Malta"),MH:t("Marshall Islands"),MQ:t("Martinique"),MR:t("Mauritania"),MU:t("Mauritius"),MD:t("Moldova"),MA:t("Morocco"),MZ:t("Mozambique"),NA:t("Namibia"),NE:t("Niger"),PS:t("Palestine"),PY:t("Paraguay"),PE:t("Peru"),RO:t("Romania"),RW:t("Rwanda"),WS:t("Samoa"),SM:t("San Marino"),SN:t("Senegal"),SL:t("Sierra Leone"),SB:t("Solomon Islands"),SO:t("Somalia"),SD:t("Sudan"),SR:t("Suriname"),SY:t("Syrian Arab Republic"),TZ:t("Tanzania"),TG:t("Togo"),TK:t("Tokelau"),TO:t("Tonga"),TT:t("Trinidad and Tobago"),TR:t("Turkey"),TC:t("Turks and Caicos Islands"),VU:t("Vanuatu"),VE:t("Venezuela"),VI:t("Virgin Islands (U.S.)"),YE:t("Yemen"),ZW:t("Zimbabwe")},f=(0,o.default)(i=(0,s.default)(d)).call(i,(e=>{var t,a;return{label:(0,u.default)(t="+".concat(e," ")).call(t,(0,o.default)(a=d[e]).call(a,(e=>c[e])).join(",")),value:"+".concat(e)}}));a.defaultCountries=f},2019:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,n,r,l,p,h,{used:m=0,add:g=0,reserved:v=0,limit:y=1,title:b="",secondTitle:x=t("Quota")}=e,w=-1!==y,k=w?y:t("Infinity"),C=w?y-m-v-g:1;C=C<0?0:C;var _=(0,s.default)(a="".concat(t("Used"),": ")).call(a,m),M=v?(0,s.default)(n="".concat(t("Reserved"),": ")).call(n,v):"",S=(0,s.default)(r="".concat(t("New"),": ")).call(r,g),I=(0,s.default)(l="".concat(t("Left"),": ")).call(l,C),N=w?[_,S,I]:[_,S];v&&(0,u.default)(N).call(N,1,0,M);var E=N.join(" / "),T=m+v+g,A=(0,d.default)(T/y*100,10),j=(0,d.default)((m+v)/y*100,10),P=(0,f.getUsedValueColor)(A),D=c.default.createElement("span",null,(0,s.default)(p="".concat(b," ")).call(p,x,": ")," ",c.default.createElement("span",{style:{color:P}},(0,s.default)(h="".concat(T,"/")).call(h,k))),L=w?c.default.createElement(o.default,{percent:A,success:{percent:j,strokeColor:f.typeColors.used},strokeColor:f.typeColors.add,showInfo:!1}):c.default.createElement(o.default,{percent:0,showInfo:!1});return c.default.createElement("div",{style:{width:150}},c.default.createElement("div",{style:{fontWeight:"bold",textAlign:"center"}},D),c.default.createElement(i.default,{title:E},L))},n(344);var i=l(n(202));n(1271);var o=l(n(1272)),s=l(n(77)),u=l(n(573)),d=l(n(234)),c=l(n(0)),f=(n(161),n(1449))},2020:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,n,{reserved:r=0,title:l="",secondTitle:c=t("Quota")}=e,f=(0,o.default)(a=(0,o.default)(n="".concat(l," ")).call(n,c,": ")).call(a,t("Unlimit")),p=[{dataIndex:"used",title:t("Used"),align:"center",render:e=>u.default.createElement("span",{style:{color:d.typeColors.used}},e||"-")},{dataIndex:"add",title:t("New"),align:"center",render:e=>u.default.createElement("span",{style:{color:d.typeColors.add}},e||"-")}];r&&(0,s.default)(p).call(p,1,0,{dataIndex:"reserved",title:t("Reserved"),align:"center"});return u.default.createElement("div",null,u.default.createElement(i.default,{columns:p,dataSource:[e],pagination:!1,title:()=>f,bordered:!0,size:"small"}))},n(585);var i=l(n(587)),o=l(n(77)),s=l(n(573)),u=l(n(0)),d=(n(161),n(1449))},2021:function(e,t,a){var n=a(2022);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2022:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--1yn9F {\n position: relative;\n height: 100%;\n padding-top: 16px;\n background-color: #fff;\n}\n.index__wrapper--1yn9F .ant-spin-nested-loading {\n height: 100%;\n}\n.index__wrapper--1yn9F .ant-spin-container {\n height: 100%;\n}\n.index__wrapper-page-padding--2lbhS {\n padding-top: 0;\n}\n.index__form--3rBuv {\n height: calc(100% - 48px);\n margin-right: 32px;\n margin-left: 32px;\n overflow-y: auto;\n background-color: #fff;\n}\n.index__form--3rBuv .ant-form-item-label > label {\n margin-left: 12px;\n}\n.index__form--3rBuv .ant-form-item-label > .ant-form-item-required {\n margin-left: 0;\n}\n.index__form--3rBuv .ant-form-item-label {\n white-space: break-spaces;\n}\n.index__footer--3IW56 {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n height: 48px;\n background-color: #fff;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n}\n.index__btns--1iSOL {\n float: right;\n margin-right: 32px;\n}\n.index__btns--1iSOL button {\n margin-left: 8px;\n}\n.form-item-text {\n margin-bottom: 0;\n}\n.form-item-divider {\n width: 98% !important;\n min-width: 90% !important;\n margin-right: auto;\n margin-left: auto;\n}\n.ant-radio-button-wrapper {\n color: rgba(0, 0, 0, 0.65);\n}\n.ant-radio-button-wrapper-disabled {\n color: rgba(0, 0, 0, 0.25);\n}\n.index__tips--1sDt0 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n margin-bottom: 16px;\n padding: 8px 16px;\n word-break: break-word;\n background: rgba(0, 0, 0, 0.15);\n}\n.index__tips-icon--2QJ8G {\n margin-top: 2px;\n margin-right: 4px;\n color: #0068ff;\n}\n.index__footer-left--2zaZk {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: left;\n -ms-flex-pack: left;\n justify-content: left;\n float: left;\n height: 48px;\n margin-left: 16px;\n color: #484848;\n}\n.index__submit-tip--2ljzW {\n display: inline-block;\n font-size: 16px;\n}\n.index__progress-wrapper--1uQV2 {\n width: 170px;\n}\n.index__right-top-extra-wrapper---wJzs {\n position: absolute;\n top: 0;\n right: 30px;\n z-index: 100;\n background-color: #fff;\n border-radius: 5px;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n}\n.index__right-top-extra-wrapper---wJzs .ant-card-head {\n min-width: 32px;\n}\n.index__right-top-extra-wrapper---wJzs .ant-card-head .ant-card-extra {\n padding: 8px 0;\n}\n.index__modal-right-extra-wrapper--2_yIQ {\n border-left: solid 2px #f2f2f2;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--1yn9F","wrapper-page-padding":"index__wrapper-page-padding--2lbhS",form:"index__form--3rBuv",footer:"index__footer--3IW56",btns:"index__btns--1iSOL",tips:"index__tips--1sDt0","tips-icon":"index__tips-icon--2QJ8G","footer-left":"index__footer-left--2zaZk","submit-tip":"index__submit-tip--2ljzW","progress-wrapper":"index__progress-wrapper--1uQV2","right-top-extra-wrapper":"index__right-top-extra-wrapper---wJzs","modal-right-extra-wrapper":"index__modal-right-extra-wrapper--2_yIQ"}},2023:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(63)),i=r(a(35)),o=r(a(2024));class s extends o.default{static get allowed(){return l.default.resolve()}get hasConfirmStep(){return!0}}t.default=s,(0,i.default)(s,"actionType","link"),(0,i.default)(s,"buttonType","primary"),(0,i.default)(s,"isDanger",!1),(0,i.default)(s,"id","step-action"),(0,i.default)(s,"title","StepAction"),(0,i.default)(s,"path","/"),(0,i.default)(s,"policy",""),(0,i.default)(s,"aliasPolicy","")},2024:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(63)),h=f(n(203)),m=f(n(1252)),g=f(n(54)),v=f(n(77)),y=f(n(345));n(347);var b=f(n(348));n(2025);var x=f(n(2028));n(231);var w=f(n(341)),k=f(n(35)),C=f(n(177)),_=f(n(1350)),M=f(n(0)),S=f(n(1270)),I=(n(161),f(n(4))),N=n(163),E=n(349),T=f(n(1351)),A=f(n(1563)),j=f(n(1566)),P=n(567),D=f(n(2047));function L(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function O(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),(0,k.default)(this,"onSubmit",(e=>p.default.resolve())),(0,k.default)(this,"onOk",(()=>{var{data:e}=this.state;this.values=e;var t=this.getSubmitData(e);this.onSubmit(t).then((()=>{this.routing.push(this.listUrl),S.default.success(this.successText)}),(e=>{this.responseError=e;var{response:{data:t}={}}=e;S.default.errorWithDetail(t,this.errorText)}))})),(0,k.default)(this,"onCancel",(()=>{})),(0,k.default)(this,"onClickSubmit",(()=>{this.hasConfirmStep?this.onOk():this.currentRef.current.wrappedInstance.checkFormInput((e=>{this.updateData(e,this.onOk)}))})),(0,k.default)(this,"onClickCancel",(()=>{this.routing.push(this.listUrl)})),(0,k.default)(this,"updateDataOnPrev",(e=>{this.updateData(e,(()=>{this.setState((e=>({current:e.current-1})))}))})),(0,k.default)(this,"updateData",((e,t)=>{var{data:a}=this.state;this.setState({data:O(O({},a),e)},(()=>{t&&t()}))})),(0,k.default)(this,"unescape",(e=>(0,N.unescapeHtml)(e))),(0,k.default)(this,"goStep",(e=>{this.setState({current:e})})),this.options=t,this.state={formTemplate:(0,_.default)(this.formTemplate),current:0,data:{}},this.values={},this.setFormRefs(),this.init()}componentDidMount(){}componentWillUnmount(){this.unsubscribe&&this.unsubscribe(),this.disposer&&this.disposer(),this.unMountActions&&this.unMountActions()}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get hasConfirmStep(){return!1}get name(){return""}get title(){return"".concat(this.name,"s")}get className(){return""}get prefix(){return this.props.match.url}get routing(){return this.props.rootStore.routing}get location(){return this.props.location||{}}get locationParams(){var e;return(0,E.parse)((0,h.default)(e=this.location.search).call(e,1))}get match(){return this.props.match||{}}get listUrl(){return""}get checkEndpoint(){return!1}get endpoint(){return""}get endpointError(){return this.checkEndpoint&&!this.endpoint}get currentUser(){var{user:e}=this.props.rootStore||{};return e||{}}get currentProjectId(){return this.props.rootStore.projectId}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:16},sm:{span:12}}}get steps(){return[]}get formTemplate(){return{}}get okBtnText(){return t("Confirm")}get instanceName(){var{name:e}=(0,m.default)(this)||{};return e}get successText(){return this.instanceName?(0,N.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,N.firstUpperCase)(t("{action} successfully.",{action:this.name.toLowerCase()}))}get errorText(){return this.instanceName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get isSubmitting(){return this.store&&this.store.isSubmitting||!1}get isLoading(){return!(!this.hasExtraProps||!(0,C.default)(this.state.extra))}get currentComponent(){var{current:e}=this.state;return this.steps[e].component}get currentRef(){var{current:e}=this.state;return this.formRefs[e]}get isAdminPage(){return this.props.isAdminPage||!1}get hasExtraProps(){return!1}get showQuota(){return!1}get quotaInfo(){return null}get disableNext(){return!1}get disableSubmit(){return!1}setFormRefs(){var e;this.formRefs=(0,g.default)(e=this.steps).call(e,(()=>M.default.createRef()))}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,P.getPath)({key:n,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=this.getRouteName(e);return(0,P.getLinkRender)({key:r,params:a,query:n,value:t})}getPrevBtn(){var e,{current:a}=this.state;if(0===a)return null;var n=this.steps[a-1].title;return M.default.createElement(w.default,{style:{margin:"0 8px"},onClick:()=>this.prev()},(0,v.default)(e="".concat(t("Previous"),": ")).call(e,n))}getNextBtn(){var e,{current:a}=this.state;if(a>=this.steps.length-1)return null;var{title:n}=this.steps[a+1];return M.default.createElement(w.default,{type:"primary",onClick:()=>this.next(),disabled:this.disableNext},(0,v.default)(e="".concat(t("Next"),": ")).call(e,n))}getSubmitData(e){return O({},e)}prev(){this.currentRef.current.wrappedInstance.checkFormInput(this.updateDataOnPrev,this.updateDataOnPrev)}next(){this.currentRef.current.wrappedInstance.checkFormInput((e=>{this.updateData(e),this.setState((e=>({current:e.current+1})))}))}init(){this.store={}}renderFooterLeft(){return null}renderFooter(){var{current:e}=this.state;return M.default.createElement("div",{className:D.default.footer},M.default.createElement("div",{className:(0,I.default)(D.default["footer-left"],this.footerStyle,"step-form-footer-left")},this.renderFooterLeft()),M.default.createElement("div",{className:(0,I.default)(D.default.btns,"step-form-footer-btns")},M.default.createElement(w.default,{className:D.default.cancel,onClick:this.onClickCancel},t("Cancel")),this.getPrevBtn(),this.getNextBtn(),e===this.steps.length-1&&M.default.createElement(w.default,{type:"primary",onClick:this.onClickSubmit,disabled:this.disableSubmit},t("Confirm"))))}renderForms(){var e=this.currentComponent,{data:t,extra:a}=this.state;return this.hasExtraProps&&(0,C.default)(a)?null:M.default.createElement(e,{ref:this.currentRef,context:t,extra:a,updateContext:this.updateData,goStep:this.goStep,isAdminPage:this.isAdminPage,match:this.match,location:this.location})}renderSteps(){var e,{current:t}=this.state,{Step:a}=x.default;return M.default.createElement("div",null,M.default.createElement("div",{className:D.default.step},M.default.createElement(x.default,{current:t},(0,g.default)(e=this.steps).call(e,(e=>M.default.createElement(a,{key:e.title,title:e.title}))))),M.default.createElement("div",{className:D.default.form},this.renderForms()))}renderQuota(){if(!this.showQuota)return null;var e={};return this.quotaInfo&&this.quotaInfo.length?e={loading:!1,quotas:this.quotaInfo}:e.loading=!0,M.default.createElement(j.default,e)}renderRightTopExtra(){var e=this.renderQuota();if(!e)return null;var t=(0,y.default)(this.quotaInfo);return M.default.createElement("div",{className:D.default["right-top-extra-wrapper"]},M.default.createElement(A.default,{content:e,checkValue:t}))}render(){return this.endpointError?M.default.createElement(T.default,{title:this.name,link:this.listUrl,endpointError:!0,goList:!0,isAction:!0}):M.default.createElement("div",{className:(0,I.default)(D.default.wrapper,this.className)},M.default.createElement(b.default,{spinning:this.isLoading||this.isSubmitting},this.renderSteps(),this.renderRightTopExtra(),this.renderFooter()))}}a.default=R},2044:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/empty-card.1739198880.svg"},2045:function(e,t,a){var n=a(2046);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2046:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--1T6e5 {\n margin-top: 100px;\n text-align: center;\n border-radius: 4px;\n}\n.index__image--3dfS6 {\n height: 200px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.index__text--2xlf7 {\n display: inline-block;\n width: 600px;\n margin-left: 60px;\n vertical-align: top;\n}\n.index__text--2xlf7 .h1 {\n color: #abb4be;\n font-size: 120px;\n line-height: 1.4;\n text-align: left;\n opacity: 0.4;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.index__text--2xlf7 p {\n color: #5f708a;\n font-weight: 600;\n font-size: 20px;\n line-height: 1.4;\n text-align: left;\n text-shadow: 0 4px 8px rgba(36, 46, 66, 0.1);\n}\n.index__text--2xlf7 a {\n color: #0068ff;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--1T6e5",image:"index__image--3dfS6",text:"index__text--2xlf7"}},2047:function(e,t,a){var n=a(2048);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2048:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--3YpmJ {\n position: relative;\n height: 100%;\n overflow: hidden;\n border-top: 1px solid #f0f0f0;\n}\n.index__wrapper--3YpmJ .ant-spin-nested-loading {\n height: 100%;\n}\n.index__wrapper--3YpmJ .ant-spin-container {\n height: 100%;\n}\n.index__step--3Meey {\n height: 80px;\n margin-bottom: 16px;\n padding-top: 24px;\n padding-right: 56px;\n padding-left: 56px;\n background: #fff;\n}\n.index__form--3Sbom {\n height: 100%;\n min-height: calc(100vh - 280px);\n padding-top: 16px;\n overflow-y: auto;\n background-color: #fff;\n}\n.index__form--3Sbom .sl-form {\n height: calc(100vh - 219px);\n padding-bottom: 48px;\n}\n.index__footer--32Ya5 {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n min-height: 48px;\n background-color: #fff;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n}\n.index__btns--2ujTQ {\n float: right;\n min-width: 200px;\n margin-right: 32px;\n}\n.index__btns--2ujTQ button {\n margin-left: 8px;\n}\n.index__footer-left--KbV3J {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n justify-items: left;\n float: left;\n min-height: 48px;\n margin-left: 16px;\n color: #484848;\n}\n.index__right-top-extra-wrapper--55yRM {\n position: absolute;\n top: 95px;\n right: 30px;\n z-index: 100;\n background-color: #fff;\n border-radius: 5px;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n}\n.index__right-top-extra-wrapper--55yRM .ant-card-head {\n min-width: 32px;\n}\n.index__right-top-extra-wrapper--55yRM .ant-card-head .ant-card-extra {\n padding: 8px 0;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--3YpmJ",step:"index__step--3Meey",form:"index__form--3Sbom",footer:"index__footer--32Ya5",btns:"index__btns--2ujTQ","footer-left":"index__footer-left--KbV3J","right-top-extra-wrapper":"index__right-top-extra-wrapper--55yRM"}},2049:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(54)),o=l(n(63)),s=l(n(1277)),u=l(n(28)),d=l(n(49)),c=l(n(35)),f=l(n(92)),p=l(n(0)),h=n(163);class m{constructor(e){var a=this;(0,c.default)(this,"policy",""),(0,c.default)(this,"aliasPolicy",""),(0,c.default)(this,"unescape",(e=>(0,h.unescapeHtml)(e))),(0,c.default)(this,"getItemId",(e=>e.id)),(0,c.default)(this,"getItemName",(e=>e.name||"- (".concat(this.getItemId(e),")"))),(0,c.default)(this,"getName",(e=>(0,f.default)(e)?(0,i.default)(e).call(e,(e=>this.getItemName(e))).join(", "):this.getItemName(e))),(0,c.default)(this,"allowedCheckFunc",(e=>!0)),(0,c.default)(this,"allowed",(e=>(0,f.default)(e)?o.default.all((0,i.default)(e).call(e,(e=>o.default.resolve(this.allowedCheckFunc(e))))):o.default.resolve(this.allowedCheckFunc(e)))),(0,c.default)(this,"confirmContext",(e=>{if(!this.messageHasItemName)return t("Are you sure to {action}?",{action:this.actionNameDisplay||this.title});var a=this.getName(e);return t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})})),(0,c.default)(this,"submitSuccessMsg",(e=>{var a=this.getName(e);return this.isAsyncAction?this.messageHasItemName?(0,h.firstUpperCase)(t("The {action} instruction has been issued, instance: {name}. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.actionNameDisplay||this.title,name:a})):(0,h.firstUpperCase)(t("The {action} instruction has been issued. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.actionNameDisplay||this.title})):this.messageHasItemName?(0,h.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.actionNameDisplay||this.title,name:a})):(0,h.firstUpperCase)(t("{action} successfully.",{action:this.actionNameDisplay||this.title}))})),(0,c.default)(this,"performErrorMsg",((e,a)=>{if(a){if(!this.messageHasItemName)return"";var n=this.getName(e);return t("instance: {name}.",{name:n})}if(!this.messageHasItemName)return t("You are not allowed to {action}.",{action:this.actionNameDisplay||this.title});var r=this.getName(e);return t("You are not allowed to {action}, instance: {name}.",{action:this.actionNameDisplay||this.title,name:r})})),(0,c.default)(this,"submitErrorMsg",(e=>{if(!this.messageHasItemName)return t("Unable to {action}.",{action:this.actionNameDisplay||this.title});var a=this.getName(e);return t("Unable to {action}, instance: {name}.",{action:this.actionNameDisplay||this.title,name:a})})),(0,c.default)(this,"onSubmit",(e=>o.default.resolve())),(0,c.default)(this,"perform",function(){var e=(0,d.default)((function*(e){if((0,f.default)(e)&&0===e.length)return o.default.reject(t("Please select item!"));var n=yield a.allowed(e);if((0,f.default)(e)){var r=(0,f.default)(e)?e:[e];if((0,s.default)(n).call(n,(e=>!!e)))return o.default.resolve(!0);var l=[];(0,u.default)(n).call(n,((e,t)=>{e||l.push(r[t])}));var i=a.unescape(a.performErrorMsg(l,!0)),d=a.getBatchPerformTitle(),c=p.default.createElement("div",null,d&&p.default.createElement("p",null,d),p.default.createElement("p",null,i));return o.default.reject(c)}if(n)return o.default.resolve(!0);var h=a.performErrorMsg(e);return o.default.reject(h)}));return function(t){return e.apply(this,arguments)}}());var{item:n,containerProps:r}=e;n&&(this.item=n),r&&(this.containerProps=r)}get id(){return"id"}get actionType(){return"confirm"}get actionName(){return""}get actionNameDisplay(){return this.actionName.toLowerCase()}get passiveAction(){return t("be deleted")}get title(){return t("Delete")}get buttonType(){return"default"}get isDanger(){return!1}get buttonText(){return""}get okText(){return t("Confirm")}get cancelText(){return t("Cancel")}get isAdminPage(){var{isAdminPage:e=!1}=this.containerProps||{};return e}get isAsyncAction(){return!1}get messageHasItemName(){return!0}getBatchPerformTitle(){return this.messageHasItemName?t("There are resources that cannot {action} in the selected resources, such as:",{action:this.passiveAction.toLowerCase()}):t("There are resources that cannot {action} in the selected resources.",{action:this.passiveAction.toLowerCase()})}}a.default=m,(0,c.default)(m,"actionType","confirm")},2050:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.GlobalHeaderRight=void 0,n(1246);var s=o(n(1247));n(1244);var u=o(n(1245));n(231);var d=o(n(341)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),f=n(412),p=(n(161),o(n(2051))),h=o(n(1346));function m(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(m=function(e){return e?a:t})(e)}class g extends c.Component{get isAdminPage(){var{isAdminPage:e=!1}=this.props;return e}get isUserCenterPage(){var{isUserCenterPage:e=!1}=this.props;return e}renderConsole(){return this.isAdminPage||this.isUserCenterPage?c.default.createElement(d.default,{type:"link",href:"/base/overview",className:h.default["single-link"]},t("Console")):null}renderAdministrator(){var{rootStore:{hasAdminPageRole:e=!1}={}}=this.props;return!e||this.isAdminPage?null:c.default.createElement(d.default,{type:"link",href:"/base/overview-admin",className:h.default["single-link"]},t("Administrator"))}renderExtra(){return null}renderExtraLink(){return null}render(){return c.default.createElement("div",{className:h.default.right},c.default.createElement(s.default,{justify:"space-between",align:"middle",gutter:10},c.default.createElement(u.default,null,this.renderExtraLink(),this.renderConsole(),this.renderAdministrator()),this.renderExtra(),c.default.createElement(u.default,null,c.default.createElement(p.default,{menu:!0}))))}}a.GlobalHeaderRight=g;var v=(0,f.inject)("rootStore")((0,f.observer)(g));a.default=v},2051:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.AvatarDropdown=void 0;var i=l(n(54)),o=l(n(77)),s=l(n(1348));n(347);var u=l(n(348));n(1276);var d=l(n(421));n(231);var c=l(n(341));n(568);var f=l(n(415)),p=l(n(35)),h=l(n(0)),m=n(412),g=(n(161),n(564),l(n(237))),v=l(n(1302)),y=l(n(2052)),b=l(n(2053)),x=l(n(2054)),w=l(n(2056)),k=l(n(1346)),{getLocale:C,setLocale:_,SUPPORT_LOCALES:M}=g.default;class S extends h.default.Component{constructor(){super(...arguments),(0,p.default)(this,"changeLang",(e=>_(e,!0))),(0,p.default)(this,"onMenuClick",(e=>{var{key:t}=e})),(0,p.default)(this,"handleLogout",(e=>{e&&e.preventDefault&&e.preventDefault(),this.rootStore.logout()})),(0,p.default)(this,"afterChangePassword",((e,t)=>{e&&this.rootStore.logout()})),(0,p.default)(this,"onClickSelectLanguage",(e=>{e&&e.preventDefault(),e&&e.stopPropagation()}))}get rootStore(){return this.props.rootStore||{}}get user(){var{user:e}=this.rootStore;return e||null}renderLanguageSwitch(){var e=C(),{length:t}=M;if(t>3){var a=(0,i.default)(M).call(M,(e=>({label:e.icon.toLocaleUpperCase(),value:e.value})));return h.default.createElement("div",{style:{float:"right"}},h.default.createElement(f.default,{options:a,value:e,onChange:this.changeLang,onClick:this.onClickSelectLanguage}))}var n=(0,i.default)(M).call(M,((a,n)=>{var{value:r,icon:l}=a;return h.default.createElement(h.default.Fragment,null,h.default.createElement(c.default,{className:0===n?k.default["no-padding-top"]:"",type:"link",disabled:e===r,onClick:()=>{this.changeLang(r)}},l.toUpperCase()),n!==t-1&&h.default.createElement("span",null,"/"))}));return h.default.createElement("span",{style:{float:"right"}},n)}renderLanguageMenuItem(){var e;return M.length<=1?null:h.default.createElement(d.default.Item,{key:"language",className:(0,o.default)(e="".concat(k.default["no-hover"]," ")).call(e,k.default["menu-item"])},h.default.createElement("span",null,t("Switch Language")),this.renderLanguageSwitch())}render(){var e,a,n,r;if(!this.user)return h.default.createElement(u.default,{size:"small",style:{marginLeft:8,marginRight:8}});var{name:l}=this.user.user,i=h.default.createElement(d.default,{className:k.default.menu,onClick:this.onMenuClick},h.default.createElement(d.default.Item,{key:"user",className:(0,o.default)(e=(0,o.default)(a="".concat(k.default["no-hover"]," ")).call(a,k.default["name-item"]," ")).call(e,k.default["menu-item"])},h.default.createElement("span",null,h.default.createElement("span",{className:k.default["user-label"]},t("User")),h.default.createElement("span",null,l)),h.default.createElement(c.default,{type:"link",onClick:this.handleLogout,className:(0,o.default)(n=(0,o.default)(r="".concat(k.default["menu-btn"]," ")).call(r,k.default.logout," ")).call(n,k.default["no-padding-top"])},t("Sign Out"))),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),this.renderLanguageMenuItem(),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),h.default.createElement(d.default.Item,{key:"userCenter",className:k.default["menu-item"]},h.default.createElement(c.default,{href:"/user/center",type:"link",style:{textAlign:"left"}},t("User Center"))),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),h.default.createElement(d.default.Item,{key:"password",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:y.default}]},onFinishAction:this.afterChangePassword,item:this.user&&this.user.user,isWide:!0})),h.default.createElement(d.default.Item,{key:"token",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:b.default}]},isWide:!0})),h.default.createElement(d.default.Item,{key:"openrc",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:x.default}]},isWide:!0})));return h.default.createElement(w.default,{overlay:i},h.default.createElement("div",{className:"".concat(k.default.action)},h.default.createElement(c.default,{shape:"circle",icon:h.default.createElement(s.default,null),className:k.default.avatar})))}}a.AvatarDropdown=S;var I=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=I},2052:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Password=void 0;var i=l(n(63)),o=l(n(35)),s=n(412),u=n(1241),d=n(565),c=l(n(1255));class f extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{password:a,oldPassword:n}=e;return c.default.changePasswordUser({id:t,password:a,original_password:n})}))}get name(){return t("Update user password")}get defaultValue(){var{name:e}=this.item;return{name:e,password:"",confirmPassword:""}}get formItems(){return[{name:"name",label:t("User"),type:"label",iconType:"user"},{name:"oldPassword",label:t("Original Password"),type:"input-password",required:!0},{name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("password","user")},{name:"confirmPassword",label:t("Confirm Password"),dependencies:["password"],type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("confirmPassword","user")}]}}a.Password=f,(0,o.default)(f,"id","update-user-password"),(0,o.default)(f,"title",t("Update User Password")),(0,o.default)(f,"policy",[]),(0,o.default)(f,"allowed",(()=>i.default.resolve(!0)));var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},2053:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Token=void 0;var i=l(n(635)),o=l(n(63)),s=l(n(35));n(594);var u=l(n(595)),d=l(n(0)),c=n(412),f=(n(161),n(1241)),p=n(1251),h=n(580),m=l(n(1346)),{Paragraph:g}=u.default;class v extends f.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"getLeftStr",(e=>{var a=e-(0,i.default)(),n=Math.floor(a/1e3);if(n<60)return t("{seconds} seconds",{seconds:n});var r=Math.floor(n/60),l=n%60;if(r<60)return t("{minutes} minutes {leftSeconds} seconds",{minutes:r,leftSeconds:l});var o=Math.floor(r/60);return t("{hours} hours {leftMinutes} minutes {leftSeconds} seconds",{hours:o,leftMinutes:r%60,leftSeconds:l})})),(0,s.default)(this,"onSubmit",(()=>o.default.resolve()))}get name(){return t("Get Token")}get token(){var e=localStorage.getItem("keystone_token");try{return JSON.parse(e)||{}}catch(e){return{}}}get showNotice(){return!1}get tokenValue(){return this.token.value||""}get keystoneTokenExp(){var{keystone_token_exp:e}=this.props.rootStore.user||{};return(0,h.getLocalTime)(e).valueOf()}get tips(){return(0,i.default)()>this.keystoneTokenExp?d.default.createElement("span",{style:globalCSS.warnDarkColor},t("Keystone token is expired.")):t("Please save your token properly and it will be valid for {left}.",{left:this.getLeftStr(this.keystoneTokenExp)})}get defaultValue(){return{token:this.tokenValue}}get labelCol(){return{xs:{span:0},sm:{span:0}}}get wrapperCol(){return{xs:{span:24},sm:{span:24}}}get formItems(){return[{name:"token",label:"",type:"label",component:d.default.createElement(g,{copyable:{text:this.tokenValue},className:m.default.token},d.default.createElement("pre",null,this.tokenValue))}]}}a.Token=v,(0,s.default)(v,"id","get-token"),(0,s.default)(v,"title",t("Get Token")),(0,s.default)(v,"policy",p.allCanReadPolicy),(0,s.default)(v,"allowed",(()=>o.default.resolve(!0)));var y=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=y},2054:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.OpenRc=void 0;var i=l(n(29)),o=l(n(63)),s=l(n(35)),u=n(412),d=n(1241),c=n(1251),f=l(n(1569)),p=n(2055),h=l(n(1352));class m extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"exportRcFile",(e=>{var t=new Blob([e],{type:"text/plain;charset=utf-8"});h.default.saveAs(t,"openrc.sh")})),(0,s.default)(this,"onSubmit",(e=>{var{type:t}=e;return this.store.fetchList().then((()=>this.exportRcFile(this.getOpenRC(t))))}))}init(){this.store=f.default}get name(){return t("Get OpenRC file")}get showNotice(){return!1}get user(){var{user:e}=this.props.rootStore;return e}getOpenRC(e){var{project:{id:t="",name:a="",domain:{name:n}={}}={},user:{name:r="",domain:{name:l}={}}={},region:o}=this.user||{},{data:s}=this.store.list,{endpoints:u}=(0,i.default)(s).call(s,(e=>"keystone"===e.name))[0],d=(0,i.default)(u).call(u,(e=>"public"===e.interface))[0].url;return"password"===e?(0,p.getPwdOpenRc)({authUrl:d,projectId:t,projectName:a,projectDomain:n,userDomain:l,userName:r,region:o}):(0,p.getCredentialOpenRc)({authUrl:d,region:o})}get defaultValue(){return{type:"password"}}get formItems(){return[{name:"type",label:t("Type"),type:"select",options:[{label:t("Password Type"),value:"password"},{label:t("Credential Type"),value:"credential"}]}]}}a.OpenRc=m,(0,s.default)(m,"id","get-token"),(0,s.default)(m,"title",t("Get OpenRC file")),(0,s.default)(m,"policy",c.allCanReadPolicy),(0,s.default)(m,"allowed",(()=>o.default.resolve(!0)));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},2055:function(e,t,a){"use strict";a(20)(t,"__esModule",{value:!0}),t.getCredentialOpenRc=t.getPwdOpenRc=void 0;t.getPwdOpenRc=e=>{var{authUrl:t,projectId:a,projectName:n,projectDomain:r,userDomain:l,userName:i,region:o}=e;return"#!/usr/bin/env bash\n# To use an OpenStack cloud you need to authenticate against the Identity\n# service named keystone, which returns a **Token** and **Service Catalog**.\n# The catalog contains the endpoints for all services the user/tenant has\n# access to - such as Compute, Image Service, Identity, Object Storage, Block\n# Storage, and Networking (code-named nova, glance, keystone, swift,\n# cinder, and neutron).\n#\n# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other\n# OpenStack API is version 3. For example, your cloud provider may implement\n# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is\n# only for the Identity API served through keystone.\n"+"export OS_AUTH_URL=".concat(t,"/v3/\n")+"\n# With the addition of Keystone we have standardized on the term **project**\n# as the entity that owns the resources.\n"+"export OS_PROJECT_ID=".concat(a," \n")+"export OS_PROJECT_NAME=".concat(n,"\n")+"export OS_PROJECT_DOMAIN_NAME=".concat(r,"\n")+"export OS_USER_DOMAIN_NAME=".concat(l,"\n")+"\n# unset v2.0 items in case set\nunset OS_TENANT_ID\nunset OS_TENANT_NAME\n# In addition to the owning entity (tenant), OpenStack stores the entity\n# performing the action as the **user**.\n"+"export OS_USERNAME=".concat(i,"\n")+'\n# With Keystone you pass the keystone password.\necho "Please enter your OpenStack Password for project $OS_PROJECT_NAME as user $OS_USERNAME: "\nread -sr OS_PASSWORD_INPUT\nexport OS_PASSWORD=$OS_PASSWORD_INPUT\n# If your configuration has multiple regions, we set that information here.\n# OS_REGION_NAME is optional and only valid in certain environments.\n'+"export OS_REGION_NAME=".concat(o,"\n")+'\n# Don\'t leave a blank variable, unset it if it was empty\nif [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi\nexport OS_INTERFACE=public\nexport OS_IDENTITY_API_VERSION=3\n\n# If OS_AUTH_URL use private SSL, Please add CACERT file path \n# export OS_CACERT={crtPath}'};t.getCredentialOpenRc=e=>{var{authUrl:t,region:a}=e;return"#!/usr/bin/env bash\n# To use an OpenStack cloud you need to authenticate against the Identity\n# service named keystone, which returns a **Token** and **Service Catalog**.\n# The catalog contains the endpoints for all services the user/tenant has\n# access to - such as Compute, Image Service, Identity, Object Storage, Block\n# Storage, and Networking (code-named nova, glance, keystone, swift,\n# cinder, and neutron).\n#\n# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other\n# OpenStack API is version 3. For example, your cloud provider may implement\n# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is\n# only for the Identity API served through keystone.\n"+"export OS_AUTH_URL=".concat(t,"/v3/\n")+'\n# With Keystone you pass the keystone password.\necho "Please enter your OpenStack Credential ID as OS_APPLICATION_CREDENTIAL_ID: "\nread -sr OS_APPLICATION_CREDENTIAL_ID\nexport OS_APPLICATION_CREDENTIAL_ID=$OS_APPLICATION_CREDENTIAL_ID\necho "Please enter your OpenStack Credential Secret as OS_APPLICATION_CREDENTIAL_SECRET: "\nread -sr OS_APPLICATION_CREDENTIAL_SECRET\nexport OS_APPLICATION_CREDENTIAL_SECRET=$OS_APPLICATION_CREDENTIAL_SECRET\n\n# Don\'t leave a blank variable, unset it if it was empty\nif [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi\nexport OS_INTERFACE=public\nexport OS_IDENTITY_API_VERSION=3\nexport OS_AUTH_TYPE=v3applicationcredential\n# If your configuration has multiple regions, we set that information here.\n# OS_REGION_NAME is optional and only valid in certain environments.\n'+"export OS_REGION_NAME=".concat(a,"\n")+"\n# If OS_AUTH_URL use private SSL, Please add CACERT file path \n# export OS_CACERT={crtPath}"}},2056:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0,a(586);var l=r(a(424)),i=r(a(343)),o=r(a(58)),s=(a(161),r(a(0))),u=r(a(4)),d=e=>{var{overlayClassName:t}=e,a=(0,o.default)(e,["overlayClassName"]);return s.default.createElement(l.default,(0,i.default)({overlayClassName:(0,u.default)(t)},a))};t.default=d},2057:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1570)),i=r(a(1450)),o=r(a(1451)),s=r(a(1571)),u=r(a(1452)),d=r(a(1572)),c=r(a(1453)),f=r(a(1344)),p=r(a(1381)),h=r(a(1377)),m=r(a(1382)),g=r(a(0)),v=(a(564),e=>e?[{path:"/base/overview-admin",name:e("Home"),key:"overviewAdmin",icon:g.default.createElement(m.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/compute",name:e("Compute"),key:"computeAdmin",icon:g.default.createElement(h.default,null),children:[{path:"/compute/instance-admin",name:e("Instances"),key:"instanceAdmin",level:1,children:[{path:/^\/compute\/instance-admin\/detail\/.[^/]+$/,name:e("Instance Detail"),key:"instanceDetailAdmin",routePath:"/compute/instance-admin/detail/:id",level:2}]},{path:"/compute/instance-snapshot-admin",name:e("Instance Snapshots"),key:"instanceSnapshotAdmin",level:1,children:[{path:/^\/compute\/instance-snapshot-admin\/detail\/[^/]+$/,name:e("Instance Snapshot Detail"),key:"instanceSnapshotDetailAdmin",level:2,routePath:"/compute/instance-snapshot-admin/detail/:id"}]},{path:"/compute/flavor-admin",name:e("Flavors"),key:"flavorAdmin",level:1,children:[{path:"/compute/flavor-admin/create",name:e("Create Flavor"),key:"flavorCreateAdmin",level:2},{path:/^\/compute\/flavor-admin\/detail\/[^/]+$/,name:e("Flavor Detail"),key:"flavorDetailAdmin",routePath:"/compute/flavor-admin/detail/:id",level:2}]},{path:"/compute/server-group-admin",name:e("Server Groups"),key:"serverGroupAdmin",level:1,children:[{path:/^\/compute\/server-group-admin\/detail\/.[^/]+$/,name:e("Server Group Detail"),key:"serverGroupDetailAdmin",routePath:"/compute/server-group-admin/detail/:id",level:2}]},{path:"/compute/image-admin",name:e("Images"),key:"imageAdmin",level:1,children:[{path:/^\/compute\/image-admin\/detail\/.[^/]+$/,name:e("Image Detail"),key:"imageDetailAdmin",routePath:"/compute/image-admin/detail/:id",level:2},{path:"/compute/image-admin/create",name:e("Create Image"),key:"imageCreateAdmin",level:2}]},{path:"/compute/hypervisors-admin",name:e("Hypervisors"),key:"hypervisorAdmin",level:1,children:[{path:/^\/compute\/hypervisors-admin\/detail\/.[^/]+$/,name:e("Hypervisor Detail"),key:"hypervisorDetailAdmin",routePath:"/compute/hypervisors-admin/detail/:id",level:2}]},{path:"/compute/aggregates-admin",name:e("Host Aggregates"),key:"aggregateAdmin",level:1,children:[]},{path:"/compute/baremetal-node-admin",name:e("Bare Metal Nodes"),key:"baremetalNodeAdmin",endpoints:"ironic",level:1,children:[{path:/^\/compute\/baremetal-node-admin\/detail\/.[^/]+$/,name:e("Bare Metal Node Detail"),key:"baremetalNodeDetailAdmin",routePath:"/compute/baremetal-node-admin/detail/:id",level:2},{path:/^\/compute\/baremetal-node-admin\/create$/,name:e("Create Bare Metal Node"),key:"baremetalNodeCreateAdmin",level:2},{path:/^\/compute\/baremetal-node-admin\/edit\/.[^/]+$/,name:e("Edit Bare Metal Node"),key:"baremetalNodeEditAdmin",routePath:"/compute/baremetal-node-admin/detail/:id",level:2}]}]},{path:"/storage",name:e("Storage"),key:"storageAdmin",icon:g.default.createElement(p.default,null),children:[{path:"/storage/volume-admin",name:e("Volumes"),key:"volumeAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/volume-admin\/detail\/.[^/]+$/,name:e("Volume Detail"),key:"volumeDetailAdmin",level:2,routePath:"/storage/volume-admin/detail/:id"}]},{path:"/storage/backup-admin",name:e("Volume Backups"),key:"backupAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/backup-admin\/detail\/.[^/]+$/,name:e("Volume Backup Detail"),key:"backupDetailAdmin",level:2,routePath:"/storage/backup-admin/detail/:id"}]},{path:"/storage/snapshot-admin",name:e("Volume Snapshots"),key:"snapshotAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/snapshot-admin\/detail\/.[^/]+$/,name:e("Volume Snapshot Detail"),key:"snapshotDetailAdmin",level:2,routePath:"/storage/snapshot-admin/detail/:id"}]},{path:"/storage/volume-type-admin",name:e("Volume Types"),key:"volumeTypeAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/volume-type-admin\/detail\/.[^/]+$/,name:e("Volume Type Detail"),key:"volumeTypeDetailAdmin",level:2,routePath:"/storage/volume-type-admin/detail/:id"},{path:/^\/storage\/volume-type-admin\/qos\/detail\/.[^/]+$/,name:e("QoS Detail"),key:"volumeTypeQosDetailAdmin",level:2,routePath:"/storage/volume-type-admin/qos/detail/:id"}]},{path:"/storage/storage-admin",name:e("Storage Backends"),key:"storageBackendAdmin",level:1,endpoints:"cinder",children:[]}]},{path:"/network",name:e("Network"),key:"/networkAdmin",icon:g.default.createElement(f.default,null),children:[{path:"/network/networks-admin",name:e("Networks"),key:"networkAdmin",level:1,children:[{path:/^\/network\/networks-admin\/detail\/.[^/]+$/,name:e("Network Detail"),key:"networkDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/subnet\/.[^/]+$/,name:e("Subnet Detail"),key:"subnetDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/subnet/:id"}]},{path:"/network/port-admin",name:e("Ports"),key:"port",level:1,children:[{path:/^\/network\/port-admin\/detail\/.[^/]+$/,name:e("Port Detail"),key:"portDetailAdmin",level:2,routePath:"/network/port-admin/detail/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"networkPortDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/port/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/subnet\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"subnetPortDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/subnet/:subnetId/port/:id"},{path:/^\/network\/instance-admin\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"instancePortDetailAdmin",level:2,routePath:"/network/instance-admin/detail/:instanceId/port/:id"}]},{path:"/network/qos-policy-admin",name:e("QoS Policies"),key:"networkQosAdmin",endpoints:"neutron_qos",level:1,children:[{path:/^\/network\/qos-policy-admin\/detail\/.[^/]+$/,name:e("QoS Policy Detail"),key:"networkQosDetailAdmin",level:2,routePath:"/network/qos-policy-admin/detail/:id"}]},{path:"/network/router-admin",name:e("Routers"),key:"routerAdmin",level:1,children:[{path:/^\/network\/router-admin\/detail\/.[^/]+$/,name:e("Router Detail"),key:"routerDetailAdmin",level:2,routePath:"/network/router-admin/detail/:id"},{path:/^\/network\/router-admin\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"routerPortDetailAdmin",level:2,routePath:"/network/router-admin/:routerId/port/:id"}]},{path:"/network/floatingip-admin",name:e("Floating IPs"),key:"fipAdmin",level:1,children:[{path:/^\/network\/floatingip-admin\/detail\/.[^/]+$/,name:e("Floating Ip Detail"),key:"fipDetailAdmin",level:2,routePath:"/network/floatingip-admin/detail/:id"}]},{path:"/network/load-balancers-admin",name:e("Load Balancers"),key:"lbAdmin",endpoints:"octavia",level:1,children:[{path:/^\/network\/load-balancers-admin\/detail\/.[^/]+$/,name:e("Load Balancer Detail"),key:"lbDetailAdmin",level:2,routePath:"/network/load-balancers-admin/detail/:id"},{path:/^\/network\/load-balancers-admin\/.[^/]+\/listener\/.[^/]+$/,name:e("Listener Detail"),key:"lbListenerDetailAdmin",level:2,routePath:"/network/load-balancers-admin/:loadBalancerId/listener/:id"}]},{path:"/network/vpn-admin",name:e("VPNs"),key:"vpnAdmin",endpoints:"neutron_vpn",level:1,children:[{path:/^\/network\/ipsec-site-connection-admin\/detail\/.[^/]+$/,name:e("IPsec site connection Detail"),key:"ipsecDetailAdmin",level:2,routePath:"/network/ipsec-site-connection-admin/detail/:id"}]},{path:"/network/security-group-admin",name:e("Security Groups"),key:"securityGroupAdmin",level:1,children:[{path:/^\/network\/security-group-admin\/detail\/.[^/]+$/,name:e("Security Group Detail"),key:"securityGroupDetailAdmin",level:2,routePath:"/network/security-group-admin/detail/:id"}]},{path:"/network/rbac-policies-admin",name:e("RBAC Policies"),key:"rbacPolicyAdmin",level:1,children:[{path:/^\/network\/rbac-policies-admin\/detail\/.[^/]+$/,name:e("RBAC Policy Detail"),key:"rbacPolicyDetailAdmin",level:2,routePath:"/network/rbac-policies-admin/detail/:id"}]},{path:"/network/firewall-admin",name:e("Firewalls"),key:"firewallAdmin",level:1,endpoints:"neutron_firewall",children:[{path:/^\/network\/firewall-policy-admin\/detail\/[^/]+$/,name:e("Policy Detail"),key:"firewallPolicyDetailAdmin",level:2,routePath:"/network/firewall-policy-admin/detail/:id"},{path:/^\/network\/firewall-admin\/[^/]+\/port\/[^/]+$/,name:e("Firewall Port"),key:"firewallPortDetailAdmin",level:2,routePath:"/network/firewall-admin/:firewallId/port/:portId"},{path:/^\/network\/firewall-admin\/detail\/[^/]+$/,name:e("Firewall Detail"),key:"firewallDetailAdmin",level:2,routePath:"/network/firewall-admin/detail/:id"},{path:/^\/network\/firewall-rule-admin\/detail\/[^/]+$/,name:e("Rule Detail"),key:"firewallRuleDetailAdmin",level:2,routePath:"/network/firewall-rule-admin/detail/:id"}]},{path:"/network/dns-admin/zones",name:e("DNS Zones"),key:"dnsZonesAdmin",endpoints:"designate",level:1,children:[{path:/^\/network\/dns-admin\/zones\/detail\/.[^/]+$/,name:e("Zones Detail"),key:"dnsZonesDetailAdmin",level:2,routePath:"/network/dns-admin/zones/detail/:id"},{path:/^\/network\/dns-admin\/zones\/detail\/.[^/]+\/recordsets\/.[^/]+$/,name:e("Recordsets Detail"),key:"dnsRecordSetDetailAdmin",level:2,routePath:"/network/dns-admin/zones/detail/:zoneId/recordsets/:id"}]}]},{path:"/share",name:e("Share File Storage"),key:"fileStorageAdmin",endpoints:"manilav2",icon:g.default.createElement(c.default,null),children:[{path:"/share/share-admin",name:e("Shares"),key:"shareAdmin",level:1,children:[{path:/^\/share\/share-admin\/detail\/.[^/]+$/,name:e("Share Detail"),key:"shareDetailAdmin",level:2,routePath:"/share/share-admin/detail/:id"}]},{path:"/share/share-type-admin",name:e("Share Types"),key:"shareTypeAdmin",level:1,children:[{path:/^\/share\/share-type-admin\/detail\/.[^/]+$/,name:e("Share Type Detail"),key:"shareTypeDetailAdmin",level:2,routePath:"/share/share-type-admin/detail/:id"}]},{path:"/share/share-group-type-admin",name:e("Share Group Types"),key:"shareGroupTypeAdmin",level:1,children:[{path:/^\/share\/share-group-type-admin\/detail\/.[^/]+$/,name:e("Share Group Type Detail"),key:"shareGroupTypeDetailAdmin",level:2,routePath:"/share/share-group-type-admin/detail/:id"}]},{path:"/share/share-network-admin",name:e("Share Networks"),key:"shareNetworkAdmin",level:1,children:[{path:/^\/share\/share-network-admin\/detail\/.[^/]+$/,name:e("Share Network Detail"),key:"shareNetworkDetailAdmin",level:2,routePath:"/share/share-network-admin/detail/:id"}]},{path:"/share/share-server-admin",name:e("Share Servers"),key:"shareServerAdmin",level:1,children:[{path:/^\/share\/share-server-admin\/detail\/.[^/]+$/,name:e("Share Server Detail"),key:"shareServerDetailAdmin",level:2,routePath:"/share/share-server-admin/detail/:id"}]},{path:"/share/share-instance-admin",name:e("Share Instances"),key:"shareInstanceAdmin",level:1,children:[{path:/^\/share\/share-instance-admin\/detail\/.[^/]+$/,name:e("Share Instance Detail"),key:"shareInstanceDetailAdmin",level:2,routePath:"/share/share-instance-admin/detail/:id"}]},{path:"/share/share-group-admin",name:e("Share Groups"),key:"shareGroupAdmin",level:1,children:[{path:/^\/share\/share-group-admin\/detail\/.[^/]+$/,name:e("Share Group Detail"),key:"shareGroupDetailAdmin",level:2,routePath:"/share/share-group-admin/detail/:id"}]},{path:"/share/storage-admin",name:e("Storage Backends"),key:"shareStorageBackendAdmin",level:1,children:[]}]},{path:"/identity",name:e("Identity"),key:"/identity",icon:g.default.createElement(d.default,null),children:[{path:"/identity/domain-admin",name:e("Domains"),key:"domainAdmin",level:1,children:[{path:/^\/identity\/domain-admin\/detail\/.[^/]+$/,name:e("Domain Detail"),key:"domainDetailAdmin",level:2,routePath:"/identity/domain-admin/detail/:id"}]},{path:"/identity/project-admin",name:e("Projects"),key:"projectAdmin",level:1,children:[{path:/^\/identity\/project-admin\/detail\/.[^/]+$/,name:e("Project Detail"),key:"projectDetailAdmin",level:2,routePath:"/identity/project-admin/detail/:id"},{path:"/identity/project-admin/create",name:e("Create Project"),key:"projectCreateAdmin",level:2},{path:/^\/identity\/project-admin\/edit\/.[^/]+$/,name:e("Edit Project"),key:"projectEditAdmin",level:2,routePath:"/identity/project-admin/edit/:id"}]},{path:"/identity/user-admin",name:e("Users"),key:"userAdmin",level:1,children:[{path:/^\/identity\/user-admin\/detail\/.[^/]+$/,name:e("User Detail"),key:"userDetailAdmin",level:2,routePath:"/identity/user-admin/detail/:id"},{path:"/identity/user-admin/create",name:e("Create User"),key:"userCreateAdmin",level:2},{path:/^\/identity\/user-admin\/edit\/.[^/]+$/,name:e("User Edit"),key:"userEditAdmin",level:2,routePath:"/identity/user-admin/edit/:id"}]},{path:"/identity/user-group-admin",name:e("User Groups"),key:"userGroupAdmin",level:1,children:[{path:/^\/identity\/user-group-admin\/detail\/.[^/]+$/,name:e("User Group Detail"),key:"userGroupDetailAdmin",level:2,routePath:"/identity/user-group-admin/detail/:id"},{path:"/identity/user-group-admin/create",name:e("Create User Group"),key:"userGroupCreateAdmin",level:2},{path:/^\/identity\/user-group-admin\/edit\/.[^/]+$/,name:e("Edit User Group"),key:"userGroupEditAdmin",level:2,routePath:"/identity/user-group-admin/edit/:id"}]},{path:"/identity/role-admin",name:e("Roles"),key:"roleAdmin",level:1,children:[{path:/^\/identity\/role-admin\/detail\/.[^/]+$/,name:e("Role Detail"),key:"roleDetailAdmin",level:2,routePath:"/identity/role-admin/detail/:id"}]}]},{path:"/database",name:e("Database"),key:"databaseAdmin",endpoints:"trove",icon:g.default.createElement(u.default,null),children:[{path:"/database/instances-admin",name:e("Database Instances"),key:"databaseInstancesAdmin",level:1,children:[{path:/^\/database\/instances-admin\/detail\/.[^/]+$/,name:e("Database Instance Detail"),key:"databaseInstanceDetailAdmin",level:2,routePath:"/database/instances-admin/detail/:id"}]}]},{path:"/monitor-center",name:e("Monitor Center"),key:"/monitorCenterAdmin",icon:g.default.createElement(s.default,null),children:[{path:"/monitor-center/overview-admin",name:e("Monitor Overview"),key:"monitorOverviewAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/physical-node-admin",name:e("Physical Nodes"),key:"monitorPhysicalNodeAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/storage-cluster-admin",name:e("Storage Clusters"),key:"monitorStorageClusterAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/openstack-service-admin",name:e("OpenStack Services"),key:"monitorOpenstackServiceAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/other-service-admin",name:e("Other Services"),key:"monitorOtherServiceAdmin",level:1,children:[],hasBreadcrumb:!0}]},{path:"/configuration-admin",name:e("Global Setting"),key:"configurationAdmin",icon:g.default.createElement(o.default,null),children:[{path:"/configuration-admin/info",name:e("System Info"),key:"systemInfoAdmin",level:1,children:[{path:/^\/configuration-admin\/neutron\/detail\/.[^/]+$/,name:e("Neutron Agent Detail"),key:"neutronAgentDetailAdmin",level:2,routePath:"/configuration-admin/neutron/detail/:id"}]},{path:"/configuration-admin/setting",name:e("System Config"),key:"settingAdmin",level:1},{path:"/configuration-admin/metadata",name:e("Metadata Definitions"),key:"metadataAdmin",level:1,children:[{path:/^\/configuration-admin\/metadata\/detail\/.[^/]+$/,name:e("Metadata Detail"),key:"metadataDetailAdmin",level:2,routePath:"/configuration-admin/metadata/detail/:id"}]}]},{path:"/container",name:e("Container"),key:"containerAdmin",icon:g.default.createElement(i.default,null),children:[{path:"/container-service/containers-admin",name:e("Containers"),key:"zunContainersAdmin",endpoints:"zun",level:1,children:[{path:/^\/container-service\/containers-admin\/detail\/.[^/]+$/,name:e("Container Detail"),key:"zunContainerDetailAdmin",level:2,routePath:"/container-service/containers-admin/detail/:id"}]},{path:"/container-service/hosts-admin",name:e("Hosts"),key:"zunHostsAdmin",endpoints:"zun",level:1,children:[{path:/^\/container-service\/hosts-admin\/detail\/.[^/]+$/,name:e("Host Detail"),key:"zuHostsDetailAdmin",level:2,routePath:"/container-service/hosts-admin/detail/:id"}]},{path:"/container-service/services-admin",name:e("Services"),key:"zunServicesAdmin",endpoints:"zun",level:1},{path:"/container-infra/clusters-admin",name:e("Clusters"),key:"containerInfraClustersAdmin",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/clusters-admin\/detail\/.[^/]+$/,name:e("Cluster Detail"),key:"containerInfraClusterDetailAdmin",level:2,routePath:"/container-infra/clusters-admin/detail/:id"}]},{path:"/container-infra/cluster-template-admin",name:e("Cluster Templates"),key:"clusterTemplateAdmin",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/cluster-template-admin\/detail\/.[^/]+$/,name:e("Cluster Template Detail"),key:"containerInfraClusterTemplateDetailAdmin",level:2,routePath:"/container-infra/cluster-template-admin/detail/:id"}]}]},{path:"/ha",name:e("Instance-HA"),key:"masakari",icon:g.default.createElement(l.default,null),endpoints:"masakari",children:[{path:"/ha/segments-admin",name:e("Segments"),key:"masakariSegmentsAdmin",level:1,children:[{path:"/ha/segments-admin/create-step-admin",name:e("Create Segment"),key:"masakariSegmentsCreateAdmin",level:2},{path:/^\/ha\/segments-admin\/detail\/.[^/]+$/,name:e("Segment Detail"),key:"masakariSegmentDetailAdmin",level:2,routePath:"/ha/segments-admin/detail/:id"}]},{path:"/ha/hosts-admin",name:e("Hosts"),key:"masakariHostsAdmin",level:1,children:[{path:/^\/ha\/hosts-admin\/detail\/.[^/]+$/,name:e("Host Detail"),key:"masakariHostDetailAdmin",level:2,routePath:"/ha/hosts-admin/detail/:id"}]},{path:"/ha/notifications-admin",name:e("Notifications"),key:"masakariNotificationsAdmin",level:1,children:[{path:/^\/ha\/notifications-admin\/detail\/.[^/]+$/,name:e("Notification Detail"),key:"masakariNotificationDetailAdmin",level:2,routePath:"/ha/notifications-admin/detail/:id"}]}]}]:[]);t.default=v},2067:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1450)),i=r(a(1452)),o=r(a(1434)),s=r(a(1453)),u=r(a(1344)),d=r(a(1381)),c=r(a(1377)),f=r(a(1382)),p=r(a(0)),h=(a(564),e=>e?[{path:"/base/overview",name:e("Home"),key:"overview",icon:p.default.createElement(f.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/compute",name:e("Compute"),key:"compute",icon:p.default.createElement(c.default,null),children:[{path:"/compute/instance",name:e("Instances"),key:"instance",level:1,children:[{path:/^\/compute\/instance\/detail\/.[^/]+$/,name:e("Instance Detail"),key:"instanceDetail",level:2,routePath:"/compute/instance/detail/:id"},{path:"/compute/instance/create",name:e("Create Instance"),key:"instanceCreate",level:2},{path:"/compute/ironic-instance/create",name:e("Create Ironic Instance"),key:"ironicCreate",level:2}]},{path:"/compute/instance-snapshot",name:e("Instance Snapshots"),key:"instanceSnapshot",level:1,children:[{path:/^\/compute\/instance-snapshot\/detail\/[^/]+$/,name:e("Instance Snapshot Detail"),key:"instanceSnapshotDetail",level:2,routePath:"/compute/instance-snapshot/detail/:id"}]},{path:"/compute/flavor",name:e("Flavors"),key:"flavor",level:1,children:[{path:/^\/compute\/flavor\/detail\/.[^/]+$/,name:e("Flavor Detail"),key:"flavorDetail",level:2,routePath:"/compute/flavor/detail/:id"}]},{path:"/compute/server-group",name:e("Server Groups"),key:"serverGroup",level:1,children:[{path:/^\/compute\/server-group\/detail\/.[^/]+$/,name:e("Server Group Detail"),key:"serverGroupDetail",level:2,routePath:"/compute/server-group/detail/:id"}]},{path:"/compute/image",name:e("Images"),key:"image",level:1,children:[{path:/^\/compute\/image\/detail\/.[^/]+$/,name:e("Image Detail"),key:"imageDetail",level:2,routePath:"/compute/image/detail/:id"},{path:"/compute/image/create",name:e("Create Image"),key:"imageCreate",level:2}]},{path:"/compute/keypair",name:e("Key Pairs"),key:"keypair",level:1,children:[{path:/^\/compute\/keypair\/detail\/.[^/]*$/,name:e("Keypair Detail"),key:"keypairDetail",level:2,routePath:"/compute/keypair/detail/:id"}]}]},{path:"/storage",name:e("Storage"),key:"storage",icon:p.default.createElement(d.default,null),children:[{path:"/storage/volume",name:e("Volumes"),key:"volume",level:1,endpoints:"cinder",children:[{path:"/storage/volume/create",name:e("Create Volume"),key:"volumeCreate",level:2},{path:/^\/storage\/volume\/detail\/.[^/]+$/,name:e("Volume Detail"),key:"volumeDetail",level:2,routePath:"/storage/volume/detail/:id"}]},{path:"/storage/backup",name:e("Volume Backups"),key:"backup",level:1,endpoints:"cinder",children:[{path:/^\/storage\/backup\/detail\/.[^/]+$/,name:e("Volume Backup Detail"),key:"backupDetail",level:2,routePath:"/storage/backup/detail/:id"}]},{path:"/storage/snapshot",name:e("Volume Snapshots"),key:"snapshot",level:1,endpoints:"cinder",children:[{path:/^\/storage\/snapshot\/detail\/.[^/]+$/,name:e("Volume Snapshot Detail"),key:"snapshotDetail",level:2,routePath:"/storage/snapshot/detail/:id"}]},{path:"/storage/container",name:e("Object Storage"),key:"containers",endpoints:"swift",level:1,children:[{path:/^\/storage\/container\/detail\/[^/]+$/,name:e("Container Detail"),key:"containerDetail",level:2,routePath:"/storage/container/detail/:id"},{path:/^\/storage\/container\/detail\/[^/]+\/.+$/,name:e("Folder Detail"),key:"folderDetail",level:2,routePath:"/storage/container/detail/:container/:folder"}]}]},{path:"/network",name:e("Network"),key:"/network",icon:p.default.createElement(u.default,null),children:[{path:"/network/networks",name:e("Networks"),key:"network",level:1,children:[{path:/^\/network\/networks\/detail\/.[^/]+$/,name:e("Network Detail"),key:"networkDetail",level:2,routePath:"/network/networks/detail/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/subnet\/.[^/]+$/,name:e("Subnet Detail"),key:"subnetDetail",level:2,routePath:"/network/networks/detail/:networkId/subnet/:id"}]},{path:"/network/port",name:e("Ports"),key:"port",level:1,children:[{path:/^\/network\/port\/detail\/.[^/]+$/,name:e("Port Detail"),key:"portDetail",level:2,routePath:"/network/port/detail/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"networkPortDetail",level:2,routePath:"/network/networks/detail/:networkId/port/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/subnet\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"subnetPortDetail",level:2,routePath:"/network/networks/detail/:networkId/subnet/:subnetId/port/:id"},{path:/^\/network\/instance\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"instancePortDetail",level:2,routePath:"/network/instance/detail/:instanceId/port/:id"}]},{path:"/network/qos-policy",name:e("QoS Policies"),key:"networkQos",endpoints:"neutron_qos",level:1,children:[{path:/^\/network\/qos-policy\/detail\/.[^/]+$/,name:e("QoS Policy Detail"),key:"networkQosDetail",level:2,routePath:"/network/qos-policy/detail/:id"}]},{path:"/network/router",name:e("Routers"),key:"router",level:1,children:[{path:/^\/network\/router\/detail\/.[^/]+$/,name:e("Router Detail"),key:"routerDetail",level:2,routePath:"/network/router/detail/:id"},{path:/^\/network\/router\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"routerPortDetail",level:2,routePath:"/network/router/:routerId/port/:id"}]},{path:"/network/floatingip",name:e("Floating IPs"),key:"fip",level:1,children:[{path:/^\/network\/floatingip\/detail\/.[^/]+$/,name:e("Floating Ip Detail"),key:"fipDetail",level:2,routePath:"/network/floatingip/detail/:id"}]},{path:"/network/topo",name:e("Topology"),key:"networkTopo",level:1,children:[]},{path:"/network/load-balancers",name:e("Load Balancers"),key:"lb",endpoints:"octavia",level:1,children:[{path:"/network/load-balancers/create",name:e("Create Loadbalancer"),key:"lbCreate",level:2},{path:/^\/network\/load-balancers\/detail\/.[^/]+$/,name:e("Load Balancer Detail"),key:"lbDetail",level:2,routePath:"/network/load-balancers/detail/:id"},{path:/^\/network\/load-balancers\/.[^/]+\/listener\/.[^/]+$/,name:e("Listener Detail"),key:"lbListenerDetail",level:2,routePath:"/network/load-balancers/:loadBalancerId/listener/:id"}]},{path:"/network/certificate",name:e("Certificates"),key:"certificate",endpoints:"barbican",level:1,children:[{path:/^\/network\/certificate-container\/detail\/.[^/]+$/,name:e("Certificate Detail"),key:"certificateContainerDetail",level:2,routePath:"/network/certificate-container/detail/:id"},{path:/^\/network\/certificate-secret\/detail\/.[^/]+$/,name:e("Certificate Detail"),key:"certificateSecretDetail",level:2,routePath:"/network/certificate-secret/detail/:id"}]},{path:"/network/vpn",name:e("VPNs"),key:"vpn",endpoints:"neutron_vpn",level:1,children:[{path:/^\/network\/ipsec-site-connection\/detail\/.[^/]+$/,name:e("IPsec site connection Detail"),key:"ipsecDetail",level:2,routePath:"/network/ipsec-site-connection/detail/:id"}]},{path:"/network/security-group",name:e("Security Groups"),key:"securityGroup",level:1,children:[{path:/^\/network\/security-group\/detail\/.[^/]+$/,name:e("Security Group Detail"),key:"securityGroupDetail",level:2,routePath:"/network/security-group/detail/:id"}]},{path:"/network/firewall",name:e("Firewalls"),key:"firewall",level:1,endpoints:"neutron_firewall",children:[{path:/^\/network\/firewall-policy\/detail\/[^/]+$/,name:e("Policy Detail"),key:"firewallPolicyDetail",level:2,routePath:"/network/firewall-policy/detail/:id"},{path:"/network/firewall-rule/create",name:e("Create Rule"),key:"firewallRuleCreate",level:2},{path:"/network/firewall-policy/add",name:e("Add Policy"),key:"firewallPolicyCreate",level:2},{path:"/network/firewall/create",name:e("Create Firewall"),key:"firewallCreate",level:2},{path:/^\/network\/firewall\/[^/]+\/port\/[^/]+$/,name:e("Firewall Port"),key:"firewallPortDetail",level:2,routePath:"/network/firewall/:firewallId/port/:portId"},{path:/^\/network\/firewall-rule\/edit\/[^/]+$/,name:e("Rule Edit"),key:"firewallRuleEdit",level:2,routePath:"/network/firewall-rule/edit/:id"},{path:/^\/network\/firewall\/detail\/[^/]+$/,name:e("Firewall Detail"),key:"firewallDetail",level:2,routePath:"/network/firewall/detail/:id"},{path:/^\/network\/firewall-rule\/detail\/[^/]+$/,name:e("Rule Detail"),key:"firewallRuleDetail",level:2,routePath:"/network/firewall-rule/detail/:id"},{path:/^\/network\/firewall-policy\/edit\/[^/]+$/,name:e("Policy Edit"),key:"firewallPolicyEdit",level:2,routePath:"/network/firewall-policy/edit/:id"}]},{path:"/network/dns/zones",name:e("DNS Zones"),key:"dnsZones",endpoints:"designate",level:1,children:[{path:/^\/network\/dns\/zones\/detail\/.[^/]+$/,name:e("Zones Detail"),key:"dnsZonesDetail",level:2,routePath:"/network/dns/zones/detail/:id"},{path:/^\/network\/dns\/zones\/detail\/.[^/]+\/recordsets\/.[^/]+$/,name:e("Recordsets Detail"),key:"dnsRecordSetDetail",level:2,routePath:"/network/dns/zones/detail/:zoneId/recordsets/:id"}]},{path:"/network/dns/reverse",name:e("DNS Reverse"),key:"dnsReverse",endpoints:"designate",level:1,children:[{path:/^\/network\/dns\/reverse\/detail\/.[^/]+$/,name:e("Reverse DNS Detail"),key:"dnsReverseDetail",level:2,routePath:"/network/dns/reverse/detail/:id"}]}]},{path:"/share",name:e("Share File Storage"),key:"fileStorage",endpoints:"manilav2",icon:p.default.createElement(s.default,null),children:[{path:"/share/share",name:e("Shares"),key:"share",level:1,children:[{path:/^\/share\/share\/detail\/.[^/]+$/,name:e("Share Detail"),key:"shareDetail",level:2,routePath:"/share/share/detail/:id"},{path:"/share/share/create",name:e("Create Share"),key:"shareCreate",level:2}]},{path:"/share/share-network",name:e("Share Networks"),key:"shareNetwork",level:1,children:[{path:/^\/share\/share-network\/detail\/.[^/]+$/,name:e("Share Network Detail"),key:"shareNetworkDetail",level:2,routePath:"/share/share-network/detail/:id"}]},{path:"/share/share-group",name:e("Share Groups"),key:"shareGroup",level:1,children:[{path:/^\/share\/share-group\/detail\/.[^/]+$/,name:e("Share Group Detail"),key:"shareGroupDetail",level:2,routePath:"/share/share-group/detail/:id"}]}]},{path:"/heat",name:e("Orchestration"),key:"heat",endpoints:"heat",icon:p.default.createElement(o.default,null),children:[{path:"/heat/stack",name:e("Stacks"),key:"stack",level:1,children:[{path:/^\/heat\/stack\/detail\/.[^/]+\/.[^/]+$/,name:e("Stack Detail"),key:"stackDetail",level:2,routePath:"/heat/stack/detail/:id/:name"},{path:"/heat/stack/create",name:e("Create Stack"),key:"stackCreate",level:2},{path:/^\/heat\/stack\/edit\/.[^/]+\/.[^/]+$/,name:e("Update Template"),key:"stackEdit",level:2,routePath:"/heat/stack/edit/:id/:name"}]}]},{path:"/database",name:e("Database"),key:"database",endpoints:"trove",icon:p.default.createElement(i.default,null),children:[{path:"/database/instances",name:e("Database Instances"),key:"databaseInstances",level:1,children:[{path:/^\/database\/instances\/detail\/.[^/]+$/,name:e("Database Instance Detail"),key:"databaseInstanceDetail",level:2,routePath:"/database/instances/detail/:id"},{path:"/database/instances/create",name:e("Create Database Instance"),key:"databaseInstanceCreate",level:2}]},{path:"/database/backups",name:e("Backups"),key:"databaseBackups",level:1,children:[{path:/^\/database\/backup\/detail\/.[^/]+$/,name:e("Backup Detail"),key:"databaseBackupDetail",level:2,routePath:"/database/backups/detail/:id"}]},{path:"/database/configurations",name:e("Configuration Groups"),key:"configurations",level:1,children:[{path:/^\/database\/configuration\/detail\/.[^/]+$/,name:e("Configuration Detail"),key:"configurationsDetail",level:2,routePath:"/database/configurations/detail/:id"}]}]},{path:"/container",name:e("Container"),key:"container",icon:p.default.createElement(l.default,null),children:[{path:"/container-service/containers",name:e("Containers"),key:"zunContainers",endpoints:"zun",level:1,children:[{path:"/container-service/containers/create",name:e("Create Container"),key:"zunContainersCreateContainer",level:2},{path:/^\/container-service\/containers\/detail\/.[^/]+$/,name:e("Container Detail"),key:"zunContainerDetail",level:2,routePath:"/container-service/containers/detail/:id"}]},{path:"/container-service/capsules",name:e("Capsules"),key:"zunCapsules",endpoints:"zun",level:1,children:[{path:/^\/container-service\/capsules\/detail\/.[^/]+$/,name:e("Capsule Detail"),key:"zunCapsuleDetail",level:2,routePath:"/container-service/capsules/detail/:id"}]},{path:"/container-infra/clusters",name:e("Clusters"),key:"containerInfraClusters",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/clusters\/detail\/.[^/]+$/,name:e("Cluster Detail"),key:"containerInfraClusterDetail",level:2,routePath:"/container-infra/clusters/detail/:id"},{path:"/container-infra/clusters/create",name:e("Create Cluster"),key:"containerInfraCreateCluster",level:2}]},{path:"/container-infra/cluster-template",name:e("Cluster Templates"),key:"clusterTemplate",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/cluster-template\/detail\/.[^/]+$/,name:e("Cluster Template Detail"),key:"containerInfraClusterTemplateDetail",level:2,routePath:"/container-infra/cluster-template/detail/:id"},{path:"/container-infra/cluster-template/create",name:e("Create Cluster Template"),key:"containerInfraCreateClusterTemplate",level:2},{path:/^\/container-infra\/cluster-template\/update\/.[^/]+$/,name:e("Update Cluster Template"),key:"containerInfraUpdateClusterTemplate",level:2,routePath:"/container-infra/cluster-template/update/:id"}]}]}]:[]);t.default=h},2068:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1348)),i=r(a(1382)),o=r(a(0)),s=(a(564),e=>e?[{path:"/user/center",name:e("User Center"),key:"userCenter",icon:o.default.createElement(i.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/user/application-credentials",name:e("Application Credentials"),key:"applicationCredential",level:0,icon:o.default.createElement(l.default,null),children:[],hasChildren:!1}]:[]);t.default=s},2069:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.Right=void 0;var s=o(n(54)),u=o(n(77));n(1317);var d=o(n(1318));n(2070);var c=o(n(2073)),f=o(n(35));n(1431);var p=o(n(1432)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),m=(n(161),n(204)),g=n(412),v=o(n(4)),y=o(n(416)),b=o(n(1351)),x=o(n(690)),w=n(567),k=o(n(1454));function C(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(C=function(e){return e?a:t})(e)}var{Content:_}=p.default;class M extends h.Component{constructor(e){super(e),(0,f.default)(this,"checkHasTab",(()=>{var{currentRoutes:e=[]}=this.props;if(0===e.length)return!1;var{hasTab:t}=e[e.length-1];return t||!1})),(0,f.default)(this,"renderBreadcrumb",(function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(!t||0===t.length)return null;var{hasBreadcrumb:a=!0}=t[t.length-1];if(!a&&void 0!==a)return null;var n=(0,s.default)(t).call(t,((e,a)=>0===a||a===t.length-1?h.default.createElement(c.default.Item,{key:e.key,className:k.default["breadcrumb-item"]},e.name):h.default.createElement(c.default.Item,{key:e.key},h.default.createElement(m.Link,{key:e.key,to:e.path,className:(0,v.default)(k.default["breadcrumb-item"],k.default["breadcrumb-link"])},e.name))));if(0===n.length)return null;var{hasTab:r}=t[t.length-1],l=r?k.default["breadcrumb-has-tab"]:"";return h.default.createElement("div",{className:(0,u.default)(e="".concat(k.default.breadcrumb," ")).call(e,l)},h.default.createElement(c.default,null,n))})),(0,f.default)(this,"renderChildren",((e,a,n)=>{var{hasError:r}=this.state;if(r)return h.default.createElement(b.default,{title:t("data"),link:this.getRoutePath("overview"),codeError:!0});try{var l,i;return h.default.createElement("div",{className:(0,u.default)(l=(0,u.default)(i="".concat(k.default.main," ")).call(i,e," ")).call(l,a)},(0,y.default)(this.routes,n))}catch(e){var o=this.getRoutePath("overview");return h.default.createElement(b.default,{title:t("data"),link:o,codeError:!0})}})),this.routes=e.route.routes,this.state={hasError:!1}}componentDidUpdate(e){var{location:{pathname:t}={}}=e,{location:{pathname:a}={}}=this.props;t!==a&&this.updateErrorState(!1)}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,w.getPath)({key:n,params:t,query:a})}updateErrorState(e){this.setState({hasError:e})}render(){var{pathname:e}=this.props.location,{collapsed:t,currentRoutes:a,isAdminPage:n=!1}=this.props,r=this.renderBreadcrumb(a),l=null!==r,{user:i}=this.props.rootStore,o=this.checkHasTab(e),s=l?"":k.default["main-no-breadcrumb"],u=o?k.default["main-has-tab"]:"",c={sliderCollapsed:t,isAdminPage:n},f=i?this.renderChildren(s,u,c):h.default.createElement("div",{style:{margin:"44px"}},h.default.createElement(d.default,null));return h.default.createElement(p.default,{className:(0,v.default)(k.default["base-layout-right"],t?k.default["base-layout-right-collapsed"]:"")},h.default.createElement(_,{className:k.default.content},r,h.default.createElement(h.Suspense,{fallback:h.default.createElement(x.default,{className:"sl-page-loading"})},f)))}}a.Right=M;var S=(0,g.inject)("rootStore")((0,g.observer)(M));a.default=S},2077:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__nav--1IKuR {\n left: -270px;\n}\n.index__header--3eaFT,\n.index__header-collapsed--2VIjO {\n top: 0;\n left: 0;\n z-index: 1000;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n height: 40px;\n padding: 0;\n color: #fff;\n}\n.index__header-collapsed--2VIjO {\n padding-left: 40px;\n}\n.index__logo--t_KQf {\n height: 32px;\n margin: 16px 38px;\n}\n.index__logo-collapse--1dyW- {\n margin: 16px 24px;\n}\n.index__logo-image--1r9zB {\n height: 29px;\n}\n.index__logo-image-hover--r0EY5 {\n margin-left: -20px;\n}\n.index__site-layout-background--1KhiG {\n background: #fff;\n}\n.index__sider--3mcQr {\n position: relative;\n height: 100vh;\n overflow-y: auto;\n}\n.index__sider--3mcQr .ant-layout-sider-trigger {\n position: absolute;\n right: 0;\n bottom: 48px;\n width: 32px !important;\n height: 75px;\n font-size: 16px;\n line-height: 75px;\n background-color: #26262b;\n border-width: 32px;\n border-radius: 4px 0 0 4px;\n}\n.index__menu--38cbE,\n.index__menu-collapsed--3qSkQ {\n max-height: calc(100vh - 64px);\n padding-right: 14px;\n padding-left: 14px;\n overflow-x: hidden;\n overflow-y: auto;\n}\n.index__menu--38cbE::-webkit-scrollbar,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar {\n width: 12px;\n}\n.index__menu--38cbE::-webkit-scrollbar-track,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar-track {\n background-color: #f5f5f5;\n border-radius: 0;\n}\n.index__menu--38cbE::-webkit-scrollbar-thumb,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar-thumb {\n background-color: lightgray;\n border-radius: 0;\n}\n.index__menu--38cbE a,\n.index__menu-collapsed--3qSkQ a {\n color: inherit !important;\n}\n.index__menu--38cbE .ant-menu-item,\n.index__menu-collapsed--3qSkQ .ant-menu-item {\n font-size: 14px;\n}\n.index__menu--38cbE .ant-menu-submenu-title,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title {\n font-size: 14px;\n}\n.index__menu--38cbE .anticon,\n.index__menu-collapsed--3qSkQ .anticon {\n float: left;\n margin-right: 20px;\n font-size: 14px;\n line-height: 44px;\n}\n.index__menu--38cbE .ant-menu-item-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected,\n.index__menu--38cbE .ant-menu-item-active,\n.index__menu-collapsed--3qSkQ .ant-menu-item-active {\n color: #fff !important;\n border-radius: 4px;\n}\n.index__menu--38cbE .ant-menu-item-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected {\n background-color: #0068ff !important;\n}\n.index__menu--38cbE .ant-menu-item-selected::after,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected::after {\n border-right: 3px solid #0c63fa !important;\n}\n.index__menu--38cbE .ant-menu-submenu-active,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-active,\n.index__menu--38cbE .ant-menu-submenu-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-selected,\n.index__menu--38cbE .ant-menu-submenu-title:hover,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title:hover,\n.index__menu--38cbE .ant-menu-submenu:hover > .ant-menu-submenu-title > .ant-menu-submenu-arrow,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu:hover > .ant-menu-submenu-title > .ant-menu-submenu-arrow {\n color: #fff !important;\n}\n.index__menu--38cbE .ant-menu-submenu-title:active,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title:active {\n background-color: #fdd831 !important;\n}\n.index__menu--38cbE .ant-menu-sub.ant-menu-inline,\n.index__menu-collapsed--3qSkQ .ant-menu-sub.ant-menu-inline {\n background: linear-gradient(-240deg, #3f004a 50%, #210c24 150%) !important;\n}\n.index__menu-item--3jS31 {\n font-size: 14px;\n}\n.index__menu-item--3jS31 a {\n color: inherit;\n}\n.index__menu-item--3jS31 a::before {\n width: 5px;\n}\n.index__content--2bhUz {\n height: calc(100vh - 40px);\n background-color: #fafafa;\n}\n.index__sub-menu--1MaIG {\n font-size: 10px;\n}\n.index__sub-menu--1MaIG .ant-menu-sub.ant-menu-inline {\n padding-right: 5px;\n padding-left: 5px;\n}\n.index__sub-menu--1MaIG .ant-menu-item > span::before {\n position: absolute;\n top: 18px;\n bottom: 0;\n left: 30px;\n width: 5px;\n height: 5px;\n background-color: rgba(255, 255, 255, 0.65);\n border-radius: 50%;\n content: '';\n}\n.index__sub-menu--1MaIG .ant-menu-item {\n margin-top: 4px !important;\n margin-bottom: 8px !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected:hover {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-active > span::before {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-active {\n background-color: transparent !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected > span::before {\n background-color: #fff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected::after {\n border-right: 3px solid #0c63fa !important;\n}\n.index__sub-menu--1MaIG .ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected {\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n border-radius: 4px;\n}\n.index__sub-menu--1MaIG .ant-menu-dark {\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n}\n.index__breadcrumb--2Wm6M {\n height: 50px;\n padding-left: 16px;\n background-color: #fff;\n}\n.index__breadcrumb--2Wm6M .index__breadcrumb-item--qhsVt {\n font-size: 12px;\n line-height: 50px;\n}\n.index__breadcrumb--2Wm6M .index__breadcrumb-link--3_6RK {\n color: #0068ff;\n}\n.index__breadcrumb-has-tab--Nwd3S {\n height: 80px;\n}\n.index__main--jl6wy {\n height: calc(100vh - 40px - 50px);\n overflow: hidden;\n}\n.index__main-no-breadcrumb--2XmS2 {\n height: calc(100vh - 40px);\n}\n.index__main-has-tab--3wlbw {\n margin-top: -42px;\n}\n.index__trigger-wrapper--rqEk9 {\n position: absolute;\n right: -24px;\n bottom: 48px;\n width: 24px !important;\n height: 70px;\n font-size: 16px;\n line-height: 70px;\n border-width: 24px;\n border-radius: 4px 0 0 4px;\n cursor: pointer;\n}\n.index__trigger--3pSSC {\n position: absolute;\n left: 0;\n color: #fff;\n font-size: 20px;\n}\n.index__trigger--3pSSC::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: -1;\n background: rgba(0, 0, 0, 0.35);\n border-right: none;\n border-radius: 0 4px 4px 0;\n -webkit-transform: scaleX(2.2) perspective(50px) rotateY(50deg);\n transform: scaleX(2.2) perspective(50px) rotateY(50deg);\n -webkit-transform-origin: bottom;\n transform-origin: bottom;\n -webkit-transform-origin: left;\n transform-origin: left;\n content: '';\n}\n.index__trigger-icon--2oz_J {\n margin-left: 2px;\n}\n.index__base-layout--1IYXj {\n position: relative;\n width: 100%;\n height: 100vh;\n}\n.index__base-layout-sider--1TtvU {\n position: absolute;\n top: 40px;\n bottom: 0;\n left: 0;\n z-index: 1;\n width: 230px;\n padding-top: 10px;\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n border-right: none;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-collapsed--37BAU {\n width: 40px;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-collapsed--37BAU .index__menu-collapsed--3qSkQ {\n padding-right: 0;\n padding-left: 0;\n}\n.index__base-layout-sider-collapsed--37BAU .index__menu-collapsed--3qSkQ .index__menu-item-collapsed--Vp0Qm {\n padding-left: 12px !important;\n text-overflow: inherit;\n}\n.index__base-layout-right--3JjUr {\n position: absolute;\n top: 40px;\n right: 0;\n left: 230px;\n height: calc(100vh - 40px);\n}\n.index__base-layout-right-collapsed--2DIVo {\n left: 40px;\n}\n.index__base-layout-sider-hover--MC2Db {\n width: 230px;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-hover--MC2Db .index__menu-collapsed--3qSkQ {\n padding-right: 14px;\n padding-left: 14px;\n}\n.index__base-layout-sider-hover--MC2Db .index__menu-collapsed--3qSkQ .index__menu-item-collapsed--Vp0Qm {\n padding-left: 48px !important;\n text-overflow: ellipsis;\n}\n.index__notice--1C1vX {\n position: absolute;\n top: 48px;\n right: 0;\n z-index: 1100;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 384px;\n max-width: calc(100vw - 48px);\n margin: 0 24px 0 0;\n margin-bottom: 16px;\n padding: 16px 24px;\n overflow: hidden;\n color: #0068ff;\n font-size: 18px;\n line-height: 24px;\n word-wrap: break-word;\n background: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n cursor: pointer;\n}\n.index__menu-item-title--2G1wq {\n font-size: 14px;\n}\n.index__menu-item-title--2G1wq span {\n display: inline-block;\n max-width: 120px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__sub-menu-item-title--2yPhe {\n color: rgba(255, 255, 255, 0.65);\n font-size: 14px;\n}\n.index__sub-menu-item-title--2yPhe span {\n display: inline-block;\n max-width: 120px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__sub-menu-title--_bWGB {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n.index__menu-item-title-wrapper--1WLcf {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",nav:"index__nav--1IKuR",header:"index__header--3eaFT","header-collapsed":"index__header-collapsed--2VIjO",logo:"index__logo--t_KQf","logo-collapse":"index__logo-collapse--1dyW-","logo-image":"index__logo-image--1r9zB","logo-image-hover":"index__logo-image-hover--r0EY5","site-layout-background":"index__site-layout-background--1KhiG",sider:"index__sider--3mcQr",menu:"index__menu--38cbE","menu-collapsed":"index__menu-collapsed--3qSkQ","menu-item":"index__menu-item--3jS31",content:"index__content--2bhUz","sub-menu":"index__sub-menu--1MaIG",breadcrumb:"index__breadcrumb--2Wm6M","breadcrumb-item":"index__breadcrumb-item--qhsVt","breadcrumb-link":"index__breadcrumb-link--3_6RK","breadcrumb-has-tab":"index__breadcrumb-has-tab--Nwd3S",main:"index__main--jl6wy","main-no-breadcrumb":"index__main-no-breadcrumb--2XmS2","main-has-tab":"index__main-has-tab--3wlbw","trigger-wrapper":"index__trigger-wrapper--rqEk9",trigger:"index__trigger--3pSSC","trigger-icon":"index__trigger-icon--2oz_J","base-layout":"index__base-layout--1IYXj","base-layout-sider":"index__base-layout-sider--1TtvU","base-layout-sider-collapsed":"index__base-layout-sider-collapsed--37BAU","menu-item-collapsed":"index__menu-item-collapsed--Vp0Qm","base-layout-right":"index__base-layout-right--3JjUr","base-layout-right-collapsed":"index__base-layout-right-collapsed--2DIVo","base-layout-sider-hover":"index__base-layout-sider-hover--MC2Db",notice:"index__notice--1C1vX","menu-item-title":"index__menu-item-title--2G1wq","sub-menu-item-title":"index__sub-menu-item-title--2yPhe","sub-menu-title":"index__sub-menu-title--_bWGB","menu-item-title-wrapper":"index__menu-item-title-wrapper--1WLcf"}},2078:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.LayoutMenu=void 0;var o=i(a(164)),s=i(a(54)),u=i(a(29)),d=i(a(86)),c=i(a(28)),f=i(a(350)),p=i(a(591)),h=i(a(77)),m=i(a(91)),g=i(a(1573)),v=i(a(1574));a(344);var y=i(a(202)),b=i(a(35));a(1276);var x=i(a(421)),w=i(a(205)),k=i(a(134)),C=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=j(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),_=(a(161),a(564),a(412)),M=a(36),S=i(a(4)),I=a(567),N=i(a(237)),E=a(1710),T=a(1575),A=i(a(1454));function j(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(j=function(e){return e?a:t})(e)}var P={"/network":T.faSitemap,"/storage":T.faServer,"/compute":T.faMicrochip,"/random":T.faRandom},{SubMenu:D}=x.default,{getLocaleShortName:L}=N.default;class O extends C.Component{constructor(e){var t;super(e),t=this,(0,b.default)(this,"onCollapse",(e=>{this.setState({collapsed:e})})),(0,b.default)(this,"changeCollapse",(()=>{var{collapsed:e}=this.state;this.setState({collapsed:!e,hover:!1});var{onCollapseChange:t}=this.props;t&&t(!e)})),(0,b.default)(this,"onMouseEnter",(e=>{var{collapsed:t}=this.state;if(t){var a=e&&e.target||null,n=a&&a.className||"";(0,k.default)(n)&&!(0,o.default)(n).call(n,"trigger")&&this.setState({hover:!0})}})),(0,b.default)(this,"onMouseLeave",(()=>{var{hover:e}=this.state;e&&this.setState({hover:!1})})),(0,b.default)(this,"onClickMenuItem",(e=>{var{key:t}=e,a=(0,I.getPath)({key:t}),{pathname:n}=this.props;n!==a&&this.routing.push(a)})),(0,b.default)(this,"renderMenuItemIcon",(e=>{var{item:t}=e,a=P[t.path];return a?C.default.createElement(E.FontAwesomeIcon,{icon:a,className:A.default["action-icon"]}):t.icon||null})),(0,b.default)(this,"renderMenuItem",((e,t)=>{var a,{collapsed:n,hover:r}=this.state;if(n&&!r)return C.default.createElement(x.default.Item,{key:e.key,className:A.default["menu-item-collapsed"]},this.renderMenuItemIcon({item:e,collapsed:n,isSubMenu:t}));if(e.level>1)return null;var{showChildren:l=!0}=e;if(!l||!e.children||0===e.children.length||e.level)return C.default.createElement(x.default.Item,{key:e.key,className:A.default["menu-item"],onClick:this.onClickMenuItem},C.default.createElement("span",{className:A.default["menu-item-title-wrapper"]},this.renderMenuItemIcon({item:e,isSubMenu:t}),C.default.createElement("span",{className:0===e.level||1===e.level&&!l?A.default["menu-item-title"]:A.default["sub-menu-item-title"]},e.name.length>=this.maxTitleLength?C.default.createElement(y.default,{title:e.name,placement:"right"},e.name):e.name)));var i=C.default.createElement("span",{className:A.default["sub-menu-title"],style:{alignItems:"center"}},C.default.createElement("span",{style:{marginRight:"20px"}},this.renderMenuItemIcon({item:e})),C.default.createElement("span",{className:A.default["menu-item-title"]},e.name.length>=this.maxTitleLength?C.default.createElement(y.default,{title:e.name,placement:"right"},e.name):e.name)),o=(0,s.default)(a=e.children).call(a,(e=>this.renderMenuItem(e,!0)));return C.default.createElement(D,{key:e.key,title:i,className:A.default["sub-menu"]},o)})),(0,b.default)(this,"getFirstLevelKeys",(e=>{var t,a=(0,u.default)(t=this.menu).call(t,(t=>{var{children:a=[]}=t;if(!a.length)return(0,o.default)(e).call(e,t.key);var n=(0,d.default)(a).call(a,(t=>(0,o.default)(e).call(e,t.key)));return!!n||((0,c.default)(a).call(a,(t=>{var{children:a=[]}=t;(0,d.default)(a).call(a,(t=>(0,o.default)(e).call(e,t.key)))&&(n=!0)})),n)}));return(0,s.default)(a).call(a,(e=>e.key))})),(0,b.default)(this,"getSelectedKeysForMenu",(e=>{var{collapsed:t,hover:a}=this.state;return!t||a?e:this.getFirstLevelKeys(e)})),(0,b.default)(this,"getCurrentOpenKeys",(e=>this.getFirstLevelKeys(e))),(0,b.default)(this,"renderMenu",(function(){var e,a,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{collapsed:r}=t.state,{openKeys:l}=t.rootStore,i=(0,u.default)(e=(0,s.default)(a=t.menu).call(a,(e=>t.renderMenuItem(e)))).call(e,(e=>null!==e)),o=t.getSelectedKeysForMenu(n);return C.default.createElement(x.default,{theme:"dark",mode:"inline",className:r?A.default["menu-collapsed"]:A.default.menu,defaultSelectedKeys:o,selectedKeys:o,openKeys:l,onOpenChange:t.onOpenChange},i)})),(0,b.default)(this,"onOpenChange",(e=>{var{openKeys:t}=this.state,{openKeys:a}=this.rootStore,n=(0,f.default)(new p.default((0,h.default)(t).call(t,(0,M.toJS)(a)))),r=(0,d.default)(e).call(e,(e=>-1===(0,m.default)(n).call(n,e))),l=r?[r]:[];this.updateOpenKeys(l)})),(0,b.default)(this,"updateOpenKeys",(e=>{this.rootStore.updateOpenKeys(e),this.setState({openKeys:e})})),(0,b.default)(this,"getSelectedKeys",(e=>0===e.length?[]:1===e.length?[e[0].key]:e.length>=2?[e[1].key]:[])),this.state={collapsed:!1,hover:!1,openKeys:[]};var a=L();this.maxTitleLength="zh"===a?9:17}componentDidMount(){this.init()}componentDidUpdate(e){var{pathname:t}=this.props,{pathname:a}=e;a&&t!==a&&this.updateOpenKeysByRoute()}get menu(){return this.props.menu||[]}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,I.getPath)({key:n,params:t,query:a})}getOpenKeysByRoute(){var{currentRoutes:e}=this.props,t=this.getSelectedKeys(e);return this.getCurrentOpenKeys(t)}get rootStore(){return this.props.rootStore}get routing(){return this.props.rootStore.routing}updateOpenKeysByRoute(){var e=this.getOpenKeysByRoute(),{openKeys:t}=this.rootStore;(0,w.default)(e,(0,M.toJS)(t))||this.init()}init(){var e=this.getOpenKeysByRoute();this.updateOpenKeys(e)}renderTrigger(){var{collapsed:e}=this.state,t=e?C.default.createElement(v.default,{className:A.default["trigger-icon"]}):C.default.createElement(g.default,{className:A.default["trigger-icon"]});return C.default.createElement("div",{className:A.default["trigger-wrapper"]},C.default.createElement("div",{className:A.default.trigger,onClick:this.changeCollapse},t))}render(){var{currentRoutes:e}=this.props,t=this.getSelectedKeys(e),{hover:a,collapsed:n}=this.state,r=this.renderTrigger();return C.default.createElement("div",{className:(0,S.default)(A.default["base-layout-sider"],n?A.default["base-layout-sider-collapsed"]:"",a?A.default["base-layout-sider-hover"]:""),onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},this.renderMenu(t),r)}}t.LayoutMenu=O;var R=(0,_.inject)("rootStore")((0,_.observer)(O));t.default=R}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{1239:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(416)),i=r(a(1782)),o=e=>(0,l.default)(i.default,e);t.default=o},1241:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),n(t,"FormAction",{enumerable:!0,get:function(){return l.default}}),n(t,"StepAction",{enumerable:!0,get:function(){return i.default}}),n(t,"ConfirmAction",{enumerable:!0,get:function(){return o.default}}),n(t,"ModalAction",{enumerable:!0,get:function(){return s.default}});var l=r(a(1822)),i=r(a(2023)),o=r(a(2049)),s=r(a(1380))},1250:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(63)),h=f(n(29)),m=f(n(54)),g=f(n(28)),v=f(n(203)),y=f(n(1252)),b=f(n(91)),x=f(n(86)),w=f(n(345));n(347);var k=f(n(348));n(1271);var C=f(n(1272));n(1261);var _=f(n(1262));n(1246);var M=f(n(1247));n(1244);var S=f(n(1245)),I=f(n(343)),N=f(n(58));n(231);var E=f(n(341)),T=f(n(606)),A=f(n(35)),j=f(n(177)),P=f(n(102)),D=f(n(570)),L=f(n(352)),O=f(n(0)),R=f(n(1270)),z=(n(161),f(n(4))),U=(n(564),n(163)),F=n(349),B=f(n(1833)),V=n(662),K=n(567),Q=f(n(1563)),Y=f(n(1566)),G=f(n(2021));function H(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function W(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),a=this,(0,A.default)(this,"updateContext",(e=>{var{updateContext:t}=this.props;t&&t(e)})),(0,A.default)(this,"unescape",(e=>(0,U.unescapeHtml)(e))),(0,A.default)(this,"getFormInstance",(()=>this.formRef.current)),(0,A.default)(this,"onSubmit",(e=>p.default.resolve())),(0,A.default)(this,"updateSubmitting",(e=>{this.setState({isSubmitting:e||!1})})),(0,A.default)(this,"onOk",((e,n,r)=>{if(this.values=e,!this.codeError){if(this.updateSubmitting(!0),!this.onSubmit)return r(!0,!1);var l=this.getSubmitData(e);return this.onSubmit(l,n).then((e=>{if(this.updateSubmitting(!1),!this.isModal&&this.routing.push(this.listUrl),this.response=e,r&&(0,L.default)(r)&&r(!0,!1),e instanceof Array){var a,n=this.instanceName?this.instanceName.split(", "):null,l=(0,h.default)(a=(0,m.default)(e).call(e,((e,t)=>"rejected"===e.status?{reason:e.reason,name:n?n[t]:""}:null))).call(a,(e=>!!e));0!==l.length?(0,g.default)(l).call(l,(e=>{var{response:{data:a}={}}=e.reason;this.showNotice&&R.default.errorWithDetail(a,t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:e.name}))})):this.showNotice&&R.default.success(this.successText)}else this.showNotice&&R.default.success(this.successText)}),(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};a.updateSubmitting(!1),a.responseError=e;var{response:{data:t}={}}=e;a.showNotice&&R.default.errorWithDetail(t,a.errorText),r&&(0,L.default)(r)&&r(!1,!0)}))}})),(0,A.default)(this,"onCancel",(()=>{if(this.isSubmitting&&this.cancel){this.cancel();var e="download"===this.progressType?t("Cancel download successfully."):t("Cancel upload successfully.");R.default.success(e)}})),(0,A.default)(this,"getChangedFieldsValue",((e,t)=>{var a=e[t];return(0,P.default)(a)&&a.value?a.value:(0,P.default)(a)&&a.selectedRows?a.selectedRows[0]:a})),(0,A.default)(this,"onValuesChange",((e,t)=>{})),(0,A.default)(this,"onValuesChangeForm",((e,t)=>{var a,n={};this.currentFormValue=t,(0,g.default)(a=this.nameForStateUpdate).call(a,(t=>{if((0,D.default)(e,t)){var a=this.getChangedFieldsValue(e,t);n[t]=a}})),(0,j.default)(n)||this.setState(W({},n)),this.onValuesChange(e,t)})),(0,A.default)(this,"checkFormInput",((e,t)=>{this.formRef.current&&this.formRef.current.validateFields().then((t=>{e&&e(t),this.updateContext(t)}),(e=>{var{values:a,errorFields:n}=e;n&&n.length&&t&&t(a,n)}))})),(0,A.default)(this,"onClickSubmit",((e,t,a)=>{this.codeError||this.checkFormInput((n=>{t&&t(n),this.onOk(n,a,e)}))})),(0,A.default)(this,"onClickCancel",(()=>{this.onCancel(),this.listUrl&&this.routing.push(this.listUrl)})),(0,A.default)(this,"updateDefaultValue",(()=>{this.resetFormValue(),this.updateContext(this.defaultValue)})),(0,A.default)(this,"resetFormValue",(e=>{this.formRef.current&&this.formRef.current.resetFields&&(e?this.formRef.current.resetFields(e):this.formRef.current.resetFields())})),(0,A.default)(this,"updateFormValue",((e,t)=>{this.formRef.current&&this.formRef.current.setFieldsValue({[e]:t})})),(0,A.default)(this,"onUploadProgress",(e=>{var{loaded:t,total:a}=e,n=Math.floor(t/a*100);this.setState({percent:n})})),(0,A.default)(this,"getUploadRequestConf",(()=>({onUploadProgress:this.onUploadProgress,cancelToken:this.cancelToken}))),(0,A.default)(this,"onDownloadProgress",(e=>{var{loaded:t,total:a}=e,n=Math.floor(t/a*100);this.setState({percent:n})})),(0,A.default)(this,"getDownloadRequestConf",(()=>({onDownloadProgress:this.onDownloadProgress,cancelToken:this.cancelToken}))),this.options=n,this.state={defaultValue:{},formData:{},isSubmitting:!1,percent:""},this.values={},this.response=null,this.responseError=null,this.formRef=O.default.createRef(),this.tipRef=O.default.createRef(),this.codeError=!1,this.currentFormValue={},this.cancel=null,this.cancelToken=this.hasRequestCancelCallback?new V.CancelToken((e=>{this.cancel=e})):null,this.init()}componentDidMount(){try{this.updateState()}catch(e){}}componentWillUnmount(){this.unsubscribe&&this.unsubscribe(),this.disposer&&this.disposer(),this.unMountActions&&this.unMountActions()}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get disableSubmit(){return!1}get name(){return""}get title(){return""}get className(){return""}get prefix(){return this.props.match.url}get routing(){return this.props.rootStore.routing}get params(){return this.props.match.params||{}}get location(){return this.props.location||{}}get locationParams(){var e;return(0,F.parse)((0,v.default)(e=this.location.search).call(e,1))}get listUrl(){return""}get currentUser(){var{user:e}=this.props.rootStore||{};return e||{}}get isAdminPage(){var{pathname:e=""}=this.props.location||{};return(0,U.isAdminPage)(e)}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get currentProjectId(){return this.props.rootStore.projectId}get currentProjectName(){return this.props.rootStore.projectName}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,K.getPath)({key:n,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=this.getRouteName(e);return(0,K.getLinkRender)({key:r,params:a,query:n,value:t})}get isStep(){return!1}get isModal(){return!1}get hasFooter(){return!(this.isStep||this.isModal)}get formStyle(){return{}}get footerStyle(){return{}}get labelCol(){return{xs:{span:5},sm:{span:3}}}get wrapperCol(){return{xs:{span:10},sm:{span:8}}}get defaultValue(){return null}get formDefaultValue(){var{context:e={}}=this.props,{defaultValue:t}=this;return W(W({},t),e)}get okBtnText(){return t("Confirm")}get instanceName(){var{name:e}=(0,y.default)(this)||{};return e}get successText(){return this.instanceName?(0,U.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,U.firstUpperCase)(t("{action} successfully.",{action:this.name.toLowerCase()}))}get errorText(){return this.instanceName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get isSubmitting(){var{isSubmitting:e=!1}=this.state;return e}get formItems(){return[]}get validateMessages(){return[]}get tips(){return""}get showNotice(){return!0}get nameForStateUpdate(){var e,t,a=["radio","more"];return(0,m.default)(e=(0,h.default)(t=this.formItems).call(t,(e=>(0,b.default)(a).call(a,e.type)>=0))).call(e,(e=>e.name))}get hasRequestCancelCallback(){return!1}get showQuota(){return!1}get quotaInfo(){return null}get progressType(){return"upload"}getRightExtraSpan(){return{left:18,right:6}}getSubmitData(e){return W({},e)}checkContextValue(){var{context:e}=this.props,t=this.nameForStateUpdate;return!(0,j.default)(e)&&!!(0,x.default)(t).call(t,(t=>(0,D.default)(e,t)))}updateState(){var{context:e}=this.props,t=this.nameForStateUpdate;if(0!==t.length){var a={};this.checkContextValue()?(0,g.default)(t).call(t,(t=>{a[t]=this.getChangedFieldsValue(e,t)})):(0,g.default)(t).call(t,(e=>{a[e]=this.getChangedFieldsValue(this.defaultValue,e)})),this.setState(W({},a))}}init(){this.store={}}renderTips(){return this.tips?O.default.createElement("div",{className:G.default.tips,ref:this.tipRef,id:"tips"},O.default.createElement(T.default,{className:G.default["tips-icon"]}),this.tips):null}renderFooterLeft(){return null}renderFooter(){if(!this.hasFooter)return null;var e={};if(this.tips){var a=((document.getElementById("tips")||{}).clientHeight||35)+16;e.bottom=a}return O.default.createElement("div",{className:G.default.footer,style:W(W({},e),this.footerStyle)},O.default.createElement("div",{className:G.default["footer-left"]},this.renderFooterLeft()),O.default.createElement("div",{className:(0,z.default)(G.default.btns,"footer-btns")},O.default.createElement(E.default,{className:G.default.cancel,onClick:this.onClickCancel,loading:this.isSubmitting},t("Cancel")),O.default.createElement(E.default,{disabled:this.disableSubmit,type:"primary",className:G.default.submit,onClick:this.onClickSubmit,loading:this.isSubmitting},this.okBtnText)))}renderFormItems(){try{var e;return(0,m.default)(e=this.formItems).call(e,((e,t)=>{var{name:a,display:n=!0}=e,r=(0,N.default)(e,["name","display"]);return n?(this.codeError=!1,O.default.createElement(S.default,{span:24/(e.colNum||1),key:"form-item-col-".concat(t),id:"form-item-col-".concat(a)},O.default.createElement(B.default,(0,I.default)({},r,{name:a,key:"form-item-".concat(t),formref:this.formRef})))):""}))}catch(e){var a={type:"label",label:t("Error"),content:"Can Not Submit"===e.message?this.errorText:t("Unable to render form")};return this.codeError=!0,O.default.createElement(S.default,{span:24/(a.colNum||1),key:"form-item-col-".concat(0),id:"form-item-col-".concat("error")},O.default.createElement(B.default,(0,I.default)({},a,{key:"form-item-".concat(0),formref:this.formRef})))}}renderForms(){return O.default.createElement(_.default,{ref:this.formRef,labelCol:this.labelCol,colon:!1,labelAlign:"left",wrapperCol:this.wrapperCol,name:this.name,initialValues:this.formDefaultValue,onValuesChange:this.onValuesChangeForm,scrollToFirstError:!0},O.default.createElement("input",{type:"password",hidden:!0,autoComplete:"new-password"}),O.default.createElement(M.default,null,this.renderFormItems()))}renderAbortButton(){return!this.isSubmitting||this.isModal?null:O.default.createElement(E.default,{className:G.default.cancel,onClick:this.onClickCancel},t("Abort Upload"))}renderSubmittingTip(){if(this.hasRequestCancelCallback){var{percent:e}=this.state,a="download"===this.progressType?t("Download progress"):t("Upload progress");return O.default.createElement("div",{className:G.default["submit-tip"]},a,O.default.createElement("div",{className:G.default["progress-wrapper"]},O.default.createElement(C.default,{percent:e,size:"small"})),this.renderAbortButton())}}renderQuota(){if(!this.showQuota)return null;var e={};return this.quotaInfo&&this.quotaInfo.length?e={loading:!1,quotas:this.quotaInfo}:e.loading=!0,O.default.createElement(Y.default,e)}renderRightTopExtra(){if(this.isModal)return null;var e=this.renderQuota();if(!e)return null;var t=(0,w.default)(this.quotaInfo);return O.default.createElement("div",{className:G.default["right-top-extra-wrapper"]},O.default.createElement(Q.default,{content:e,checkValue:t}))}renderModalRightExtra(){if(!this.isModal)return null;var e=this.renderQuota();return e?O.default.createElement("div",{className:G.default["modal-right-extra-wrapper"]},e):null}render(){var e=this.listUrl||this.isStep||this.isModal&&this.tips?G.default["wrapper-page-padding"]:"",t=this.renderTips(),a={};if((this.listUrl||this.isStep)&&this.tips&&this.tipRef.current)if(this.isStep){var n=this.tipRef.current.clientHeight+219;a.height="calc(100vh - ".concat(n,"px)")}else{var r=this.tipRef.current.clientHeight+66;a.height="calc(100% - ".concat(r,"px)")}var l=O.default.createElement(k.default,{spinning:this.isSubmitting,tip:this.renderSubmittingTip()},this.renderRightTopExtra(),O.default.createElement("div",{className:(0,z.default)(G.default.form,"sl-form"),style:W(W({},a),this.formStyle)},this.renderForms()),this.renderFooter()),i=!this.isModal||this.isModal&&!this.showQuota,{left:o,right:s}=this.getRightExtraSpan(),u=this.isModal&&!i?O.default.createElement(M.default,{justify:"space-between",align:"top"},O.default.createElement(S.default,{span:o},l),O.default.createElement(S.default,{span:s},this.renderModalRightExtra())):null;return O.default.createElement("div",{className:(0,z.default)(G.default.wrapper,e,this.className)},t,i&&l,u)}}a.default=q},1251:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.checkSystemAdmin=t.onlyAdminCanChangePolicy=t.onlyAdminCanReadPolicy=t.allCanChangePolicy=t.allCanReadPolicy=t.default=t.systemRoleIsReader=t.checkPolicyRule=t.changeToActualPolicy=t.convertPolicyMap=t.policyMap=void 0;var l=r(a(28)),i=r(a(1289)),o=r(a(77)),s=r(a(29)),u=r(a(32)),d=r(a(164)),c=r(a(86)),f=r(a(1277)),p=r(a(232)),h=r(a(570)),m=r(a(134)),g=r(a(352)),v=r(a(102)),y=r(a(92)),b=r(a(133)),x={nova:["os_compute_api"],ironic:["baremetal:"],cinder:["volume:","volume_extension","backup:get","backup:restore","scheduler_extension"],glance:["get_image","add_image","delete_image","modify_image","get_members","add_member","delete_member","metadef"],neutron:["get_network","create_network","update_network","delete_network","get_agent","delete_agent","update_agent","get_dhcp-agents","get_l3-agents","create_subnet","get_subnet","update_subnet","delete_subnet","create_port","get_port","update_port","delete_port","router","policy_bandwidth_limit_rule","policy_dscp_marking_rule","security_group","floatingip","vpnservice","ipsec_site_connection","rbac_policy"],octavia:["os_load-balancer_api"],heat:["stacks:","resource:index"],magnum:["cluster:","clustertemplate:"],barbican:["secret:get","secret:decrypt","secret:delete","containers:post"],zun:["capsule:","container:","host:get"],panko:["segregation","telemetry:events:index"],manila:["share:","share_","scheduler_stats:pools"],trove:["instance:create","instance:delete","instance:update","instance:backups","instance:restart","instance:resize","instance:extension","instance:guest_log_list","configuration:","backup:index","backup:show"]};t.policyMap=x;var w=e=>{var t,a={};return(0,l.default)(t=(0,i.default)(e)).call(t,(e=>{var[t,n]=e;(0,l.default)(n).call(n,(e=>{if(a[e]);a[e]=t}))})),a};t.convertPolicyMap=w;var k=(e,t)=>{var a,n,r,i=w(t);if(i[e])return(0,o.default)(r="".concat(i[e],":")).call(r,e);var c=(0,s.default)(a=(0,u.default)(i)).call(a,(t=>(0,d.default)(e).call(e,t)));c.length>1&&(0,l.default)(c).call(c,(e=>{}));var f=c.length&&i[c[0]];return f?(0,o.default)(n="".concat(f,":")).call(n,e):e};t.changeToActualPolicy=k;var C=(e,t,a)=>{var n;if(!e)return!0;var r=a?e:k(e,x),l=(0,c.default)(n=b.default.policies).call(n,(e=>e.rule===r));return!l||l.allowed};t.checkPolicyRule=C;var _=()=>{var{roles:e=[]}=b.default.user||{},t=["admin"],a=(0,p.default)(e).call(e,(e=>"reader"===e.name));if(!a)return!1;var n=(0,p.default)(e).call(e,(e=>(0,d.default)(t).call(t,e.name)));return a&&!n};t.systemRoleIsReader=_;var M=e=>{var{policy:t,aliasPolicy:a,item:n,actionName:r,isAdminPage:l,enableSystemReader:i}=e;if(0===b.default.policies.length)return!1;if(l&&!i&&_())return!1;if(l&&!i&&_())return!1;if(!t&&!a)return!0;var o=a||t,s=(0,g.default)(o)?o(n):o,u=[],d=!0;return(0,y.default)(s)?u=s:(0,v.default)(s)?(u=s.rules,(0,h.default)(s,"every")&&(d=(0,f.default)(s))):(0,m.default)(s)&&(u=[s]),!u||((e,t,a,n)=>0===e.length||(t?(0,f.default)(e).call(e,(e=>C(e,0,n))):(0,p.default)(e).call(e,(e=>C(e,0,n)))))(u,d,0,!!a)};t.default=M;t.allCanReadPolicy={rules:["admin","reader","member"],every:!1};t.allCanChangePolicy={rules:["admin","member"],every:!1};t.onlyAdminCanReadPolicy={rules:["admin","reader"],every:!1};t.onlyAdminCanChangePolicy={rules:["admin"],every:!1};t.checkSystemAdmin=()=>b.default.hasAdminRole},1302:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.ItemActionButtons=void 0;var h=p(n(1277)),m=p(n(54)),g=p(n(77)),v=p(n(28)),y=p(n(49)),b=p(n(35));n(586);var x=p(n(424));n(231);var w=p(n(341)),k=p(n(611));n(1300);var C=p(n(1301)),_=p(n(343));n(1276);var M=p(n(421)),S=p(n(205)),I=p(n(92)),N=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=D(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),E=n(412),T=(n(161),n(564),p(n(4))),A=n(1435),j=p(n(1436)),P=p(n(1818));function D(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(D=function(e){return e?a:t})(e)}function L(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function O(e){for(var t=1;t!!e)):a}function F(e){var{firstAction:a=null,moreActions:n=[],alloweds:r=[],item:l,onFinishAction:i,routing:o,containerProps:s,firstActionClassName:u,onClickAction:d,onCancelAction:c,isWide:f}=e;if(0===r.length)return null;if(!a&&0===n.length)return null;var p=null,h=null,v=null;if(a){var y=U(r,0),b=z(a.action);p=N.default.createElement(j.default,(0,_.default)({},b,{buttonType:"link",routing:o,needHide:!1,isAllowed:y,item:l,onFinishAction:i,onCancelAction:c,buttonClassName:(0,T.default)(P.default["first-action"],u),containerProps:s,maxLength:8,onClickAction:d,isFirstAction:!0}))}var S=0,I=0,E=null;if(n.length>0){var A=f||n.length>1?P.default["more-action-btn"]:"",D=(0,m.default)(n).call(n,((e,t)=>{var a;if(!e.actions){var n=U(r,e.allowedIndex),u=e.key||"key-more-".concat(t),f=z(e.action);return n?(S+=1,I+=1,E=N.default.createElement(j.default,(0,_.default)({},f,{isAllowed:n,buttonType:"link",item:l,onFinishAction:i,onCancelAction:c,routing:o,style:{padding:0},containerProps:s,onClickAction:d,buttonClassName:A})),N.default.createElement(M.default.Item,{key:u},E)):null}var p=0,h=(0,m.default)(a=e.actions).call(a,((e,a)=>{var n,u=U(r,e.allowedIndex),f=e.key||(0,g.default)(n="key-more-".concat(t,"-")).call(n,a);u&&(p+=1,S+=1,I+=1);var h=z(e.action);return N.default.createElement(M.default.Item,{key:f},N.default.createElement(j.default,(0,_.default)({},h,{isAllowed:u,buttonType:"link",item:l,onFinishAction:i,onCancelAction:c,routing:o,containerProps:s,onClickAction:d,buttonClassName:A})))})),v="sub-menu-".concat(t);return N.default.createElement(R,{popupClassName:P.default["action-sub-menu"],title:e.title,disabled:0===p,key:v},h)})),L=N.default.createElement(M.default,null,D);if(a&&n.length>0&&S>0&&(h=N.default.createElement(C.default,{type:"vertical"})),1===S&&1===I&&E){var O=f?"":P.default["single-more-action"];v=N.default.createElement("span",{className:O},E)}else S>0&&(v=N.default.createElement(x.default,{overlay:L},N.default.createElement(w.default,{type:"link",className:P.default["more-action"]},t("More")," ",N.default.createElement(k.default,null))))}return N.default.createElement("div",{className:P.default["action-buttons"]},p,h,v)}class B extends N.Component{constructor(e){super(e),this.actionList=[],this.firstAction=null,this.moreActions=[],this.state={results:[]}}componentDidMount(){var e=this;return(0,y.default)((function*(){var{item:t,containerProps:a}=e.props;e.updateResult(t,a)}))()}shouldComponentUpdate(e,t){var{item:a,containerProps:n}=this.props,{results:r}=this.state;return(0,S.default)(e.item,a)?!(0,S.default)(r,t.results):(this.updateResult(e.item,n),!0)}static getDerivedStateFromProps(e,t){if(!(0,S.default)(e.item,t.item)){var{item:a}=e;return{item:a}}return null}get routing(){return this.props.rootStore.routing}updateResult(e,t){var a=this;return(0,y.default)((function*(){var{actions:n,isAdminPage:r}=a.props,{actionList:l,firstAction:i,moreActions:o}=function(e,t,a){var{firstAction:n=null,moreActions:r=[]}=e,l=[],i=n?{action:(0,A.getAction)(n,t,a),allowedIndex:0}:null,o=[];return n&&l.push(i),(0,v.default)(r).call(r,(e=>{if(e.actions){var n,r=[];(0,v.default)(n=e.actions).call(n,(e=>{var n={action:(0,A.getAction)(e,t,a),allowedIndex:l.length};r.push(n),l.push(n)})),o.push(O(O({},e),{},{actions:r}))}else if(e.action){var i={action:(0,A.getAction)(e.action,t,a),allowedIndex:l.length};o.push(i),l.push(i)}})),{actionList:l,firstAction:i,moreActions:o}}(n,e,t);a.actionList=l,a.firstAction=i,a.moreActions=o;var s=yield(0,A.getAllowedResults)({actions:a.actionList,data:e,key:"action",containerProps:t,isAdminPage:r});a.setState({results:s})}))()}render(){var{item:e,onFinishAction:t,containerProps:a,firstActionClassName:n,onClickAction:r,onCancelAction:l,isWide:i}=this.props,{results:o}=this.state;return N.default.createElement(F,{onFinishAction:t,onCancelAction:l,firstAction:this.firstAction,moreActions:this.moreActions,alloweds:o,item:e,routing:this.routing,containerProps:a,firstActionClassName:n,onClickAction:r,isWide:i})}}a.ItemActionButtons=B;var V=(0,E.inject)("rootStore")(B);a.default=V},1346:function(e,t,a){var n=a(1820);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1351:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(0)),o=l(n(2044)),s=n(163),u=n(204),d=l(n(2045));class c extends i.default.Component{render(){var{title:e,link:a,codeError:n,endpointError:r,goList:l,isAction:c}=this.props,f="";f=n?"Error":r?t("Not Open"):t("Resource Not Found");var p="",h="";p=c?t("Unable to {title}, please go back to ",{title:(0,s.firstUpperCase)(e)}):l?t("Unable to get {title}, please go back to ",{title:(0,s.firstUpperCase)(e)}):t("Unable to get {title}, please go to ",{title:(0,s.firstUpperCase)(e)}),h=l?i.default.createElement(u.Link,{to:a},t("list page")):i.default.createElement(u.Link,{to:a},t("Home page"));var m=i.default.createElement("p",null,p,h);return i.default.createElement("div",{className:d.default.wrapper},i.default.createElement("img",{className:d.default.image,src:o.default,alt:""}),i.default.createElement("div",{className:d.default.text},i.default.createElement("div",{className:"h1"},f),m))}}a.default=c},1376:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.renderClearButton=void 0,n(593);var p=f(n(427)),h=f(n(1313));n(1311);var m=f(n(1312)),g=f(n(49)),v=f(n(35)),y=f(n(54)),b=f(n(86)),x=f(n(32)),w=f(n(91)),k=f(n(29)),C=f(n(350)),_=f(n(591)),M=f(n(28)),S=f(n(596)),I=f(n(164));n(344);var N=f(n(202));n(231);var E,T,A,j=f(n(341)),P=f(n(1515)),D=f(n(177)),L=f(n(205)),O=f(n(134)),R=f(n(119)),z=f(n(0)),U=(n(161),n(564),n(412)),F=f(n(16)),B=f(n(1516)),V=f(n(1517)),K=f(n(1518)),Q=f(n(4)),Y=f(n(1870));function G(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function H(e){for(var t=1;te.key||e.id,q=(e,t,a)=>{var{selectedRowKeys:n=[],selectedRows:r=[]}=e;if(!n||0===n.length)return[];var l=(0,y.default)(r).call(r,(e=>W(e)));return(0,L.default)(n,l)?r:(0,y.default)(n).call(n,(e=>{var n,l=a?r:t;return(0,b.default)(n=l||[]).call(n,(t=>W(t)===e))||{key:e,id:e,name:e}}))},$=function(e,a){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{showSelected:r=!0}=n;return r&&a&&a.length?z.default.createElement(N.default,{title:t("Clear selected")},z.default.createElement(j.default,{size:"small",onClick:e.clearSelected},z.default.createElement(P.default,null))):null};a.renderClearButton=$;var Z=(0,U.observer)((A=T=class extends z.default.Component{constructor(e){var t;super(e),t=this,(0,v.default)(this,"getDataParams",(()=>{var{filters:e,current:t,pageSize:a}=this.state;return H({page:t,limit:a},e)})),(0,v.default)(this,"handleFooterPaginationChange",((e,t)=>{var{filters:a}=this.state;this.getBackendData(H({limit:t,page:e,current:e,sortKey:this.sortKey,sortOrder:this.sortOrder},a))})),(0,v.default)(this,"getBackendData",function(){var e=(0,g.default)((function*(e){var{extraParams:a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l}=t.props,i=H(H({},e),a);n&&(i.sortKey=i.sortKey||t.sortKey||r||"",i.sortOrder=i.sortOrder||t.sortOrder||l||"");var o=yield t.fetchDataByPage(i),{backendPageStore:s,backendPageDataKey:u}=t.props,{total:d}=s[u]||{};t.setState({data:o,total:d,current:e.page,pageSize:e.limit},(()=>{t.initTabChange()}))}));return function(t){return e.apply(this,arguments)}}()),(0,v.default)(this,"fetchDataByPage",function(){var e=(0,g.default)((function*(e){var{backendPageStore:a,backendPageFunc:n,backendPageDataKey:r}=t.props,l=yield a[n](e);return a[r].silent=!1,l}));return function(t){return e.apply(this,arguments)}}()),(0,v.default)(this,"filterData",((e,t)=>{var a;return!(0,b.default)(a=(0,x.default)(t)).call(a,(a=>{var n,r=(0,R.default)(e,a),l=t[a];return(0,O.default)(r)&&(0,O.default)(l)?(0,w.default)(n=r.toLowerCase()).call(n,l.toLowerCase())<0:(0,L.default)(r,l)}))})),(0,v.default)(this,"getDataSource",(()=>{try{var{backendPageStore:e,rowKey:t}=this.props;if(e)return this.getDataFromStore();var{data:a}=this.state;return(0,y.default)(a).call(a,(e=>e.key?e:H(H({},e),{},{key:(0,R.default)(e,t)})))}catch(e){return[]}})),(0,v.default)(this,"getDataFromStore",(()=>{var{backendPageStore:e,backendPageDataKey:t,rowKey:a}=this.props,{data:n=[]}=e[t]||{};return(0,y.default)(n).call(n,(e=>e.key?e:H(H({},e),{},{key:(0,R.default)(e,a)})))})),(0,v.default)(this,"getRealSelectedKeys",(e=>{var t,{isMulti:a,backendPageStore:n}=this.props;if(!n||!a)return e;var{selectedRowKeys:r,data:l}=this.state,i=(0,y.default)(l).call(l,(e=>W(e))),o=(0,k.default)(e).call(e,(e=>(0,w.default)(i).call(i,e)>=0)),s=(0,k.default)(r).call(r,(t=>(0,w.default)(i).call(i,t)>=0&&(0,w.default)(e).call(e,t)<0));return(0,k.default)(t=(0,C.default)(new _.default([...r,...o]))).call(t,(e=>(0,w.default)(s).call(s,e)<0))})),(0,v.default)(this,"handleSelectRow",(e=>{var t=this.getRealSelectedKeys(e),a=this.getSelectedRows(t);this.setState({selectedRowKeys:t,selectedRows:a})})),(0,v.default)(this,"handleFilterInput",(e=>{this.setState({tags:e});var{backendPageStore:t}=this.props,a={};if((0,M.default)(e).call(e,(e=>{a[(0,k.default)(e).name]=e.value})),t){var{pageSize:n}=this.state;this.getBackendData(H({limit:n,page:1},a)),this.setState({filters:a,current:1})}else this.setState({filters:a,current:1})})),(0,v.default)(this,"updateTab",(e=>{this.setState({tab:e},(()=>{this.onChange({tab:e})}))})),(0,v.default)(this,"onChange",(function(){var{tab:e,selectedRowKeys:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{onChange:n}=t.props;if(n){var{tab:r,selectedRowKeys:l,selectedRows:i=[]}=t.state,o=(0,D.default)(i)?t.getSelectedRows(a):i;n({tab:e||r,selectedRows:o,selectedRowKeys:a||l,data:t.getDataSource()})}})),(0,v.default)(this,"getSelectedRowsAll",(e=>{var{data:t=[],selectedRowKeys:a}=this.state;return e?(0,k.default)(t).call(t,(t=>(0,w.default)(e).call(e,W(t))>=0)):(0,k.default)(t).call(t,(e=>(0,w.default)(a).call(a,W(e))>=0))})),(0,v.default)(this,"getSelectedRowsBackend",(e=>{var{isMulti:t}=this.props,{data:a=[],selectedRowKeys:n,selectedRows:r}=this.state;if(t)return this.getSelectedRowsBackendMulti(e);var l=e||n,i=(0,k.default)(a).call(a,(e=>(0,w.default)(l).call(l,W(e))>=0));if(i.length===l.length)return i;var o=(0,k.default)(r).call(r,(e=>(0,w.default)(l).call(l,W(e))>=0));return o.length===l.length?o:(0,y.default)(l).call(l,(e=>({key:e,id:e,name:e})))})),(0,v.default)(this,"getSelectedRowsBackendMulti",(e=>{var{data:t=[],selectedRowKeys:a=[],selectedRows:n=[]}=this.state;if(!e)return n;var r=(0,k.default)(e).call(e,(e=>(0,w.default)(a).call(a,e)<0)),l=(0,k.default)(a).call(a,(t=>(0,w.default)(e).call(e,t)<0));return[...(0,k.default)(n).call(n,(e=>(0,w.default)(l).call(l,W(e))<0)),...(0,k.default)(t).call(t,(e=>(0,w.default)(r).call(r,W(e))>=0))]})),(0,v.default)(this,"getSelectedRows",(e=>{var{backendPageStore:t}=this.props;return t?this.getSelectedRowsBackend(e):this.getSelectedRowsAll(e)})),(0,v.default)(this,"getSortKey",(e=>{var{field:t,column:a}=e;return t&&a?a.sortKey||a.dataIndex:null})),(0,v.default)(this,"handleChange",((e,t,a,n)=>{var{current:r,pageSize:l}=e,{backendPageStore:i,isSortByBack:o}=this.props,s=H({limit:l||this.state.pageSize,page:r||this.state,current:r,sortKey:this.getSortKey(a),sortOrder:a.order},t);if(i){var{action:u}=n;"sort"===u?(this.sortKey=this.getSortKey(a),this.sortOrder=a.order,o?(this.setState({current:1}),s.current=1,s.page=1,this.getBackendData(s)):(r=this.state.current,l=this.state.pageSize,this.setState({current:r,pageSize:l}))):this.getBackendData(s)}else this.setState({current:r,pageSize:l})})),(0,v.default)(this,"onTabChange",(e=>{var{onTabChange:t}=this.props;t&&(e.target?(this.updateTab(e.target.value),t(e.target.value)):(t(e),this.updateTab(e)))})),(0,v.default)(this,"onTagClose",(e=>{var{selectedRowKeys:t}=this.state,a=(0,k.default)(t).call(t,(t=>t!==W(e))),n=this.getSelectedRows(a);this.setState({selectedRowKeys:a,selectedRows:n})})),(0,v.default)(this,"clearSelected",(()=>{this.setState({selectedRowKeys:[],selectedRows:[]})})),(0,v.default)(this,"handleRefresh",(()=>{var{backendPageStore:e,refreshFunc:t}=this.props,{tags:a=[]}=this.state;t?t():e&&this.handleFilterInput(a)})),(0,v.default)(this,"renderTableFooter",(e=>{var t,{page:a,current:n,pageSize:r,total:l}=this.state,i=this.getLoading(),o=(0,S.default)(t=(0,C.default)(new _.default([this.props.pageSize,10,20,50,100]))).call(t,((e,t)=>e-t));return z.default.createElement(K.default,{current:a||n||1,pageSize:r,size:"small",onChange:this.handleFooterPaginationChange,currentDataSize:e.length,total:l,isLoading:i,defaultPageSize:this.props.pageSize,pageSizeOptions:o,className:Y.default["pagination-footer"]})})),(0,v.default)(this,"renderTag",(e=>z.default.createElement(m.default,{key:e.key||(0,R.default)(e,this.props.rowKey),closable:!0,onClose:()=>this.onTagClose(e)},e[this.props.tagKey]||e[this.props.secondTagKey]))),(0,v.default)(this,"renderClearButton",(e=>$(this,e,this.props)));var{data:a=[],pageSize:n,initValue:r={}}=e,{selectedRowKeys:l,selectedRows:i}=this.getInitValue(e);this.state={data:a,filters:null,current:1,pageSize:n,total:this.getTotal(e),selectedRowKeys:l,selectedRows:i,tab:"",initValue:r},this.sortKey=e.defaultSortKey,this.sortOrder=e.defaultSortOrder}componentDidMount(){this.getData()}componentDidUpdate(e,t){(0,L.default)(e.backendPageStore,this.props.backendPageStore)||this.getData();var{selectedRowKeys:a}=this.state,{selectedRowKeys:n}=t;(0,L.default)(a,n)||this.onChange({selectedRowKeys:a})}getData(){var{backendPageStore:e,pageSize:t}=this.props;e?this.handleFooterPaginationChange(1,t):this.initTabChange()}getInitValue(e){var{value:t={},initValue:a={},data:n=[],backendPageStore:r}=e;if(!(0,D.default)(a)){var{selectedRowKeys:l=[]}=a;return{selectedRowKeys:l,selectedRows:q(a,n,r)}}var{selectedRowKeys:i=[]}=t||{};return{selectedRowKeys:i,selectedRows:q(t||{},n,r)}}getTotal(e){var{data:t=[],backendPageStore:a,backendPageDataKey:n}=e||this.props;return a?(a[n]||{}).total:t.length}static getDerivedStateFromProps(e,t){var{value:a,data:n=[],backendPageStore:r,initValue:l={}}=e,i={};if(r||(0,L.default)(n,t.data)||(i.data=n,i.total=n.length,i.current=t.current||1),!a)return(0,D.default)(i)?null:i;var{tab:o}=a;if(a&&o!==t.tab&&(i.tag=o),!(0,L.default)(l,t.initValue)){var{selectedRowKeys:s=[]}=l,u=q(l,n,r);i.selectedRowKeys=s,i.selectedRows=u,i.initValue=l}return(0,D.default)(i)?null:i}get tableColumns(){var{columns:e}=this.props;return(0,k.default)(e).call(e,(e=>!e.hidden))}get rowSelection(){var{isMulti:e,disabledFunc:t,maxSelectedCount:a,rowKey:n,tagKey:r}=this.props;if(-1===a)return null;var{selectedRowKeys:l}=this.state,i={selectedRowKeys:l,type:e?"checkbox":"radio",onChange:this.handleSelectRow};return t&&(i.getCheckboxProps=e=>({disabled:t(e),name:(0,R.default)(e,n)||(0,R.default)(e,r)})),a&&l.length===a&&(i.getCheckboxProps=e=>({disabled:!(0,I.default)(l).call(l,(0,R.default)(e,n))})),i}getLoading(){var{backendPageStore:e,backendPageDataKey:t,isLoading:a}=this.props;return e?e[t].isLoading:a}initTabChange(){var{defaultTabValue:e,onTabChange:t,value:a}=this.props;if(void 0!==e&&void 0!==t){var n=a&&a.tab||e;t(n),this.updateTab(n)}}renderRefresh(){var{hideRefresh:e,backendPageStore:t,refreshFunc:a}=this.props,n=!1;return e||(t||a)&&(n=!0),n?z.default.createElement(j.default,{type:"default",icon:z.default.createElement(h.default,null),onClick:this.handleRefresh}):null}renderSearch(){var{canSearch:e}=this.props;if(!e)return null;var{filterParams:t}=this.props,{filters:a}=this.state;return z.default.createElement("div",{className:(0,Q.default)("ant-col-xs-16","ant-col-sm-12",Y.default["search-wrapper"])},z.default.createElement(B.default,{filterParams:t,onInputChange:this.handleFilterInput,initValue:a}))}renderSearchLine(){return z.default.createElement("div",{className:Y.default["search-line"]},this.renderSearch(),this.renderRefresh())}renderHeader(){var{header:e}=this.props;return e||null}renderTableHeader(){var{tableHeader:e}=this.props;return e||null}renderTable(){var e,t,{backendPageStore:a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l,filterParams:i,onRow:o,rowKey:s,childrenColumnName:u}=this.props,{current:d,pageSize:c,total:f,filters:p}=this.state,h=(0,y.default)(e=(0,S.default)(t=[this.props.pageSize,10,20,50,100]).call(t,((e,t)=>e-t))).call(e,(e=>"".concat(e))),m=!a&&{current:d,pageSize:c,total:f,size:"small",position:["bottomLeft"],pageSizeOptions:h},g=a?this.renderTableFooter:null,v=this.getLoading(),b=this.getDataSource(),x=a?Y.default["sl-select-table-backend"]:"";return z.default.createElement(V.default,{className:(0,Q.default)(Y.default["sl-select-table"],"sl-select-table",x),rowSelection:this.rowSelection,rowKey:s,columns:this.tableColumns,data:b,filters:p,searchFilters:i,pagination:m,isLoading:v,filterByBackend:!!a,isSortByBack:n,defaultSortKey:r,defaultSortOrder:l,onChange:this.handleChange,footer:g,onRow:o,childrenColumnName:u})}renderImageTabs(){var{tabs:e,defaultTabValue:t,imageTabAuto:a}=this.props,{tab:n}=this.state,r=(0,y.default)(e).call(e,(e=>{var{value:t,image:n,component:r,label:l}=e;return z.default.createElement(p.default.Button,{className:a?"":Y.default["image-tab"],value:t,key:t},n&&z.default.createElement("img",{src:n,alt:l}),r,z.default.createElement("span",{className:Y.default["image-tab-label"]},l))}));return z.default.createElement(p.default.Group,{className:Y.default["image-tabs"],id:"select-table-tabs",onChange:this.onTabChange,defaultValue:t,value:n},r)}renderNormalTabs(){var{tabs:e,defaultTabValue:t}=this.props,{tab:a}=this.state,n=(0,y.default)(e).call(e,(e=>z.default.createElement(p.default.Button,{className:Y.default["normal-tab"],value:e.value,key:e.value},z.default.createElement("span",{className:Y.default["normal-tab-label"]},e.label))));return z.default.createElement(p.default.Group,{className:Y.default["normal-tabs"],onChange:this.onTabChange,buttonStyle:"solid",defaultValue:t,value:a},n)}renderTips(){var{tips:e}=this.props;return e?z.default.createElement("div",null,e):null}renderTabs(){var{tabs:e,tabsNode:t}=this.props;return t||(e?(0,b.default)(e).call(e,(e=>!!e.image||!!e.component))?this.renderImageTabs():this.renderNormalTabs():null)}renderSelected(){var{showSelected:e=!0,selectedLabel:a,maxSelectedCount:n}=this.props;if(-1===n)return null;var{selectedRows:r=[]}=this.state;if(!e)return null;var l=(0,D.default)(r)?this.getSelectedRows():r,i=(0,y.default)(l).call(l,(e=>this.renderTag(e))),o=this.renderClearButton(l);return z.default.createElement("div",null,t("Selected")," ",a,":  ",o,"  ",i)}render(){return z.default.createElement("div",{className:Y.default["select-table"]},this.renderHeader(),this.renderTabs(),this.renderSearchLine(),this.renderTableHeader(),this.renderTable(),this.renderSelected())}},(0,v.default)(T,"propTypes",{data:F.default.array,columns:F.default.array.isRequired,isMulti:F.default.bool,pageSize:F.default.number,tabs:F.default.array,defaultTabValue:F.default.any,tabsNode:F.default.node,onTabChange:F.default.func,canSearch:F.default.bool,filterParams:F.default.array,disabledFunc:F.default.func,onChange:F.default.func,selectedLabel:F.default.string,tips:F.default.string,isLoading:F.default.bool,tagKey:F.default.string,secondTagKey:F.default.string,maxSelectedCount:F.default.number,tableHeader:F.default.any,header:F.default.any,backendPageStore:F.default.any,backendPageFunc:F.default.string,backendPageDataKey:F.default.string,extraParams:F.default.object,initValue:F.default.object,rowKey:F.default.string,isSortByBack:F.default.bool,defaultSortKey:F.default.string,defaultSortOrder:F.default.string,onRow:F.default.func,childrenColumnName:F.default.string,imageTabAuto:F.default.bool,refreshFunc:F.default.func,hideRefresh:F.default.bool}),(0,v.default)(T,"defaultProps",{data:[],isMulti:!1,pageSize:5,canSearch:!0,filterParams:[],selectedLabel:"",tips:"",tableHeader:null,header:null,backendPageStore:null,backendPageFunc:"fetchListByPage",backendPageDataKey:"list",extraParams:{},initValue:{},rowKey:"id",tagKey:"name",secondTagKey:"id",isSortByBack:!1,defaultSortKey:"",defaultSortOrder:"",childrenColumnName:"children",imageTabAuto:!1,refreshFunc:null,hideRefresh:!1}),E=A))||E;a.default=Z},1380:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(63)),o=l(n(1252)),s=l(n(35)),u=n(163),d=l(n(1250));class c extends d.default{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>i.default.resolve()))}get name(){return t("Edit")}get isModal(){return!0}static get modalSize(){return"small"}getModalSize(){return"small"}getRightExtraSpan(){var e="large"===this.getModalSize();return{left:e?20:18,right:e?4:6}}static get showQuota(){return!1}get showQuota(){return!1}get labelCol(){return"large"===this.getModalSize()?{xs:{span:6},sm:{span:4}}:{xs:{span:8},sm:{span:6}}}get wrapperCol(){return{xs:{span:16},sm:{span:16}}}static allowed(){return i.default.resolve()}get messageHasItemName(){return!0}get instanceName(){return(this.item||{}).name||((0,o.default)(this)||{}).name||this.itemId}get isAsyncAction(){return!1}get successText(){return this.messageHasItemName?this.isAsyncAction?(0,u.firstUpperCase)(t("The {action} instruction has been issued, instance: {name}. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,u.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):this.isAsyncAction?(0,u.firstUpperCase)(t("The {action} instruction has been issued. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.name.toLowerCase()})):(0,u.firstUpperCase)(t("{action} successfully.",{action:this.name}))}get errorText(){return this.messageHasItemName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get containerProps(){return this.props.containerProps||{}}get isAdminPage(){var{isAdminPage:e=!1}=this.containerProps;return e}get item(){var{item:e}=this.props;return e||this.containerProps.detail||{name:""}}get itemId(){return(this.item||{}).id}get actionId(){var{action:e}=this.props;return null==e?void 0:e.id}get items(){var{items:e}=this.props;return e}get defaultValue(){var{name:e=""}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name")}]}}a.default=c,(0,s.default)(c,"id","modalAction"),(0,s.default)(c,"actionType","modal"),(0,s.default)(c,"title",t("Edit")),(0,s.default)(c,"buttonType","primary"),(0,s.default)(c,"isDanger",!1),(0,s.default)(c,"policy",""),(0,s.default)(c,"aliasPolicy","")},1433:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.getFirstLevelNavItemLink=t.navItemPropType=void 0;var l=r(a(16)),i=l.default.shape({name:l.default.string,path:l.default.string,children:l.default.arrayOf(i)});t.navItemPropType=i;t.getFirstLevelNavItemLink=e=>{var{children:t=[]}=e;return t.length?e.children[0].path:e.path}},1435:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.checkAllowed=p,t.getAllowedResults=function(e){return m.apply(this,arguments)},t.getPolicyResults=g,t.getAction=v,t.getActionsByPolicy=function(e){var{actions:t,containerProps:a,isAdminPage:n}=e,r=(0,o.default)(t).call(t,(e=>v(e,null,a))),l=g({actions:r,isAdminPage:n});return(0,s.default)(r).call(r,((e,t)=>l[t]))};var o=i(a(54)),s=i(a(29)),u=i(a(63)),d=i(a(49)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(1251));function f(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(f=function(e){return e?a:t})(e)}function p(e){return h.apply(this,arguments)}function h(){return(h=(0,d.default)((function*(e){var{item:t,policy:a,aliasPolicy:n,allowed:r,allowedExtra:l,containerProps:i,actionName:o,extra:s,isAdminPage:d,action:f}=e,{enableSystemReader:p}=f||{};if(!(0,c.default)({policy:a,aliasPolicy:n,item:t,actionName:o,isAdminPage:d,enableSystemReader:p}))return!1;var h=!1,m=!0;return l&&(m=l({item:t,containerProps:i,extra:s,action:f}))instanceof u.default&&(m=yield m),!!m&&(r&&(h=r(t,i,s))instanceof u.default&&(h=yield h),h)}))).apply(this,arguments)}function m(){return(m=(0,d.default)((function*(e){var{actions:t,data:a,key:n,containerProps:r,extra:l,isAdminPage:i}=e,s=(0,o.default)(t).call(t,function(){var e=(0,d.default)((function*(e){return p({item:a,policy:n?e[n].policy:e.policy,aliasPolicy:n?e[n].aliasPolicy:e.aliasPolicy,allowed:n?e[n].allowed:e.allowed,allowedExtra:n?e[n].allowedExtra:e.allowedExtra,containerProps:r,actionName:n?e[n].title:e.title,extra:l,isAdminPage:i,action:e.action})}));return function(t){return e.apply(this,arguments)}}());return yield u.default.all(s)}))).apply(this,arguments)}function g(e){var{actions:t,extra:a,isAdminPage:n}=e;return(0,o.default)(t).call(t,(e=>{var{policy:t,aliasPolicy:r,title:l,enableSystemReader:i}=e;return!(n&&!i&&(0,c.systemRoleIsReader)())&&(0,c.default)({policy:t,aliasPolicy:r,actionName:l,extra:a})}))}function v(e,t,a){var{actionType:n}=e;return"confirm"===n?new e({item:t,containerProps:a}):e}},1436:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.ActionButton=a.getDefaultMsg=void 0;var s=o(n(54)),u=o(n(63)),d=o(n(583)),c=o(n(29)),f=o(n(28));n(344);var p=o(n(202));n(231);var h=o(n(341));n(1325);var m=o(n(1326)),g=o(n(49)),v=o(n(35)),y=o(n(177)),b=o(n(434)),x=o(n(352)),w=o(n(92)),k=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=T(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),C=n(412),_=(n(161),o(n(1437))),M=o(n(16)),S=o(n(1270)),I=o(n(4)),N=n(163),E=o(n(1816));function T(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(T=function(e){return e?a:t})(e)}var A=(e,a)=>{var{actionName:n="",title:r=""}=e,l=(0,w.default)(a)?(0,s.default)(a).call(a,(e=>e.name)).join(", "):a.name,i=t("Unable to {action} {name}.",{action:n.toLowerCase()||r,name:l}),o=t("You are not allowed to { action } {name}.",{action:n.toLowerCase()||r,name:l});return{submitErrorMsg:i,submitSuccessMsg:(0,N.firstUpperCase)(t("{action} {name} successfully.",{action:n.toLowerCase()||r,name:l})),confirmContext:t("Are you sure to { action } {name}?",{action:n.toLowerCase()||r,name:l}),performErrorMsg:o}};a.getDefaultMsg=A;class j extends k.Component{static propTypes(){return{title:M.default.string.isRequired,id:M.default.string.isRequired,perform:M.default.func.isRequired,item:M.default.object,actionType:M.default.string,icon:M.default.string,isAllowed:M.default.bool,needHide:M.default.bool,buttonType:M.default.string,isDanger:M.default.bool,items:M.default.array,isBatch:M.default.bool,path:M.default.string,onFinishAction:M.default.func,action:M.default.any,containerProps:M.default.any,maxLength:M.default.number,isFirstAction:M.default.bool,onClickAction:M.default.func,visible:M.default.bool}}constructor(e){var t;super(e),t=this,(0,v.default)(this,"onClick",(()=>{var{actionType:e,onClickAction:t}=this.props;switch(e){case"confirm":this.onShowConfirm();break;case"link":var{action:a,item:n,containerProps:r}=this.props,{path:l}=a;if((0,x.default)(l)){var i=l(n,r);this.routing.push(i)}else this.routing.push(l);break;default:this.formRef=k.default.createRef(),this.showModalAction()}t&&t()})),(0,v.default)(this,"handleSubmitLoading",(e=>{this.setState({submitLoading:!!e})})),(0,v.default)(this,"handleSubmit",(e=>{var{item:t,isBatch:a,items:n}=this.props;if(this.onSubmit){this.handleSubmitLoading(!0);var r=a?n:t,l=this.onSubmit(e,r);l instanceof u.default?l.then((()=>{this.onShowSuccess(r)}),(e=>{this.onShowError(r,e)})).finally((()=>{this.handleSubmitLoading()})):(this.handleSubmitLoading(),l?this.onShowSuccess(r):this.onShowError(r,l))}})),(0,v.default)(this,"onOK",(()=>{var{onSubmit:e,form:t,item:a,isBatch:n,items:r}=this.props;e&&(this.handleSubmitLoading(!0),t.validateFields([],((l,i)=>{if(!l){var o=n?r:a,s=e(t.getFieldsValue(),o);s instanceof u.default?s.then((()=>{this.onShowSuccess(o)}),(e=>{this.onShowError(o,e)})).finally((()=>{this.handleSubmitLoading()})):(this.handleSubmitLoading(),s?this.onShowSuccess(o):this.onShowError(o,s))}})))})),(0,v.default)(this,"onShowSuccess",((e,t)=>{var{submitSuccessMsg:a}=this.props.action,n=a?a(e):A(this.props.action,e).submitSuccessMsg;S.default.success(n),this.onCallback(!0,!1,t)})),(0,v.default)(this,"onCallback",((e,t,a)=>{var{onFinishAction:n,id:r}=this.props;if(n){var l="delete"===r;(0,d.default)((()=>{n(e,t,l,a)}),500)}})),(0,v.default)(this,"onShowError",((e,t)=>{var{showConfirmErrorBeforeSubmit:a,confirmErrorMessageBeforeSubmit:n}=this.props.action;if(a)return _.default.error({content:n}),void this.onCallback(!1,!0);var{submitErrorMsg:r}=this.props.action,{data:l}=(t||{}).response||t||{},i=l||t,o=r?r(e,i):A(this.props.action,e).submitErrorMsg;S.default.errorWithDetail(i,o),this.onCallback(!1,!0)})),(0,v.default)(this,"getConfirmOkButtonProps",((e,t)=>{var{disableSubmit:a=!1,okButtonProps:n}=t;return n||{disabled:a}})),(0,v.default)(this,"getConfirmCancelButtonProps",((e,t)=>{var{cancelButtonProps:a}=t;return a||{}})),(0,v.default)(this,"getConfirmContent",((e,t)=>{var{confirmContext:a}=t;return a?a(e):A(t,e).confirmContext})),(0,v.default)(this,"onShowConfirm",(0,g.default)((function*(){var{item:e,items:a,isBatch:n,containerProps:r,onCancelAction:l,action:i}=t.props,{perform:o,title:s,okText:u,cancelText:d,onSubmit:c,afterSubmit:f}=i,p=n?a:e,h=t.getConfirmContent(p,i),m=t.getConfirmOkButtonProps(p,i),g=t.getConfirmCancelButtonProps(p,i);try{o(p).then((()=>{var e=_.default.confirm({title:s,content:h,okText:u,cancelText:d,okButtonProps:m,cancelButtonProps:g,onOk:()=>t.onConfirmOK(p,c,n,r,f,e),onCancel:()=>{l&&l()}})}),(e=>{var t=e||A(i,p).performErrorMsg;_.default.error({content:t})}))}catch(e){var v=e||A(i,p).performErrorMsg;_.default.error({content:v})}}))),(0,v.default)(this,"onSubmitOne",((e,t,a,n)=>new u.default(((r,l)=>{var i=t(e,a);i instanceof u.default?i.then((()=>{this.onShowSuccess(e,n),r()}),(e=>{l(e)})):i?(this.onShowSuccess(e,n),r()):l(i)})).catch((t=>{this.onShowError(e,t)})))),(0,v.default)(this,"onSubmitBatch",((e,t,a,n,r)=>new u.default(((l,i)=>{var o=(0,s.default)(e).call(e,((r,l)=>t(r,a,n,l,e)));(0,N.allSettled)(o).then((t=>{var a,n=(0,c.default)(a=(0,s.default)(t).call(t,((t,a)=>"rejected"===t.status?{data:e[a],reason:t.reason}:null))).call(a,(e=>!!e));return 0===n.length?(this.onShowSuccess(e,r),l()):((0,f.default)(n).call(n,(e=>{this.onShowError(e.data,e.reason)})),n.length===e.length?i():l())}))})))),(0,v.default)(this,"onConfirmOK",((e,t,a,n,r,l)=>a?this.onSubmitBatch(e,t,n,a,r).catch((()=>{l&&l.update({visible:!1})})):this.onSubmitOne(e,t,n,r))),(0,v.default)(this,"onClickModalActionOk",(()=>{var{containerProps:e}=this.props;return this.formRef.current.wrappedInstance.onClickSubmit(((e,t)=>{this.handleSubmitLoading(),this.onClickModalActionCancel(!0),this.onCallback(e,t)}),(()=>{this.handleSubmitLoading(!0)}),e)})),(0,v.default)(this,"onClickModalActionCancel",(e=>{var t=()=>{(0,b.default)(e)||this.formRef.current.wrappedInstance.onClickCancel();var{onCancelAction:t}=this.props;this.setState({visible:!1},(()=>{t&&t()}))},{action:{beforeCancel:a}}=this.props;if(a)return a(t);t()})),(0,v.default)(this,"getModalWidth",(e=>{var{modalSize:t,showQuota:a=!1}=e,n=a?1.25:1;switch(t){case"small":return 520*n;case"middle":return 720*n;case"large":return 1200;default:return 520*n}})),(0,v.default)(this,"getModalOkButtonProps",(e=>{var{item:t,action:a,items:n}=e,{disableSubmit:r=!1,okButtonProps:l}=a;return l||{disabled:(0,x.default)(r)?r({item:t,items:n,action:a}):r}})),(0,v.default)(this,"getModalCancelButtonProps",(e=>{var{item:t,action:a,items:n}=e,{readOnly:r,cancelButtonProps:l}=a;return l||(r?{style:{display:"none"}}:{})}));var{id:a}=e;if(!a)throw Error("need id!");this.state={visible:!1,submitLoading:!1}}get routing(){return this.props.rootStore.routing}showModalAction(){this.setState({visible:!0})}renderModal(){var{visible:e,submitLoading:t}=this.state;if(!e)return null;var{title:a,action:n,item:r,containerProps:l,items:i,onFinishAction:o,onCancelAction:s}=this.props,u=n,{okText:d,cancelText:c,id:f,className:p}=n,h=this.getModalWidth(n),g=this.getModalOkButtonProps({item:r,action:n,items:i}),v=this.getModalCancelButtonProps({item:r,action:n,items:i}),b={title:a,visible:e,className:(0,I.default)("modal-".concat(f),E.default["modal-action"],p),width:h,onOk:()=>this.onClickModalActionOk(),onCancel:this.onClickModalActionCancel,okButtonProps:g,confirmLoading:t,okText:d,cancelText:c,maskClosable:!1};return(0,y.default)(v)||(b.cancelButtonProps=v),k.default.createElement(m.default,b,k.default.createElement(u,{item:r,items:i,ref:this.formRef,containerProps:l,onFinishAction:o,onCancelAction:s,modalProps:b,action:n}))}render(){var{isAllowed:e,needHide:t,buttonType:a,buttonClassName:n,name:r,id:l,title:i,isDanger:o,style:s,maxLength:u,isFirstAction:d}=this.props;if(!e&&t)return null;var c=r||i,f=!1;d&&c&&c.length>u&&(f=!0);var m=k.default.createElement(h.default,{type:a,danger:o,onClick:this.onClick,key:l,disabled:!e,className:n,style:s},r||i),g=f?k.default.createElement(p.default,{title:c},m):m;return k.default.createElement(k.default.Fragment,null,g,this.renderModal())}}a.ActionButton=j,(0,v.default)(j,"defaultProps",{item:void 0,isAllowed:!1,confirm:!1,needHide:!0,buttonType:"link",isDanger:!1,isLink:!1,items:[],isBatch:!1,path:"",containerProps:{},maxLength:0,isFirstAction:!1,onClickAction:null,visible:!1});var P=(0,C.inject)("rootStore")((0,C.observer)(j));a.default=P},1437:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(618)),h=f(n(619)),m=f(n(35)),g=f(n(1438));n(1325);var v=f(n(1326)),y=f(n(0)),b=(n(161),n(564),f(n(4))),x=f(n(16)),w=n(163),k=f(n(1506));function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var{title:a=t("Confirm"),content:n,onOk:r,onCancel:l,icon:i,okText:o=t("Confirm"),cancelText:s=t("Cancel"),className:u,okButtonProps:d={},cancelButtonProps:c={}}=e;v.default.confirm({title:a,icon:i||y.default.createElement(g.default,{className:k.default.warn}),className:(0,b.default)(k.default["confirm-modal"],u),content:(0,w.unescapeHtml)(n),okText:o,cancelText:s,okButtonProps:d||{},cancelButtonProps:c||{},onOk:()=>r&&r(),onCancel(){l&&l()}})};S.propTypes=M,S.defaultProps={title:t("Confirm"),icon:y.default.createElement(g.default,null),isSubmitting:!1,okText:t("Confirm"),cancelText:t("Cancel")};var I={confirm:S,error:e=>{var a=_(_({title:t("Error")},e),{},{icon:y.default.createElement(h.default,{className:k.default.error})});S(a)},warn:e=>{var a=_(_({title:t("Warn")},e),{},{icon:y.default.createElement(g.default,{className:k.default.warn})});S(a)},success:e=>{var a=_(_({title:t("Success")},e),{},{icon:y.default.createElement(p.default,{className:k.default.success})});S(a)}};a.default=I},1444:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(86)),o=l(n(29)),s=l(n(54)),u=l(n(28));n(1261);var d=l(n(1262));n(1246);var c=l(n(1247));n(344);var f=l(n(202)),p=l(n(1299));n(569);var h=l(n(1253));n(1244);var m=l(n(1245)),g=l(n(35)),v=l(n(0)),y=(n(161),l(n(1519))),b=l(n(16)),x=n(565),w=(n(564),n(571)),k=l(n(1925)),{isIPv4:C,isIpv6:_,isIpInRangeAll:M}=x.ipValidate;class S extends v.default.Component{constructor(e){super(e),(0,g.default)(this,"onChange",(()=>{this.checkNetwork((()=>{var{onChange:e}=this.props,{network:t,subnet:a,ip:n,ipType:r,validateStatus:l,errorMsg:o}=this.state,s=this.getNetworkOptions(),u=this.getSubnetOptions(),d=(0,i.default)(s).call(s,(e=>e.value===t)),c=(0,i.default)(u).call(u,(e=>e.value===a)),f=(0,i.default)(w.ipTypeOptions).call(w.ipTypeOptions,(e=>e.value===r));e&&e({network:t,subnet:a,ip:n,ipType:r,networkOption:d,subnetOption:c,ipTypeOption:f,validateStatus:l,errorMsg:o})}))})),(0,g.default)(this,"onNetworkChange",(e=>{var{subnets:t}=this.state,a=(0,o.default)(t).call(t,(t=>t.network_id===e)),n=a.length?a[0].id:null;this.setState({network:e,subnet:n,ipType:0,ip:void 0},this.onChange)})),(0,g.default)(this,"onSubnetChange",(e=>{this.setState({subnet:e,ip:void 0},this.onChange)})),(0,g.default)(this,"onTypeChange",(e=>{this.setState({ipType:e},this.onChange)})),(0,g.default)(this,"onIPChange",(e=>{var{value:t}=e.currentTarget;this.setState({ip:t},this.onChange)})),(0,g.default)(this,"checkNetwork",(e=>{var{network:a,subnets:n,subnet:r,ip:l,ipType:o}=this.state,s=(0,i.default)(n).call(n,(e=>e.id===r)),{allocation_pools:u}=s||{};if(a)if(1!==o||C(l)||_(l)){if(u&&1===o)if(!(0,i.default)(u).call(u,(e=>M(l,e.start,e.end))))return void this.setState({errorMsg:t("The ip is not within the allocated pool!"),validateStatus:"error"},e);this.setState({errorMsg:void 0,validateStatus:"success"},e)}else this.setState({errorMsg:t("Please input a valid ip!"),validateStatus:"error"},e);else this.setState({errorMsg:t("Please select a network!"),validateStatus:"error"},e)})),(0,g.default)(this,"getNetworkOptions",(()=>{var{networks:e}=this.state,{optionsByIndex:t,index:a}=this.props,n=[...e];return t&&a({label:e.name,value:e.id})))})),(0,g.default)(this,"getSubnetOptions",(()=>{var e,{network:t,subnets:a}=this.state;return t?(0,s.default)(e=(0,o.default)(a).call(a,(e=>e.network_id===t))).call(e,(e=>({label:v.default.createElement("div",null,v.default.createElement("span",null,e.name),v.default.createElement("span",{className:k.default["subnet-options-cidr"]},e.cidr)),name:e.name,value:e.id}))):[]}));var{value:a}=e,{network:n,subnet:r,ip:l,ipType:u}=a;this.state={network:n||null,subnet:r||null,ip:l||"0.0.0.0",ipType:u||0}}static getDerivedStateFromProps(e,t){if(e.networks!==t.networks||e.subnets!==t.subnets){var{networks:a,subnets:n}=e;return{networks:a,subnets:n}}return null}componentDidMount(){this.checkNetwork()}renderNetwork(){var{network:e}=this.state;return v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{options:this.getNetworkOptions(),value:e,onChange:this.onNetworkChange,placeholder:t("please select network")}))}renderSubnet(){var{network:e,subnet:a,ipType:n}=this.state;return e&&n?v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{options:this.getSubnetOptions(),value:a,placeholder:t("please select subnet"),onChange:this.onSubnetChange})):null}renderIpType(){var{network:e,ipType:t}=this.state;return e?v.default.createElement(m.default,{span:6},v.default.createElement(y.default,{value:t,options:w.ipTypeOptions,onChange:this.onTypeChange})):null}renderIp(){var{subnet:e,subnets:a,ipType:n,ip:r,network:l}=this.state;if(!l)return null;if(0===n){var d=[],c=(0,o.default)(a).call(a,(e=>e.network_id===l));(0,u.default)(c).call(c,(e=>{var{allocation_pools:t=[]}=e;(0,u.default)(t).call(t,(e=>{d.push(e)}))}));var g=(0,s.default)(d).call(d,((e,t)=>v.default.createElement("span",{key:"pool.start.".concat(t),style:{marginRight:10}},e.start,"--",e.end))),y=v.default.createElement("span",null,v.default.createElement("span",{className:k.default.label},t("Allocation Pools"),": "),v.default.createElement("span",{className:k.default.content},g));return v.default.createElement(m.default,{span:12},y)}if(!e)return null;var b=(0,i.default)(a).call(a,(t=>t.id===e));if(!b)return null;var{allocation_pools:x}=b,w=(0,s.default)(x).call(x,((e,t)=>v.default.createElement("div",{key:"pool.start.".concat(t)},e.start,"--",e.end))),C=v.default.createElement("span",null,v.default.createElement("span",{className:k.default.label},t("Allocation Pools"),": "),v.default.createElement("span",{className:k.default.content},w),v.default.createElement("span",{className:k.default.content},t("Please make sure this IP address be available to avoid creating VM failure.")));return v.default.createElement(m.default,{span:6},v.default.createElement(h.default,{value:r,onChange:this.onIPChange}),v.default.createElement(f.default,{title:C,color:"white"},v.default.createElement(p.default,null)))}render(){var{validateStatus:e,errorMsg:t}=this.state,{name:a}=this.props;return v.default.createElement(d.default.Item,{className:k.default["network-select"],name:a,validateStatus:e,help:t},v.default.createElement(c.default,{gutter:24},this.renderNetwork(),this.renderIpType(),this.renderSubnet(),this.renderIp()))}}a.default=S,(0,g.default)(S,"propTypes",{networks:b.default.array,subnets:b.default.array,value:b.default.object,ipType:b.default.number,name:b.default.string,optionsByIndex:b.default.bool,index:b.default.number}),(0,g.default)(S,"defaultProps",{networks:[],subnets:[],value:{},ipType:0,name:"network",optionsByIndex:!1,index:0})},1447:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1278);var p=f(a(1279)),h=f(a(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function g(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(g=function(e){return e?a:t})(e)}function v(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function y(e){for(var t=1;t"$ ".concat(e).replace(/\D/g,"")});return m.default.createElement(p.default,e)}}t.default=b},1448:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(29)),u=o(n(91)),d=o(n(86)),c=o(n(54));n(1315);var f=o(n(1316)),p=o(n(343));n(1311);var h=o(n(1312)),m=o(n(35)),g=o(n(177)),v=x(n(0)),y=x(n(1376));n(161);function b(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(b=function(e){return e?a:t})(e)}function x(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}return n.default=e,a&&a.set(e,n),n}class w extends v.Component{constructor(e){super(e),(0,m.default)(this,"handleChangeTab",(e=>{this.setState({tabKey:e})})),(0,m.default)(this,"onChangeValue",(()=>{var{onChange:e}=this.props;e&&e(this.state)})),(0,m.default)(this,"getMultiSelected",((e,t,a)=>{var n,r,{selectedRowKeys:l,selectedRows:i}=this.state,o=(0,s.default)(e).call(e,(e=>(0,u.default)(l).call(l,e)<0)),c=(0,s.default)(t).call(t,(e=>(0,u.default)(o).call(o,e.key)>=0||(0,u.default)(o).call(o,e.id)>=0)),f=(0,s.default)(l).call(l,(t=>(0,u.default)(e).call(e,t)<0&&!!(0,d.default)(a).call(a,(e=>e.key===t||e.id===t))));return[(0,s.default)(n=[...l,...o]).call(n,(e=>(0,u.default)(f).call(f,e)<0)),(0,s.default)(r=[...i,...c]).call(r,(e=>{var t=e.key||e.id;return(0,u.default)(f).call(f,t)<0}))]})),(0,m.default)(this,"onSelectTableChange",(e=>{var{selectedRowKeys:t,selectedRows:a,data:n}=e,{isMulti:r=!1}=this.props,[l,i]=r?this.getMultiSelected(t,a,n):[t,a],o={selectedRowKeys:l,selectedRows:i};this.setState(o,(()=>{this.onChangeValue()}))})),(0,m.default)(this,"clearSelected",(()=>{this.setState({selectedRowKeys:[],selectedRows:[]},(()=>{this.onChangeValue()}))})),(0,m.default)(this,"onTagClose",(e=>{var{selectedRowKeys:t,selectedRows:a}=this.state,n=(0,s.default)(t).call(t,(t=>t!==e)),r=(0,s.default)(a).call(a,(t=>t.key!==e&&t.id!==e));this.setState({selectedRowKeys:n,selectedRows:r},(()=>{this.onChangeValue()}))})),(0,m.default)(this,"renderTag",(e=>v.default.createElement(h.default,{key:e.key||e.id,closable:!0,onClose:()=>this.onTagClose(e.key||e.id)},this.props.tagKey?e[this.props.tagKey]:e.name))),(0,m.default)(this,"renderClearButton",(e=>(0,y.renderClearButton)(this,e)));var{tabs:t=[],defaultTab:a,value:n={}}=e;this.state={tabKey:n.tab||a||t[0]&&t[0].key,selectedRowKeys:n.selectedRowKeys||[],selectedRows:n.selectedRows||[]},this.init(e)}init(e){var{value:t={}}=e;(0,g.default)(t)||this.onChangeValue()}renderTabSelectTable(e){var{selectedRowKeys:t,selectedRows:a}=this.state,n={selectedRowKeys:t},r={selectedRowKeys:t,selectedRows:a};return v.default.createElement(y.default,(0,p.default)({},e.props,{onChange:this.onSelectTableChange,showSelected:!1,value:n,initValue:r}))}renderTab(e){var{tabKey:t}=this.state;return t!==e.key?v.default.createElement(f.default.TabPane,{tab:e.title,key:e.key}):v.default.createElement(f.default.TabPane,{tab:e.title,key:e.key},this.renderTabSelectTable(e))}renderTabs(){var{tabKey:e}=this.state,{tabs:t}=this.props;if(!e)return null;if(1===t.length)return this.renderTabSelectTable(t[0]);var a=(0,c.default)(t).call(t,(e=>this.renderTab(e)));return v.default.createElement(f.default,{activeKey:e,onChange:this.handleChangeTab},a)}renderSelected(){var{selectedRows:e}=this.state,a=(0,c.default)(e).call(e,(e=>this.renderTag(e))),n=this.renderClearButton(e);return v.default.createElement("div",null,t("Selected")," :  ",n,"  ",a)}renderHeader(){var{header:e}=this.props;return e||null}render(){return v.default.createElement(v.default.Fragment,null,this.renderHeader(),this.renderTabs(),this.renderSelected())}}a.default=w},1449:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,{used:n=0,add:r=0,reserved:l=0,limit:h=1,title:m="",secondTitle:g=t("Quota"),hasLabel:v=!1}=e,y=-1!==h,b=y,x=y?h:1/0,w=y?h:t("Infinity"),k=y?h-n-l-r:1;k<0&&(k=0);var C=[{type:t("Used"),value:y?n:0,color:f.used}];l&&C.push({type:t("Reserved"),value:y?l:0,color:f.reserved});C.push({type:t("New"),value:y?r:0,color:f.add}),C.push({type:t("Left"),value:k,color:f.left});var _=(0,o.default)(C).call(C,(e=>e.color)),M=v?200:120,S={width:M},I=M,N=n+r+l,E=y?N/x*100:0,T="";if(!y){var A,j,P,D=(0,s.default)(A="".concat(t("Used"),": ")).call(A,n),L=l?"":(0,s.default)(j="".concat(t("Reserved"),": ")).call(j,l),O=(0,s.default)(P="".concat(t("New"),": ")).call(P,r),R=[D,O];l&&(0,u.default)(R).call(R,1,0,L),T=R.join(" / ")}var z=m.length,U=(V=m,K=/[\u4e00-\u9fa5]+/g,V.match(K)?z>6?10:14:z>12?10:14),F=d.default.createElement(c.Chart,{placeholder:!1,height:I,padding:"auto",autoFit:!0},d.default.createElement(c.Legend,{visible:b&&v}),d.default.createElement(c.Tooltip,{visible:b}),d.default.createElement(c.View,{data:C},d.default.createElement(c.Coordinate,{type:"theta",innerRadius:.75}),d.default.createElement(c.Interval,{position:"value",adjust:"stack",color:["type",_],size:16}),d.default.createElement(c.Annotation.Text,{position:["50%","30%"],content:m,style:{lineHeight:1.5,fontSize:U,fill:"#000",textAlign:"center"}}),d.default.createElement(c.Annotation.Text,{position:["50%","50%"],content:g,style:{lineHeight:1.5,fontSize:14,fill:"#000",textAlign:"center"}}),d.default.createElement(c.Annotation.Text,{position:["50%","70%"],content:(0,s.default)(a="".concat(N,"/")).call(a,w),style:{lineHeight:1.5,fontSize:14,fill:p(E),textAlign:"center",fontWeight:"bold"}}))),B=y?F:d.default.createElement(i.default,{title:T},F);var V,K;return d.default.createElement("div",{style:S},B)},a.getUsedValueColor=a.getAddValueColor=a.typeColors=void 0,n(344);var i=l(n(202)),o=l(n(54)),s=l(n(77)),u=l(n(573)),d=l(n(0)),c=n(1349),f=(n(161),{used:globalCSS.primaryColor,reserved:"#5D7092",add:globalCSS.successColor,left:"#eee",danger:globalCSS.warnDarkColor});a.typeColors=f;a.getAddValueColor=e=>e>80?f.danger:f.add;var p=e=>e>80?f.danger:f.used;a.getUsedValueColor=p},1454:function(e,t,a){var n=a(2077);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1506:function(e,t,a){var n=a(1815);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1516:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.getTags=void 0;var h=p(n(77)),m=p(n(28)),g=p(n(32)),v=p(n(86)),y=p(n(29)),b=p(n(54)),x=p(n(91)),w=p(n(350)),k=p(n(591));n(1246);var C=p(n(1247)),_=p(n(612));n(569);var M=p(n(1253));n(584);var S=p(n(420));n(1244);var I=p(n(1245));n(1276);var N=p(n(421));n(1311);var E=p(n(1312));n(1300);var T=p(n(1301));n(231);var A=p(n(341)),j=p(n(605)),P=p(n(35)),D=p(n(434)),L=p(n(177)),O=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=F(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),R=p(n(16)),z=(n(161),n(564),p(n(4))),U=p(n(1864));function F(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(F=function(e){return e?a:t})(e)}function B(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function V(e){for(var t=1;t{var a;return(0,h.default)(a="".concat(e,"--")).call(a,t)},G=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=e.split("--")[0],a=e.split("--")[1];return{name:t,key:a}},H=(e,t)=>{var a;if(!e||(0,L.default)(e))return{};if((0,L.default)(t))return{};var n=[],r=[];return(0,m.default)(a=(0,g.default)(e)).call(a,(a=>{var l=(0,v.default)(t).call(t,(e=>e.name===a));if(l){var{options:i=[]}=l,o=e[a];if(i.length){var s=(0,v.default)(i).call(i,(e=>e.key===o));s&&s.isQuick&&r.push(Y(l.name,o))}n.push({value:o,filter:l})}})),{tags:n,checkValues:r}};a.getTags=H;class W extends O.PureComponent{constructor(e){super(e),(0,P.default)(this,"getFilterParams",(()=>{var{filterParams:e}=this.props,{tags:t}=this.state,a=[];return(0,m.default)(e).call(e,(e=>{(0,v.default)(t).call(t,(t=>(0,y.default)(t).name===e.name))||a.push(e)})),a})),(0,P.default)(this,"onTagsChange",(()=>{var{onInputChange:e}=this.props,{tags:t}=this.state;e&&e(t)})),(0,P.default)(this,"onFocusChange",(e=>{var{onInputFocus:t}=this.props;t&&t(e)})),(0,P.default)(this,"getDefaultFilter",(()=>{var{filterParams:e}=this.props;return(0,v.default)(e).call(e,(e=>!e.options))})),(0,P.default)(this,"handleEnter",(e=>{e&&e.preventDefault(),e&&e.stopPropagation();var{value:t}=e.currentTarget;t&&this.updateInput(t)})),(0,P.default)(this,"handleBlur",(()=>{var{currentFilter:e}=this.state;e?(this.setState({isFocus:!0}),this.onFocusChange(!0)):this.onFocusChange(!1)})),(0,P.default)(this,"handleKeyUp",(e=>{if(8===e.keyCode||46===e.keyCode){var{currentFilter:t,tags:a}=this.state,{value:n}=this.inputRef.current.state;t&&(0,L.default)(n)?this.setState({currentFilter:null}):a.length>0&&(0,L.default)(n)&&this.handleTagClose((0,y.default)(a[a.length-1]).name)}})),(0,P.default)(this,"handleFocus",(()=>{this.setState({isFocus:!0}),this.onFocusChange(!0)})),(0,P.default)(this,"handleInputChange",(e=>{this.setState({inputValue:e.target.value})})),(0,P.default)(this,"handleTagClose",(e=>{var{tags:t,checkValues:a}=this.state,n=(0,y.default)(t).call(t,(t=>(0,y.default)(t).name!==e)),r=(0,y.default)(a).call(a,(t=>G(t).name!==e));this.setState({tags:n,optionClear:!1,checkValues:r},(()=>{this.onTagsChange()}))})),(0,P.default)(this,"handleOptionClick",(e=>{var t,{key:a}=e;t="true"===a||"false"!==a&&a,this.updateInput(t),this.onFocusChange(!1)})),(0,P.default)(this,"handleSelectFilter",(e=>{var{key:t}=e,{filterParams:a}=this.props,n=(0,v.default)(a).call(a,(e=>e.name===t));this.setState({currentFilter:n,isFocus:!0},(()=>{this.inputRef.current.focus(),this.onFocusChange(!0)}))})),(0,P.default)(this,"clearOptions",(()=>{this.setState({optionClear:!0})})),(0,P.default)(this,"renderOptionsClose",(e=>{var{filterParams:t}=this.props,{optionClear:a}=this.state;return a||!e[0]||t.length===e.length?null:O.default.createElement(A.default,{className:U.default["close-option-btn"],type:"link",icon:O.default.createElement(j.default,null),onClick:this.clearOptions})})),(0,P.default)(this,"updateInput",(e=>{var{currentFilter:t,tags:a}=this.state,n={value:e,filter:t||this.getDefaultFilter()};this.clearInputValue();var r=(0,y.default)(a).call(a,(e=>(0,y.default)(e).name!==(0,y.default)(n).name));r.push(n);var l=(0,y.default)(r).call(r,(e=>{var{value:t,filter:{options:a=[]}={}}=e;return!!(0,v.default)(a).call(a,(e=>e.key===t&&e.isQuick))})),i=(0,b.default)(l).call(l,(e=>Y((0,y.default)(e).name,e.value)));this.setState({tags:r,currentFilter:null,inputValue:"",checkValues:i},(()=>{this.onTagsChange()}))})),(0,P.default)(this,"clearInputValue",(()=>{this.setState({inputValue:""})})),(0,P.default)(this,"clearAll",(()=>{this.clearInputValue(),this.setState({inputValue:"",tags:[],currentFilter:null,isFocus:!1,optionClear:!1,checkValues:[]},(()=>{this.onTagsChange(),this.onFocusChange(!1)}))})),(0,P.default)(this,"updateCheck",(()=>{})),(0,P.default)(this,"onChangeCheck",(e=>{var t,{checkValues:a}=this.state,n=[];(0,m.default)(e).call(e,(e=>{(0,x.default)(a).call(a,e)<0&&n.push({key:e,value:!0})})),(0,m.default)(a).call(a,(t=>{(0,x.default)(e).call(e,t)<0&&n.push({key:t,value:!1})}));var r=(0,b.default)(t=(0,w.default)(new k.default([...a,...e]))).call(t,(e=>G(e).name)),{filterParams:l}=this.props,{tags:i}=this.state,o=(0,y.default)(i).call(i,(e=>(0,x.default)(r).call(r,(0,y.default)(e).name)<0)),s=[];(0,m.default)(n).call(n,(e=>{var{key:t,value:a}=e;if(a){var{name:n,key:r}=G(t),i=(0,v.default)(l).call(l,(e=>e.name===n));s.push({value:r,filter:i})}})),this.setState({tags:[...o,...s],checkValues:e},(()=>{this.onTagsChange()}))})),this.inputRef=O.default.createRef(),this.state={tags:[],currentFilter:null,isFocus:!1,optionClear:!1,checkValues:[]}}componentDidMount(){this.initTags(this.props)}initTags(e){var{initValue:t,filterParams:a}=e,{tags:n=[],checkValues:r}=H(t,a);n.length&&this.setState({tags:n,checkValues:r},(()=>{this.onTagsChange()}))}renderKey(){var{currentFilter:e}=this.state;return e?O.default.createElement("span",{className:U.default.key},"".concat(e.label),O.default.createElement(T.default,{type:"vertical"})):null}renderTags(){var{tags:e}=this.state;return(0,b.default)(e).call(e,(e=>{var{filter:t,value:a}=e,{options:n}=t,r=a;if(n){var l=(0,v.default)(n).call(n,(e=>((0,D.default)(e.key)?e.key.toString():e.key)===((0,D.default)(a)?a.toString():a)));r=l?l.label:a}return O.default.createElement(E.default,{key:t.name,closable:!0,onClose:()=>this.handleTagClose(t.name)},O.default.createElement("span",null,t.label),O.default.createElement(T.default,{type:"vertical"}),O.default.createElement("span",null,r))}))}renderOptions(){var e,{currentFilter:t,tags:a}=this.state,{options:n,correlateOption:r}=t;if(!n)return null;var l=(0,y.default)(a).call(a,(e=>(0,y.default)(e).name===r)),i=[];r&&l[0]&&(i=(0,y.default)(n).call(n,(e=>{var t;return(0,x.default)(t=e.correlateValue).call(t,l[0].value)>-1})));var o=(0,b.default)(e=i[0]?i:n).call(e,(e=>O.default.createElement(N.default.Item,{key:e.key},e.label)));return O.default.createElement(N.default,{className:U.default["option-menu"],onClick:this.handleOptionClick},o)}renderMenu(){var{currentFilter:e,isFocus:t,optionClear:a,inputValue:n}=this.state;if(n)return null;if(!t)return null;if(e)return this.renderOptions();var r=this.getFilterParams();a&&(r=[]);var l=(0,b.default)(r).call(r,(e=>O.default.createElement(N.default.Item,{key:e.name},e.label)));return O.default.createElement(N.default,{className:U.default.menu,onClick:this.handleSelectFilter,id:"search-items-menu"},this.renderOptionsClose(r),l)}renderClose(){var{isFocus:e}=this.state;return e?O.default.createElement(I.default,{className:U.default["close-btn-col"]},O.default.createElement(A.default,{className:U.default["close-btn"],type:"link",icon:O.default.createElement(j.default,null),onClick:this.clearAll})):null}getChecks(){var{filterParams:e}=this.props,t=[];return(0,m.default)(e).call(e,(e=>{var{options:a=[]}=e;(0,m.default)(a).call(a,(a=>{var{isQuick:n=!1}=a;n&&t.push(V(V({},a),{},{father:e}))}))})),t}renderChecks(){var e=this.getChecks();if(0===e.length)return null;var{checkValues:t}=this.state,a=(0,b.default)(e).call(e,(e=>{var{checkLabel:t,key:a,father:n}=e;return{label:t,value:Y(n.name,a)}}));return O.default.createElement("div",{className:(0,z.default)(U.default["magic-input-checks"],"magic-input-checks")},O.default.createElement(S.default.Group,{options:a,onChange:this.onChangeCheck,value:t}))}render(){var e,{placeholder:t}=this.props,{isFocus:a,inputValue:n}=this.state;return O.default.createElement("div",{className:(0,z.default)(U.default["magic-input-outer-wrapper"],"magic-input-outer-wrapper")},this.renderChecks(),O.default.createElement(C.default,{className:(0,z.default)("magic-input-wrapper",U.default["magic-input-wrapper"],a?U.default["magic-input-wrapper-active"]:"",a?"magic-input-wrapper-active":"")},O.default.createElement(I.default,null,this.renderTags()),O.default.createElement(I.default,null,this.renderKey()),O.default.createElement(I.default,{className:U.default["input-wrapper"]},O.default.createElement(M.default,{className:U.default.input,ref:this.inputRef,autoFocus:a,placeholder:t,onChange:this.handleInputChange,onBlur:this.handleBlur,onFocus:this.handleFocus,onPressEnter:this.handleEnter,onKeyUp:this.handleKeyUp,value:n}),this.renderMenu()),O.default.createElement(I.default,{className:(0,h.default)(e="".concat(U.default["search-icon"]," ")).call(e,a?U.default["search-icon-hidden"]:"")},O.default.createElement(_.default,null)),this.renderClose()))}}(0,P.default)(W,"propTypes",{filterParams:R.default.arrayOf(Q),initValue:R.default.object,placeholder:R.default.string,onInputChange:R.default.func,onInputFocus:R.default.func}),(0,P.default)(W,"defaultProps",{filterParams:[],initValue:{},placeholder:t("Click here for filters.")});var q=W;a.default=q},1517:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(21);d(t,"__esModule",{value:!0}),t.default=void 0;var f=c(a(54)),p=c(a(77)),h=c(a(29)),m=c(a(91)),g=c(a(573)),v=c(a(86)),y=c(a(32));a(585);var b=c(a(587)),x=c(a(58)),w=c(a(35));a(594);var k=c(a(595)),C=c(a(570)),_=c(a(205)),M=c(a(177)),S=c(a(134)),I=c(a(119)),N=c(a(0)),E=c(a(4)),T=c(a(16)),A=(a(161),a(418)),j=a(163),P=c(a(1866));function D(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function L(e){for(var t=1;t{var{onChange:r}=this.props;r&&r(e,t,a,n)})),(0,w.default)(this,"getBaseColumns",(e=>(0,f.default)(e).call(e,(e=>{var{sortable:t,dataIndex:a,valueRender:n,sorter:r,sortOrder:l,render:i,isStatus:o,isName:s,isPrice:u,isLink:d,routeName:c,linkPrefix:f,valueMap:p,unit:h,copyable:m}=e,g=(0,x.default)(e,["sortable","dataIndex","valueRender","sorter","sortOrder","render","isStatus","isName","isPrice","isLink","routeName","linkPrefix","valueMap","unit","copyable"]);if("operation"===e.key)return e;var v=(0,A.getColumnSorter)(e,this.props),y=l||v?(0,A.getSortOrder)(a,this.props):null,b=i||(0,A.getRender)(n);if(p&&(b=(0,A.getValueMapRender)(e)),h&&(b=(0,A.getUnitRender)(e)),(0,A.checkIsStatusColumn)(a,o)&&(b=(0,A.getStatusRender)(b)),"description"===a&&(b=this.getNoValueRender(b)),"project_name"===a&&(b=(0,A.getProjectRender)(b)),"name"===a&&c||d){var{rowKey:w}=this.props;b=(0,A.getNameRenderByRouter)(b,e,w)}("name"===a&&f||s)&&(b=(0,A.getNameRender)(b,e)),("cost"===a||u)&&(b=this.getPriceRender(b,e)),m&&(b=e=>e&&"-"!==e?N.default.createElement(O,{copyable:!0},e):"-");var k=L(L({},g),{},{dataIndex:a,align:e.align||"left"});return v&&(k.sorter=v),l&&(k.sortOrder=y),b&&(k.render=b),(0,A.updateColumnSort)(k,this.props),k})))),(0,w.default)(this,"getNoValueRender",(e=>e||(e=>(0,j.getNoValue)(e)))),(0,w.default)(this,"getLinkUrl",((e,t)=>{var a,n;return e?"/"===e[e.length-1]?(0,p.default)(n="".concat(e)).call(n,t):(0,p.default)(a="".concat(e,"/")).call(a,t):null})),(0,w.default)(this,"getColumns",(()=>{var{columns:e}=this.props;return this.getBaseColumns(e)})),(0,w.default)(this,"getPriceRender",((e,t)=>e||(e=>{var t=(0,S.default)(e)?e:(e||0).toFixed(2);return N.default.createElement("span",{style:{color:globalCSS.moneyColor}},t)}))),(0,w.default)(this,"getDataSource",(()=>{var{data:e,filters:t,filterByBackend:a}=this.props;if(a)return e;var n=(0,f.default)(e).call(e,(e=>e.key?e:L(L({},e),{},{key:e.id})));return!t||(0,M.default)(t)?n:(0,h.default)(n).call(n,(e=>this.filterData(e,t)))})),(0,w.default)(this,"onRow",((e,t)=>{var{rowSelection:a,onRow:n}=this.props;return n?n(e,t):{onClick:()=>{var{selectedRowKeys:t=[],onChange:n,type:r,getCheckboxProps:l}=a||{};if(l){var{disabled:i}=l(e);if(i)return}var o=(0,m.default)(t).call(t,e.key);if("checkbox"===r){var s=[...t];o>-1?(0,g.default)(s).call(s,o,1):s.push(e.key),n(s)}else"radio"===r&&n([e.key])}}})),(0,w.default)(this,"filterData",((e,t)=>{var a,{searchFilters:n}=this.props;return!(0,v.default)(a=(0,y.default)(t)).call(a,(a=>{var r=(0,I.default)(e,a),l=t[a],{filterFunc:i}=(0,v.default)(n).call(n,(e=>e.name===a));if(i)return!i(r,l,e);var o,s=this.checkFilterInclude(a);return(0,S.default)(r)&&(0,S.default)(l)?s?(0,m.default)(o=r.toLowerCase()).call(o,l.toLowerCase())<0:r.toLowerCase()!==l.toLowerCase():!(0,_.default)(r,l)}))})),(0,w.default)(this,"checkFilterInclude",(e=>{var{searchFilters:t}=this.props,a=(0,v.default)(t).call(t,(t=>t.name===e));return(0,C.default)(a,"include")?a.include:!(0,C.default)(a,"options")}))}getPagination(e){var{pagination:t}=this.props;return t&&L(L({},t),{},{total:e.length})}render(){var{className:e,isLoading:t,rowSelection:a,footer:n,childrenColumnName:r}=this.props,l=this.getColumns(),i=this.getDataSource();return N.default.createElement(b.default,{className:(0,E.default)(P.default["sl-simple-table"],"sl-simple-table",e),columns:l,dataSource:i,loading:t,onChange:this.handleChange,pagination:this.getPagination(i),rowSelection:a,sortDirections:["ascend","descend","ascend"],showSorterTooltip:!1,footer:n,onRow:this.onRow,childrenColumnName:r})}}t.default=R,(0,w.default)(R,"propTypes",{data:T.default.array.isRequired,filters:T.default.object,searchFilters:T.default.array,columns:T.default.array.isRequired,className:T.default.string,onChange:T.default.func,isLoading:T.default.bool,rowSelection:T.default.object,pagination:T.default.oneOfType([T.default.object,T.default.bool]),filterByBackend:T.default.bool,isSortByBack:T.default.bool,defaultSortKey:T.default.string,defaultSortOrder:T.default.string,onRow:T.default.func,childrenColumnName:T.default.string}),(0,w.default)(R,"defaultProps",{filters:{},searchFilters:[],isLoading:!1,rowSelection:null,pagination:{},filterByBackend:!1,isSortByBack:!1,defaultSortKey:"",defaultSortOrder:""})},1518:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(54)),u=o(n(642));n(231);var d=o(n(341)),c=o(n(641));n(568);var f=o(n(415)),p=o(n(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),m=o(n(16)),g=(n(564),n(161),o(n(4))),v=o(n(1868));function y(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(y=function(e){return e?a:t})(e)}class b extends h.Component{static propTypes(){return{total:m.default.number,currentDataSize:m.default.number.isRequired,current:m.default.number.isRequired,pageSize:m.default.number.isRequired,defaultCurrent:m.default.number,defaultPageSize:m.default.number,pageSizeOptions:m.default.array,onChange:m.default.func,isLoading:m.default.bool,className:m.default.object}}constructor(e){super(e),(0,p.default)(this,"onChange",((e,t)=>{var{onChange:a}=this.props;a&&a(e,t)})),(0,p.default)(this,"onChangePageSize",(e=>{this.setState({pageSize:e},(()=>{this.onChange(1,e)}))})),(0,p.default)(this,"onClickPre",(()=>{var{current:e,pageSize:t}=this.state;1!==e&&this.setState({current:e-1},(()=>{this.onChange(e-1,t)}))})),(0,p.default)(this,"onClickNext",(()=>{var{current:e,pageSize:t,currentDataSize:a}=this.state;a{var{onFocusChange:t}=this.props;t&&t(e)})),(0,p.default)(this,"onFocus",(()=>{this.onFocusChange(!0)})),(0,p.default)(this,"onBlur",(()=>{this.onFocusChange(!1)}));var{current:t,pageSize:a,defaultCurrent:n,defaultPageSize:r,currentDataSize:l,isLoading:i,total:o}=e;this.state={current:t||n,pageSize:a||r,currentDataSize:l,isLoading:i,total:o}}static getDerivedStateFromProps(e,t){if(e.currentDataSize!==t.currentDataSize||e.current&&e.current!==t.current||e.isLoading!==t.isLoading||e.total!==t.total){var{currentDataSize:a,current:n=1,isLoading:r,total:l}=e;return{currentDataSize:a,current:n,isLoading:r,total:l}}return null}checkNextByTotal(){var{pageSize:e,total:t,current:a}=this.state;return void 0===t||!!t&&a({label:t("{pageSize} items/page",{pageSize:e}),value:e})));return h.default.createElement(f.default,{className:v.default["page-select"],options:r,value:n,defaultValue:a,onChange:e=>{this.onChangePageSize(e)}})}render(){var{current:e,currentDataSize:t,pageSize:a,isLoading:n}=this.state,{className:r}=this.props,l=n||1===e,i=n||t{}})},1519:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var s=o(n(1247));n(1244);var u=o(n(1245));n(584);var d=o(n(420));n(568);var c=o(n(415)),f=o(n(343)),p=o(n(58)),h=o(n(35)),m=o(n(1314)),g=o(n(601)),v=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),y=(n(161),o(n(1875)));function b(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(b=function(e){return e?a:t})(e)}class x extends v.Component{constructor(e){super(e),(0,h.default)(this,"onChange",((e,t)=>{var{onChange:a,isWrappedValue:n}=this.props;a&&a(n?t:e)})),(0,h.default)(this,"getValue",(()=>{var{value:e,isWrappedValue:t}=this.props;return void 0===e?e:t?e.value:e})),(0,h.default)(this,"onCheckChange",(()=>{var{selectAll:e}=this.state,{options:t,checkOptions:a}=this.props;this.setState({selectAll:1-e},this.onChange(1===e?a[a.length-1].value:t[t.length-1].value))}));var{checkOptions:t}=e;t&&(this.state={selectAll:!1})}render(){var e=this.props,{value:a,placeholder:n=t("Please select"),isWrappedValue:r,checkOptions:l,checkBoxInfo:i,allowClear:o=!0,showSearch:h=!0}=e,b=(0,p.default)(e,["value","placeholder","isWrappedValue","checkOptions","checkBoxInfo","allowClear","showSearch"]);if((0,g.default)(a)||(0,m.default)(a))return v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange}));if(l){var{options:x}=this.props,{selectAll:w}=this.state,k=v.default.createElement(d.default,{onChange:this.onCheckChange,checked:w},i||t("Show all Data"));return v.default.createElement(s.default,{gutter:24},v.default.createElement(u.default,{span:12},v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange,value:this.getValue(),options:1===w?l:x}))),v.default.createElement(u.default,{span:12,className:y.default.checkbox},k))}return v.default.createElement(c.default,(0,f.default)({},b,{allowClear:o,showSearch:h,placeholder:n,onChange:this.onChange,value:this.getValue()}))}}a.default=x},1534:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(86));n(1261);var h=f(n(1262));n(1246);var m=f(n(1247));n(1244);var g=f(n(1245));n(584);var v=f(n(420));n(1278);var y=f(n(1279));n(568);var b=f(n(415)),x=f(n(35)),w=f(n(0)),k=(n(161),f(n(16))),C=f(n(1899));function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{var{type:a}=this.state;a?this.setState({errorMsg:void 0,validateStatus:"success"},e):this.setState({errorMsg:t("Please select a type!"),validateStatus:"error"},e)})),(0,x.default)(this,"onChange",(()=>{this.checkVolume((()=>{var{onChange:e,options:a=[]}=this.props;if(e){var{type:n,deleteType:r}=this.state,l=1===r?t("Deleted with the instance"):t("Not deleted with the instance"),i=(0,p.default)(a).call(a,(e=>e.value===n));e(M(M({},this.state),{},{deleteTypeLabel:l,typeOption:i}))}}))})),(0,x.default)(this,"onSelectChange",(e=>{this.setState({type:e},this.onChange)})),(0,x.default)(this,"onInputChange",(e=>{this.setState({size:e},this.onChange)})),(0,x.default)(this,"onDeleteChange",(()=>{var{deleteType:e}=this.state;this.setState({deleteType:1-e},this.onChange)}));var{type:a,size:n,deleteType:r}=e.value||{},{minSize:l}=e;this.state={type:a,size:n,deleteType:r,minSize:l}}static getDerivedStateFromProps(e,t){if(e.options!==t.options||e.minSize!==t.minSize){var{options:a,value:n,minSize:r}=e;return{options:a,type:n.type,minSize:r}}return null}componentDidMount(){this.onChange()}render(){var{options:e,type:a,size:n,deleteType:r,validateStatus:l,errorMsg:i,minSize:o}=this.state,{name:s,showDelete:u=!0}=this.props,d=w.default.createElement(b.default,{value:a,options:e,onChange:this.onSelectChange,className:C.default.select,placeholder:t("Please select type")}),c=w.default.createElement(y.default,{value:n,onChange:this.onInputChange,min:o,style:{maxWidth:"60%"},precision:0,formatter:e=>"$ ".concat(e).replace(/\D/g,""),onInput:e=>this.onInputChange(1*e)}),f=1===r,p=u?w.default.createElement(v.default,{onChange:this.onDeleteChange,checked:f},t("Deleted with the instance")):null;return w.default.createElement(h.default.Item,{className:C.default["instance-volume"],name:s,validateStatus:l,help:i},w.default.createElement(m.default,{gutter:24},w.default.createElement(g.default,{span:8},w.default.createElement("span",{className:C.default.label},t("Type")),d),w.default.createElement(g.default,{span:14},w.default.createElement("span",{className:C.default.label},t("Size")),c,w.default.createElement("span",{className:C.default["size-label"]},"GiB"),p)))}}a.default=S,(0,x.default)(S,"propTypes",{options:k.default.array,value:k.default.any,minSize:k.default.number}),(0,x.default)(S,"defaultProps",{options:[],value:{},minSize:0})},1552:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1278);var h=p(n(1279)),m=p(n(343)),g=p(n(35)),v=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),y=(n(161),p(n(16))),b=p(n(1963));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{var{onChange:t}=this.props;t&&t(e)})),(0,g.default)(this,"onCpuChange",(e=>{this.onChange(k(k({},this.state),{},{cpu:e}))})),(0,g.default)(this,"onRamChange",(e=>{this.onChange(k(k({},this.state),{},{ram:e}))})),this.state={cpu:1,ram:512}}static getDerivedStateFromProps(e,t){var{cpu:a,ram:n}=e.value||{};return a!==t.cpu||n!==t.ram?{cpu:a,ram:n}:null}render(){var{cpu:e,ram:a}=this.state,n={min:1,precision:0,style:{width:120},formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return v.default.createElement(v.default.Fragment,null,v.default.createElement("span",{className:b.default.cpu},t("CPU(Core)")),v.default.createElement(h.default,(0,m.default)({value:e,onChange:this.onCpuChange},n)),v.default.createElement("span",{className:b.default.ram},t("RAM (MiB)")),v.default.createElement(h.default,(0,m.default)({value:a,onChange:this.onRamChange},n)))}}a.default=C,(0,g.default)(C,"propTypes",{onChange:y.default.func,value:y.default.object}),(0,g.default)(C,"defaultProps",{onChange:null,value:{cpu:1,ram:1024}})},1553:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.getBase64=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))},t.getText=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsText(e,"UTF-8"),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))},t.getArrayBuffer=function(e){return new l.default(((t,a)=>{var n=new FileReader;n.readAsArrayBuffer(e),n.onload=()=>t(n.result),n.onerror=e=>a(e)}))};var l=r(a(63))},1563:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=function(e){var{content:a,defaultCollapsed:n=!1,size:r="small",ableAuto:l=!0,tip:i=t("When auto-expand/close is enabled, if there is no operation in the pop-up window, the pop-up window will be closed automatically after { seconds } seconds, and it will be automatically expanded when the displayed content changes.",{seconds:v}),checkValue:o=""}=e,[g,y]=(0,m.useState)(n),[b,x]=(0,m.useState)(l),[w,k]=(0,m.useState)(!1),C=(0,m.useRef)(),_=()=>{C.current&&clearTimeout(C.current)},M=()=>{y(!1)},S=()=>{y(!0),_()},I=()=>{g||(C.current&&_(),C.current=(0,h.default)((()=>{g||S()}),1e3*v))};(0,m.useEffect)((()=>{b&&(g||(w?_():I()))}),[g,w]),(0,m.useEffect)((()=>(b&&(M(),I()),()=>{_()})),[o]);var N=e=>{x(e)},E=()=>{k(!0)},T=()=>{k(!1)};if(g)return m.default.createElement("div",{style:{padding:8},onMouseEnter:E,onMouseLeave:T,className:"content-wrapper"},m.default.createElement(f.default,{title:t("Expand")},m.default.createElement(d.default,{onClick:M,size:r},m.default.createElement(c.default,null))));var A=m.default.createElement(f.default,{title:t("Close")},m.default.createElement(d.default,{onClick:S,size:r},m.default.createElement(u.default,null)));return m.default.createElement("div",{onMouseEnter:E,onMouseLeave:T,className:"content-wrapper",style:{minWidth:150}},m.default.createElement(s.default,{title:l?m.default.createElement(f.default,{title:i},m.default.createElement(p.default,{size:"small",checked:b,onChange:N})):null,extra:A},a))},n(1280);var s=o(n(1281)),u=o(n(1564));n(231);var d=o(n(341)),c=o(n(1565));n(344);var f=o(n(202));n(1445);var p=o(n(1446)),h=o(n(583)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161),n(564);function g(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(g=function(e){return e?a:t})(e)}var v=5},1566:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=function(e){var{quotas:t=[],loading:a}=e;if(a)return o.default.createElement(i.default,null);var n=(0,l.default)(t).call(t,((e,a)=>{var{name:n}=e,r=a===t.length-1?{}:{marginBottom:10};return o.default.createElement("div",{key:n,style:r},function(e){var{type:t="ring",limit:a,unlimitByTable:n=!1}=e;if(-1===a&&n)return o.default.createElement(d.default,e);if("ring"===t)return o.default.createElement(s.default,e);if("line"===t)return o.default.createElement(u.default,e)}(e))}));return o.default.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",overflowY:"auto",overflowX:"hidden",maxHeight:400}},n)};var l=r(a(54));a(1317);var i=r(a(1318)),o=r(a(0)),s=(a(161),r(a(1449))),u=r(a(2019)),d=r(a(2020))},1569:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.AuthCatalogStore=void 0;var f=c(a(35)),p=c(a(50)),h=c(a(53));function m(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function g(e){for(var t=1;t{var t;return g(g({},e),{},{region:e.endpoints&&(null===(t=e.endpoints[0])||void 0===t?void 0:t.region)||""})}}}t.AuthCatalogStore=v;var y=new v;t.default=y},1782:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=a(0),i=r(a(1783)),o=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(5)]).then(a.t.bind(null,2084,7)))),s=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(7)]).then(a.t.bind(null,3503,7)))),u=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(18)]).then(a.t.bind(null,3772,7)))),d=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(15)]).then(a.t.bind(null,3837,7)))),c=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(11)]).then(a.t.bind(null,4021,7)))),f=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(8)]).then(a.t.bind(null,4090,7)))),p=(0,l.lazy)((()=>Promise.all([a.e(0),a.e(13)]).then(a.t.bind(null,4132,7)))),h=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(10)]).then(a.t.bind(null,4134,7)))),m=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(19)]).then(a.t.bind(null,4149,7)))),g=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4155,7)))),v=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4199,7)))),y=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(17)]).then(a.t.bind(null,4242,7)))),b=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(9)]).then(a.t.bind(null,4305,7)))),x=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(2)]).then(a.t.bind(null,4328,7)))),w=(0,l.lazy)((()=>Promise.resolve().then(a.t.bind(null,579,7)))),k=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(3)]).then(a.t.bind(null,4368,7)))),C=[{path:"/",component:i.default,routes:[{path:"/base",component:o},{path:"/compute",component:s},{path:"/storage",component:u},{path:"/network",component:d},{path:"/identity",component:c},{path:"/configuration-admin",component:f},{path:"/management",component:p},{path:"/heat",component:h},{path:"/monitor-center",component:g},{path:"/user",component:m},{path:"/database",component:v},{path:"/share",component:y},{path:"/container-infra",component:b},{path:"/container-service",component:x},{path:"/ha",component:k},{path:"*",component:w}]}];t.default=C},1783:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.BaseLayout=void 0;var h=p(n(29)),m=p(n(28)),g=p(n(86)),v=p(n(54));n(1325);var y=p(n(1326)),b=p(n(1503)),x=p(n(58)),w=p(n(343)),k=p(n(35));n(1431);var C=p(n(1432)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=z(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),M=n(412),S=n(36),I=p(n(237)),N=n(163),E=(n(564),p(n(1251))),T=(n(161),p(n(1794))),A=n(567),j=p(n(2057)),P=p(n(2067)),D=p(n(2068)),L=p(n(2069)),O=p(n(2078)),R=p(n(1454));function z(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(z=function(e){return e?a:t})(e)}function U(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function F(e){for(var t=1;t(this.props.rootStore.user||{}).keystone_token),(()=>{(0,A.setRouteMap)(this.menu)}))),(0,k.default)(this,"filterMenuByHidden",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(0===e.length)return e;var a=(0,h.default)(e).call(e,(e=>!e.hidden));return(0,m.default)(a).call(a,(e=>{e.children=t.filterMenuByHidden(e.children)})),a})),(0,k.default)(this,"checkItemEndpoints",(e=>this.rootStore.checkEndpoint(e))),(0,k.default)(this,"getMenuAllowed",(e=>{var t=[];return(0,m.default)(e).call(e,(e=>{var a=this.updateMenuItemByAllowed(e);a&&t.push(a)})),t})),(0,k.default)(this,"onCollapseChange",(e=>{this.setState({collapsed:e})})),(0,k.default)(this,"checkPath",((e,t,a)=>e instanceof RegExp?e.test(t):a?t===a:e===t)),(0,k.default)(this,"getCurrentMenu",(e=>{var t,a,n=(0,g.default)(t=this.menuAll).call(t,(t=>this.checkPath(t.path,e)));if(n)return[n];var r=!1,l=[];return(0,m.default)(a=this.menuAll).call(a,(t=>{if(!r&&t.children){var a,n,i=(0,g.default)(a=t.children).call(a,(t=>this.checkPath(t.path,e)));if(i&&(r=!0,l=[t,i]),!r)(0,m.default)(n=t.children).call(n,(a=>{if(a.children){var n,i=(0,g.default)(n=a.children).call(n,(t=>this.checkPath(t.path,e)));i&&(r=!0,l=[t,a,i])}}))}})),l})),(0,k.default)(this,"clearAllNotice",(()=>{for(var e=document.getElementsByClassName("ant-notification-notice");e.length>0;)e[0].parentNode.removeChild(e[0]);this.rootStore.clearNoticeCount()})),(0,k.default)(this,"renderHeader",(()=>_.default.createElement(T.default,(0,w.default)({},this.props,{isAdminPage:this.isAdminPage,navItems:this.globalNav,isUserCenterPage:this.isUserCenterPage})))),this.state={collapsed:!1},this.init()}componentWillUnmount(){this.autoReaction()}get isAdminPage(){var{pathname:e}=this.props.location;return(0,N.isAdminPage)(e)}get isUserCenterPage(){var{pathname:e}=this.props.location;return(0,N.isUserCenterPage)(e)}get rootStore(){return this.props.rootStore}get noticeCount(){return this.rootStore.noticeCount-(this.rootStore.noticeCountWaitRemove||0)}get user(){return(0,S.toJS)(this.rootStore.user)||null}get hasAdminRole(){return this.user&&this.rootStore.hasAdminRole}get hasAdminPageRole(){return this.user&&this.rootStore.hasAdminPageRole}get originMenu(){return this.isUserCenterPage?(0,D.default)(I.default.t):this.isAdminPage?(0,j.default)(I.default.t):(0,P.default)(I.default.t)}get globalNav(){return this.menu}get menu(){var e=this.filterMenuByHidden(this.originMenu),t=this.getMenuAllowed(e);return(0,h.default)(t).call(t,(e=>{var{hasChildren:t=!0,children:a}=e;return!t||t&&a.length}))}get menuAll(){return this.getMenuAllowed(this.originMenu)}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,A.getPath)({key:n,params:t,query:a})}updateMenuItemByAllowed(e){var t,{policy:a,endpoints:n,children:r=[]}=e,l=(0,x.default)(e,["policy","endpoints","children"]);if(a&&!(0,E.default)({policy:a}))return null;if(n&&!this.checkItemEndpoints(n))return null;if(0===r.length)return e;var i=(0,h.default)(t=(0,v.default)(r).call(r,(e=>this.updateMenuItemByAllowed(e)))).call(t,(e=>!!e));return F(F({},l),{},{children:i})}init(){this.isAdminPage&&!this.hasAdminPageRole&&(window.location.href="/base/overview"),this.routes=this.props.route.routes,(0,A.setRouteMap)(this.menu)}renderNotice(){return this.noticeCount<3?null:_.default.createElement("div",{className:R.default.notice,onClick:this.clearAllNotice},_.default.createElement(b.default,null),_.default.createElement("span",{style:{marginLeft:8,fontSize:12}},t("Close all notifications.")))}render(){var{pathname:e}=this.props.location,t=this.getCurrentMenu(e);return window.opener?_.default.createElement(y.default,{visible:!0,closable:!1,footer:null,style:{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},bodyStyle:{textAlign:"center",fontSize:"18px",padding:"20px"}},_.default.createElement("p",null,"Connexion,Please wait... ")):_.default.createElement("div",{className:R.default["base-layout"]},this.renderNotice(),_.default.createElement(B,{className:R.default.header},this.renderHeader()),_.default.createElement(O.default,{pathname:e,isAdminPage:this.isAdminPage,menu:this.menu,menuAll:this.menuAll,currentRoutes:t,onCollapseChange:this.onCollapseChange}),_.default.createElement(L.default,(0,w.default)({},this.props,this.state,{currentRoutes:t,isAdminPage:this.isAdminPage})))}}a.BaseLayout=V;var K=(0,M.inject)("rootStore")((0,M.observer)(V));a.default=K},1794:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=function(e){var{isAdminPage:t=!1,navItems:a=[]}=e;return l.default.createElement("div",{className:u.default.header},l.default.createElement(i.default,{navItems:a}),!t&&l.default.createElement(o.default,null),l.default.createElement(s.default,e))};var l=r(a(0)),i=r(a(1795)),o=r(a(1809)),s=r(a(2050)),u=r(a(1346))},1795:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.GlobalNav=void 0;var p=f(n(605));n(1796);var h=f(n(1799)),m=f(n(35)),g=f(n(0)),v=n(412),y=(n(564),f(n(16))),b=(n(161),f(n(1800))),x=n(1433),w=f(n(1801)),k=f(n(1804)),C=f(n(1807));function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{this.setState({visible:!1})})),(0,m.default)(this,"onToggleOpen",(()=>{this.setState((e=>{var{visible:t}=e;return{visible:!t}}))})),this.state={visible:!1}}render(){var{visible:e}=this.state,{navItems:a=[]}=this.props,n={top:globalCSS.headerHeight,height:"calc(100% - ".concat(globalCSS.headerHeight,")")},r=Number(globalCSS.productsColumnWidth.replace("px",""));return g.default.createElement(g.default.Fragment,null,g.default.createElement("div",{className:C.default["global-nav-icon"],onClick:this.onToggleOpen},g.default.createElement("img",{src:b.default,alt:"menu-icon",className:C.default["global-nav-icon-icon"]})),g.default.createElement(h.default,{title:t("Service List"),className:C.default["drawer-left"],placement:"left",closable:!1,onClose:this.onClose,visible:e,style:n,bodyStyle:{padding:0},width:r,destroyOnClose:!0},g.default.createElement(w.default,{items:a,onClose:this.onClose})),g.default.createElement(h.default,{title:null,className:C.default["drawer-right"],placement:"left",closable:!0,onClose:this.onClose,visible:e,style:M(M({},n),{},{left:e?globalCSS.productsColumnWidth:0}),bodyStyle:{padding:0},mask:!0,width:4*r,maskStyle:{backgroundColor:"transparent"},closeIcon:g.default.createElement(p.default,{style:{fontSize:"20px"}})},g.default.createElement("div",{className:C.default.main},g.default.createElement(k.default,{items:a,onClose:this.onClose}))))}}a.GlobalNav=S,(0,m.default)(S,"propTypes",{navItems:y.default.oneOfType([y.default.arrayOf(x.navItemPropType),y.default.array])}),(0,m.default)(S,"defaultProps",{navItems:[]});var I=(0,v.observer)(S);a.default=I},1800:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAA4CAYAAACPKLr2AAAAk0lEQVRoQ+3Y0QnAMAgA0bj/0HaIQzjK9d/EPE2QzpN/I8/vlSCtUIIJUgEaXw9iwd1dushl/JQg5PULwgOeh/fMUOIEE6QCNL4eTJAK0Hh/DzZuwRr7xy19iWEFzsP9t/icAG6QIATsByYFTDBBLEAX8L+D+mGhBGET+gdWeMDzcP8tPieAGyQIAZtmKGCC/xf8AMV4MAkwBaLlAAAAAElFTkSuQmCC"},1801:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(54)),i=r(a(35)),o=r(a(0)),s=a(204),u=r(a(16)),d=a(1433),c=r(a(1802));class f extends o.default.Component{constructor(){super(...arguments),(0,i.default)(this,"renderItem",(e=>o.default.createElement("div",{className:c.default.item,key:e.path},o.default.createElement(s.Link,{onClick:this.props.onClose,to:(0,d.getFirstLevelNavItemLink)(e),className:c.default["item-label"]},e.name))))}render(){var{items:e}=this.props;return o.default.createElement("div",{id:"global-nav-left",className:c.default.left},(0,l.default)(e).call(e,this.renderItem))}}t.default=f,(0,i.default)(f,"propTypes",{items:u.default.oneOfType([u.default.arrayOf(d.navItemPropType),u.default.array]),onClose:u.default.func}),(0,i.default)(f,"defaultProps",{items:[]})},1802:function(e,t,a){var n=a(1803);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1803:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__item--2Y2IS {\n padding: 12px 24px;\n cursor: pointer;\n}\n.index__item--2Y2IS:hover {\n background-color: rgba(0, 0, 0, 0.05);\n}\n.index__item-label--sz6t1 {\n display: block;\n width: 100%;\n color: #000;\n font-size: 13px;\n}\n.index__item-label--sz6t1:hover {\n color: #000;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",item:"index__item--2Y2IS","item-label":"index__item-label--sz6t1"}},1804:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(430)),h=f(n(28)),m=f(n(164)),g=f(n(29)),v=f(n(54)),y=f(n(77));n(569);var b=f(n(1253)),x=f(n(612)),w=f(n(35)),k=f(n(0)),C=n(204),_=(n(161),n(564),f(n(16))),M=n(1433),S=f(n(1805));function I(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function N(e){for(var t=1;t{var{value:t}=e.target;this.getNavItemsBySearch(t)})),(0,w.default)(this,"onSearch",(e=>{this.getNavItemsBySearch(e)})),(0,w.default)(this,"getNavItemsBySearch",(e=>{var t,a=(0,p.default)(t=(e||"").toLowerCase()).call(t),{items:n}=this.props,r=[];(0,h.default)(n).call(n,(e=>{if(a){var t,{name:n,children:l=[]}=e;if((0,m.default)(t=n.toLowerCase()).call(t,a))r.push(e);else{var i=(0,g.default)(l).call(l,(e=>{var t;return(0,m.default)(t=e.name.toLowerCase()).call(t,a)}));i.length&&r.push(N(N({},e),{},{children:i}))}}else r.push(e)})),this.setState({currentItems:r})})),(0,w.default)(this,"renderNavItemChildren",(e=>{var{children:t=[]}=e,a=t.length?t:[e],{onClose:n}=this.props;return(0,v.default)(a).call(a,(e=>{var t,{name:a,path:r}=e;return k.default.createElement("div",{key:(0,y.default)(t="".concat(a,"-")).call(t,r),className:S.default["children-item"]},k.default.createElement(C.Link,{onClick:n,to:r},k.default.createElement("span",{className:S.default["link-name"]},a)))}))})),(0,w.default)(this,"renderNavItem",(e=>{var{name:t=""}=e||{};return k.default.createElement("div",{className:S.default["nav-item"],key:e.name},k.default.createElement("div",{className:S.default.title},t),k.default.createElement("div",{classnames:S.default.children},this.renderNavItemChildren(e)))})),this.state={currentItems:e.items||[]}}renderSearch(){return k.default.createElement("div",{className:S.default.search},k.default.createElement(b.default,{prefix:k.default.createElement(x.default,null),placeholder:t("Search"),allowClear:!0,onChange:this.onInputChange}))}renderNavItems(){var{currentItems:e=[]}=this.state;return k.default.createElement("div",{className:S.default.right},(0,v.default)(e).call(e,this.renderNavItem))}render(){return k.default.createElement("div",{id:"global-nav-right"},this.renderSearch(),this.renderNavItems())}}a.default=E,(0,w.default)(E,"propTypes",{items:_.default.oneOfType([_.default.arrayOf(M.navItemPropType),_.default.array]),onClose:_.default.func}),(0,w.default)(E,"defaultProps",{items:[]})},1805:function(e,t,a){var n=a(1806);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1806:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__right--2sYP_ {\n -webkit-columns: 200px 3;\n -moz-columns: 200px 3;\n columns: 200px 3;\n -webkit-column-gap: 12px;\n -moz-column-gap: 12px;\n column-gap: 12px;\n}\n.index__nav-item--1_at0 {\n display: inline-block;\n width: 100%;\n margin-bottom: 20px;\n -webkit-column-break-inside: avoid;\n -moz-column-break-inside: avoid;\n break-inside: avoid;\n}\n.index__nav-item--1_at0 .index__title--2wx19 {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n height: 32px;\n margin-bottom: 4px;\n color: #000;\n font-weight: 600;\n font-size: 14px;\n line-height: 22px;\n -webkit-transition: color 0.2s ease;\n transition: color 0.2s ease;\n}\n.index__children-item--30iPf {\n position: relative;\n height: 32px;\n margin-right: 8px;\n line-height: 32px;\n cursor: pointer;\n}\n.index__children-item--30iPf a {\n display: block;\n}\n.index__children-item--30iPf:hover {\n color: #000;\n background-color: rgba(0, 0, 0, 0.05);\n}\n.index__children-item--30iPf:hover .index__link-name--2SSup {\n color: #000;\n}\n.index__children-item--30iPf .index__link-name--2SSup {\n color: #000;\n}\n.index__search--TO2Ca {\n width: 60%;\n margin-top: -8px;\n margin-bottom: 16px;\n margin-left: 0;\n}\n.index__search--TO2Ca .ant-input-affix-wrapper {\n background-color: #fff;\n border: 1px solid #d9d9d9;\n border-color: #d9d9d9;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__search--TO2Ca .anticon-search {\n color: rgba(0, 0, 0, 0.45) !important;\n}\n.index__search--TO2Ca .ant-input {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__search--TO2Ca .ant-input:hover {\n border: #0068ff;\n}\n.index__search--TO2Ca .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover {\n border-color: #0068ff;\n}\n.index__search--TO2Ca .ant-input-clear-icon,\n.index__search--TO2Ca .ant-input-clear-icon:active {\n color: rgba(0, 0, 0, 0.85);\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",right:"index__right--2sYP_","nav-item":"index__nav-item--1_at0",title:"index__title--2wx19","children-item":"index__children-item--30iPf","link-name":"index__link-name--2SSup",search:"index__search--TO2Ca"}},1807:function(e,t,a){var n=a(1808);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1808:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__global-nav-icon--oF9N7 {\n position: relative;\n float: left;\n width: 40px;\n height: 40px;\n color: #fff;\n font-size: 16px;\n line-height: 40px;\n text-align: center;\n background-color: #0068ff;\n cursor: pointer;\n}\n.index__global-nav-icon--oF9N7:hover {\n background-color: #0068ff;\n}\n.index__global-nav-icon-icon--10OVj {\n width: 20px;\n}\n.index__main--22yB3 {\n padding: 32px 32px 0;\n}\n.index__drawer-left--uUdzj .ant-drawer-header {\n background-color: #fff;\n border-bottom-color: #f0f0f0;\n}\n.index__drawer-left--uUdzj .ant-drawer-header .ant-drawer-title {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__drawer-left--uUdzj .ant-drawer-body {\n background-color: #fff;\n}\n.index__drawer-right--31wWn .ant-drawer-body {\n background-color: #fff;\n}\n.index__drawer-right--31wWn .ant-drawer-close {\n color: rgba(0, 0, 0, 0.45);\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","global-nav-icon":"index__global-nav-icon--oF9N7","global-nav-icon-icon":"index__global-nav-icon-icon--10OVj",main:"index__main--22yB3","drawer-left":"index__drawer-left--uUdzj","drawer-right":"index__drawer-right--31wWn"}},1809:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.ProjectDropdown=void 0,a(1300);var l=r(a(1301)),i=r(a(1505)),o=r(a(1434));a(347);var s=r(a(348)),u=r(a(0)),d=a(412),c=(a(161),a(564),r(a(1302))),f=r(a(1346)),p=r(a(1821));class h extends u.default.Component{get user(){var{user:e}=this.props.rootStore;return e}get project(){var{project:{id:e="",name:t="",domain:{name:a}={}}={}}=this.user||{};return{projectId:e,projectName:t,userDomainName:a}}render(){if(!this.user)return u.default.createElement(s.default,{size:"small",style:{marginLeft:8,marginRight:8,marginTop:-24}});var{projectName:e,userDomainName:t}=this.project;return u.default.createElement("div",{className:f.default.project,id:"project-switch",style:{paddingLeft:"8px"}},u.default.createElement(c.default,{actions:{moreActions:[{action:p.default}]}}),u.default.createElement(o.default,{style:{marginRight:10}}),u.default.createElement("span",null,e),u.default.createElement(i.default,{style:{color:"#A3A3A3",marginLeft:24}}),u.default.createElement(l.default,{type:"vertical"}),u.default.createElement("span",{className:f.default.domain},t))}}t.ProjectDropdown=h;var m=(0,d.inject)("rootStore")((0,d.observer)(h));t.default=m},1815:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__confirm-modal--3q6IU .ant-modal-confirm-body > .anticon {\n margin-right: 20px;\n font-size: 18px;\n}\n.index__confirm--3w0Sc {\n color: #fedf40 !important;\n}\n.index__error--2QqQF {\n color: #eb354d !important;\n}\n.index__success--3lQal {\n color: #57e39b !important;\n}\n.index__warn--ZLd6Q {\n color: #fedf40 !important;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","confirm-modal":"index__confirm-modal--3q6IU",confirm:"index__confirm--3w0Sc",error:"index__error--2QqQF",success:"index__success--3lQal",warn:"index__warn--ZLd6Q"}},1816:function(e,t,a){var n=a(1817);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1817:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__modal-action--t2EeP .ant-modal-body {\n padding: 0 0 16px;\n}\n",""]),t.locals={"modal-action":"index__modal-action--t2EeP"}},1818:function(e,t,a){var n=a(1819);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1819:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__first-action--2OPwj {\n padding: 0;\n text-align: left;\n}\n.index__first-action--2OPwj span {\n display: block;\n max-width: 48px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__more-action--3nzAh {\n padding: 0;\n}\n.index__action-sub-menu--m8uMB {\n padding: 0;\n}\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-submenu-popup ul {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-item,\n.index__action-sub-menu--m8uMB .ant-dropdown-menu-submenu-title {\n padding: 0 12px;\n}\n.index__more-action-btn--1CkV8 {\n width: 100%;\n text-align: left;\n}\n.index__single-more-action--1AkZ2 .ant-btn-link {\n width: auto;\n}\n.index__action-buttons--3ReIW {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n",""]),t.locals={"first-action":"index__first-action--2OPwj","more-action":"index__more-action--3nzAh","action-sub-menu":"index__action-sub-menu--m8uMB","more-action-btn":"index__more-action-btn--1CkV8","single-more-action":"index__single-more-action--1AkZ2","action-buttons":"index__action-buttons--3ReIW"}},1820:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__menu--TIGc7 {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__menu--TIGc7 .anticon {\n margin-right: 8px;\n}\n.index__menu--TIGc7 .ant-dropdown-menu-item {\n min-width: 245px;\n color: rgba(0, 0, 0, 0.85);\n}\n.index__menu--TIGc7 .ant-dropdown-menu-item:hover {\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n}\n.index__menu--TIGc7 .index__no-hover--3nEW_ {\n overflow: hidden;\n}\n.index__menu--TIGc7 .index__no-hover--3nEW_:hover {\n background-color: #fff;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 {\n padding: 0 12px;\n font-weight: bold;\n line-height: 40px;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 .index__user-label--2mhYg {\n margin-right: 8px;\n}\n.index__menu--TIGc7 .index__name-item--3-Ls5 span {\n line-height: 40px;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z {\n line-height: 30px;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z .ant-btn {\n color: #0068ff;\n}\n.index__menu--TIGc7 .index__menu-item--2EH8z .ant-btn-link[disabled] {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__menu--TIGc7 .index__menu-btn--wBMeV {\n color: #0068ff;\n}\n.index__menu--TIGc7 .index__menu-divider--3m2zd {\n background-color: #fff;\n}\n.index__no-padding-top--2hYAA {\n padding-top: 0;\n}\n.index__logout--2w9f0 {\n float: right;\n line-height: 40px;\n}\n.index__right--X_kh6 {\n position: absolute;\n top: 0;\n right: 31px;\n line-height: 40px;\n}\n.index__right--X_kh6 .index__action--1gM_W {\n display: inline-block;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu {\n width: 170px;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu-item:hover,\n.index__project-menu--3gMKs .ant-dropdown-menu-submenu-title:hover {\n cursor: pointer;\n}\n.index__project-menu--3gMKs .ant-dropdown-menu-item-disabled,\n.index__project-menu--3gMKs .ant-dropdown-menu-submenu-title-disabled {\n cursor: pointer;\n}\n.index__project-menu--3gMKs .index__title--3e97C {\n cursor: auto;\n}\n.index__project-menu--3gMKs .index__title--3e97C:hover {\n background-color: #fff;\n}\n.index__project--Iy5xg {\n float: left;\n font-size: 14px;\n line-height: 40px;\n cursor: pointer;\n}\n.index__project--Iy5xg .ant-divider {\n margin-right: 24px;\n margin-left: 24px;\n background-color: #d2d2d2;\n}\n.index__project--Iy5xg .ant-btn-link {\n position: absolute;\n min-width: 280px;\n min-height: 40px;\n}\n.index__header--138pB {\n position: relative;\n z-index: 200;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n height: 100%;\n padding-left: 0;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.85);\n background-color: #fff;\n -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n}\n.index__avatar--C9tqm {\n width: 30px;\n height: 30px;\n color: #bfbfbf;\n border: none;\n -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.09);\n}\n.index__domain--Q8Gpn {\n font-size: 14px;\n}\n.index__links--IHsTT {\n display: inline-block;\n margin-right: 20px;\n}\n.index__links--IHsTT .ant-divider {\n margin-right: 24px;\n margin-left: 24px;\n background-color: #d2d2d2;\n}\n.index__links--IHsTT .index__link--1PjXM {\n color: rgba(0, 0, 0, 0.85);\n}\n.index__links--IHsTT .index__link--1PjXM:hover {\n color: #0068ff;\n}\n.index__links--IHsTT .index__active--2ykOE {\n color: #0068ff;\n}\n.index__password-btn--1O5lH {\n max-width: 100px;\n}\n.index__password-btn--1O5lH span {\n max-width: 80px;\n}\n.index__single-link--1h19E {\n margin-right: 5px;\n color: #0068ff;\n}\n.index__single-link--1h19E:hover {\n color: #0068ff;\n}\n.index__token--2NsWx pre {\n padding: 0.4em 0.6em;\n white-space: pre-wrap;\n word-wrap: break-word;\n background: hsla(0, 0%, 58.8%, 0.1);\n border: 1px solid hsla(0, 0%, 39.2%, 0.2);\n border-radius: 3px;\n}\n.index__logo--VDnnm {\n float: left;\n width: 190px;\n height: 40px;\n line-height: 40px;\n text-align: center;\n}\n.index__logo--VDnnm img {\n height: 30px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",menu:"index__menu--TIGc7","no-hover":"index__no-hover--3nEW_","name-item":"index__name-item--3-Ls5","user-label":"index__user-label--2mhYg","menu-item":"index__menu-item--2EH8z","menu-btn":"index__menu-btn--wBMeV","menu-divider":"index__menu-divider--3m2zd","no-padding-top":"index__no-padding-top--2hYAA",logout:"index__logout--2w9f0",right:"index__right--X_kh6",action:"index__action--1gM_W","project-menu":"index__project-menu--3gMKs",title:"index__title--3e97C",project:"index__project--Iy5xg",header:"index__header--138pB",avatar:"index__avatar--C9tqm",domain:"index__domain--Q8Gpn",links:"index__links--IHsTT",link:"index__link--1PjXM",active:"index__active--2ykOE","password-btn":"index__password-btn--1O5lH","single-link":"index__single-link--1h19E",token:"index__token--2NsWx",logo:"index__logo--VDnnm"}},1821:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.ProjectSelect=void 0;var p=f(n(86)),h=f(n(63)),m=f(n(29)),g=f(n(54)),v=f(n(91)),y=f(n(58)),b=f(n(49)),x=f(n(35)),w=n(412),k=n(1241),C=n(1251),_=f(n(1255));function M(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class S extends k.ModalAction{constructor(){var e;super(...arguments),e=this,(0,x.default)(this,"state",{projectName:""}),(0,x.default)(this,"onSubmit",function(){var t=(0,b.default)((function*(t){var a,{project:{selectedRowKeys:n}}=t,r=n[0],l=(0,p.default)(a=e.projects).call(a,(e=>e.id===r)),{domain_id:i}=l||{},{rootStore:o}=e.props;try{return yield o.switchProject(r,i),e.routing.push("/base/overview"),h.default.resolve()}catch(e){return h.default.reject(e)}}));return function(e){return t.apply(this,arguments)}}())}init(){this.getAllUserProjects()}getAllUserProjects(){var e=this;return(0,b.default)((function*(){yield _.default.getUserProjects(),e.updateDefaultValue()}))()}get name(){return t("Switch Project")}static get modalSize(){return"large"}getModalSize(){return"large"}get messageHasItemName(){return!1}get user(){var{user:e}=this.props.rootStore;return e}get project(){var{project:{id:e="",name:t="",domain:{name:a}={}}={}}=this.user||{};return{projectId:e,projectName:t,userDomainName:a}}get projects(){var e,{projectName:t}=this.state,{data:a}=_.default.userProjects;return(0,m.default)(e=(0,g.default)(a).call(a,(e=>{var{id:t}=e;return function(e){for(var t=1;t{var a,n;return!t||((0,v.default)(a=e.name.toLowerCase()).call(a,t.toLowerCase())>=0||(0,v.default)(n=e.projectId.toLowerCase()).call(n,t.toLowerCase())>=0)}))}get defaultValue(){var e,{projectId:t=""}=this.project;return{project:{selectedRowKeys:[t],selectedRows:(0,m.default)(e=this.projects).call(e,(e=>e.id===t))}}}get formItems(){return[{name:"project",label:t("Owned Project"),type:"select-table",data:this.projects,isLoading:_.default.userProjects.isLoading,disabledFunc:e=>!e.enabled,filterParams:[{label:t("Project Name"),name:"name"}],columns:[{title:t("Project Name"),dataIndex:"name"},{title:t("ID"),dataIndex:"id"},{title:t("Enabled"),dataIndex:"enabled",valueRender:"yesNo"}]}]}}a.ProjectSelect=S,(0,x.default)(S,"id","project-id"),(0,x.default)(S,"title",t("Switch Project")),(0,x.default)(S,"buttonText"," "),(0,x.default)(S,"policy",C.allCanReadPolicy),(0,x.default)(S,"allowed",(()=>h.default.resolve(!0)));var I=(0,w.inject)("rootStore")((0,w.observer)(S));a.default=I},1822:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(63)),i=r(a(35)),o=r(a(1250)),s=a(567);class u extends o.default{static allowed(){return l.default.resolve()}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,s.getPath)({key:n,params:t,query:a})}}t.default=u,(0,i.default)(u,"id","formAction"),(0,i.default)(u,"actionType","link"),(0,i.default)(u,"title","form"),(0,i.default)(u,"buttonType","primary"),(0,i.default)(u,"isDanger",!1),(0,i.default)(u,"path","/"),(0,i.default)(u,"policy",""),(0,i.default)(u,"aliasPolicy","")},1833:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.type2component=void 0;var p=f(n(63)),h=f(n(77)),m=f(n(164)),g=f(n(343));n(1261);var v=f(n(1262));n(344);var y=f(n(202)),b=f(n(1299)),x=f(n(58)),w=f(n(35));n(1374);var k=f(n(1375));n(1848);var C=f(n(1851));n(1513);var _=f(n(1514));n(1278);var M=f(n(1279));n(1300);var S=f(n(1301));n(569);var I=f(n(1253)),N=f(n(177)),E=f(n(0)),T=f(n(16)),A=(n(161),n(564),f(n(1429))),j=f(n(1859)),P=f(n(1874)),D=f(n(1519)),L=f(n(1877)),O=f(n(1376)),R=f(n(1534)),z=f(n(1901)),U=f(n(1904)),F=f(n(1919)),B=f(n(1924)),V=f(n(1444)),K=f(n(1927)),Q=f(n(1930)),Y=f(n(1939)),G=f(n(1940)),H=f(n(1941)),W=f(n(1946)),q=f(n(1949)),$=f(n(1952)),Z=f(n(1953)),J=f(n(1552)),X=f(n(1965)),ee=f(n(1966)),te=f(n(1967)),ae=f(n(1970)),ne=f(n(1447)),re=f(n(1971)),le=f(n(1991)),ie=f(n(1995)),oe=f(n(1448)),se=f(n(1996)),ue=f(n(2001)),de=f(n(2002));function ce(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function fe(e){for(var t=1;t{var{selectedRowKeys:n=[]}=a||{};return 0===n.length?p.default.reject(new Error(e.placeholder||t("Please select {label}!",{label:e.label}))):p.default.resolve()})),(0,w.default)(this,"getDescriptionValidator",((e,a)=>{var n;return a&&a.length>255?p.default.reject(new Error((0,h.default)(n="".concat(t("Invalid: "))).call(n,t("The description can be up to 255 characters long.")))):p.default.resolve()}))}getComponentProps(e){switch(e){case"label":var{content:t,icon:a,iconType:n,showLoading:r}=this.props;return{content:t,icon:a,iconType:n,showLoading:r};case"divider":return{className:this.props.className};case"select":var l=this.props,{options:i,placeholder:o,mode:s,onChange:u,isWrappedValue:d,tip:c,disabled:f,showSearch:p,optionFilterProp:h="label",checkOptions:m,checkBoxInfo:g,allowClear:v,required:y}=l;return fe({options:i,placeholder:o,mode:s,onChange:u,isWrappedValue:d,tip:c,disabled:f,showSearch:p,optionFilterProp:h,checkOptions:m,checkBoxInfo:g,allowClear:y?v||!1:v},(0,x.default)(l,["options","placeholder","mode","onChange","isWrappedValue","tip","disabled","showSearch","optionFilterProp","checkOptions","checkBoxInfo","allowClear","required"]));default:var b=this.props,{validator:w}=b;return fe({},(0,x.default)(b,["validator"]))}}getFormItemProps(){var{name:e,label:t,type:a,help:n,extra:r,className:l,style:i,hidden:o,labelCol:s,wrapperCol:u,tip:d,dependencies:c}=this.props,f={name:e,label:this.renderLabel(t,d),help:n,extra:r,className:l,style:i,hidden:o,labelCol:s,wrapperCol:u,rules:this.getRules()};switch(c&&c.length>0&&(f.dependencies=c),a){case"title":return fe(fe({},f),{},{label:"",labelCol:null,wrapperCol:{xs:{span:24},sm:{span:24}}});case"label":return fe(fe({},f),{},{className:"form-item-text"});case"select-table":case"network-select-table":case"tab-select-table":case"instance-volume":case"network-select":case"add-select":case"descriptions":case"short-divider":case"transfer":case"NUMA":case"check-group":return fe(fe({},f),{},{wrapperCol:u||{xs:{span:24},sm:{span:t?18:24}}});default:return f}}getRules(){var{required:e,rules:a,validator:n,type:r="",otherRule:l,name:i,hidden:o,label:s,placeholder:u,hasRequiredCheck:d=!0}=this.props;if(o)return[];if(a)return a;var c=[],f={},p={};return e&&(r&&(0,m.default)(r).call(r,"select-table")?(p.required=!0,p.validator=(e,t)=>this.getSelectTableValidator(fe(fe({},e),this.props),t)):r&&(0,m.default)(r).call(r,"select")?(p.required=!0,p.message=u||t("Please select {label}!",{label:s})):d?(p.required=!0,p.message=u||t("Please input {label}!",{label:s})):n&&(f.required=e)),(0,N.default)(p)||c.push(p),n?f.validator=n:r&&(0,m.default)(r).call(r,"textarea")&&"description"===i&&(f.validator=this.getDescriptionValidator),(0,N.default)(f)||c.push(f),l&&c.push(l),c}getComponent(e){return pe[e]}renderTip(e){return e?E.default.createElement(y.default,{title:e},E.default.createElement(b.default,null)):null}renderLabel(e,t){return t?E.default.createElement("span",null,e," ",this.renderTip(t)):e}render(){var{component:e,type:t}=this.props,a=this.getFormItemProps();if(e)return E.default.createElement(v.default.Item,a,e);var n=this.getComponent(t),r=this.getComponentProps(t);if("divider"===t)return E.default.createElement(S.default,{className:"form-item-divider"});if("short-divider"===t)return E.default.createElement(v.default.Item,(0,g.default)({},a,{label:" ",style:{marginBottom:0}}),E.default.createElement(S.default,null));if(n){if(n.isFormItem)return E.default.createElement(n,{formItemProps:a,componentProps:r});var l=E.default.createElement(n,r);return E.default.createElement(v.default.Item,a,l)}var{content:i}=this.props;return i?E.default.createElement(v.default.Item,a,E.default.createElement("span",r,i)):null}}a.default=he,(0,w.default)(he,"propTypes",{component:T.default.object,type:T.default.string,content:T.default.any,className:T.default.string,name:T.default.string,label:T.default.string,rules:T.default.array,required:T.default.bool,validator:T.default.func,options:T.default.array,placeholder:T.default.string,mode:T.default.string,onChange:T.default.func,dependencies:T.default.array,formref:T.default.object,hasRequiredCheck:T.default.bool}),(0,w.default)(he,"defaultProps",{required:!1,dependencies:[]})},1859:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(1347)),u=o(n(1442)),d=o(n(343));n(1246);var c=o(n(1247));n(1244);var f=o(n(1245));n(1261);var p=o(n(1262));n(231);var h=o(n(341));n(568);var m=o(n(415)),g=o(n(54)),v=o(n(232)),y=o(n(91)),b=o(n(29)),x=o(n(63)),w=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=S(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),k=(n(161),n(564),o(n(1376))),C=n(565),_=n(461),M=o(n(1872));function S(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(S=function(e){return e?a:t})(e)}var{isIPv4:I,isIpv6:N}=C.ipValidate,E=e=>{var{componentProps:a,formItemProps:n}=e,{maxNumber:r=10,ports:l,isLoading:i,members:o=[],lbSubnetId:C}=a,{name:S,onChange:E}=n,[T,A]=(0,w.useState)(0),j=()=>{};return w.default.createElement("div",{style:{padding:20}},w.default.createElement(p.default.Item,{label:t("select an existing port"),wrapperCol:{xs:18,xm:12},extra:t("If you choose a port which subnet is different from the subnet of LB, please ensure connectivity between the two.")},w.default.createElement(k.default,{maxSelectedCount:-1,isLoading:i,data:l,columns:[{title:t("ID/Name"),dataIndex:"name",routeName:"portDetail"},{title:t("Binding Instance"),dataIndex:"server_name"},{title:t("IP"),dataIndex:"fixed_ips",render:(e,t)=>{if(0===e.length)return"-";var a=(0,g.default)(e).call(e,(e=>({label:e.ip_address,value:e.ip_address,subnet_id:e.subnet_id})));return t.currentOption=a[0].value,t.currentSubnetId=a[0].subnet_id,w.default.createElement(m.default,{style:{minWidth:200},options:a,defaultValue:a[0].value,onChange:(e,a)=>{t.currentSubnetId=a.subnet_id,t.currentOption=e}})},sorter:(e,t)=>{var a=e.fixed_ips[0].ip_address,n=t.fixed_ips[0].ip_address,r=(_.Address4.isValid(a)?new _.Address4(a):new _.Address6(a)).bigInteger(),l=(_.Address4.isValid(n)?new _.Address4(n):new _.Address6(n)).bigInteger();return r.compareTo(l)}},{title:t("Action"),key:"operation",render:(e,a)=>w.default.createElement(h.default,{disabled:!a.currentOption,onClick:()=>{j({ip_address:{ip:a.currentOption,protocol_port:void 0,weight:1,name:a.server_name,subnet_id:a.currentSubnetId},canEdit:!1})}},t("Add Member"))}],filterParams:[{label:t("ID"),name:"id"},{label:t("Name"),name:"name"},{label:t("Binding Instance"),name:"server_name"},{label:t("IP"),name:"fixed_ips",filterFunc:(e,t)=>(0,v.default)(e).call(e,(e=>{var a;return(0,y.default)(a=e.ip_address).call(a,t)>-1}))},{label:t("Same subnet with LB"),name:"origin_data",options:[{label:t("True"),key:!0}],filterFunc:(e,t)=>{var a;return!t||(0,v.default)(a=e.fixed_ips).call(a,(e=>e.subnet_id===C))}}]})),w.default.createElement(p.default.Item,(0,d.default)({},n,{label:t("Selected Members")}),w.default.createElement(p.default.List,{name:S},((e,a)=>{var{add:n,remove:r}=a;return j=n,A(e.length),0===e.length?t("Not yet selected"):w.default.createElement(w.default.Fragment,null,e.length>0&&w.default.createElement(c.default,{gutter:[16,16]},w.default.createElement(f.default,{span:22},w.default.createElement(c.default,null,w.default.createElement(f.default,{span:12},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("IP Address"))),w.default.createElement(f.default,{span:6},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("Port"))),w.default.createElement(f.default,{span:6},w.default.createElement("div",{style:{with:"100%",paddingLeft:8,paddingRight:8}},t("Weights")))))),(0,g.default)(e).call(e,(e=>w.default.createElement(c.default,{key:e.key,gutter:[16,16]},w.default.createElement(f.default,{span:22},w.default.createElement(p.default.Item,(0,d.default)({},e,{style:{width:"98%"},validateTrigger:["onChange","onBlur"],rules:[{required:!0,validator:(e,a)=>{var n=(0,b.default)(o).call(o,(e=>e.address===a.ip_address.ip&&e.protocol_port===a.ip_address.protocol_port));return a&&a.ip_address.ip?I(a.ip_address.ip)||N(a.ip_address.ip)?a.ip_address.ip&&a.ip_address.protocol_port?a.ip_address.weight?n[0]?x.default.reject(new Error(t("Invalid IP Address and Port"))):x.default.resolve(!0):x.default.reject(new Error(t("Missing Weight"))):x.default.reject(new Error(t("Missing Port"))):x.default.reject(new Error(t("Invalid IP Address"))):x.default.reject(new Error(t("Missing IP Address")))}}]}),w.default.createElement(M.default,{field:e,onChange:e=>{return t=e,void(E&&E(t));var t}}))),w.default.createElement(f.default,{span:2},w.default.createElement(u.default,{onClick:()=>r(e.name)}))))))}))),T{j()},block:!0,icon:w.default.createElement(s.default,null)},t("Add External Members"))))};E.isFormItem=!0;var T=E;a.default=T},1864:function(e,t,a){var n=a(1865);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1865:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__magic-input-outer-wrapper--2caFk {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n.index__magic-input-wrapper--3jKxQ {\n position: relative;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n min-width: 200px;\n padding: 3px 0 3px 8px;\n background-color: #fff;\n border: 1px solid #d9d9d9;\n border-radius: 4px;\n}\n.index__magic-input-wrapper--3jKxQ .ant-tag {\n height: 24px;\n margin-right: 4px;\n margin-bottom: 1px;\n padding: 0 4px;\n color: #fff;\n font-size: 10px;\n line-height: 24px;\n background-color: #0068ff;\n border: none;\n}\n.index__magic-input-wrapper--3jKxQ .ant-tag .anticon-close {\n margin-left: 16px;\n color: #fff;\n}\n.index__magic-input-wrapper--3jKxQ .ant-btn {\n margin-top: -3px;\n margin-right: 0;\n}\n.index__magic-input-wrapper--3jKxQ .ant-btn-icon-only {\n background-color: #fff;\n}\n.index__magic-input-wrapper-active--225GJ {\n border-color: #0068ff;\n -webkit-box-shadow: 0 0 0 2px rgba(0, 104, 255, 0.2);\n box-shadow: 0 0 0 2px rgba(0, 104, 255, 0.2);\n}\n.index__input-wrapper--1osyl {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n height: 24px;\n line-height: 24px;\n}\n.index__input-wrapper--1osyl .ant-input {\n padding: 0;\n background: none;\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__input-wrapper--1osyl .ant-input:focus {\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__input-wrapper--1osyl input::-webkit-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::-moz-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input:-ms-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::-ms-input-placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl input::placeholder {\n font-size: 10px;\n}\n.index__input-wrapper--1osyl .ant-menu-vertical > .ant-menu-item {\n height: 26px;\n line-height: 26px;\n}\n.index__input-wrapper--1osyl .ant-menu-vertical .ant-menu-item {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 10px;\n}\n.index__menu--2CcQt {\n -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09) !important;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09) !important;\n}\n.index__menu--2CcQt,\n.index__option-menu--1Wni_ {\n position: absolute;\n top: 34px;\n z-index: 100;\n max-height: 310px;\n overflow-x: hidden;\n overflow-y: auto;\n border-radius: 4px;\n}\n.index__key--1C5xL {\n font-size: 10px;\n line-height: 24px;\n}\n.index__key--1C5xL .ant-divider,\n.index__key--1C5xL .ant-divider-vertical {\n margin-right: 4px;\n margin-left: 4px;\n}\n.ant-form-item-has-error .magic-input-wrapper .ant-input,\n.ant-form-item-has-error .magic-input-wrapper .ant-input:focus,\n.ant-form-item-has-error .magic-input-wrapper .ant-input:not([disabled]):hover {\n background: none;\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.magic-input-wrapper .ant-tag {\n display: inline-block;\n height: 24px;\n margin: 0 5px 0 0;\n margin-bottom: 1px;\n line-height: 24px;\n}\n.index__search-icon--1c2YI {\n position: absolute;\n top: 0;\n right: 8px;\n color: rgba(0, 0, 0, 0.65);\n font-size: 12px;\n line-height: 32px;\n}\n.index__search-icon-hidden--3mkNv {\n display: none;\n}\n.index__close-btn-col--1qQC_ {\n position: absolute;\n top: 0;\n right: 0;\n height: 30px;\n line-height: 30px;\n}\n.index__close-btn-col--1qQC_ .index__close-btn--1gDiH {\n height: 28px !important;\n padding: 0;\n background-color: #fff;\n border: none;\n}\n.index__close-option-btn--2fpQF {\n top: 3px;\n height: 24px !important;\n}\n.index__magic-input-checks--3sSga {\n margin-left: 8px;\n line-height: 32px;\n}\n.index__magic-input-checks--3sSga .ant-checkbox + span {\n text-wrap: nowrap;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","magic-input-outer-wrapper":"index__magic-input-outer-wrapper--2caFk","magic-input-wrapper":"index__magic-input-wrapper--3jKxQ","magic-input-wrapper-active":"index__magic-input-wrapper-active--225GJ","input-wrapper":"index__input-wrapper--1osyl",menu:"index__menu--2CcQt","option-menu":"index__option-menu--1Wni_",key:"index__key--1C5xL","search-icon":"index__search-icon--1c2YI","search-icon-hidden":"index__search-icon-hidden--3mkNv","close-btn-col":"index__close-btn-col--1qQC_","close-btn":"index__close-btn--1gDiH","close-option-btn":"index__close-option-btn--2fpQF","magic-input-checks":"index__magic-input-checks--3sSga"}},1866:function(e,t,a){var n=a(1867);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1867:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__sl-simple-table--3t0n0 .ant-table-content .ant-table-thead tr .ant-table-cell {\n padding: 8px 8px 8px 0;\n}\n.index__sl-simple-table--3t0n0 .ant-table-column-sorters {\n padding: 8px 0;\n}\n.index__sl-simple-table--3t0n0 .ant-table-tbody > tr > td {\n padding: 8px 8px 8px 0;\n word-break: break-all;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","sl-simple-table":"index__sl-simple-table--3t0n0"}},1868:function(e,t,a){var n=a(1869);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1869:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__wrapper--W62k9 {\n height: 32px;\n text-align: right;\n}\n.index__inner--1yC3_ {\n display: inline-block;\n width: 300px;\n overflow: hidden;\n}\n",""]),t.locals={wrapper:"index__wrapper--W62k9",inner:"index__inner--1yC3_"}},1870:function(e,t,a){var n=a(1871);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1871:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__search-wrapper--2qjcr {\n margin-bottom: 16px;\n}\n.index__search-wrapper--2qjcr .ant-menu-root.ant-menu-vertical {\n -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2) !important;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2) !important;\n}\n.index__image-tabs--Y02Y0 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: 52px;\n margin-bottom: 8px;\n}\n.index__image-tabs--Y02Y0 img {\n display: block;\n width: 20px;\n height: 20px;\n margin: 0 auto;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper {\n width: 70px;\n height: 50px;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.65);\n text-align: center;\n border: none;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper:not(:first-child)::before {\n width: 0;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {\n color: #0068ff;\n font-weight: bold;\n}\n.index__image-tabs--Y02Y0 .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__image-tab--i9nyz {\n -webkit-box-flex: 1;\n -ms-flex: 1 auto;\n flex: 1 auto;\n}\n.index__image-tab-label--qzyGd {\n font-size: 10px;\n}\n.index__normal-tabs--1Lx8V {\n margin-bottom: 8px;\n}\n.index__pagination-footer--1r5HD .ant-select {\n width: unset;\n min-width: 80px;\n}\n.index__sl-select-table-backend--7Wvxx .ant-table-footer {\n padding: 8px 16px;\n background: #fff;\n}\n.index__search-line--2qRf5 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n gap: 8px;\n}\n.index__search-line--2qRf5 .ant-btn-default {\n color: #0068ff;\n background-color: #f6f7fb;\n border-color: #0068ff;\n}\n.index__search-line--2qRf5 .ant-btn-default:hover {\n color: #0068ff;\n border-color: #0068ff;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","search-wrapper":"index__search-wrapper--2qjcr","image-tabs":"index__image-tabs--Y02Y0","image-tab":"index__image-tab--i9nyz","image-tab-label":"index__image-tab-label--qzyGd","normal-tabs":"index__normal-tabs--1Lx8V","pagination-footer":"index__pagination-footer--1r5HD","sl-select-table-backend":"index__sl-select-table-backend--7Wvxx","search-line":"index__search-line--2qRf5"}},1872:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0;var p=f(a(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=g(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),m=f(a(1873));function g(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(g=function(e){return e?a:t})(e)}function v(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function y(e){for(var t=1;t{var{onChange:t,value:a}=e;a=a||{ip_address:{ip:void 0,protocol_port:void 0,weight:1,subnet_id:void 0},canEdit:!0};var[n,r]=(0,h.useState)(a.ip_address);return h.default.createElement(m.default,{onChange:e=>{var l,i;r(e),l={ip_address:e},i=y(y({},a),{},{ip_address:n},l),t&&t(i)},value:n,disabled:!a.canEdit})};t.default=b},1873:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1246);var p=f(a(1247));a(1278);var h=f(a(1279));a(1244);var m=f(a(1245));a(569);var g=f(a(1253)),v=f(a(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function b(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(b=function(e){return e?a:t})(e)}function x(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t{var{value:t={},onChange:a,disabled:n}=e,[r,l]=(0,y.useState)(t.ip||void 0),[i,o]=(0,y.useState)(t.protocol_port||void 0),[s,u]=(0,y.useState)(t.weight),d=e=>{a(w(w({ip:r,protocol_port:i,weight:s},t),e))};return y.default.createElement(p.default,{gutter:[16]},y.default.createElement(m.default,{span:12},y.default.createElement(g.default,{style:{maxWidth:210},onChange:e=>{var{target:{value:t}}=e;l(t),d({ip:t})},value:r,disabled:n})),y.default.createElement(m.default,{span:6},y.default.createElement(h.default,{min:1,max:65535,style:{width:"100%"},value:i,onChange:e=>{e&&o(e),e&&d({protocol_port:e})}})),y.default.createElement(m.default,{span:6},y.default.createElement(h.default,{min:1,max:256,style:{width:"100%"},value:s,onChange:e=>{e&&u(e),e&&d({weight:e})}})))}},1874:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=void 0,a(1261);var p=f(a(1262)),h=f(a(58)),m=f(a(35)),g=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=b(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),v=(a(161),a(565)),y=f(a(1429));function b(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(b=function(e){return e?a:t})(e)}function x(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t0&&(t=w(w({},t),e[0])),[t]}render(){var{componentProps:e,formItemProps:t}=this.props,{rules:a}=t,n=(0,h.default)(t,["rules"]),r=this.getRules(a),l=w(w({},n),{},{rules:r}),i=w(w({},e),{},{mode:"json",wrapEnabled:!0,tabSize:2,width:"100%",height:"200px",setOptions:{enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableSnippets:!0}});return g.default.createElement(p.default.Item,l,g.default.createElement(y.default,i))}}t.default=k,(0,m.default)(k,"isFormItem",!0)},1875:function(e,t,a){var n=a(1876);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1876:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__checkbox--2qAZO {\n padding-top: 5px;\n padding-bottom: 5px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",checkbox:"index__checkbox--2qAZO"}},1877:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(164)),s=i(a(616)),u=i(a(58)),d=i(a(35)),c=i(a(1520)),f=i(a(1521)),p=i(a(1522)),h=i(a(1523)),m=i(a(1524)),g=i(a(1525)),v=i(a(1526)),y=i(a(1527)),b=i(a(1528)),x=i(a(1529)),w=i(a(1348)),k=i(a(1530)),C=i(a(1531)),_=i(a(1532)),M=i(a(1344)),S=i(a(1533)),I=i(a(1377)),N=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=D(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),E=i(a(16)),T=i(a(1894)),A=i(a(1895)),j=i(a(1896)),P=(a(564),i(a(1897)));function D(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(D=function(e){return e?a:t})(e)}var L=N.default.createElement("img",{src:T.default,alt:"image_icon",style:{width:"12px"}}),O=N.default.createElement("img",{src:A.default,alt:"security_icon",style:{width:"12px"}}),R=N.default.createElement("img",{src:j.default,alt:"lb_icon",style:{width:"12px"}}),z={instance:N.default.createElement(I.default,null),router:N.default.createElement(S.default,null),externalNetwork:N.default.createElement(M.default,null),network:N.default.createElement(M.default,null),firewall:N.default.createElement(_.default,null),volume:N.default.createElement(C.default,null),gateway:N.default.createElement(k.default,null),user:N.default.createElement(w.default,null),snapshot:N.default.createElement(x.default,null),backup:N.default.createElement(b.default,null),keypair:N.default.createElement(y.default,null),image:L,aggregate:N.default.createElement(v.default,null),metadata:N.default.createElement(g.default,null),flavor:N.default.createElement(m.default,null),host:N.default.createElement(h.default,null),security:O,lb:R,group:N.default.createElement(p.default,null),project:N.default.createElement(f.default,null),floatingIp:N.default.createElement(c.default,null)};class U extends N.Component{renderIcon(){var{icon:e,iconType:t}=this.props;if(t){var a=z[t]||null;return N.default.createElement("span",{className:P.default.icon},a)}return N.default.createElement("span",{className:P.default.icon},e||null)}render(){var e=this.props,{content:t,value:a,iconType:n,showLoading:r}=e,l=(0,u.default)(e,["content","value","iconType","showLoading"]),i=[void 0,null,""];return t||N.default.createElement("span",l,this.renderIcon(),r&&(0,o.default)(i).call(i,a)?N.default.createElement(s.default,null):a)}}t.default=U,(0,d.default)(U,"propTypes",{content:E.default.any,value:E.default.any,icon:E.default.node,iconType:E.default.string}),(0,d.default)(U,"defaultProps",{icon:null,iconType:"",content:"",value:null})},1894:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjIwMHB4IiBoZWlnaHQ9IjIwMC4wMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiAxMDA3LjE2MWMtMjc2LjcwNyAwLTQ5NS4xNjEtMjI1LjczNS00OTUuMTYxLTQ5NS4xNjEgMC0yNzYuNzA3IDIyNS43MzUtNDk1LjE2MSA0OTUuMTYxLTQ5NS4xNjEgMjc2LjcwNyAwIDQ5NS4xNjEgMjI1LjczNSA0OTUuMTYxIDQ5NS4xNjEgMCAyNzYuNzA3LTIxOC40NTMgNDk1LjE2MS00OTUuMTYxIDQ5NS4xNjF6TTUxMiA3NS4wOTNjLTI0MC4yOTkgMC00MzYuOTA3IDE5Ni42MDgtNDM2LjkwNyA0MzYuOTA3czE5Ni42MDggNDM2LjkwNyA0MzYuOTA3IDQzNi45MDcgNDM2LjkwNy0xOTYuNjA4IDQzNi45MDctNDM2LjkwNy0xOTYuNjA4LTQzNi45MDctNDM2LjkwNy00MzYuOTA3eiIgIC8+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiA2MjguNTA5Yy02NS41MzYgMC0xMTYuNTA5LTUwLjk3My0xMTYuNTA5LTExNi41MDlzNTAuOTczLTExNi41MDkgMTE2LjUwOS0xMTYuNTA5IDExNi41MDkgNTAuOTczIDExNi41MDkgMTE2LjUwOWMwIDY1LjUzNi01MC45NzMgMTE2LjUwOS0xMTYuNTA5IDExNi41MDl6TTUxMiA0NjEuMDI3Yy0yOS4xMjcgMC01MC45NzMgMjEuODQ1LTUwLjk3MyA1MC45NzNzMjEuODQ1IDUwLjk3MyA1MC45NzMgNTAuOTczYzI5LjEyNyAwIDUwLjk3My0yMS44NDUgNTAuOTczLTUwLjk3M3MtMjEuODQ1LTUwLjk3My01MC45NzMtNTAuOTczek0xNTUuMTkzIDU0OC40MDljLTcuMjgyIDAtMTQuNTYzLTcuMjgyLTE0LjU2My0xNC41NjN2LTIxLjg0NWMwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzdjE0LjU2M2MwIDE0LjU2My03LjI4MiAyMS44NDUtMTQuNTYzIDIxLjg0NXpNMzM3LjIzNyA4MzkuNjhoLTcuMjgyYy0xMDEuOTQ1LTU4LjI1NC0xNjcuNDgxLTE1Mi45MTctMTgyLjA0NS0yNjIuMTQ0IDAtNy4yODIgNy4yODItMTQuNTYzIDE0LjU2My0xNC41NjNzMTQuNTYzIDcuMjgyIDE0LjU2MyAxNC41NjNjMTQuNTYzIDEwMS45NDUgODAuMDk5IDE4OS4zMjYgMTY3LjQ4MSAyNDAuMjk5IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyA3LjI4MiAyMS44NDVoLTE0LjU2M3pNMzE1LjM5MiA3MTUuODljLTcuMjgyIDAtNy4yODIgMC0xNC41NjMtNy4yODItNDMuNjkxLTQzLjY5MS03Mi44MTgtMTA5LjIyNy03Mi44MTgtMTc0Ljc2MyAwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzYzAgNTguMjU0IDIxLjg0NSAxMDkuMjI3IDY1LjUzNiAxNTIuOTE3IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyAwIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTcuMjgyIDcuMjgyek0zNjYuMzY1IDc1Mi4yOTloLTcuMjgyYy03LjI4MiAwLTcuMjgyLTcuMjgyLTE0LjU2My03LjI4Mi03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMtNy4yODItMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUtNy4yODIgNy4yODIgMCA3LjI4MiA3LjI4MiAxNC41NjMgNy4yODIgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NS03LjI4MiA3LjI4Mi0xNC41NjMgNy4yODItMTQuNTYzIDcuMjgyek0zODAuOTI4IDY2NC45MTdoLTcuMjgyYy0zNi40MDktMjEuODQ1LTY1LjUzNi02NS41MzYtNjUuNTM2LTEwOS4yMjcgMC03LjI4MiA3LjI4Mi0xNC41NjMgMTQuNTYzLTE0LjU2M3MxNC41NjMgNy4yODIgMTQuNTYzIDE0LjU2M2MwIDM2LjQwOSAxNC41NjMgNjUuNTM2IDUwLjk3MyA4MC4wOTkgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTE0LjU2MyA3LjI4MnpNODYxLjUyNSA1NTUuNjkxYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDE0LjU2My0xMjMuNzktMzYuNDA5LTI0Ny41ODEtMTM4LjM1NC0zMjAuMzk4LTcuMjgyLTcuMjgyLTcuMjgyLTE0LjU2MyAwLTIxLjg0NSA3LjI4Mi03LjI4MiAxNC41NjMtNy4yODIgMjEuODQ1IDAgMTA5LjIyNyA4MC4wOTkgMTY3LjQ4MSAyMTEuMTcxIDE1Mi45MTcgMzQ5LjUyNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6IiAgLz48cGF0aCBmaWxsPSIjMzMzMzMzIiBkPSJNNzc0LjE0NCA1MjYuNTYzYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDcuMjgyLTgwLjA5OS0yMS44NDUtMTUyLjkxNy04Ny4zODEtMTk2LjYwOC03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMgMC0yMS44NDVzMTQuNTYzLTcuMjgyIDIxLjg0NSAwYzcyLjgxOCA1MC45NzMgMTA5LjIyNyAxMzguMzU0IDEwMS45NDUgMjI1LjczNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6TTY5NC4wNDUgNDkwLjE1NWMtNy4yODIgMC0xNC41NjMtNy4yODItMTQuNTYzLTE0LjU2MyA3LjI4Mi0zNi40MDktNy4yODItNjUuNTM2LTM2LjQwOS04Ny4zODEtNy4yODItNy4yODItNy4yODItMTQuNTYzIDAtMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUgMCAzNi40MDkgMjkuMTI3IDU4LjI1NCA3Mi44MTggNTAuOTczIDExNi41MDktNy4yODIgMC0xNC41NjMgNy4yODItMjEuODQ1IDcuMjgyeiIgIC8+PC9zdmc+"},1895:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyODEzNzAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE0NDAiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNTIxLjI1IDg4My4zNGMtMS4yNCAwLTIuNDktMC4xNS0zLjc0LTAuNDgtNjAuMTctMTUuNDUtMTEyLjk2LTQwLjA2LTE1Ni45MS03My4xNC0zNS4zNC0yNi42LTY1LjAzLTU4LjY3LTg4LjI1LTk1LjMzLTM5LjY2LTYyLjYyLTQ2LjY0LTExNi43MS00Ni45MS0xMTguOThsLTAuMTEtMC45MVYyNTUuMDZsMTcuMzcgMi43OGM3MC41NiAxMS4zMSAxMzYuNTctMi43OCAxOTYuMi00MS44NyA0NS0yOS41IDY5LjMzLTYyLjk4IDY5LjU4LTYzLjMxIDQuODMtNi43MiAxNC4xOS04LjI3IDIwLjkyLTMuNDUgNi43MyA0LjgyIDguMjkgMTQuMTYgMy40OCAyMC45LTEuMDkgMS41Mi0yNy4xOCAzNy42OC03Ni40OCA3MC4yNy0yOC45OCAxOS4xNi02MC4wNyAzMy4xNS05Mi4zOSA0MS42LTM1IDkuMTUtNzEuNDggMTEuNzYtMTA4LjY3IDcuODF2MzAyLjc2YzAuOTkgNi41NCA5LjExIDUzLjggNDMuMTUgMTA3LjAyIDQ4Ljc4IDc2LjI4IDEyNC45OSAxMjguMTcgMjI2LjUgMTU0LjI0IDguMDIgMi4wNiAxMi44NiAxMC4yNCAxMC44IDE4LjI2LTEuNzcgNi43Ni03Ljg2IDExLjI2LTE0LjU0IDExLjI3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0MSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjIuOTQgODgzLjM0Yy02LjY4IDAtMTIuNzgtNC41LTE0LjUyLTExLjI3LTIuMDYtOC4wMiAyLjc3LTE2LjIgMTAuOC0xOC4yNiAxMDIuMDgtMjYuMjIgMTc4LjU1LTc4LjUyIDIyNy4yOC0xNTUuNDYgMzYuMDgtNTYuOTcgNDIuNDItMTA2LjA4IDQyLjQ4LTEwNi41NyAxLjAxLTguMjIgOC40Ny0xNC4wNyAxNi43MS0xMy4wNyA4LjIyIDEgMTQuMDcgOC40OSAxMy4wNyAxNi43MS0wLjI4IDIuMjctNy4yNSA1Ni4zNi00Ni45MSAxMTguOTgtMjMuMjEgMzYuNjUtNTIuOTEgNjguNzMtODguMjUgOTUuMzMtNDMuOTUgMzMuMDgtOTYuNzQgNTcuNjktMTU2LjkyIDczLjE0LTEuMjUgMC4zMS0yLjUgMC40Ny0zLjc0IDAuNDd6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQyIj48L3BhdGg+PHBhdGggZD0iTTgwNC4xOSA2MDguNTljLTguMjggMC0xNS02LjcyLTE1LTE1VjI4OS43OGMtMzcuMTkgMy45NS03My42NyAxLjM0LTEwOC42Ny03LjgxLTMyLjMzLTguNDUtNjMuNDEtMjIuNDQtOTIuMzktNDEuNi00OS4zLTMyLjU5LTc1LjQtNjguNzQtNzYuNDgtNzAuMjctNC44MS02Ljc0LTMuMjUtMTYuMTEgMy41LTIwLjkyIDYuNzQtNC44MSAxNi4wOS0zLjI1IDIwLjkxIDMuNDggMC4yNCAwLjMzIDI0LjU3IDMzLjgxIDY5LjU4IDYzLjMxIDU5LjYyIDM5LjA5IDEyNS42NCA1My4xOCAxOTYuMTkgNDEuODdsMTcuMzctMi43OHYzMzguNTNjLTAuMDEgOC4yOS02LjcyIDE1LTE1LjAxIDE1ek01MjEuNjEgNzU2LjQxYy0xLjI0IDAtMi40OS0wLjE1LTMuNzQtMC40OC0zOS4yNS0xMC4wOC03My43My0yNi4xNi0xMDIuNDctNDcuNzktMjMuMTctMTcuNDQtNDIuNjQtMzguNDctNTcuODctNjIuNTItMjYuMDYtNDEuMTUtMzAuNjgtNzYuOTgtMzAuODYtNzguNDhsLTAuMTEtMC45MXYtMjI0LjJsMTcuMzcgMi43OGMxMDUuMTggMTYuODUgMTY0LjUtNjQuMzkgMTY1LjA5LTY1LjIxIDQuODEtNi43NCAxNC4xOC04LjMxIDIwLjkyLTMuNSA2Ljc0IDQuODEgOC4zMSAxNC4xOCAzLjUgMjAuOTItMC43MiAxLjAxLTE4LjAxIDI0Ljk3LTUwLjQzIDQ2LjQtMzguMTUgMjUuMjItODEuNTYgMzYuNTEtMTI2LjQ1IDMzLjA3djE4Ny43NGMwLjc5IDQuOTMgNi4xNCAzMy45NyAyNy4wOCA2Ni41NCAzMC41MyA0Ny40NiA3OC4yIDc5Ljc5IDE0MS42OSA5Ni4xIDguMDIgMi4wNiAxMi44NiAxMC4yNCAxMC44IDE4LjI2LTEuNzQgNi43Ny03LjgzIDExLjI3LTE0LjUyIDExLjI4eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0MyI+PC9wYXRoPjxwYXRoIGQ9Ik01MjIuNjkgNzU2LjQxYy02LjY4IDAtMTIuNzgtNC41LTE0LjUyLTExLjI3LTIuMDYtOC4wMiAyLjc3LTE2LjIgMTAuOC0xOC4yNiA2My40OS0xNi4zMSAxMTEuMTYtNDguNjQgMTQxLjY5LTk2LjEgMjIuOTEtMzUuNjEgMjcuMTYtNjcuMDEgMjcuMi02Ny4zMiAxLjA2LTguMiA4LjU1LTE0LjAzIDE2Ljc1LTEyLjk5IDguMiAxLjAzIDE0LjAzIDguNDcgMTMuMDMgMTYuNjgtMC4xOCAxLjUtNC44IDM3LjM0LTMwLjg2IDc4LjQ4LTE1LjIzIDI0LjA0LTM0LjcgNDUuMDgtNTcuODcgNjIuNTItMjguNzQgMjEuNjMtNjMuMjEgMzcuNzEtMTAyLjQ3IDQ3Ljc5LTEuMjYgMC4zMS0yLjUxIDAuNDctMy43NSAwLjQ3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0NCI+PC9wYXRoPjxwYXRoIGQ9Ik03MDIuOTUgNTgwLjMyYy04LjI4IDAtMTUtNi43Mi0xNS0xNVYzNzYuNWMtNDQuOSAzLjQ1LTg4LjI5LTcuODQtMTI2LjQ1LTMzLjA3LTMyLjQyLTIxLjQzLTQ5LjcxLTQ1LjM5LTUwLjQzLTQ2LjQtNC44MS02Ljc0LTMuMjUtMTYuMTEgMy41LTIwLjkyIDYuNzQtNC44IDE2LjA4LTMuMjUgMjAuOSAzLjQ3IDAuMiAwLjI4IDE1LjQ0IDIxLjEzIDQzLjUyIDM5LjQ1IDM2Ljk3IDI0LjEyIDc3Ljg4IDMyLjggMTIxLjU5IDI1Ljc5bDE3LjM3LTIuNzh2MjIzLjI5YzAgOC4yOC02LjcyIDE0Ljk5LTE1IDE0Ljk5eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0NSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjAuNTYgNzQ2Ljk3Yy04LjI4IDAtMTUtNi43Mi0xNS0xNVYyOTQuNzhjMC04LjI4IDYuNzItMTUgMTUtMTVzMTUgNi43MiAxNSAxNXY0MzcuMTljMCA4LjI4LTYuNzIgMTUtMTUgMTV6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQ2Ij48L3BhdGg+PHBhdGggZD0iTTY5My45OCA1MjguMzhIMzQ3LjEzYy04LjI4IDAtMTUtNi43Mi0xNS0xNXM2LjcyLTE1IDE1LTE1aDM0Ni44NWM4LjI4IDAgMTUgNi43MiAxNSAxNXMtNi43MiAxNS0xNSAxNXpNMzQ1LjUzNSA0MzMuODgybDY5LjU3OS02OS41NzkgNy4wNzEgNy4wNzEtNjkuNTc5IDY5LjU3OXpNMzQ2LjExMSA0ODIuODgybDE2Ni4wNzctMTY2LjA3NiA3LjA3MSA3LjA3LTE2Ni4wNzcgMTY2LjA3N3oiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NDciPjwvcGF0aD48cGF0aCBkPSJNMzc1LjM5MiA1MTMuNzc5bDE0NS4wNC0xNDUuMDYxIDcuMDcyIDcuMDctMTQ1LjA0IDE0NS4wNjJ6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDQ4Ij48L3BhdGg+PHBhdGggZD0iTTQzNS45NTcgNTA3LjY5Nmw4MC40ODItODAuNDgyIDcuMDcgNy4wNy04MC40ODEgODAuNDgzeiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ0OSI+PC9wYXRoPjxwYXRoIGQ9Ik01MjMuNDM3IDYzNC4yNjVsNy4wNzEtNy4wNzEgNjkuNTc5IDY5LjU3OC03LjA3MSA3LjA3MXoiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NTAiPjwvcGF0aD48cGF0aCBkPSJNNTEzLjI1MyA1NjUuNTAybDcuMDctNy4wNyAxMjAuOTc4IDEyMC45NzctNy4wNyA3LjA3eiIgZmlsbD0iIzIzMTgxNSIgcC1pZD0iMTQ1MSI+PC9wYXRoPjxwYXRoIGQ9Ik01MzUuODYzIDUyN2w3LjA3LTcuMDcyTDY3Mi44ODYgNjQ5Ljg4bC03LjA3MSA3LjA3MXoiIGZpbGw9IiMyMzE4MTUiIHAtaWQ9IjE0NTIiPjwvcGF0aD48cGF0aCBkPSJNNTkyLjM0OCA1MjQuOTQxbDcuMDctNy4wNyA4Ni4xODIgODYuMTgtNy4wNzEgNy4wNzJ6IiBmaWxsPSIjMjMxODE1IiBwLWlkPSIxNDUzIj48L3BhdGg+PC9zdmc+"},1896:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/load-balancer.1739201236.png"},1897:function(e,t,a){var n=a(1898);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1898:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__icon--2-Vz_ {\n margin-right: 8px;\n}\n",""]),t.locals={icon:"index__icon--2-Vz_"}},1899:function(e,t,a){var n=a(1900);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1900:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__instance-volume--3uVzj {\n display: block;\n margin-bottom: 8px;\n}\n.index__label--12eU8 {\n max-width: 20%;\n margin-right: 10px;\n}\n.index__select--YPu8L {\n max-width: 80%;\n}\n.index__size-label--1i0IC {\n margin-right: 40px;\n margin-left: 10px;\n}\n",""]),t.locals={"instance-volume":"index__instance-volume--3uVzj",label:"index__label--12eU8",select:"index__select--YPu8L","size-label":"index__size-label--1i0IC"}},1901:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(647));n(231);var u=o(n(341)),d=o(n(648)),c=o(n(35)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),p=(n(161),n(564),o(n(1902)));function h(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(h=function(e){return e?a:t})(e)}class m extends f.Component{constructor(e){super(e),(0,c.default)(this,"onChangeValue",(()=>{var{moreValue:e}=this.state;this.setState({moreValue:!e},(()=>{var{onChange:e}=this.props;e&&e(this.state.moreValue)}))}));var{value:t}=e;this.state={moreValue:t}}render(){var{moreValue:e}=this.state;return e?f.default.createElement(u.default,{type:"link",className:p.default.btn,onClick:this.onChangeValue},t("Hide Advanced Options")," ",f.default.createElement(d.default,null)):f.default.createElement(u.default,{type:"link",className:p.default.btn,onClick:this.onChangeValue},t("Expand Advanced Options"),f.default.createElement(s.default,null))}}a.default=m},1902:function(e,t,a){var n=a(1903);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1903:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__btn--2tisu {\n padding-left: 0;\n}\n",""]),t.locals={btn:"index__btn--2tisu"}},1904:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(422));n(1535);var m=p(n(1536));n(231);var g=p(n(341)),v=p(n(1545)),y=p(n(35)),b=p(n(92)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=w(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161),n(564);function w(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(w=function(e){return e?a:t})(e)}function k(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function C(e){for(var t=1;t{this.setState({file:e},(()=>{var{onChange:t}=this.props;t&&t(e)}))})),(0,y.default)(this,"handleChange",(e=>{var{file:t,fileList:a=[]}=e,{status:n}=t||{};"removed"===n&&0===a.length&&this.onChange(null),n||this.onChange(t),e.file.status})),(0,y.default)(this,"beforeUpload",(()=>!1)),this.state={file:""}}get progress(){return{strokeColor:{"0%":globalCSS.primaryColor,"100%":globalCSS.successColor},strokeWidth:3,format:e=>"".concat((0,h.default)(e.toFixed(2)),"%")}}render(){var e,{value:a}=this.props,{file:n}=this.state;e=a?(0,b.default)(a)?a:[a]:n?[n]:[];var r=C(C({},this.props),{},{name:"file",action:"",headers:{authorization:"authorization-text"},onChange:this.handleChange,progress:this.progress,beforeUpload:this.beforeUpload,fileList:e});return x.default.createElement(m.default,r,this.props.children||x.default.createElement(g.default,null,x.default.createElement(v.default,null)," ",t("Click to Upload")))}}a.default=_},1919:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(573)),u=o(n(91)),d=o(n(345)),c=o(n(54)),f=o(n(77)),p=o(n(1546));n(231);var h=o(n(341)),m=o(n(1547)),g=o(n(343));n(568);var v=o(n(415));n(569);var y=o(n(1253)),b=o(n(35)),x=o(n(352)),w=o(n(177)),k=o(n(205)),C=o(n(92)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=E(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),M=(n(161),n(564),o(n(16))),S=o(n(4)),I=n(163),N=o(n(1922));function E(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(E=function(e){return e?a:t})(e)}class T extends _.Component{constructor(e){super(e),(0,b.default)(this,"getInitItems",(e=>{var{value:t,initValue:a}=e;return(0,w.default)(a)?(0,C.default)(t)?[...t]||!1:[]:(0,C.default)(a)?[...a]||!1:[]})),(0,b.default)(this,"addItem",(()=>{var{items:e}=this.state,{maxCount:t}=this.props;if(!(e.length>=t)){var{defaultItemValue:a}=this.props,n={value:a,index:e.length};this.updateItems([...e,n])}})),(0,b.default)(this,"updateItems",(e=>{this.setState({items:e},(()=>{var{onChange:t}=this.props;t&&t(e)}))})),(0,b.default)(this,"canRemove",((e,t)=>{var a=this.checkItemRemoveDisabled(t),{minCount:n}=this.props;return e>=n&&!a})),(0,b.default)(this,"removeItem",(e=>{var{items:t}=this.state;(0,s.default)(t).call(t,e,1),this.updateItems(t)})),(0,b.default)(this,"onItemChange",((e,t)=>{var{items:a}=this.state;a[t]={value:e,index:t},this.updateItems(a)})),(0,b.default)(this,"onItemChangeInput",((e,t)=>{var{items:a}=this.state;a[t]={value:e,index:t},this.updateItems(a)})),(0,b.default)(this,"getOptions",(e=>{var{optionsByIndex:t,options:a}=this.props;return t&&e{var{items:t=[]}=this.state,{disabledRemoveFunc:a}=this.props;return(0,x.default)(a)?a({item:e,items:t}):this.checkDisabledKey(e)})),(0,b.default)(this,"checkDisabledKey",(e=>{var{key:t=""}=e.value||{},{disableEditKeys:a=[]}=this.props;return(0,u.default)(a).call(a,t)>=0})),(0,b.default)(this,"renderItem",((e,a)=>{var{itemComponent:n,readonlyKeys:r=[],isInput:l=!1,placeholder:i,width:o}=this.props;if(!n)return l?_.default.createElement(y.default,{value:e.value,placeholder:i||t("Please input"),style:{width:o},onChange:e=>{this.onItemChange(e.currentTarget.value,a)}}):_.default.createElement(v.default,{className:N.default.float,options:this.getOptions(a),value:e.value,placeholder:i,style:{width:o},onChange:e=>{this.onItemChange(e,a)}});var s=n,{key:d=""}=e.value||{},c=(0,u.default)(r).call(r,d)>=0,f=this.checkItemRemoveDisabled(e);return _.default.createElement(s,(0,g.default)({},this.props,{name:"name-".concat(a),value:e.value,index:a,keyReadonly:c,disabled:f,onChange:e=>{this.onItemChange(e,a)}}))}));var{initValue:a=[]}=e;this.state={items:this.getInitItems(e),initValue:a,keyId:(0,I.generateId)()}}static getDerivedStateFromProps(e,t){return(0,k.default)(e.initValue,t.initValue)?null:{initValue:e.initValue,items:JSON.parse((0,d.default)(e.initValue)),keyId:(0,I.generateId)()}}renderTip(){var{tips:e}=this.props;return e?_.default.createElement("div",null,e):null}renderItems(){var{items:e,keyId:t}=this.state,a=(0,c.default)(e).call(e,((e,a)=>{var n;return _.default.createElement("div",{className:N.default.item,key:(0,f.default)(n="add-select-item-".concat(t,"-")).call(n,a)},_.default.createElement(h.default,{type:"link",onClick:()=>this.removeItem(a),className:(0,S.default)(N.default.float,N.default["remove-btn"]),disabled:!this.canRemove(a,e)},_.default.createElement(m.default,null)),_.default.createElement("div",{className:(0,S.default)(N.default.float,N.default["item-detail"],"item-detail")},this.renderItem(e,a)))}));return _.default.createElement("div",{className:N.default.items},a)}renderAdd(){var{maxCount:e,addText:a,addTextTips:n}=this.props,{items:r}=this.state,l="";return e!==1/0&&(l+=t("Can add { number } {name}",{number:e-r.length,name:n||""})),_.default.createElement("div",null,_.default.createElement(h.default,{className:(0,S.default)(N.default["add-btn"],"add-btn"),type:"link",onClick:this.addItem},_.default.createElement(p.default,null),a),l)}render(){return _.default.createElement("div",{className:N.default["add-select"]},this.renderTip(),this.renderItems(),this.renderAdd())}}a.default=T,(0,b.default)(T,"propTypes",{minCount:M.default.number,maxCount:M.default.number,tips:M.default.node,options:M.default.array,placeholder:M.default.string,defaultItemValue:M.default.any,addText:M.default.string,addTextTips:M.default.string,width:M.default.number,itemComponent:M.default.any,optionsByIndex:M.default.bool,initValue:M.default.array,readonlyKeys:M.default.array,disableEditKeys:M.default.array,disabledRemoveFunc:M.default.func}),(0,b.default)(T,"defaultProps",{minCount:0,maxCount:1/0,addText:t("Add"),placeholder:t("Please select"),width:200,itemComponent:null,optionsByIndex:!1,initValue:[],readonlyKeys:[],disableEditKeys:[],disabledRemoveFunc:null})},1922:function(e,t,a){var n=a(1923);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1923:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__items--2qLhh {\n float: left;\n width: 100%;\n}\n.index__item--2Klpp {\n position: relative;\n float: left;\n width: 100%;\n margin-top: 8px;\n}\n.index__item--2Klpp .ant-form-item-has-success .ant-select:not(.ant-select-borderless) .ant-select-selector {\n border: 1px solid #d9d9d9 !important;\n}\n.index__item-detail--1dhkA {\n width: 90%;\n}\n.index__float--QNRx6 {\n float: left;\n}\n.index__remove-btn--11OFO,\n.index__add-btn--1uutt {\n padding-right: 8px;\n padding-left: 0;\n}\n.index__desc--wLQSa {\n margin-left: 16px;\n}\n",""]),t.locals={items:"index__items--2qLhh",item:"index__item--2Klpp","item-detail":"index__item-detail--1dhkA",float:"index__float--QNRx6","remove-btn":"index__remove-btn--11OFO","add-btn":"index__add-btn--1uutt",desc:"index__desc--wLQSa"}},1924:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1261);var h=p(n(1262));n(569);var m=p(n(1253)),g=p(n(58)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),n(565));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t0&&(a=k(k({},a),e[0])),[a]}render(){var{componentProps:e={},formItemProps:a={}}=this.props,{version:n=4}=e,r=(0,g.default)(e,["version"]),l=k({placeholder:4===n?t("Please input ipv4"):t("Please input ipv6")},r),{rules:i}=a,o=(0,g.default)(a,["rules"]),s=this.getRules(i,n),u=k(k({},o),{},{rules:s});return y.default.createElement(h.default.Item,u,y.default.createElement(m.default,l))}}a.default=M,(0,v.default)(M,"isFormItem",!0)},1925:function(e,t,a){var n=a(1926);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1926:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__network-select--FVaPO {\n position: relative;\n display: block;\n height: 61.6px;\n margin-bottom: 0 !important;\n}\n.index__network-select--FVaPO .ant-form-item-control-input-content {\n height: 61.6px;\n}\n.index__network-select--FVaPO .ant-form-item-explain {\n position: absolute;\n bottom: 0;\n}\n.index__select--2cAyT {\n margin-right: 40px;\n}\n.index__size-label--3Ry8T {\n margin-right: 40px;\n margin-left: 10px;\n}\n.index__tips--3wgea {\n margin-top: 0;\n}\n.index__label--2hqHr {\n margin-right: 10px;\n color: rgba(0, 0, 0, 0.45);\n line-height: 30px;\n}\n.index__content--14doI {\n color: rgba(0, 0, 0, 0.65);\n}\n.index__subnet-options-cidr--7bWem {\n margin-left: 5px;\n padding-left: 5px;\n border-left: 1px solid;\n opacity: 0.6;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","network-select":"index__network-select--FVaPO",select:"index__select--2cAyT","size-label":"index__size-label--3Ry8T",tips:"index__tips--3wgea",label:"index__label--2hqHr",content:"index__content--14doI","subnet-options-cidr":"index__subnet-options-cidr--7bWem"}},1927:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(86)),s=i(a(54)),u=i(a(343));a(593);var d=i(a(427)),c=i(a(58)),f=i(a(35)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=v(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),h=(a(161),i(a(16))),m=i(a(4)),g=i(a(1928));function v(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(v=function(e){return e?a:t})(e)}class y extends p.Component{constructor(){super(...arguments),(0,f.default)(this,"onChange",(e=>{var{value:t}=e.target,{options:a,onChange:n,isWrappedValue:r}=this.props;if(r){var l=(0,o.default)(a).call(a,(e=>e.value===t));n&&n(l)}else n&&n(t)})),(0,f.default)(this,"getValue",((e,t)=>void 0===t?t:e?t.value:t))}render(){var e=this.props,{options:t,optionType:a,buttonStyle:n,onlyRadio:r,className:l,value:i,isWrappedValue:o}=e,f=(0,c.default)(e,["options","optionType","buttonStyle","onlyRadio","className","value","isWrappedValue"]),h=(0,s.default)(t).call(t,(e=>"default"===a?p.default.createElement(d.default,{value:e.value,key:e.value,disabled:e.disabled},e.label):p.default.createElement(d.default.Button,{value:e.value,key:e.value,disabled:e.disabled},e.label)));return p.default.createElement(d.default.Group,(0,u.default)({optionType:a,buttonStyle:n},f,{className:(0,m.default)(l,r?g.default["only-radio"]:""),onChange:this.onChange,value:this.getValue(o,i)}),h)}}t.default=y,(0,f.default)(y,"propTypes",{options:h.default.array,onChange:h.default.func,optionType:h.default.string,buttonStyle:h.default.string,onlyRadio:h.default.bool,isWrappedValue:h.default.bool}),(0,f.default)(y,"defaultProps",{options:[],optionType:"button",buttonStyle:"solid",onlyRadio:!1,isWrappedValue:!1})},1928:function(e,t,a){var n=a(1929);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1929:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__only-radio--3nQs4 .ant-radio-button-wrapper {\n margin-left: 8px;\n border-left-width: 1px;\n border-radius: 4px;\n}\n.index__only-radio--3nQs4 .ant-radio-button-wrapper::before {\n display: none;\n}\n.index__only-radio--3nQs4 .ant-radio-button-wrapper:first-child {\n margin-left: 0;\n border-radius: 4px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px","only-radio":"index__only-radio--3nQs4"}},1930:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(54)),s=i(a(77));a(1303);var u=i(a(1290)),d=i(a(343));a(231);var c=i(a(341)),f=i(a(1378)),p=i(a(35)),h=i(a(601)),m=i(a(92)),g=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),v=(a(161),a(564),i(a(1937)));function y(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(y=function(e){return e?a:t})(e)}class b extends g.Component{constructor(){super(...arguments),(0,p.default)(this,"getValueContent",(e=>(0,h.default)(e)?"-":(0,m.default)(e)?(0,o.default)(e).call(e,((t,a)=>g.default.createElement(g.default.Fragment,null,g.default.createElement("div",{key:"value-".concat(a)},t),a!==e.length-1&&g.default.createElement("br",null)))):e)),(0,p.default)(this,"onClick",(()=>{var{onClick:e}=this.props;e&&e()}))}renderTitle(){var{title:e}=this.props;return g.default.createElement("span",null,e," ",g.default.createElement(c.default,{type:"link",icon:g.default.createElement(f.default,null),onClick:this.onClick}))}renderItem(){var{items:e}=this.props,t=(0,o.default)(e).call(e,((e,t)=>{var a,{label:n,value:r,span:l,contentStyle:i={}}=e,o=this.getValueContent(r),c={label:n,key:(0,s.default)(a="item-".concat(n,"-")).call(a,t),className:v.default.label};return l&&(c.span=l),g.default.createElement(u.default.Item,(0,d.default)({contentStyle:i},c),o)}));return g.default.createElement(u.default,{title:this.renderTitle(),colon:!1},t)}render(){return g.default.createElement("div",null,this.renderItem())}}t.default=b},1937:function(e,t,a){var n=a(1938);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1938:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__label--1lhix {\n vertical-align: top;\n}\n.index__label--1lhix .ant-descriptions-item-label {\n width: 100px;\n color: #8a8a8a;\n}\n",""]),t.locals={label:"index__label--1lhix"}},1939:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(164)),m=p(n(63)),g=p(n(77));n(1261);var v=p(n(1262));n(569);var y=p(n(1253)),b=p(n(58)),x=p(n(35)),w=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),k=(n(161),n(565));function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function M(e){for(var t=1;t{if(a&&a.length&&(0,h.default)(a).call(a,n)){var r,l=t("Name can not be duplicated");return m.default.reject(new Error((0,g.default)(r="".concat(t("Invalid: "))).call(r,l)))}return m.default.resolve(!0)}},i={validator:this.getRuleValidator(r)};return n&&n.length>0?[...n,i,l]:[i,l]}getMessage(e){var{withoutChinese:t,isFile:a,isKeypair:n,isStack:r,isCrontab:l,isImage:i,isInstance:o,isSwiftFile:s,isDatabaseName:u,isDatabaseUserName:d}=e;return t?I:r?T:a?N:n?E:l?A:i?j:o?P:s?D:u?L:d?O:S}getPropsFromComponentProps(){var{componentProps:e}=this.props,{withoutChinese:t=!1,isFile:a=!1,isKeypair:n=!1,isSwiftFile:r=!1,isDatabaseName:l=!1,isDatabaseUserName:i=!1,isStack:o,isCrontab:s,isImage:u,isInstance:d,names:c}=e;return{ruleProps:{names:c,withoutChinese:t,isFile:a,isKeypair:n,isStack:o,isCrontab:s,isImage:u,isInstance:d,isSwiftFile:r,isDatabaseName:l,isDatabaseUserName:i},messageProps:{withoutChinese:t,isFile:a,isKeypair:n,isStack:o,isCrontab:s,isImage:u,isInstance:d,isSwiftFile:r,isDatabaseName:l,isDatabaseUserName:i},restProps:(0,b.default)(e,["withoutChinese","isFile","isKeypair","isSwiftFile","isDatabaseName","isDatabaseUserName","isStack","isCrontab","isImage","isInstance","names"])}}get ruleProps(){var{formItemProps:e}=this.props,{rules:t}=e,{ruleProps:a}=this.getPropsFromComponentProps();return M(M({},a),{},{rules:t})}get messageProps(){var{messageProps:e}=this.getPropsFromComponentProps();return e}get formItemProps(){var{formItemProps:e}=this.props,{rules:t}=e,a=(0,b.default)(e,["rules"]),n=this.getRules(this.ruleProps),r=this.getMessage(this.messageProps);return M(M({},a),{},{rules:n,extra:r})}get inputProps(){var{isFile:e}=this.ruleProps,{restProps:a}=this.getPropsFromComponentProps();return M({placeholder:e?t("Please input file name"):t("Please input name")},a)}render(){var e=this.formItemProps,{inputProps:t}=this;return w.default.createElement(v.default.Item,e,w.default.createElement(y.default,t))}}a.default=W,(0,x.default)(W,"isFormItem",!0)},1940:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1261);var h=p(n(1262));n(569);var m=p(n(1253)),g=p(n(58)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),n(565));function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{this.setState({inputValue:e});var{onChange:t}=this.props;t&&t(e)}));var{value:t,max:a,min:n,description:r}=e,l=(0,o.default)(t,10);this.state={inputValue:(0,s.default)(l)?1:t,inputMax:a,inputMin:n,description:r}}static getDerivedStateFromProps(e,t){var{min:a,max:n,description:r}=e;return a!==t.inputMin||n!==t.inputMax||r!==t.description?{inputMin:a,inputMax:n,description:r}:null}render(){var{inputValue:e,inputMax:t,inputMin:a,description:n}=this.state;return h.default.createElement(u.default,null,h.default.createElement(c.default,{span:16},h.default.createElement(f.default,{min:a,max:t,onChange:this.onChange,value:e})),h.default.createElement(c.default,{span:4},h.default.createElement(d.default,{min:a,max:t,style:{marginLeft:8},precision:0,formatter:e=>"$ ".concat(e).replace(/\D/g,""),value:e,onChange:this.onChange})),h.default.createElement(c.default,{span:24},h.default.createElement("span",{style:{fontStyle:"italic",color:"#7b8997"}},n)))}}t.default=v,(0,p.default)(v,"propTypes",{value:m.default.number,max:m.default.number,min:m.default.number,description:m.default.string}),(0,p.default)(v,"defaultProps",{max:500,min:0,value:0})},1946:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(35)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),u=i(a(16)),d=i(a(4)),c=i(a(1947));function f(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(f=function(e){return e?a:t})(e)}class p extends s.Component{render(){var{label:e,className:t}=this.props;return s.default.createElement("div",{className:(0,d.default)(c.default.title,t)},e)}}t.default=p,(0,o.default)(p,"propTypes",{label:u.default.string,className:u.default.string}),(0,o.default)(p,"defaultProps",{label:""})},1947:function(e,t,a){var n=a(1948);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1948:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__title--30RRB {\n margin-left: 12px;\n font-weight: bold;\n font-size: 14px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",title:"index__title--30RRB"}},1949:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1445);var s=o(n(1446)),u=o(n(35)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),c=(n(161),o(n(16)));function f(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(f=function(e){return e?a:t})(e)}class p extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)}))}render(){var{value:e,className:t,checkedText:a,uncheckedText:n,disabled:r}=this.props,l={checked:e,className:t,checkedChildren:a,unCheckedChildren:n,disabled:r,onChange:this.onChange};return d.default.createElement(s.default,l)}}a.default=p,(0,u.default)(p,"propTypes",{value:c.default.bool,className:c.default.string,checkedText:c.default.string,uncheckedText:c.default.string,disabled:c.default.bool,onChange:c.default.func}),(0,u.default)(p,"defaultProps",{value:!1,checkedText:t("On"),uncheckedText:t("Off"),disabled:!1})},1952:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(584);var o=i(a(420)),s=i(a(35)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=c(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),d=(a(161),i(a(16)));function c(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(c=function(e){return e?a:t})(e)}class f extends u.Component{constructor(){super(...arguments),(0,s.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e.target.checked)}))}render(){var{value:e,className:t,content:a,disabled:n}=this.props,r={checked:e,className:t,disabled:n,onChange:this.onChange};return u.default.createElement(o.default,r,a)}}t.default=f,(0,s.default)(f,"propTypes",{value:d.default.bool,className:d.default.string,content:d.default.any,disabled:d.default.bool,onChange:d.default.func}),(0,s.default)(f,"defaultProps",{value:!1,content:""})},1953:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(54)),u=o(n(29)),d=o(n(164)),c=o(n(91)),f=o(n(35));n(1548);var p=o(n(1549)),h=o(n(343));n(585);var m=o(n(587)),g=o(n(58)),v=o(n(177)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=w(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=(n(161),o(n(1960))),x=o(n(16));function w(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(w=function(e){return e?a:t})(e)}var k=e=>{var{leftColumns:t,rightColumns:a,pageSize:n,loading:r,onRowLeft:l,onRowRight:i}=e,o=(0,g.default)(e,["leftColumns","rightColumns","pageSize","loading","onRowLeft","onRowRight"]);return y.default.createElement(p.default,(0,h.default)({},o,{showSelectAll:!1}),(e=>{var{direction:o,filteredItems:c,onItemSelectAll:f,onItemSelect:p,selectedKeys:h,disabled:g}=e,v="left"===o?t:a,x={getCheckboxProps:e=>({disabled:g||e.disabled}),onSelectAll(e,t){var a,n=(0,s.default)(a=(0,u.default)(t).call(t,(e=>!e.disabled))).call(a,(e=>{var{key:t}=e;return t})),r=e?(0,b.default)(n,h):(0,b.default)(h,n);f(r,e)},onSelect(e,t){var{key:a}=e;p(a,t)},selectedRowKeys:h},w={pageSize:n},k=("left"===o?l:i)||(e=>{var{key:t,disabled:a}=e;return{onClick:()=>{a||g||p(t,!(0,d.default)(h).call(h,t))}}});return y.default.createElement(m.default,{loading:r,rowSelection:x,columns:v,dataSource:c,pagination:w,size:"small",style:{pointerEvents:g?"none":null},onRow:k})}))};class C extends y.Component{constructor(e){super(e),(0,f.default)(this,"getTargetKey",(()=>{var{oriTargetKeys:e,value:t}=this.props;if(!(0,v.default)(e)||!(0,v.default)(t)){var{onChange:a}=this.props;a&&a(e||t||[])}})),(0,f.default)(this,"onChange",(e=>{this.setState({targetKeys:e});var{onChange:t}=this.props;t&&t(e)})),this.state={targetKeys:[]}}static getDerivedStateFromProps(e,t){var{value:a=[]}=e;return a!==t.targetKeys?{targetKeys:a}:null}componentDidMount(){this.getTargetKey()}render(){var{disabled:e,showSearch:t,leftTableColumns:a,rightTableColumns:n,dataSource:r,filterOption:l,titles:i,pageSize:o,loading:s,onRowLeft:u,onRowRight:d}=this.props,{targetKeys:c}=this.state;return y.default.createElement(y.default.Fragment,null,y.default.createElement(k,{titles:i,pageSize:o,dataSource:r,targetKeys:c,disabled:e,showSearch:t,onChange:this.onChange,filterOption:l,leftColumns:a,rightColumns:n,loading:s,onRowLeft:u,onRowRight:d}))}}a.default=C,(0,f.default)(C,"propTypes",{titles:x.default.array,leftTableColumns:x.default.array.isRequired,rightTableColumns:x.default.array.isRequired,dataSource:x.default.array.isRequired,disabled:x.default.bool,showSearch:x.default.bool,filterOption:x.default.func,onChange:x.default.func,value:x.default.array,pageSize:x.default.number,loading:x.default.bool,onRowLeft:x.default.func,onRowRight:x.default.func}),(0,f.default)(C,"defaultProps",{titles:[t("Optional list"),t("Selected list")],disabled:!1,showSearch:!0,filterOption:(e,t)=>{var a;return-1!==(0,c.default)(a=t.name).call(a,e)},onChange:null,value:[],pageSize:5,loading:!1})},1963:function(e,t,a){var n=a(1964);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},1964:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__cpu--1lkn3 {\n margin-right: 8px;\n}\n.index__ram--1uTZP {\n margin-right: 8px;\n margin-left: 16px;\n}\n",""]),t.locals={cpu:"index__cpu--1lkn3",ram:"index__ram--1uTZP"}},1965:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=i(a(28)),s=i(a(91)),u=i(a(54)),d=i(a(343));a(1246);var c=i(a(1247));a(1244);var f=i(a(1245));a(584);var p=i(a(420)),h=i(a(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=v(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),g=(a(161),i(a(16)));function v(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(v=function(e){return e?a:t})(e)}class y extends m.Component{constructor(){super(...arguments),(0,h.default)(this,"onChange",(e=>{var{onChange:t,options:a}=this.props,n={};(0,o.default)(e).call(e,(e=>{n[e]=!0})),(0,o.default)(a).call(a,(t=>{var{value:a}=t;n[a]=(0,s.default)(e).call(e,a)>=0})),t&&t(n)})),(0,h.default)(this,"getValues",(()=>{var{value:e,options:t}=this.props,a=[];return(0,o.default)(t).call(t,(t=>{var n=t.value;e[n]&&a.push(n)})),a}))}render(){var{className:e,options:t,span:a}=this.props,n=this.getValues(),r={className:e,onChange:this.onChange};return m.default.createElement(p.default.Group,(0,d.default)({},r,{value:n,style:{width:"100%"}}),m.default.createElement(c.default,null,(0,u.default)(t).call(t,(e=>m.default.createElement(f.default,{span:a,key:e.value},m.default.createElement(p.default,{value:e.value,disabled:!!e.disabled},e.label))))))}}t.default=y,(0,h.default)(y,"propTypes",{value:g.default.object,className:g.default.string,options:g.default.array,onChange:g.default.func,span:g.default.number}),(0,h.default)(y,"defaultProps",{value:{},options:[],span:8})},1966:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1535);var s=o(n(1536));n(231);var u=o(n(341));n(569);var d=o(n(1253)),c=o(n(343)),f=o(n(58)),p=o(n(49)),h=o(n(35)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=y(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),g=(n(161),n(1553)),v=o(n(16));function y(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(y=function(e){return e?a:t})(e)}class b extends m.Component{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,h.default)(this,"handleUpload",function(){var t=(0,p.default)((function*(t){var a=yield(0,g.getText)(t);return e.onChange(a),!1}));return function(e){return t.apply(this,arguments)}}()),(0,h.default)(this,"onChangeInput",(e=>{this.onChange(e)}))}render(){var e=this.props,{value:a,placeholder:n,accept:r}=e,l=(0,f.default)(e,["value","placeholder","accept"]);return m.default.createElement(m.default.Fragment,null,m.default.createElement(d.default.TextArea,(0,c.default)({placeholder:n,value:a,onChange:this.onChange,style:{fontFamily:'"Menlo", "Liberation Mono", "Consolas", "DejaVu Sans Mono", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace'}},l)),m.default.createElement(s.default,{beforeUpload:this.handleUpload,showUploadList:!1,accept:r},m.default.createElement(u.default,{type:"link"},t("Load from local files"))))}}a.default=b,(0,h.default)(b,"propTypes",{value:v.default.string,placeholder:v.default.string,accept:v.default.any,onChange:v.default.func}),(0,h.default)(b,"defaultProps",{value:"",placeholder:t("Please input"),accept:"",onChange:e=>{}})},1967:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(231);var p=f(n(341)),h=f(n(1347));n(1246);var m=f(n(1247)),g=f(n(1442));n(1244);var v=f(n(1245));n(1261);var y=f(n(1262)),b=f(n(343)),x=f(n(35)),w=f(n(29)),k=f(n(54)),C=f(n(232)),_=f(n(63)),M=f(n(0)),S=(n(161),n(564),f(n(1968))),I=n(565);function N(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}var{isIPv4:E,isIpv6:T}=I.ipValidate,A=e=>{var a,{componentProps:n,formItemProps:r}=e,{subnets:l,maxNumber:i=10,formRef:f}=n,{name:I,value:A=[],onChange:j}=r,P=(0,w.default)(a=(0,k.default)(l).call(l,(e=>function(e){for(var t=1;t!(0,C.default)(A).call(A,(t=>!!t&&t.subnet===e.value))));return M.default.createElement(M.default.Fragment,null,M.default.createElement(y.default.Item,r,0===P.length?M.default.createElement("div",null,t("The selected network has no subnet")):M.default.createElement(y.default.List,{name:I},((e,a)=>{var{add:n,remove:r}=a;return M.default.createElement(M.default.Fragment,null,(0,k.default)(e).call(e,(e=>M.default.createElement(m.default,{key:e.key,gutter:[16,16]},M.default.createElement(v.default,{span:22},M.default.createElement(y.default.Item,(0,b.default)({},e,{validateTrigger:["onChange","onBlur"],rules:[{required:!0,validator:(e,a)=>{if(!a||!a.subnet)return _.default.reject(new Error(t("Missing Subnet")));if("manual"===a.ip_address.type){var{ip:n}=a.ip_address||{};if(!n)return _.default.reject(new Error(t("Missing IP Address")));if(!E(n)&&!T(n))return _.default.reject(new Error(t("Invalid: Please input a valid ip")))}return _.default.resolve(!0)}}]}),M.default.createElement(S.default,{field:e,subnetsAvailable:P,onChange:e=>{return t=e,void(j&&j(t));var t}}))),M.default.createElement(v.default,{span:2},M.default.createElement(g.default,{onClick:()=>{r(e.name),f.current.validateFields([I])}}))))),e.length{n(),f.current.validateFields([I])},block:!0,icon:M.default.createElement(h.default,null)},t("Add IP")))}))))};A.isFormItem=!0;var j=A;a.default=j},1968:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(1244);var m=p(n(1245));n(568);var g=p(n(415)),v=p(n(35)),y=p(n(86)),b=p(n(77)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=k(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),w=(n(161),p(n(1969)));function k(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(k=function(e){return e?a:t})(e)}function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var a,{subnetsAvailable:n,onChange:r,value:l}=e;l=l||{subnet:void 0,ip_address:{type:"dhcp",ip:void 0}};var[i,o]=(0,x.useState)(l.subnet),[s,u]=(0,x.useState)(l.ip_address),[d,c]=(0,x.useState)(!!l.subnet||!1),f=(0,y.default)(n).call(n,(e=>e.id===i)),p=e=>{var t=_(_({},l),{},{subnet:i,ip_address:s},e);r&&r(t)};return x.default.createElement(h.default,{gutter:[16,16]},x.default.createElement(m.default,{span:8},x.default.createElement(g.default,{placeholder:t("Please select"),options:n,value:i,onChange:(e,t)=>{o(t.value),c(!0),p({subnet:t.value})}}),f&&x.default.createElement("div",{style:{marginTop:16}},(0,b.default)(a="".concat(t("Cidr"),": ")).call(a,f.cidr))),f&&d&&x.default.createElement(m.default,{span:14},x.default.createElement(w.default,{value:s,version:f.ip_version||4,onChange:e=>{u(e),p({ip_address:e})}})))};a.default=M},1969:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(569);var m=p(n(1253));n(1244);var g=p(n(1245));n(568);var v=p(n(415)),y=p(n(35)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161);function x(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function k(e){for(var t=1;t{var{value:a={},onChange:n}=e,[r,l]=(0,b.useState)(a.type||"dhcp"),[i,o]=(0,b.useState)(a.ip||void 0),s=e=>{n&&n(k(k({ip:i,type:r},a),e))};return b.default.createElement(h.default,{gutter:[16]},b.default.createElement(g.default,{span:12},b.default.createElement(v.default,{value:r,onChange:e=>{var t=e||"dhcp";l(t),s({type:t})},options:[{value:"dhcp",label:t("Automatically Assigned Address")},{value:"manual",label:t("Manual input")}]})),b.default.createElement(g.default,{span:12},"manual"===r&&b.default.createElement(m.default,{onChange:e=>{var t=e.currentTarget.value;o(t),s({ip:t})},defaultValue:i})))}},1970:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1246);var h=p(n(1247));n(569);var m=p(n(1253));n(1244);var g=p(n(1245));n(1261);var v=p(n(1262));n(568);var y=p(n(415)),b=p(n(35)),x=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=k(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),w=(n(161),n(565));function k(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(k=function(e){return e?a:t})(e)}function C(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function _(e){for(var t=1;t{var{name:t}=this.state;this.setState({name:_(_({},t),{},{type:e})},(()=>{var{onChange:e}=this.props;e&&e(this.state.name)}))})),(0,b.default)(this,"handleInputChange",(e=>{var{name:t}=this.state;this.setState({name:_(_({},t),{},{mac:e})})})),this.state={name:{type:"",mac:""}}}render(){var{value:e,name:a,options:n}=this.props,{type:r}=e||{type:void 0};return x.default.createElement(h.default,{gutter:16},x.default.createElement(g.default,{span:12},x.default.createElement(v.default.Item,{name:[a,"type"],style:{marginBottom:0}},x.default.createElement(y.default,{placeholder:t("Please select"),options:n||[{label:t("Auto allocate mac address"),value:"auto"},{label:t("Manual input"),value:"manual"}],onChange:this.handleSelectChange}))),x.default.createElement(g.default,{span:12},e&&"manual"===r?x.default.createElement(v.default.Item,{hidden:"auto"===r||void 0===r,name:[a,"mac"],rules:[{validator:w.macAddressValidate,required:!0,message:t('Invalid Mac Address. Please Use ":" as separator.')}],style:{marginBottom:0}},x.default.createElement(m.default,{maxLength:17,onChange:this.handleInputChange})):null))}}var S=M;a.default=S},1971:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var h=p(n(28)),m=p(n(32)),g=p(n(86)),v=p(n(91)),y=p(n(77)),b=p(n(54)),x=p(n(29)),w=p(n(164)),k=p(n(350)),C=p(n(591));n(1548);var _=p(n(1549));n(344);var M=p(n(202));n(585);var S=p(n(587));n(1972);var I=p(n(1975)),N=p(n(58));n(1278);var E=p(n(1279));n(569);var T=p(n(1253));n(568);var A=p(n(415)),j=p(n(35)),P=p(n(570)),D=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=z(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),L=n(36),O=(n(161),n(163)),R=p(n(1990));function z(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(z=function(e){return e?a:t})(e)}function U(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function F(e){for(var t=1;t{var t,{value:a,metadata:n=[]}=e,r=[],l={};return(0,h.default)(t=(0,m.default)(a)).call(t,(e=>{var t=(0,g.default)(n).call(n,(t=>{var a,{detail:{properties:n={}}={}}=t;return(0,v.default)(a=(0,m.default)(n)).call(a,e)>=0}));if(t){var i,{namespace:o}=t,s=(0,y.default)(i="".concat(o,"--")).call(i,e);r.push(s),l[s]=a[e]}})),{checkedKeys:[],targetKeys:r,values:l,selectedKeysTable:[]}})),(0,j.default)(this,"onValuesChange",(e=>{var t,{onChange:a}=this.props,n={};(0,h.default)(t=(0,m.default)(e)).call(t,(t=>{var a=t.split("--")[1];n[a]=String(e[t])})),a&&a(n)})),(0,j.default)(this,"onInputChange",((e,t)=>{var{key:a}=t,{values:n={}}=this.state,r=e.target?e.target.value:e;n[a]=r,this.setState({values:n}),this.onValuesChange(n)})),(0,j.default)(this,"renderInput",(e=>{var{type:a,defaultValue:n,operators:r,enum:l=[],minimum:i,maximum:o,items:s={}}=e&&e.detail||{};if("boolean"===a){var u=(0,O.getYesNoList)();return D.default.createElement(A.default,{options:u,defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please select")})}if("integer"===a||"number"===a||"string"===a&&0===l.length){var d={defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please input"),required:!0};return void 0!==i&&(d.minimum=i),void 0!==o&&(d.maximum=o),"string"===a?D.default.createElement(T.default,d):("integer"===a&&(d.precision=0,d.formatter=e=>"$ ".concat(e).replace(/\D/g,"")),D.default.createElement(E.default,d))}if(l.length>0){var c=(0,b.default)(l).call(l,(e=>({value:e,label:e})));return D.default.createElement(A.default,{options:c,defaultValue:n,onChange:t=>this.onInputChange(t,e),placeholder:t("Please select")})}if(s.enum){var f={defaultValue:n,items:s,operators:r,onChange:t=>this.onInputChange(t,e)};return D.default.createElement(R.default,f)}return null})),(0,j.default)(this,"flatten",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];(0,h.default)(e).call(e,(e=>{var{children:n=[]}=e;t.push(e),a.flatten(n,t)}))})),(0,j.default)(this,"getTreeData",(()=>{var e=[];return this.flatten(this.metadata,e),e})),(0,j.default)(this,"getTreeDataWithoutFather",(()=>{var e=[];return this.flatten(this.metadata,e),(0,x.default)(e).call(e,(e=>{var t;return(0,v.default)(t=e.key).call(t,"--")>=0}))})),(0,j.default)(this,"getAllTreeKeys",(()=>{var e=this.getTreeData();return(0,b.default)(e).call(e,(e=>e.key))})),(0,j.default)(this,"generateTree",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return(0,b.default)(e).call(e,(e=>{var{children:n}=e,r=(0,N.default)(e,["children"]);return F(F({},r),{},{disabled:(0,w.default)(t).call(t,r.key),children:a.generateTree(n,t)})}))})),(0,j.default)(this,"isChecked",((e,t)=>-1!==(0,v.default)(e).call(e,t))),(0,j.default)(this,"isChildKey",(e=>(0,v.default)(e).call(e,"--")>=0)),(0,j.default)(this,"onCheckTree",(e=>t=>{var a=this.getAllTreeKeys();(0,h.default)(a).call(a,(a=>{var n=(0,v.default)(t).call(t,a)>=0;this.isChildKey(a)&&e(a,n)})),this.setState({checkedKeys:t})})),(0,j.default)(this,"renderTree",(e=>{var{onItemSelect:t,targetKeys:a}=e,{checkedKeys:n}=this.state;return D.default.createElement(I.default,{blockNode:!0,checkable:!0,checkedKeys:n,treeData:this.generateTree(this.metadata,a),onCheck:this.onCheckTree(t)})})),(0,j.default)(this,"renderTable",(e=>{var{filteredItems:t,onItemSelectAll:a,onItemSelect:n,disabled:r}=e,{selectedKeysTable:l}=this.state,i=this,o={getCheckboxProps:e=>({disabled:r||e.disabled}),onSelectAll(e,t){var n=e?(0,b.default)(t).call(t,(e=>e.key)):[];a(e?n:l,e),i.setState({selectedKeysTable:n})},onSelect(e,t){var{key:a}=e;n(a,t);var r=[];r=t?[...l,a]:(0,x.default)(l).call(l,(e=>e!==a)),i.setState({selectedKeysTable:r})},selectedRowKeys:l};return D.default.createElement(S.default,{rowSelection:o,columns:this.columns,dataSource:t,size:"small",pagination:!1,style:{pointerEvents:r?"none":null}})})),(0,j.default)(this,"getChildKeys",(e=>{var t,a=[];return(0,h.default)(t=this.metadata).call(t,(t=>{var n;(0,h.default)(n=t.children||[]).call(n,(t=>{t.namespace===e&&a.push(t.key)}))})),a})),(0,j.default)(this,"getDefaultValue",((e,t)=>{var{type:a,default:n,defaultValue:r,operators:l,enum:i=[],minimum:o,items:s={}}=e||{},{values:u}=this.state;return(0,P.default)(u,t)?u[t]:n||(r||("boolean"===a||("string"===a&&0===i.length?r:"string"===a&&i.length>0?r||i[0]:"integer"===a||"number"===a?r||o||0:i.length>0?i[0]:s.enum?l[0]:null)))})),(0,j.default)(this,"getItemDefaultValue",(e=>{var t,a,n=e.split("--");if(!(n.length<1)){var r=n[0],l=n[1],i=(0,g.default)(t=this.metadata).call(t,(e=>e.key===r));if(i){var o=(0,g.default)(a=i.children).call(a,(e=>e.realKey===l));if(o)return this.getDefaultValue(o.detail||{},e)}}})),(0,j.default)(this,"onTransferChange",((e,t,a)=>{var n=[];(0,h.default)(e).call(e,(e=>{if(e.split("--").length>1)n.push(e);else{var t=this.getChildKeys(e);n.push(...t)}}));var r=(0,k.default)(new C.default(n)),{values:l={}}=this.state,i={};(0,h.default)(r).call(r,(e=>{l[e]?i[e]=l[e]:i[e]=this.getItemDefaultValue(e)}));var{selectedKeysTable:o}=this.state,s="right"===t?[...o,...r]:(0,x.default)(o).call(o,(e=>(0,v.default)(a).call(a,e)<0)),u="right"===t?[]:a;this.setState({targetKeys:r,values:i,selectedKeysTable:s,checkedKeys:u}),this.onValuesChange(i)})),(0,j.default)(this,"onTransferSelectChange",((e,t)=>{this.setState({checkedKeys:e,selectedKeysTable:t})})),(0,j.default)(this,"getTransferSelectedKeys",(()=>{var{checkedKeys:e=[],selectedKeysTable:t=[]}=this.state,a=(0,x.default)(e).call(e,(e=>this.isChildKey(e)));return(0,k.default)(new C.default([...a,...t]))})),(0,j.default)(this,"renderTransferItem",(e=>D.default.createElement(M.default,{title:e.description},e.title||e.display_name))),this.state=this.initState(e)}get metadata(){var e,t=this,{metadata:a}=this.props;return(0,b.default)(e=a||[]).call(e,(e=>{var a,n,r,{detail:{properties:l={}}={},namespace:i,description:o,display_name:s,isObject:u,objName:d}=(0,L.toJS)(e),c=(0,b.default)(a=(0,m.default)(l)).call(a,(e=>{var a,n,r,o,c=(0,L.toJS)(l[e]),f=(0,y.default)(a="".concat(i,"--")).call(a,e),p=F(F({},c),{},{defaultValue:t.getDefaultValue(c,f)}),h=u?(0,y.default)(r=(0,y.default)(o="".concat(s," - ")).call(o,d," > ")).call(r,c.title):(0,y.default)(n="".concat(s," > ")).call(n,c.title),m=D.default.createElement("div",null,D.default.createElement("p",null,h),D.default.createElement("p",null,c.description));return{key:f,namespace:i,realKey:e,title:D.default.createElement(M.default,{title:m},c.title),description:c.description,detail:p}})),f=u?(0,y.default)(n="".concat(s," - ")).call(n,d):s,p=u?(0,y.default)(r="".concat(i,"-")).call(r,d):null,h=u?D.default.createElement("div",null,D.default.createElement("p",null,o),D.default.createElement("p",null,e.objDescription)):null;return{key:p||i,namespace:i,objectNamespace:p,description:h||o,title:D.default.createElement(M.default,{title:h||o},f),children:c}}))}get columns(){return[{dataIndex:"title",title:t("Name")},{dataIndex:"detail",title:t("Value"),render:(e,t)=>this.renderInput(t)}]}render(){var{targetKeys:e}=this.state,t=this.getTreeDataWithoutFather(),a=this.getTransferSelectedKeys();return D.default.createElement(_.default,{onChange:this.onTransferChange,onSelectChange:this.onTransferSelectChange,targetKeys:e,selectedKeys:a,dataSource:t,className:"tree-transfer",render:this.renderTransferItem,showSelectAll:!1},(a=>{var{direction:n,onItemSelect:r,onItemSelectAll:l,filteredItems:i,disabled:o}=a;return"left"===n?this.renderTree({onItemSelect:r,dataSource:t,targetKeys:e}):"right"===n?this.renderTable({filteredItems:i,onItemSelectAll:l,onItemSelect:r,disabled:o}):void 0}))}}a.default=B},1990:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0;var s=o(n(86)),u=o(n(91)),d=o(n(54)),c=o(n(77));n(568);var f=o(n(415)),p=o(n(35)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0));n(161);function m(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(m=function(e){return e?a:t})(e)}class g extends h.Component{constructor(e){super(e),(0,p.default)(this,"getDefaultOperator",(()=>{var{defaultValue:e,operators:t}=this.props;return(0,s.default)(t).call(t,(t=>0===(0,u.default)(e).call(e,t)))||t[0]})),(0,p.default)(this,"getDefaultEnums",(()=>{var{defaultValue:e}=this.props,t=this.getDefaultOperator(),a=e.split("".concat(t," "));return 2===a.length&&a[1]?a[1].split(","):[]})),(0,p.default)(this,"getOptions",(()=>{var{operators:e=[]}=this.props;return(0,d.default)(e).call(e,(e=>({value:e,label:e})))})),(0,p.default)(this,"getEnumOptions",(()=>{var e,{items:t={enum:[]}}=this.props;return(0,d.default)(e=t.enum).call(e,(e=>({value:e,label:e})))})),(0,p.default)(this,"onChangeValue",(()=>{var{onChange:e}=this.props;if(e){var t,{operator:a,enums:n}=this.state;e((0,c.default)(t="".concat(a," ")).call(t,n.join(",")))}})),(0,p.default)(this,"onChangeOperator",(e=>{this.setState({operator:e},this.onChangeValue)})),(0,p.default)(this,"onChangeEnum",(e=>{this.setState({enums:e},this.onChangeValue)})),this.state={operator:this.getDefaultOperator(e),enums:this.getDefaultEnums(e)}}render(){var e=this.getOptions(),a=this.getEnumOptions(),n=this.getDefaultOperator(),r=this.getDefaultEnums();return h.default.createElement("div",null,h.default.createElement(f.default,{options:e,defaultValue:n,onChange:this.onChangeOperator,placeholder:t("Please select")}),h.default.createElement(f.default,{options:a,mode:"tags",defaultValue:r,onChange:this.onChangeEnum,placeholder:t("Please select")}))}}a.default=g},1991:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.NetworkSelectTable=void 0;var h=p(n(29)),m=p(n(91)),g=p(n(28)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=S(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=n(412),x=p(n(1448)),w=n(233),k=n(342),C=n(571),_=n(163),M=n(567);function S(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(S=function(e){return e?a:t})(e)}function I(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class N extends y.Component{constructor(e){super(e),(0,v.default)(this,"getSelectTableProps",(e=>function(e){for(var t=1;t{var t,a=(0,C.networkColumns)(this);a[0].render=null;var{key:n}=e;return"project"===n?(0,h.default)(a).call(a,(e=>"project_id"!==e.dataIndex)):(0,m.default)(t=["shared","router:external"]).call(t,n)>=0?(0,h.default)(a).call(a,(e=>e.dataIndex!==n)):a})),(0,v.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,v.default)(this,"getNetworkFilters",(e=>{var{key:a}=e,n=[{label:t("Name"),name:"name"}];return"shared"!==a&&n.push({label:t("Shared"),name:"shared",options:k.yesNoOptions}),this.showExternal&&"external"!==a&&n.push({label:t("External Network"),name:"router:external",options:k.yesNoOptions}),"project"!==a&&n.push({label:t("Project Range"),name:"project_id",options:[{label:t("Current Project"),key:this.currentProjectId},{label:t("All"),key:"all"}]}),n})),(0,v.default)(this,"getNetworkExtraParams",(e=>{var{key:t}=e;return"project"===t?{project_id:this.currentProjectId}:"shared"===t?{shared:!0}:"external"===t?{"router:external":!0}:{}})),this.stores={project:new w.NetworkStore,shared:new w.NetworkStore,external:new w.NetworkStore,all:new w.NetworkStore}}get location(){var{location:e={}}=(this.props.rootStore||{}).routing||{};return e}get isAdminPage(){var{pathname:e}=this.location;return(0,_.isAdminPage)(e)}get currentProjectId(){return this.props.rootStore.projectId}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get showExternal(){var{showExternal:e=!1}=this.props;return e}get networkTabs(){var e=[{title:t("Current Project Networks"),key:"project"},{title:t("Shared Networks"),key:"shared"}];return this.showExternal&&e.push({title:t("External Networks"),key:"external"}),this.hasAdminRole&&e.push({title:t("All Networks"),key:"all"}),(0,g.default)(e).call(e,(e=>{e.props=this.getSelectTableProps(e)})),e}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,M.getPath)({key:n,params:t,query:a})}get labelStyle(){return{marginRight:16}}getStore(e){var{key:t}=e;return this.stores[t]}getDisabledFunc(){return this.props.disabledFunc}render(){var{isMulti:e=!1,header:t,value:a}=this.props;return y.default.createElement(x.default,{tabs:this.networkTabs,onChange:this.onChange,isMulti:e,header:t,value:a})}}a.NetworkSelectTable=N;var E=(0,b.inject)("rootStore")((0,b.observer)(N));a.default=E},1995:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(162),p=n(21);c(a,"__esModule",{value:!0}),a.default=a.VolumeSelectTable=void 0;var h=p(n(29)),m=p(n(86)),g=p(n(28)),v=p(n(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=c&&o;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var i=r?o(e,l):null;i&&(i.get||i.set)?c(n,l,i):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(n(0)),b=n(412),x=p(n(1448)),w=n(414),k=n(566);function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function _(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}class M extends y.Component{constructor(e){super(e),(0,v.default)(this,"getSelectTableProps",(e=>function(e){for(var t=1;t{var t=k.volumeColumns,{key:a}=e;return"available"===a?(0,h.default)(t).call(t,(e=>"status"!==e.dataIndex&&"attachments"!==e.dataIndex)):"shared"===a?(0,h.default)(t).call(t,(e=>"multiattach"!==e.dataIndex)):t})),(0,v.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,v.default)(this,"getVolumeFilters",(e=>{var{key:t}=e,a=[...k.volumeFilters];return"shared"===t?(0,h.default)(a).call(a,(e=>"multiattach"!==e.name)):"available"===t?(0,h.default)(a).call(a,(e=>"status"!==e.name)):a})),(0,v.default)(this,"getVolumeExtraParams",(e=>{var{key:t}=e;return"shared"===t?{multiattach:!0}:"available"===t?{status:"available"}:{}})),(0,v.default)(this,"disallowedMultiAttach",(e=>{var{attachments:t=[]}=e,{serverId:a}=this.props;return!!(0,m.default)(t).call(t,(e=>e.server_id===a))})),this.stores={available:new w.VolumeStore,shared:new w.VolumeStore}}get currentProjectId(){return this.props.rootStore.projectId}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get showExternal(){var{showExternal:e=!1}=this.props;return e}get networkTabs(){var e=[{title:t("Available"),key:"available"},{title:t("Shared"),key:"shared"}];return(0,g.default)(e).call(e,(e=>{e.props=this.getSelectTableProps(e)})),e}get labelStyle(){return{marginRight:16}}getStore(e){var{key:t}=e;return this.stores[t]}getDisabledFunc(e){if("available"===e.key){var{disabledFunc:t=null}=this.props;return t}return this.disallowedMultiAttach}render(){var{isMulti:e=!1,header:t,value:a}=this.props;return y.default.createElement(x.default,{tabs:this.networkTabs,onChange:this.onChange,isMulti:e,header:t,value:a})}}a.VolumeSelectTable=M;var S=(0,b.inject)("rootStore")((0,b.observer)(M));a.default=S},1996:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=void 0,n(1997);var s=o(n(2e3)),u=o(n(35)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=f(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),c=(n(161),o(n(16)));function f(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(f=function(e){return e?a:t})(e)}class p extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),(0,u.default)(this,"getValue",(()=>{var{value:e,isWrappedValue:t}=this.props;return void 0===e?e:t?e.value:e}))}render(){var{treeData:e,placeholder:a=t("Please select"),disabled:n=!1}=this.props;return d.default.createElement(s.default,{className:this.props.className,showSearch:!0,allowClear:!0,placeholder:a,treeData:e,disabled:n,value:this.getValue(),onChange:this.onChange})}}a.default=p,p.propTypes={value:c.default.oneOfType([c.default.array,c.default.string]),isWrappedValue:c.default.bool,treeData:c.default.array,onChange:c.default.func}},2001:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(568);var o=i(a(415)),s=i(a(35)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=d(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0));a(161);function d(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(d=function(e){return e?a:t})(e)}class c extends u.Component{constructor(e){super(e),(0,s.default)(this,"onChange",(e=>{this.setState({value:e,inputVal:void 0},(()=>{var{formRef:t,onChange:a,name:n}=this.props;t.current&&t.current.setFieldsValue({[n]:e}),a&&a(e)}))})),(0,s.default)(this,"onSearch",(e=>{e&&this.setState({inputVal:e})})),(0,s.default)(this,"onBlur",(()=>{var{inputVal:e}=this.state;e&&this.onChange(e)})),this.state={value:void 0,inputVal:void 0}}render(){var{options:e=[],filterOption:t=!1}=this.props,{value:a}=this.state;return u.default.createElement(o.default,{showSearch:!0,value:a,style:{width:"100%",height:"100%"},onChange:this.onChange,onSearch:this.onSearch,onBlur:this.onBlur,filterOption:t,onFocus:this.onFocusSelect,showArrow:!1,options:e,getPopupContainer:()=>document.body})}}t.default=c},2002:function(e,t,a){"use strict";var n=a(32),r=a(42),l=a(29),i=a(25),o=a(28),s=a(44),u=a(45),d=a(20),c=a(162),f=a(21);d(t,"__esModule",{value:!0}),t.default=k;var p=f(a(77)),h=f(a(164));a(569);var m=f(a(1253));a(568);var g=f(a(415)),v=f(a(35)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var n={},r=d&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=r?i(e,l):null;o&&(o.get||o.set)?d(n,l,o):n[l]=e[l]}n.default=e,a&&a.set(e,n);return n}(a(0)),b=(a(161),a(2003));function x(e){if("function"!=typeof c)return null;var t=new c,a=new c;return(x=function(e){return e?a:t})(e)}function w(e,t){var a=n(e);if(r){var o=r(e);t&&(o=l(o).call(o,(function(t){return i(e,t).enumerable}))),a.push.apply(a,o)}return a}function k(e){var{value:t,options:a,onChange:n}=e,[r,l]=(0,y.useState)(t.split(" ")[0]),[c,f]=(0,y.useState)(t.split(" ")[1]);(0,y.useEffect)((()=>{var[e,a]=t.split(" ");e===r&&a===c||(l(e),f(a))}),[t]);var b=e=>{var t,a=function(e){for(var t=1;t{l(e),b({prefix:e})},style:{width:"50%"},options:a,filterOption:(e,t)=>{var a;return(0,h.default)(a=t.label.toLowerCase()).call(a,e.toLowerCase())},getPopupContainer:()=>document.body}),y.default.createElement(m.default,{value:c,onChange:e=>{var t=e.target.value;f(t),b({number:t})},style:{width:"50%"}}))}k.defaultProps={value:"+86 ",options:b.defaultCountries}},2003:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.defaultCountries=void 0;var i,o=l(n(54)),s=l(n(32)),u=l(n(77)),d={1:["US","AG","AI","AS","BB","BM","BS","CA","DM","DO","GD","GU","JM","KN","KY","LC","MP","MS","PR","SX","TC","TT","VC","VG","VI"],7:["RU","KZ"],20:["EG"],27:["ZA"],30:["GR"],31:["NL"],32:["BE"],33:["FR"],34:["ES"],36:["HU"],39:["IT","VA"],40:["RO"],41:["CH"],43:["AT"],44:["GB","GG","IM","JE"],45:["DK"],46:["SE"],47:["NO","SJ"],48:["PL"],49:["DE"],51:["PE"],52:["MX"],53:["CU"],54:["AR"],55:["BR"],56:["CL"],57:["CO"],58:["VE"],60:["MY"],61:["AU","CC","CX"],62:["ID"],63:["PH"],64:["NZ"],65:["SG"],66:["TH"],81:["JP"],82:["KR"],84:["VN"],86:["CN"],90:["TR"],91:["IN"],92:["PK"],93:["AF"],94:["LK"],95:["MM"],98:["IR"],212:["MA","EH"],213:["DZ"],216:["TN"],218:["LY"],220:["GM"],221:["SN"],222:["MR"],223:["ML"],224:["GN"],225:["CI"],226:["BF"],227:["NE"],228:["TG"],229:["BJ"],230:["MU"],231:["LR"],232:["SL"],233:["GH"],234:["NG"],235:["TD"],236:["CF"],237:["CM"],238:["CV"],240:["GQ"],241:["GA"],242:["CG"],244:["AO"],245:["GW"],246:["IO"],248:["SC"],249:["SD"],250:["RW"],251:["ET"],252:["SO"],253:["DJ"],254:["KE"],255:["TZ"],256:["UG"],257:["BI"],258:["MZ"],260:["ZM"],261:["MG"],262:["RE","YT"],263:["ZW"],264:["NA"],265:["MW"],266:["LS"],267:["BW"],268:["SZ"],269:["KM"],291:["ER"],297:["AW"],298:["FO"],299:["GL"],350:["GI"],351:["PT"],352:["LU"],353:["IE"],354:["IS"],355:["AL"],356:["MT"],357:["CY"],358:["FI","AX"],359:["BG"],371:["LV"],372:["EE"],373:["MD"],374:["AM"],375:["BY"],376:["AD"],377:["MC"],378:["SM"],380:["UA"],385:["HR"],386:["SI"],387:["BA"],420:["CZ"],421:["SK"],423:["LI"],500:["FK"],501:["BZ"],502:["GT"],503:["SV"],504:["HN"],505:["NI"],506:["CR"],507:["PA"],509:["HT"],590:["GP","BL","MF"],591:["BO"],592:["GY"],593:["EC"],594:["GF"],595:["PY"],596:["MQ"],597:["SR"],598:["UY"],672:["NF"],673:["BN"],674:["NR"],675:["PG"],676:["TO"],677:["SB"],678:["VU"],679:["FJ"],680:["PW"],681:["WF"],682:["CK"],685:["WS"],687:["NC"],688:["TV"],689:["PF"],690:["TK"],691:["FM"],692:["MH"],850:["KP"],852:["HK"],853:["MO"],855:["KH"],856:["LA"],880:["BD"],886:["TW"],960:["MV"],961:["LB"],962:["JO"],963:["SY"],964:["IQ"],965:["KW"],966:["SA"],967:["YE"],968:["OM"],970:["PS"],971:["AE"],972:["IL"],973:["BH"],974:["QA"],975:["BT"],976:["MN"],977:["NP"],992:["TJ"],993:["TM"],994:["AZ"],995:["GE"],996:["KG"],998:["UZ"]},c={CN:t("China"),TW:t("Taiwan"),HK:t("Hong Kong"),MO:t("Macau"),KR:t("South Korea"),JP:t("Japan"),MY:t("Malaysia"),SG:t("Singapore"),NZ:t("New Zealand"),AU:t("Australia"),US:t("United States"),CA:t("Canada"),VN:t("Vietnam"),IN:t("India"),ID:t("Indonesia"),TH:t("Thailand"),PH:t("Philippines"),DK:t("Denmark"),FI:t("Finland"),FR:t("France"),DE:t("Germany"),GR:t("Greece"),IE:t("Ireland"),IL:t("Israel"),IT:t("Italy"),MX:t("Mexico"),NL:t("Netherlands"),NO:t("Norway"),PT:t("Portugal"),RU:t("Russia"),ZA:t("South Africa"),ES:t("Spain"),SE:t("Sweden"),CH:t("Switzerland"),BE:t("Belgium"),GB:t("United Kingdom"),AR:t("Argentina"),BR:t("Brazil"),KH:t("Kampuchea"),LTU:t("Lithuania"),LK:t("Sri Lanka"),NG:t("Nigeria"),AF:t("Afghanistan"),AL:t("Albania"),DZ:t("Algeria"),AS:t("American Samoa"),AD:t("Andorra"),AG:t("Antigua and Barbuda"),AM:t("Armenia"),AT:t("Austria"),BS:t("Bahamas"),BH:t("Bahrain"),BD:t("Bangladesh"),BY:t("Belarus"),BM:t("Bermuda"),BA:t("Bosnia and Herzegovina"),IO:t("British Indian Ocean Territory"),BF:t("Burkina Faso"),CF:t("Central African Republic"),TD:t("Chad"),CX:t("Christmas Island"),CC:t("Cocos (Keeling) Islands"),CO:t("Colombia"),CG:t("Republic of the Congo"),ZR:t("Democratic Republic of the Congo"),CR:t("Costa Rica"),CI:t("Cote D'Ivoire"),CU:t("Cuba"),CZ:t("Czech Republic"),GQ:t("Equatorial Guinea"),EE:t("Estonia"),FK:t("Falkland Islands (Malvinas)"),PF:t("French Polynesia"),GA:t("Gabon"),GP:t("Guadeloupe"),GW:t("Guinea Bissau"),GY:t("Guyana"),HN:t("Honduras"),HU:t("Hungary"),JO:t("Jordan"),KZ:t("Kazakhstan"),KE:t("Kenya"),KW:t("Kuwait"),KG:t("Kyrgyzstan"),LS:t("Lesotho"),MG:t("Madagascar"),MV:t("Maldives"),YT:t("Mayotte"),FM:t("Micronesia"),MC:t("Monaco"),MN:t("Mongolia"),MNE:t("Montenegro"),MS:t("Montserrat"),MM:t("Myanmar"),NR:t("Nauru"),NP:t("Nepal"),AN:t("Netherlands Antilles"),NC:t("New Caledonia"),NI:t("Nicaragua"),NF:t("Norfolk Island"),KP:t("North Korea"),MP:t("Northern Mariana Islands"),OM:t("Oman"),PK:t("Pakistan"),PW:t("Palau"),PA:t("Panama"),PG:t("Papua New Guinea"),PN:t("Pitcairn"),PL:t("Poland"),PR:t("Puerto Rico"),QA:t("Qatar"),RE:t("Reunion"),VCT:t("Saint Vincent and the Grenadines"),STP:t("Sao Tome and Principe"),SA:t("Saudi Arabia"),SRB:t("Serbia"),SC:t("Seychelles"),SK:t("Slovakia (Slovak Republic)"),SI:t("Slovenia"),SZ:t("Swaziland"),TJ:t("Tajikistan"),KNA:t("The Federation of Saint Kitts and Nevis"),ABH:t("the Republic of Abkhazia"),MKD:t("The Republic of Macedonia"),SSD:t("The Republic of South Sudan"),TN:t("Tunisia"),TM:t("Turkmenistan"),TV:t("Tuvalu"),UG:t("Uganda"),UA:t("Ukraine"),AE:t("United Arab Emirates"),UY:t("Uruguay"),UZ:t("Uzbekistan"),VA:t("Vatican City State (Holy See)"),WF:t("Wallis And Futuna Islands"),EH:t("Western Sahara"),YU:t("Yugoslavia"),ZM:t("Zambia"),AO:t("Angola"),AI:t("Anguilla"),AW:t("Aruba"),AZ:t("Azerbaijan"),BB:t("Barbados"),BZ:t("Belize"),BJ:t("Benin"),BT:t("Bhutan"),BO:t("Bolivia"),BW:t("Botswana"),BN:t("Brunei Darussalam"),BG:t("Bulgaria"),BI:t("Burundi"),CM:t("Cameroon"),CV:t("Cape Verde"),KY:t("Cayman Islands"),CL:t("Chile"),KM:t("Comoros"),CK:t("Cook Islands"),HR:t("Croatia (local name: Hrvatska)"),CY:t("Cyprus"),DJ:t("Djibouti"),DM:t("Dominica"),TP:t("East Timor"),EC:t("Ecuador"),EG:t("Egypt"),SV:t("El Salvador"),ER:t("Eritrea"),ET:t("Ethiopia"),FO:t("Faroe Islands"),FJ:t("Fiji"),GF:t("French Guiana"),GM:t("Gambia"),GE:t("Georgia"),GH:t("Ghana"),GI:t("Gibraltar"),GL:t("Greenland"),GD:t("Grenada"),GU:t("Guam"),GT:t("Guatemala"),GN:t("Guinea"),HT:t("Haiti"),IS:t("Iceland"),IR:t("Iran (Islamic Republic of)"),IQ:t("Iraq"),JM:t("Jamaica"),LAO:t("Lao People's Democratic Republic"),LV:t("Latvia"),LB:t("Lebanon"),LR:t("Liberia"),LY:t("Libyan Arab Jamahiriya"),LI:t("Liechtenstein"),LU:t("Luxembourg"),MW:t("Malawi"),ML:t("Mali"),MT:t("Malta"),MH:t("Marshall Islands"),MQ:t("Martinique"),MR:t("Mauritania"),MU:t("Mauritius"),MD:t("Moldova"),MA:t("Morocco"),MZ:t("Mozambique"),NA:t("Namibia"),NE:t("Niger"),PS:t("Palestine"),PY:t("Paraguay"),PE:t("Peru"),RO:t("Romania"),RW:t("Rwanda"),WS:t("Samoa"),SM:t("San Marino"),SN:t("Senegal"),SL:t("Sierra Leone"),SB:t("Solomon Islands"),SO:t("Somalia"),SD:t("Sudan"),SR:t("Suriname"),SY:t("Syrian Arab Republic"),TZ:t("Tanzania"),TG:t("Togo"),TK:t("Tokelau"),TO:t("Tonga"),TT:t("Trinidad and Tobago"),TR:t("Turkey"),TC:t("Turks and Caicos Islands"),VU:t("Vanuatu"),VE:t("Venezuela"),VI:t("Virgin Islands (U.S.)"),YE:t("Yemen"),ZW:t("Zimbabwe")},f=(0,o.default)(i=(0,s.default)(d)).call(i,(e=>{var t,a;return{label:(0,u.default)(t="+".concat(e," ")).call(t,(0,o.default)(a=d[e]).call(a,(e=>c[e])).join(",")),value:"+".concat(e)}}));a.defaultCountries=f},2019:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,n,r,l,p,h,{used:m=0,add:g=0,reserved:v=0,limit:y=1,title:b="",secondTitle:x=t("Quota")}=e,w=-1!==y,k=w?y:t("Infinity"),C=w?y-m-v-g:1;C=C<0?0:C;var _=(0,s.default)(a="".concat(t("Used"),": ")).call(a,m),M=v?(0,s.default)(n="".concat(t("Reserved"),": ")).call(n,v):"",S=(0,s.default)(r="".concat(t("New"),": ")).call(r,g),I=(0,s.default)(l="".concat(t("Left"),": ")).call(l,C),N=w?[_,S,I]:[_,S];v&&(0,u.default)(N).call(N,1,0,M);var E=N.join(" / "),T=m+v+g,A=(0,d.default)(T/y*100,10),j=(0,d.default)((m+v)/y*100,10),P=(0,f.getUsedValueColor)(A),D=c.default.createElement("span",null,(0,s.default)(p="".concat(b," ")).call(p,x,": ")," ",c.default.createElement("span",{style:{color:P}},(0,s.default)(h="".concat(T,"/")).call(h,k))),L=w?c.default.createElement(o.default,{percent:A,success:{percent:j,strokeColor:f.typeColors.used},strokeColor:f.typeColors.add,showInfo:!1}):c.default.createElement(o.default,{percent:0,showInfo:!1});return c.default.createElement("div",{style:{width:150}},c.default.createElement("div",{style:{fontWeight:"bold",textAlign:"center"}},D),c.default.createElement(i.default,{title:E},L))},n(344);var i=l(n(202));n(1271);var o=l(n(1272)),s=l(n(77)),u=l(n(573)),d=l(n(234)),c=l(n(0)),f=(n(161),n(1449))},2020:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=function(e){var a,n,{reserved:r=0,title:l="",secondTitle:c=t("Quota")}=e,f=(0,o.default)(a=(0,o.default)(n="".concat(l," ")).call(n,c,": ")).call(a,t("Unlimit")),p=[{dataIndex:"used",title:t("Used"),align:"center",render:e=>u.default.createElement("span",{style:{color:d.typeColors.used}},e||"-")},{dataIndex:"add",title:t("New"),align:"center",render:e=>u.default.createElement("span",{style:{color:d.typeColors.add}},e||"-")}];r&&(0,s.default)(p).call(p,1,0,{dataIndex:"reserved",title:t("Reserved"),align:"center"});return u.default.createElement("div",null,u.default.createElement(i.default,{columns:p,dataSource:[e],pagination:!1,title:()=>f,bordered:!0,size:"small"}))},n(585);var i=l(n(587)),o=l(n(77)),s=l(n(573)),u=l(n(0)),d=(n(161),n(1449))},2021:function(e,t,a){var n=a(2022);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2022:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--1yn9F {\n position: relative;\n height: 100%;\n padding-top: 16px;\n background-color: #fff;\n}\n.index__wrapper--1yn9F .ant-spin-nested-loading {\n height: 100%;\n}\n.index__wrapper--1yn9F .ant-spin-container {\n height: 100%;\n}\n.index__wrapper-page-padding--2lbhS {\n padding-top: 0;\n}\n.index__form--3rBuv {\n height: calc(100% - 48px);\n margin-right: 32px;\n margin-left: 32px;\n overflow-y: auto;\n background-color: #fff;\n}\n.index__form--3rBuv .ant-form-item-label > label {\n margin-left: 12px;\n}\n.index__form--3rBuv .ant-form-item-label > .ant-form-item-required {\n margin-left: 0;\n}\n.index__form--3rBuv .ant-form-item-label {\n white-space: break-spaces;\n}\n.index__footer--3IW56 {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n height: 48px;\n background-color: #fff;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n}\n.index__btns--1iSOL {\n float: right;\n margin-right: 32px;\n}\n.index__btns--1iSOL button {\n margin-left: 8px;\n}\n.form-item-text {\n margin-bottom: 0;\n}\n.form-item-divider {\n width: 98% !important;\n min-width: 90% !important;\n margin-right: auto;\n margin-left: auto;\n}\n.ant-radio-button-wrapper {\n color: rgba(0, 0, 0, 0.65);\n}\n.ant-radio-button-wrapper-disabled {\n color: rgba(0, 0, 0, 0.25);\n}\n.index__tips--1sDt0 {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n margin-bottom: 16px;\n padding: 8px 16px;\n word-break: break-word;\n background: rgba(0, 0, 0, 0.15);\n}\n.index__tips-icon--2QJ8G {\n margin-top: 2px;\n margin-right: 4px;\n color: #0068ff;\n}\n.index__footer-left--2zaZk {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: left;\n -ms-flex-pack: left;\n justify-content: left;\n float: left;\n height: 48px;\n margin-left: 16px;\n color: #484848;\n}\n.index__submit-tip--2ljzW {\n display: inline-block;\n font-size: 16px;\n}\n.index__progress-wrapper--1uQV2 {\n width: 170px;\n}\n.index__right-top-extra-wrapper---wJzs {\n position: absolute;\n top: 0;\n right: 30px;\n z-index: 100;\n background-color: #fff;\n border-radius: 5px;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n}\n.index__right-top-extra-wrapper---wJzs .ant-card-head {\n min-width: 32px;\n}\n.index__right-top-extra-wrapper---wJzs .ant-card-head .ant-card-extra {\n padding: 8px 0;\n}\n.index__modal-right-extra-wrapper--2_yIQ {\n border-left: solid 2px #f2f2f2;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--1yn9F","wrapper-page-padding":"index__wrapper-page-padding--2lbhS",form:"index__form--3rBuv",footer:"index__footer--3IW56",btns:"index__btns--1iSOL",tips:"index__tips--1sDt0","tips-icon":"index__tips-icon--2QJ8G","footer-left":"index__footer-left--2zaZk","submit-tip":"index__submit-tip--2ljzW","progress-wrapper":"index__progress-wrapper--1uQV2","right-top-extra-wrapper":"index__right-top-extra-wrapper---wJzs","modal-right-extra-wrapper":"index__modal-right-extra-wrapper--2_yIQ"}},2023:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(63)),i=r(a(35)),o=r(a(2024));class s extends o.default{static get allowed(){return l.default.resolve()}get hasConfirmStep(){return!0}}t.default=s,(0,i.default)(s,"actionType","link"),(0,i.default)(s,"buttonType","primary"),(0,i.default)(s,"isDanger",!1),(0,i.default)(s,"id","step-action"),(0,i.default)(s,"title","StepAction"),(0,i.default)(s,"path","/"),(0,i.default)(s,"policy",""),(0,i.default)(s,"aliasPolicy","")},2024:function(e,a,n){"use strict";var r=n(32),l=n(42),i=n(29),o=n(25),s=n(28),u=n(44),d=n(45),c=n(20),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(n(63)),h=f(n(203)),m=f(n(1252)),g=f(n(54)),v=f(n(77)),y=f(n(345));n(347);var b=f(n(348));n(2025);var x=f(n(2028));n(231);var w=f(n(341)),k=f(n(35)),C=f(n(177)),_=f(n(1350)),M=f(n(0)),S=f(n(1270)),I=(n(161),f(n(4))),N=n(163),E=n(349),T=f(n(1351)),A=f(n(1563)),j=f(n(1566)),P=n(567),D=f(n(2047));function L(e,t){var a=r(e);if(l){var n=l(e);t&&(n=i(n).call(n,(function(t){return o(e,t).enumerable}))),a.push.apply(a,n)}return a}function O(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),(0,k.default)(this,"onSubmit",(e=>p.default.resolve())),(0,k.default)(this,"onOk",(()=>{var{data:e}=this.state;this.values=e;var t=this.getSubmitData(e);this.onSubmit(t).then((()=>{this.routing.push(this.listUrl),S.default.success(this.successText)}),(e=>{this.responseError=e;var{response:{data:t}={}}=e;S.default.errorWithDetail(t,this.errorText)}))})),(0,k.default)(this,"onCancel",(()=>{})),(0,k.default)(this,"onClickSubmit",(()=>{this.hasConfirmStep?this.onOk():this.currentRef.current.wrappedInstance.checkFormInput((e=>{this.updateData(e,this.onOk)}))})),(0,k.default)(this,"onClickCancel",(()=>{this.routing.push(this.listUrl)})),(0,k.default)(this,"updateDataOnPrev",(e=>{this.updateData(e,(()=>{this.setState((e=>({current:e.current-1})))}))})),(0,k.default)(this,"updateData",((e,t)=>{var{data:a}=this.state;this.setState({data:O(O({},a),e)},(()=>{t&&t()}))})),(0,k.default)(this,"unescape",(e=>(0,N.unescapeHtml)(e))),(0,k.default)(this,"goStep",(e=>{this.setState({current:e})})),this.options=t,this.state={formTemplate:(0,_.default)(this.formTemplate),current:0,data:{}},this.values={},this.setFormRefs(),this.init()}componentDidMount(){}componentWillUnmount(){this.unsubscribe&&this.unsubscribe(),this.disposer&&this.disposer(),this.unMountActions&&this.unMountActions()}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get hasConfirmStep(){return!1}get name(){return""}get title(){return"".concat(this.name,"s")}get className(){return""}get prefix(){return this.props.match.url}get routing(){return this.props.rootStore.routing}get location(){return this.props.location||{}}get locationParams(){var e;return(0,E.parse)((0,h.default)(e=this.location.search).call(e,1))}get match(){return this.props.match||{}}get listUrl(){return""}get checkEndpoint(){return!1}get endpoint(){return""}get endpointError(){return this.checkEndpoint&&!this.endpoint}get currentUser(){var{user:e}=this.props.rootStore||{};return e||{}}get currentProjectId(){return this.props.rootStore.projectId}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:16},sm:{span:12}}}get steps(){return[]}get formTemplate(){return{}}get okBtnText(){return t("Confirm")}get instanceName(){var{name:e}=(0,m.default)(this)||{};return e}get successText(){return this.instanceName?(0,N.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName})):(0,N.firstUpperCase)(t("{action} successfully.",{action:this.name.toLowerCase()}))}get errorText(){return this.instanceName?t("Unable to {action}, instance: {name}.",{action:this.name.toLowerCase(),name:this.instanceName}):t("Unable to {action}.",{action:this.name.toLowerCase()})}get isSubmitting(){return this.store&&this.store.isSubmitting||!1}get isLoading(){return!(!this.hasExtraProps||!(0,C.default)(this.state.extra))}get currentComponent(){var{current:e}=this.state;return this.steps[e].component}get currentRef(){var{current:e}=this.state;return this.formRefs[e]}get isAdminPage(){return this.props.isAdminPage||!1}get hasExtraProps(){return!1}get showQuota(){return!1}get quotaInfo(){return null}get disableNext(){return!1}get disableSubmit(){return!1}setFormRefs(){var e;this.formRefs=(0,g.default)(e=this.steps).call(e,(()=>M.default.createRef()))}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,P.getPath)({key:n,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=this.getRouteName(e);return(0,P.getLinkRender)({key:r,params:a,query:n,value:t})}getPrevBtn(){var e,{current:a}=this.state;if(0===a)return null;var n=this.steps[a-1].title;return M.default.createElement(w.default,{style:{margin:"0 8px"},onClick:()=>this.prev()},(0,v.default)(e="".concat(t("Previous"),": ")).call(e,n))}getNextBtn(){var e,{current:a}=this.state;if(a>=this.steps.length-1)return null;var{title:n}=this.steps[a+1];return M.default.createElement(w.default,{type:"primary",onClick:()=>this.next(),disabled:this.disableNext},(0,v.default)(e="".concat(t("Next"),": ")).call(e,n))}getSubmitData(e){return O({},e)}prev(){this.currentRef.current.wrappedInstance.checkFormInput(this.updateDataOnPrev,this.updateDataOnPrev)}next(){this.currentRef.current.wrappedInstance.checkFormInput((e=>{this.updateData(e),this.setState((e=>({current:e.current+1})))}))}init(){this.store={}}renderFooterLeft(){return null}renderFooter(){var{current:e}=this.state;return M.default.createElement("div",{className:D.default.footer},M.default.createElement("div",{className:(0,I.default)(D.default["footer-left"],this.footerStyle,"step-form-footer-left")},this.renderFooterLeft()),M.default.createElement("div",{className:(0,I.default)(D.default.btns,"step-form-footer-btns")},M.default.createElement(w.default,{className:D.default.cancel,onClick:this.onClickCancel},t("Cancel")),this.getPrevBtn(),this.getNextBtn(),e===this.steps.length-1&&M.default.createElement(w.default,{type:"primary",onClick:this.onClickSubmit,disabled:this.disableSubmit},t("Confirm"))))}renderForms(){var e=this.currentComponent,{data:t,extra:a}=this.state;return this.hasExtraProps&&(0,C.default)(a)?null:M.default.createElement(e,{ref:this.currentRef,context:t,extra:a,updateContext:this.updateData,goStep:this.goStep,isAdminPage:this.isAdminPage,match:this.match,location:this.location})}renderSteps(){var e,{current:t}=this.state,{Step:a}=x.default;return M.default.createElement("div",null,M.default.createElement("div",{className:D.default.step},M.default.createElement(x.default,{current:t},(0,g.default)(e=this.steps).call(e,(e=>M.default.createElement(a,{key:e.title,title:e.title}))))),M.default.createElement("div",{className:D.default.form},this.renderForms()))}renderQuota(){if(!this.showQuota)return null;var e={};return this.quotaInfo&&this.quotaInfo.length?e={loading:!1,quotas:this.quotaInfo}:e.loading=!0,M.default.createElement(j.default,e)}renderRightTopExtra(){var e=this.renderQuota();if(!e)return null;var t=(0,y.default)(this.quotaInfo);return M.default.createElement("div",{className:D.default["right-top-extra-wrapper"]},M.default.createElement(A.default,{content:e,checkValue:t}))}render(){return this.endpointError?M.default.createElement(T.default,{title:this.name,link:this.listUrl,endpointError:!0,goList:!0,isAction:!0}):M.default.createElement("div",{className:(0,I.default)(D.default.wrapper,this.className)},M.default.createElement(b.default,{spinning:this.isLoading||this.isSubmitting},this.renderSteps(),this.renderRightTopExtra(),this.renderFooter()))}}a.default=R},2044:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/empty-card.1739201236.svg"},2045:function(e,t,a){var n=a(2046);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2046:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--1T6e5 {\n margin-top: 100px;\n text-align: center;\n border-radius: 4px;\n}\n.index__image--3dfS6 {\n height: 200px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.index__text--2xlf7 {\n display: inline-block;\n width: 600px;\n margin-left: 60px;\n vertical-align: top;\n}\n.index__text--2xlf7 .h1 {\n color: #abb4be;\n font-size: 120px;\n line-height: 1.4;\n text-align: left;\n opacity: 0.4;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.index__text--2xlf7 p {\n color: #5f708a;\n font-weight: 600;\n font-size: 20px;\n line-height: 1.4;\n text-align: left;\n text-shadow: 0 4px 8px rgba(36, 46, 66, 0.1);\n}\n.index__text--2xlf7 a {\n color: #0068ff;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--1T6e5",image:"index__image--3dfS6",text:"index__text--2xlf7"}},2047:function(e,t,a){var n=a(2048);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(65)(n,r);n.locals&&(e.exports=n.locals)},2048:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--3YpmJ {\n position: relative;\n height: 100%;\n overflow: hidden;\n border-top: 1px solid #f0f0f0;\n}\n.index__wrapper--3YpmJ .ant-spin-nested-loading {\n height: 100%;\n}\n.index__wrapper--3YpmJ .ant-spin-container {\n height: 100%;\n}\n.index__step--3Meey {\n height: 80px;\n margin-bottom: 16px;\n padding-top: 24px;\n padding-right: 56px;\n padding-left: 56px;\n background: #fff;\n}\n.index__form--3Sbom {\n height: 100%;\n min-height: calc(100vh - 280px);\n padding-top: 16px;\n overflow-y: auto;\n background-color: #fff;\n}\n.index__form--3Sbom .sl-form {\n height: calc(100vh - 219px);\n padding-bottom: 48px;\n}\n.index__footer--32Ya5 {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n min-height: 48px;\n background-color: #fff;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.09);\n}\n.index__btns--2ujTQ {\n float: right;\n min-width: 200px;\n margin-right: 32px;\n}\n.index__btns--2ujTQ button {\n margin-left: 8px;\n}\n.index__footer-left--KbV3J {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n justify-items: left;\n float: left;\n min-height: 48px;\n margin-left: 16px;\n color: #484848;\n}\n.index__right-top-extra-wrapper--55yRM {\n position: absolute;\n top: 95px;\n right: 30px;\n z-index: 100;\n background-color: #fff;\n border-radius: 5px;\n -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.2);\n}\n.index__right-top-extra-wrapper--55yRM .ant-card-head {\n min-width: 32px;\n}\n.index__right-top-extra-wrapper--55yRM .ant-card-head .ant-card-extra {\n padding: 8px 0;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--3YpmJ",step:"index__step--3Meey",form:"index__form--3Sbom",footer:"index__footer--32Ya5",btns:"index__btns--2ujTQ","footer-left":"index__footer-left--KbV3J","right-top-extra-wrapper":"index__right-top-extra-wrapper--55yRM"}},2049:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(54)),o=l(n(63)),s=l(n(1277)),u=l(n(28)),d=l(n(49)),c=l(n(35)),f=l(n(92)),p=l(n(0)),h=n(163);class m{constructor(e){var a=this;(0,c.default)(this,"policy",""),(0,c.default)(this,"aliasPolicy",""),(0,c.default)(this,"unescape",(e=>(0,h.unescapeHtml)(e))),(0,c.default)(this,"getItemId",(e=>e.id)),(0,c.default)(this,"getItemName",(e=>e.name||"- (".concat(this.getItemId(e),")"))),(0,c.default)(this,"getName",(e=>(0,f.default)(e)?(0,i.default)(e).call(e,(e=>this.getItemName(e))).join(", "):this.getItemName(e))),(0,c.default)(this,"allowedCheckFunc",(e=>!0)),(0,c.default)(this,"allowed",(e=>(0,f.default)(e)?o.default.all((0,i.default)(e).call(e,(e=>o.default.resolve(this.allowedCheckFunc(e))))):o.default.resolve(this.allowedCheckFunc(e)))),(0,c.default)(this,"confirmContext",(e=>{if(!this.messageHasItemName)return t("Are you sure to {action}?",{action:this.actionNameDisplay||this.title});var a=this.getName(e);return t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})})),(0,c.default)(this,"submitSuccessMsg",(e=>{var a=this.getName(e);return this.isAsyncAction?this.messageHasItemName?(0,h.firstUpperCase)(t("The {action} instruction has been issued, instance: {name}. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.actionNameDisplay||this.title,name:a})):(0,h.firstUpperCase)(t("The {action} instruction has been issued. \n You can wait for a few seconds to follow the changes of the list data or manually refresh the data to get the final display result.",{action:this.actionNameDisplay||this.title})):this.messageHasItemName?(0,h.firstUpperCase)(t("{action} successfully, instance: {name}.",{action:this.actionNameDisplay||this.title,name:a})):(0,h.firstUpperCase)(t("{action} successfully.",{action:this.actionNameDisplay||this.title}))})),(0,c.default)(this,"performErrorMsg",((e,a)=>{if(a){if(!this.messageHasItemName)return"";var n=this.getName(e);return t("instance: {name}.",{name:n})}if(!this.messageHasItemName)return t("You are not allowed to {action}.",{action:this.actionNameDisplay||this.title});var r=this.getName(e);return t("You are not allowed to {action}, instance: {name}.",{action:this.actionNameDisplay||this.title,name:r})})),(0,c.default)(this,"submitErrorMsg",(e=>{if(!this.messageHasItemName)return t("Unable to {action}.",{action:this.actionNameDisplay||this.title});var a=this.getName(e);return t("Unable to {action}, instance: {name}.",{action:this.actionNameDisplay||this.title,name:a})})),(0,c.default)(this,"onSubmit",(e=>o.default.resolve())),(0,c.default)(this,"perform",function(){var e=(0,d.default)((function*(e){if((0,f.default)(e)&&0===e.length)return o.default.reject(t("Please select item!"));var n=yield a.allowed(e);if((0,f.default)(e)){var r=(0,f.default)(e)?e:[e];if((0,s.default)(n).call(n,(e=>!!e)))return o.default.resolve(!0);var l=[];(0,u.default)(n).call(n,((e,t)=>{e||l.push(r[t])}));var i=a.unescape(a.performErrorMsg(l,!0)),d=a.getBatchPerformTitle(),c=p.default.createElement("div",null,d&&p.default.createElement("p",null,d),p.default.createElement("p",null,i));return o.default.reject(c)}if(n)return o.default.resolve(!0);var h=a.performErrorMsg(e);return o.default.reject(h)}));return function(t){return e.apply(this,arguments)}}());var{item:n,containerProps:r}=e;n&&(this.item=n),r&&(this.containerProps=r)}get id(){return"id"}get actionType(){return"confirm"}get actionName(){return""}get actionNameDisplay(){return this.actionName.toLowerCase()}get passiveAction(){return t("be deleted")}get title(){return t("Delete")}get buttonType(){return"default"}get isDanger(){return!1}get buttonText(){return""}get okText(){return t("Confirm")}get cancelText(){return t("Cancel")}get isAdminPage(){var{isAdminPage:e=!1}=this.containerProps||{};return e}get isAsyncAction(){return!1}get messageHasItemName(){return!0}getBatchPerformTitle(){return this.messageHasItemName?t("There are resources that cannot {action} in the selected resources, such as:",{action:this.passiveAction.toLowerCase()}):t("There are resources that cannot {action} in the selected resources.",{action:this.passiveAction.toLowerCase()})}}a.default=m,(0,c.default)(m,"actionType","confirm")},2050:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.GlobalHeaderRight=void 0,n(1246);var s=o(n(1247));n(1244);var u=o(n(1245));n(231);var d=o(n(341)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),f=n(412),p=(n(161),o(n(2051))),h=o(n(1346));function m(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(m=function(e){return e?a:t})(e)}class g extends c.Component{get isAdminPage(){var{isAdminPage:e=!1}=this.props;return e}get isUserCenterPage(){var{isUserCenterPage:e=!1}=this.props;return e}renderConsole(){return this.isAdminPage||this.isUserCenterPage?c.default.createElement(d.default,{type:"link",href:"/base/overview",className:h.default["single-link"]},t("Console")):null}renderAdministrator(){var{rootStore:{hasAdminPageRole:e=!1}={}}=this.props;return!e||this.isAdminPage?null:c.default.createElement(d.default,{type:"link",href:"/base/overview-admin",className:h.default["single-link"]},t("Administrator"))}renderExtra(){return null}renderExtraLink(){return null}render(){return c.default.createElement("div",{className:h.default.right},c.default.createElement(s.default,{justify:"space-between",align:"middle",gutter:10},c.default.createElement(u.default,null,this.renderExtraLink(),this.renderConsole(),this.renderAdministrator()),this.renderExtra(),c.default.createElement(u.default,null,c.default.createElement(p.default,{menu:!0}))))}}a.GlobalHeaderRight=g;var v=(0,f.inject)("rootStore")((0,f.observer)(g));a.default=v},2051:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.AvatarDropdown=void 0;var i=l(n(54)),o=l(n(77)),s=l(n(1348));n(347);var u=l(n(348));n(1276);var d=l(n(421));n(231);var c=l(n(341));n(568);var f=l(n(415)),p=l(n(35)),h=l(n(0)),m=n(412),g=(n(161),n(564),l(n(237))),v=l(n(1302)),y=l(n(2052)),b=l(n(2053)),x=l(n(2054)),w=l(n(2056)),k=l(n(1346)),{getLocale:C,setLocale:_,SUPPORT_LOCALES:M}=g.default;class S extends h.default.Component{constructor(){super(...arguments),(0,p.default)(this,"changeLang",(e=>_(e,!0))),(0,p.default)(this,"onMenuClick",(e=>{var{key:t}=e})),(0,p.default)(this,"handleLogout",(e=>{e&&e.preventDefault&&e.preventDefault(),this.rootStore.logout()})),(0,p.default)(this,"afterChangePassword",((e,t)=>{e&&this.rootStore.logout()})),(0,p.default)(this,"onClickSelectLanguage",(e=>{e&&e.preventDefault(),e&&e.stopPropagation()}))}get rootStore(){return this.props.rootStore||{}}get user(){var{user:e}=this.rootStore;return e||null}renderLanguageSwitch(){var e=C(),{length:t}=M;if(t>3){var a=(0,i.default)(M).call(M,(e=>({label:e.icon.toLocaleUpperCase(),value:e.value})));return h.default.createElement("div",{style:{float:"right"}},h.default.createElement(f.default,{options:a,value:e,onChange:this.changeLang,onClick:this.onClickSelectLanguage}))}var n=(0,i.default)(M).call(M,((a,n)=>{var{value:r,icon:l}=a;return h.default.createElement(h.default.Fragment,null,h.default.createElement(c.default,{className:0===n?k.default["no-padding-top"]:"",type:"link",disabled:e===r,onClick:()=>{this.changeLang(r)}},l.toUpperCase()),n!==t-1&&h.default.createElement("span",null,"/"))}));return h.default.createElement("span",{style:{float:"right"}},n)}renderLanguageMenuItem(){var e;return M.length<=1?null:h.default.createElement(d.default.Item,{key:"language",className:(0,o.default)(e="".concat(k.default["no-hover"]," ")).call(e,k.default["menu-item"])},h.default.createElement("span",null,t("Switch Language")),this.renderLanguageSwitch())}render(){var e,a,n,r;if(!this.user)return h.default.createElement(u.default,{size:"small",style:{marginLeft:8,marginRight:8}});var{name:l}=this.user.user,i=h.default.createElement(d.default,{className:k.default.menu,onClick:this.onMenuClick},h.default.createElement(d.default.Item,{key:"user",className:(0,o.default)(e=(0,o.default)(a="".concat(k.default["no-hover"]," ")).call(a,k.default["name-item"]," ")).call(e,k.default["menu-item"])},h.default.createElement("span",null,h.default.createElement("span",{className:k.default["user-label"]},t("User")),h.default.createElement("span",null,l)),h.default.createElement(c.default,{type:"link",onClick:this.handleLogout,className:(0,o.default)(n=(0,o.default)(r="".concat(k.default["menu-btn"]," ")).call(r,k.default.logout," ")).call(n,k.default["no-padding-top"])},t("Sign Out"))),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),this.renderLanguageMenuItem(),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),h.default.createElement(d.default.Item,{key:"userCenter",className:k.default["menu-item"]},h.default.createElement(c.default,{href:"/user/center",type:"link",style:{textAlign:"left"}},t("User Center"))),h.default.createElement(d.default.Divider,{className:k.default["menu-divider"]}),h.default.createElement(d.default.Item,{key:"password",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:y.default}]},onFinishAction:this.afterChangePassword,item:this.user&&this.user.user,isWide:!0})),h.default.createElement(d.default.Item,{key:"token",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:b.default}]},isWide:!0})),h.default.createElement(d.default.Item,{key:"openrc",className:k.default["menu-item"]},h.default.createElement(v.default,{actions:{moreActions:[{action:x.default}]},isWide:!0})));return h.default.createElement(w.default,{overlay:i},h.default.createElement("div",{className:"".concat(k.default.action)},h.default.createElement(c.default,{shape:"circle",icon:h.default.createElement(s.default,null),className:k.default.avatar})))}}a.AvatarDropdown=S;var I=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=I},2052:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Password=void 0;var i=l(n(63)),o=l(n(35)),s=n(412),u=n(1241),d=n(565),c=l(n(1255));class f extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{password:a,oldPassword:n}=e;return c.default.changePasswordUser({id:t,password:a,original_password:n})}))}get name(){return t("Update user password")}get defaultValue(){var{name:e}=this.item;return{name:e,password:"",confirmPassword:""}}get formItems(){return[{name:"name",label:t("User"),type:"label",iconType:"user"},{name:"oldPassword",label:t("Original Password"),type:"input-password",required:!0},{name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("password","user")},{name:"confirmPassword",label:t("Confirm Password"),dependencies:["password"],type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("confirmPassword","user")}]}}a.Password=f,(0,o.default)(f,"id","update-user-password"),(0,o.default)(f,"title",t("Update User Password")),(0,o.default)(f,"policy",[]),(0,o.default)(f,"allowed",(()=>i.default.resolve(!0)));var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},2053:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Token=void 0;var i=l(n(635)),o=l(n(63)),s=l(n(35));n(594);var u=l(n(595)),d=l(n(0)),c=n(412),f=(n(161),n(1241)),p=n(1251),h=n(580),m=l(n(1346)),{Paragraph:g}=u.default;class v extends f.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"getLeftStr",(e=>{var a=e-(0,i.default)(),n=Math.floor(a/1e3);if(n<60)return t("{seconds} seconds",{seconds:n});var r=Math.floor(n/60),l=n%60;if(r<60)return t("{minutes} minutes {leftSeconds} seconds",{minutes:r,leftSeconds:l});var o=Math.floor(r/60);return t("{hours} hours {leftMinutes} minutes {leftSeconds} seconds",{hours:o,leftMinutes:r%60,leftSeconds:l})})),(0,s.default)(this,"onSubmit",(()=>o.default.resolve()))}get name(){return t("Get Token")}get token(){var e=localStorage.getItem("keystone_token");try{return JSON.parse(e)||{}}catch(e){return{}}}get showNotice(){return!1}get tokenValue(){return this.token.value||""}get keystoneTokenExp(){var{keystone_token_exp:e}=this.props.rootStore.user||{};return(0,h.getLocalTime)(e).valueOf()}get tips(){return(0,i.default)()>this.keystoneTokenExp?d.default.createElement("span",{style:globalCSS.warnDarkColor},t("Keystone token is expired.")):t("Please save your token properly and it will be valid for {left}.",{left:this.getLeftStr(this.keystoneTokenExp)})}get defaultValue(){return{token:this.tokenValue}}get labelCol(){return{xs:{span:0},sm:{span:0}}}get wrapperCol(){return{xs:{span:24},sm:{span:24}}}get formItems(){return[{name:"token",label:"",type:"label",component:d.default.createElement(g,{copyable:{text:this.tokenValue},className:m.default.token},d.default.createElement("pre",null,this.tokenValue))}]}}a.Token=v,(0,s.default)(v,"id","get-token"),(0,s.default)(v,"title",t("Get Token")),(0,s.default)(v,"policy",p.allCanReadPolicy),(0,s.default)(v,"allowed",(()=>o.default.resolve(!0)));var y=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=y},2054:function(e,a,n){"use strict";var r=n(20),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.OpenRc=void 0;var i=l(n(29)),o=l(n(63)),s=l(n(35)),u=n(412),d=n(1241),c=n(1251),f=l(n(1569)),p=n(2055),h=l(n(1352));class m extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"exportRcFile",(e=>{var t=new Blob([e],{type:"text/plain;charset=utf-8"});h.default.saveAs(t,"openrc.sh")})),(0,s.default)(this,"onSubmit",(e=>{var{type:t}=e;return this.store.fetchList().then((()=>this.exportRcFile(this.getOpenRC(t))))}))}init(){this.store=f.default}get name(){return t("Get OpenRC file")}get showNotice(){return!1}get user(){var{user:e}=this.props.rootStore;return e}getOpenRC(e){var{project:{id:t="",name:a="",domain:{name:n}={}}={},user:{name:r="",domain:{name:l}={}}={},region:o}=this.user||{},{data:s}=this.store.list,{endpoints:u}=(0,i.default)(s).call(s,(e=>"keystone"===e.name))[0],d=(0,i.default)(u).call(u,(e=>"public"===e.interface))[0].url;return"password"===e?(0,p.getPwdOpenRc)({authUrl:d,projectId:t,projectName:a,projectDomain:n,userDomain:l,userName:r,region:o}):(0,p.getCredentialOpenRc)({authUrl:d,region:o})}get defaultValue(){return{type:"password"}}get formItems(){return[{name:"type",label:t("Type"),type:"select",options:[{label:t("Password Type"),value:"password"},{label:t("Credential Type"),value:"credential"}]}]}}a.OpenRc=m,(0,s.default)(m,"id","get-token"),(0,s.default)(m,"title",t("Get OpenRC file")),(0,s.default)(m,"policy",c.allCanReadPolicy),(0,s.default)(m,"allowed",(()=>o.default.resolve(!0)));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},2055:function(e,t,a){"use strict";a(20)(t,"__esModule",{value:!0}),t.getCredentialOpenRc=t.getPwdOpenRc=void 0;t.getPwdOpenRc=e=>{var{authUrl:t,projectId:a,projectName:n,projectDomain:r,userDomain:l,userName:i,region:o}=e;return"#!/usr/bin/env bash\n# To use an OpenStack cloud you need to authenticate against the Identity\n# service named keystone, which returns a **Token** and **Service Catalog**.\n# The catalog contains the endpoints for all services the user/tenant has\n# access to - such as Compute, Image Service, Identity, Object Storage, Block\n# Storage, and Networking (code-named nova, glance, keystone, swift,\n# cinder, and neutron).\n#\n# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other\n# OpenStack API is version 3. For example, your cloud provider may implement\n# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is\n# only for the Identity API served through keystone.\n"+"export OS_AUTH_URL=".concat(t,"/v3/\n")+"\n# With the addition of Keystone we have standardized on the term **project**\n# as the entity that owns the resources.\n"+"export OS_PROJECT_ID=".concat(a," \n")+"export OS_PROJECT_NAME=".concat(n,"\n")+"export OS_PROJECT_DOMAIN_NAME=".concat(r,"\n")+"export OS_USER_DOMAIN_NAME=".concat(l,"\n")+"\n# unset v2.0 items in case set\nunset OS_TENANT_ID\nunset OS_TENANT_NAME\n# In addition to the owning entity (tenant), OpenStack stores the entity\n# performing the action as the **user**.\n"+"export OS_USERNAME=".concat(i,"\n")+'\n# With Keystone you pass the keystone password.\necho "Please enter your OpenStack Password for project $OS_PROJECT_NAME as user $OS_USERNAME: "\nread -sr OS_PASSWORD_INPUT\nexport OS_PASSWORD=$OS_PASSWORD_INPUT\n# If your configuration has multiple regions, we set that information here.\n# OS_REGION_NAME is optional and only valid in certain environments.\n'+"export OS_REGION_NAME=".concat(o,"\n")+'\n# Don\'t leave a blank variable, unset it if it was empty\nif [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi\nexport OS_INTERFACE=public\nexport OS_IDENTITY_API_VERSION=3\n\n# If OS_AUTH_URL use private SSL, Please add CACERT file path \n# export OS_CACERT={crtPath}'};t.getCredentialOpenRc=e=>{var{authUrl:t,region:a}=e;return"#!/usr/bin/env bash\n# To use an OpenStack cloud you need to authenticate against the Identity\n# service named keystone, which returns a **Token** and **Service Catalog**.\n# The catalog contains the endpoints for all services the user/tenant has\n# access to - such as Compute, Image Service, Identity, Object Storage, Block\n# Storage, and Networking (code-named nova, glance, keystone, swift,\n# cinder, and neutron).\n#\n# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other\n# OpenStack API is version 3. For example, your cloud provider may implement\n# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is\n# only for the Identity API served through keystone.\n"+"export OS_AUTH_URL=".concat(t,"/v3/\n")+'\n# With Keystone you pass the keystone password.\necho "Please enter your OpenStack Credential ID as OS_APPLICATION_CREDENTIAL_ID: "\nread -sr OS_APPLICATION_CREDENTIAL_ID\nexport OS_APPLICATION_CREDENTIAL_ID=$OS_APPLICATION_CREDENTIAL_ID\necho "Please enter your OpenStack Credential Secret as OS_APPLICATION_CREDENTIAL_SECRET: "\nread -sr OS_APPLICATION_CREDENTIAL_SECRET\nexport OS_APPLICATION_CREDENTIAL_SECRET=$OS_APPLICATION_CREDENTIAL_SECRET\n\n# Don\'t leave a blank variable, unset it if it was empty\nif [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi\nexport OS_INTERFACE=public\nexport OS_IDENTITY_API_VERSION=3\nexport OS_AUTH_TYPE=v3applicationcredential\n# If your configuration has multiple regions, we set that information here.\n# OS_REGION_NAME is optional and only valid in certain environments.\n'+"export OS_REGION_NAME=".concat(a,"\n")+"\n# If OS_AUTH_URL use private SSL, Please add CACERT file path \n# export OS_CACERT={crtPath}"}},2056:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0,a(586);var l=r(a(424)),i=r(a(343)),o=r(a(58)),s=(a(161),r(a(0))),u=r(a(4)),d=e=>{var{overlayClassName:t}=e,a=(0,o.default)(e,["overlayClassName"]);return s.default.createElement(l.default,(0,i.default)({overlayClassName:(0,u.default)(t)},a))};t.default=d},2057:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1570)),i=r(a(1450)),o=r(a(1451)),s=r(a(1571)),u=r(a(1452)),d=r(a(1572)),c=r(a(1453)),f=r(a(1344)),p=r(a(1381)),h=r(a(1377)),m=r(a(1382)),g=r(a(0)),v=(a(564),e=>e?[{path:"/base/overview-admin",name:e("Home"),key:"overviewAdmin",icon:g.default.createElement(m.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/compute",name:e("Compute"),key:"computeAdmin",icon:g.default.createElement(h.default,null),children:[{path:"/compute/instance-admin",name:e("Instances"),key:"instanceAdmin",level:1,children:[{path:/^\/compute\/instance-admin\/detail\/.[^/]+$/,name:e("Instance Detail"),key:"instanceDetailAdmin",routePath:"/compute/instance-admin/detail/:id",level:2}]},{path:"/compute/instance-snapshot-admin",name:e("Instance Snapshots"),key:"instanceSnapshotAdmin",level:1,children:[{path:/^\/compute\/instance-snapshot-admin\/detail\/[^/]+$/,name:e("Instance Snapshot Detail"),key:"instanceSnapshotDetailAdmin",level:2,routePath:"/compute/instance-snapshot-admin/detail/:id"}]},{path:"/compute/flavor-admin",name:e("Flavors"),key:"flavorAdmin",level:1,children:[{path:"/compute/flavor-admin/create",name:e("Create Flavor"),key:"flavorCreateAdmin",level:2},{path:/^\/compute\/flavor-admin\/detail\/[^/]+$/,name:e("Flavor Detail"),key:"flavorDetailAdmin",routePath:"/compute/flavor-admin/detail/:id",level:2}]},{path:"/compute/server-group-admin",name:e("Server Groups"),key:"serverGroupAdmin",level:1,children:[{path:/^\/compute\/server-group-admin\/detail\/.[^/]+$/,name:e("Server Group Detail"),key:"serverGroupDetailAdmin",routePath:"/compute/server-group-admin/detail/:id",level:2}]},{path:"/compute/image-admin",name:e("Images"),key:"imageAdmin",level:1,children:[{path:/^\/compute\/image-admin\/detail\/.[^/]+$/,name:e("Image Detail"),key:"imageDetailAdmin",routePath:"/compute/image-admin/detail/:id",level:2},{path:"/compute/image-admin/create",name:e("Create Image"),key:"imageCreateAdmin",level:2}]},{path:"/compute/hypervisors-admin",name:e("Hypervisors"),key:"hypervisorAdmin",level:1,children:[{path:/^\/compute\/hypervisors-admin\/detail\/.[^/]+$/,name:e("Hypervisor Detail"),key:"hypervisorDetailAdmin",routePath:"/compute/hypervisors-admin/detail/:id",level:2}]},{path:"/compute/aggregates-admin",name:e("Host Aggregates"),key:"aggregateAdmin",level:1,children:[]},{path:"/compute/baremetal-node-admin",name:e("Bare Metal Nodes"),key:"baremetalNodeAdmin",endpoints:"ironic",level:1,children:[{path:/^\/compute\/baremetal-node-admin\/detail\/.[^/]+$/,name:e("Bare Metal Node Detail"),key:"baremetalNodeDetailAdmin",routePath:"/compute/baremetal-node-admin/detail/:id",level:2},{path:/^\/compute\/baremetal-node-admin\/create$/,name:e("Create Bare Metal Node"),key:"baremetalNodeCreateAdmin",level:2},{path:/^\/compute\/baremetal-node-admin\/edit\/.[^/]+$/,name:e("Edit Bare Metal Node"),key:"baremetalNodeEditAdmin",routePath:"/compute/baremetal-node-admin/detail/:id",level:2}]}]},{path:"/storage",name:e("Storage"),key:"storageAdmin",icon:g.default.createElement(p.default,null),children:[{path:"/storage/volume-admin",name:e("Volumes"),key:"volumeAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/volume-admin\/detail\/.[^/]+$/,name:e("Volume Detail"),key:"volumeDetailAdmin",level:2,routePath:"/storage/volume-admin/detail/:id"}]},{path:"/storage/backup-admin",name:e("Volume Backups"),key:"backupAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/backup-admin\/detail\/.[^/]+$/,name:e("Volume Backup Detail"),key:"backupDetailAdmin",level:2,routePath:"/storage/backup-admin/detail/:id"}]},{path:"/storage/snapshot-admin",name:e("Volume Snapshots"),key:"snapshotAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/snapshot-admin\/detail\/.[^/]+$/,name:e("Volume Snapshot Detail"),key:"snapshotDetailAdmin",level:2,routePath:"/storage/snapshot-admin/detail/:id"}]},{path:"/storage/volume-type-admin",name:e("Volume Types"),key:"volumeTypeAdmin",level:1,endpoints:"cinder",children:[{path:/^\/storage\/volume-type-admin\/detail\/.[^/]+$/,name:e("Volume Type Detail"),key:"volumeTypeDetailAdmin",level:2,routePath:"/storage/volume-type-admin/detail/:id"},{path:/^\/storage\/volume-type-admin\/qos\/detail\/.[^/]+$/,name:e("QoS Detail"),key:"volumeTypeQosDetailAdmin",level:2,routePath:"/storage/volume-type-admin/qos/detail/:id"}]},{path:"/storage/storage-admin",name:e("Storage Backends"),key:"storageBackendAdmin",level:1,endpoints:"cinder",children:[]}]},{path:"/network",name:e("Network"),key:"/networkAdmin",icon:g.default.createElement(f.default,null),children:[{path:"/network/networks-admin",name:e("Networks"),key:"networkAdmin",level:1,children:[{path:/^\/network\/networks-admin\/detail\/.[^/]+$/,name:e("Network Detail"),key:"networkDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/subnet\/.[^/]+$/,name:e("Subnet Detail"),key:"subnetDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/subnet/:id"}]},{path:"/network/port-admin",name:e("Ports"),key:"port",level:1,children:[{path:/^\/network\/port-admin\/detail\/.[^/]+$/,name:e("Port Detail"),key:"portDetailAdmin",level:2,routePath:"/network/port-admin/detail/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"networkPortDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/port/:id"},{path:/^\/network\/networks-admin\/detail\/.[^/]+\/subnet\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"subnetPortDetailAdmin",level:2,routePath:"/network/networks-admin/detail/:networkId/subnet/:subnetId/port/:id"},{path:/^\/network\/instance-admin\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"instancePortDetailAdmin",level:2,routePath:"/network/instance-admin/detail/:instanceId/port/:id"}]},{path:"/network/qos-policy-admin",name:e("QoS Policies"),key:"networkQosAdmin",endpoints:"neutron_qos",level:1,children:[{path:/^\/network\/qos-policy-admin\/detail\/.[^/]+$/,name:e("QoS Policy Detail"),key:"networkQosDetailAdmin",level:2,routePath:"/network/qos-policy-admin/detail/:id"}]},{path:"/network/router-admin",name:e("Routers"),key:"routerAdmin",level:1,children:[{path:/^\/network\/router-admin\/detail\/.[^/]+$/,name:e("Router Detail"),key:"routerDetailAdmin",level:2,routePath:"/network/router-admin/detail/:id"},{path:/^\/network\/router-admin\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"routerPortDetailAdmin",level:2,routePath:"/network/router-admin/:routerId/port/:id"}]},{path:"/network/floatingip-admin",name:e("Floating IPs"),key:"fipAdmin",level:1,children:[{path:/^\/network\/floatingip-admin\/detail\/.[^/]+$/,name:e("Floating Ip Detail"),key:"fipDetailAdmin",level:2,routePath:"/network/floatingip-admin/detail/:id"}]},{path:"/network/load-balancers-admin",name:e("Load Balancers"),key:"lbAdmin",endpoints:"octavia",level:1,children:[{path:/^\/network\/load-balancers-admin\/detail\/.[^/]+$/,name:e("Load Balancer Detail"),key:"lbDetailAdmin",level:2,routePath:"/network/load-balancers-admin/detail/:id"},{path:/^\/network\/load-balancers-admin\/.[^/]+\/listener\/.[^/]+$/,name:e("Listener Detail"),key:"lbListenerDetailAdmin",level:2,routePath:"/network/load-balancers-admin/:loadBalancerId/listener/:id"}]},{path:"/network/vpn-admin",name:e("VPNs"),key:"vpnAdmin",endpoints:"neutron_vpn",level:1,children:[{path:/^\/network\/ipsec-site-connection-admin\/detail\/.[^/]+$/,name:e("IPsec site connection Detail"),key:"ipsecDetailAdmin",level:2,routePath:"/network/ipsec-site-connection-admin/detail/:id"}]},{path:"/network/security-group-admin",name:e("Security Groups"),key:"securityGroupAdmin",level:1,children:[{path:/^\/network\/security-group-admin\/detail\/.[^/]+$/,name:e("Security Group Detail"),key:"securityGroupDetailAdmin",level:2,routePath:"/network/security-group-admin/detail/:id"}]},{path:"/network/rbac-policies-admin",name:e("RBAC Policies"),key:"rbacPolicyAdmin",level:1,children:[{path:/^\/network\/rbac-policies-admin\/detail\/.[^/]+$/,name:e("RBAC Policy Detail"),key:"rbacPolicyDetailAdmin",level:2,routePath:"/network/rbac-policies-admin/detail/:id"}]},{path:"/network/firewall-admin",name:e("Firewalls"),key:"firewallAdmin",level:1,endpoints:"neutron_firewall",children:[{path:/^\/network\/firewall-policy-admin\/detail\/[^/]+$/,name:e("Policy Detail"),key:"firewallPolicyDetailAdmin",level:2,routePath:"/network/firewall-policy-admin/detail/:id"},{path:/^\/network\/firewall-admin\/[^/]+\/port\/[^/]+$/,name:e("Firewall Port"),key:"firewallPortDetailAdmin",level:2,routePath:"/network/firewall-admin/:firewallId/port/:portId"},{path:/^\/network\/firewall-admin\/detail\/[^/]+$/,name:e("Firewall Detail"),key:"firewallDetailAdmin",level:2,routePath:"/network/firewall-admin/detail/:id"},{path:/^\/network\/firewall-rule-admin\/detail\/[^/]+$/,name:e("Rule Detail"),key:"firewallRuleDetailAdmin",level:2,routePath:"/network/firewall-rule-admin/detail/:id"}]},{path:"/network/dns-admin/zones",name:e("DNS Zones"),key:"dnsZonesAdmin",endpoints:"designate",level:1,children:[{path:/^\/network\/dns-admin\/zones\/detail\/.[^/]+$/,name:e("Zones Detail"),key:"dnsZonesDetailAdmin",level:2,routePath:"/network/dns-admin/zones/detail/:id"},{path:/^\/network\/dns-admin\/zones\/detail\/.[^/]+\/recordsets\/.[^/]+$/,name:e("Recordsets Detail"),key:"dnsRecordSetDetailAdmin",level:2,routePath:"/network/dns-admin/zones/detail/:zoneId/recordsets/:id"}]}]},{path:"/share",name:e("Share File Storage"),key:"fileStorageAdmin",endpoints:"manilav2",icon:g.default.createElement(c.default,null),children:[{path:"/share/share-admin",name:e("Shares"),key:"shareAdmin",level:1,children:[{path:/^\/share\/share-admin\/detail\/.[^/]+$/,name:e("Share Detail"),key:"shareDetailAdmin",level:2,routePath:"/share/share-admin/detail/:id"}]},{path:"/share/share-type-admin",name:e("Share Types"),key:"shareTypeAdmin",level:1,children:[{path:/^\/share\/share-type-admin\/detail\/.[^/]+$/,name:e("Share Type Detail"),key:"shareTypeDetailAdmin",level:2,routePath:"/share/share-type-admin/detail/:id"}]},{path:"/share/share-group-type-admin",name:e("Share Group Types"),key:"shareGroupTypeAdmin",level:1,children:[{path:/^\/share\/share-group-type-admin\/detail\/.[^/]+$/,name:e("Share Group Type Detail"),key:"shareGroupTypeDetailAdmin",level:2,routePath:"/share/share-group-type-admin/detail/:id"}]},{path:"/share/share-network-admin",name:e("Share Networks"),key:"shareNetworkAdmin",level:1,children:[{path:/^\/share\/share-network-admin\/detail\/.[^/]+$/,name:e("Share Network Detail"),key:"shareNetworkDetailAdmin",level:2,routePath:"/share/share-network-admin/detail/:id"}]},{path:"/share/share-server-admin",name:e("Share Servers"),key:"shareServerAdmin",level:1,children:[{path:/^\/share\/share-server-admin\/detail\/.[^/]+$/,name:e("Share Server Detail"),key:"shareServerDetailAdmin",level:2,routePath:"/share/share-server-admin/detail/:id"}]},{path:"/share/share-instance-admin",name:e("Share Instances"),key:"shareInstanceAdmin",level:1,children:[{path:/^\/share\/share-instance-admin\/detail\/.[^/]+$/,name:e("Share Instance Detail"),key:"shareInstanceDetailAdmin",level:2,routePath:"/share/share-instance-admin/detail/:id"}]},{path:"/share/share-group-admin",name:e("Share Groups"),key:"shareGroupAdmin",level:1,children:[{path:/^\/share\/share-group-admin\/detail\/.[^/]+$/,name:e("Share Group Detail"),key:"shareGroupDetailAdmin",level:2,routePath:"/share/share-group-admin/detail/:id"}]},{path:"/share/storage-admin",name:e("Storage Backends"),key:"shareStorageBackendAdmin",level:1,children:[]}]},{path:"/identity",name:e("Identity"),key:"/identity",icon:g.default.createElement(d.default,null),children:[{path:"/identity/domain-admin",name:e("Domains"),key:"domainAdmin",level:1,children:[{path:/^\/identity\/domain-admin\/detail\/.[^/]+$/,name:e("Domain Detail"),key:"domainDetailAdmin",level:2,routePath:"/identity/domain-admin/detail/:id"}]},{path:"/identity/project-admin",name:e("Projects"),key:"projectAdmin",level:1,children:[{path:/^\/identity\/project-admin\/detail\/.[^/]+$/,name:e("Project Detail"),key:"projectDetailAdmin",level:2,routePath:"/identity/project-admin/detail/:id"},{path:"/identity/project-admin/create",name:e("Create Project"),key:"projectCreateAdmin",level:2},{path:/^\/identity\/project-admin\/edit\/.[^/]+$/,name:e("Edit Project"),key:"projectEditAdmin",level:2,routePath:"/identity/project-admin/edit/:id"}]},{path:"/identity/user-admin",name:e("Users"),key:"userAdmin",level:1,children:[{path:/^\/identity\/user-admin\/detail\/.[^/]+$/,name:e("User Detail"),key:"userDetailAdmin",level:2,routePath:"/identity/user-admin/detail/:id"},{path:"/identity/user-admin/create",name:e("Create User"),key:"userCreateAdmin",level:2},{path:/^\/identity\/user-admin\/edit\/.[^/]+$/,name:e("User Edit"),key:"userEditAdmin",level:2,routePath:"/identity/user-admin/edit/:id"}]},{path:"/identity/user-group-admin",name:e("User Groups"),key:"userGroupAdmin",level:1,children:[{path:/^\/identity\/user-group-admin\/detail\/.[^/]+$/,name:e("User Group Detail"),key:"userGroupDetailAdmin",level:2,routePath:"/identity/user-group-admin/detail/:id"},{path:"/identity/user-group-admin/create",name:e("Create User Group"),key:"userGroupCreateAdmin",level:2},{path:/^\/identity\/user-group-admin\/edit\/.[^/]+$/,name:e("Edit User Group"),key:"userGroupEditAdmin",level:2,routePath:"/identity/user-group-admin/edit/:id"}]},{path:"/identity/role-admin",name:e("Roles"),key:"roleAdmin",level:1,children:[{path:/^\/identity\/role-admin\/detail\/.[^/]+$/,name:e("Role Detail"),key:"roleDetailAdmin",level:2,routePath:"/identity/role-admin/detail/:id"}]}]},{path:"/database",name:e("Database"),key:"databaseAdmin",endpoints:"trove",icon:g.default.createElement(u.default,null),children:[{path:"/database/instances-admin",name:e("Database Instances"),key:"databaseInstancesAdmin",level:1,children:[{path:/^\/database\/instances-admin\/detail\/.[^/]+$/,name:e("Database Instance Detail"),key:"databaseInstanceDetailAdmin",level:2,routePath:"/database/instances-admin/detail/:id"}]}]},{path:"/monitor-center",name:e("Monitor Center"),key:"/monitorCenterAdmin",icon:g.default.createElement(s.default,null),children:[{path:"/monitor-center/overview-admin",name:e("Monitor Overview"),key:"monitorOverviewAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/physical-node-admin",name:e("Physical Nodes"),key:"monitorPhysicalNodeAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/storage-cluster-admin",name:e("Storage Clusters"),key:"monitorStorageClusterAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/openstack-service-admin",name:e("OpenStack Services"),key:"monitorOpenstackServiceAdmin",level:1,children:[],hasBreadcrumb:!0},{path:"/monitor-center/other-service-admin",name:e("Other Services"),key:"monitorOtherServiceAdmin",level:1,children:[],hasBreadcrumb:!0}]},{path:"/configuration-admin",name:e("Global Setting"),key:"configurationAdmin",icon:g.default.createElement(o.default,null),children:[{path:"/configuration-admin/info",name:e("System Info"),key:"systemInfoAdmin",level:1,children:[{path:/^\/configuration-admin\/neutron\/detail\/.[^/]+$/,name:e("Neutron Agent Detail"),key:"neutronAgentDetailAdmin",level:2,routePath:"/configuration-admin/neutron/detail/:id"}]},{path:"/configuration-admin/setting",name:e("System Config"),key:"settingAdmin",level:1},{path:"/configuration-admin/metadata",name:e("Metadata Definitions"),key:"metadataAdmin",level:1,children:[{path:/^\/configuration-admin\/metadata\/detail\/.[^/]+$/,name:e("Metadata Detail"),key:"metadataDetailAdmin",level:2,routePath:"/configuration-admin/metadata/detail/:id"}]}]},{path:"/container",name:e("Container"),key:"containerAdmin",icon:g.default.createElement(i.default,null),children:[{path:"/container-service/containers-admin",name:e("Containers"),key:"zunContainersAdmin",endpoints:"zun",level:1,children:[{path:/^\/container-service\/containers-admin\/detail\/.[^/]+$/,name:e("Container Detail"),key:"zunContainerDetailAdmin",level:2,routePath:"/container-service/containers-admin/detail/:id"}]},{path:"/container-service/hosts-admin",name:e("Hosts"),key:"zunHostsAdmin",endpoints:"zun",level:1,children:[{path:/^\/container-service\/hosts-admin\/detail\/.[^/]+$/,name:e("Host Detail"),key:"zuHostsDetailAdmin",level:2,routePath:"/container-service/hosts-admin/detail/:id"}]},{path:"/container-service/services-admin",name:e("Services"),key:"zunServicesAdmin",endpoints:"zun",level:1},{path:"/container-infra/clusters-admin",name:e("Clusters"),key:"containerInfraClustersAdmin",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/clusters-admin\/detail\/.[^/]+$/,name:e("Cluster Detail"),key:"containerInfraClusterDetailAdmin",level:2,routePath:"/container-infra/clusters-admin/detail/:id"}]},{path:"/container-infra/cluster-template-admin",name:e("Cluster Templates"),key:"clusterTemplateAdmin",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/cluster-template-admin\/detail\/.[^/]+$/,name:e("Cluster Template Detail"),key:"containerInfraClusterTemplateDetailAdmin",level:2,routePath:"/container-infra/cluster-template-admin/detail/:id"}]}]},{path:"/ha",name:e("Instance-HA"),key:"masakari",icon:g.default.createElement(l.default,null),endpoints:"masakari",children:[{path:"/ha/segments-admin",name:e("Segments"),key:"masakariSegmentsAdmin",level:1,children:[{path:"/ha/segments-admin/create-step-admin",name:e("Create Segment"),key:"masakariSegmentsCreateAdmin",level:2},{path:/^\/ha\/segments-admin\/detail\/.[^/]+$/,name:e("Segment Detail"),key:"masakariSegmentDetailAdmin",level:2,routePath:"/ha/segments-admin/detail/:id"}]},{path:"/ha/hosts-admin",name:e("Hosts"),key:"masakariHostsAdmin",level:1,children:[{path:/^\/ha\/hosts-admin\/detail\/.[^/]+$/,name:e("Host Detail"),key:"masakariHostDetailAdmin",level:2,routePath:"/ha/hosts-admin/detail/:id"}]},{path:"/ha/notifications-admin",name:e("Notifications"),key:"masakariNotificationsAdmin",level:1,children:[{path:/^\/ha\/notifications-admin\/detail\/.[^/]+$/,name:e("Notification Detail"),key:"masakariNotificationDetailAdmin",level:2,routePath:"/ha/notifications-admin/detail/:id"}]}]}]:[]);t.default=v},2067:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1450)),i=r(a(1452)),o=r(a(1434)),s=r(a(1453)),u=r(a(1344)),d=r(a(1381)),c=r(a(1377)),f=r(a(1382)),p=r(a(0)),h=(a(564),e=>e?[{path:"/base/overview",name:e("Home"),key:"overview",icon:p.default.createElement(f.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/compute",name:e("Compute"),key:"compute",icon:p.default.createElement(c.default,null),children:[{path:"/compute/instance",name:e("Instances"),key:"instance",level:1,children:[{path:/^\/compute\/instance\/detail\/.[^/]+$/,name:e("Instance Detail"),key:"instanceDetail",level:2,routePath:"/compute/instance/detail/:id"},{path:"/compute/instance/create",name:e("Create Instance"),key:"instanceCreate",level:2},{path:"/compute/ironic-instance/create",name:e("Create Ironic Instance"),key:"ironicCreate",level:2}]},{path:"/compute/instance-snapshot",name:e("Instance Snapshots"),key:"instanceSnapshot",level:1,children:[{path:/^\/compute\/instance-snapshot\/detail\/[^/]+$/,name:e("Instance Snapshot Detail"),key:"instanceSnapshotDetail",level:2,routePath:"/compute/instance-snapshot/detail/:id"}]},{path:"/compute/flavor",name:e("Flavors"),key:"flavor",level:1,children:[{path:/^\/compute\/flavor\/detail\/.[^/]+$/,name:e("Flavor Detail"),key:"flavorDetail",level:2,routePath:"/compute/flavor/detail/:id"}]},{path:"/compute/server-group",name:e("Server Groups"),key:"serverGroup",level:1,children:[{path:/^\/compute\/server-group\/detail\/.[^/]+$/,name:e("Server Group Detail"),key:"serverGroupDetail",level:2,routePath:"/compute/server-group/detail/:id"}]},{path:"/compute/image",name:e("Images"),key:"image",level:1,children:[{path:/^\/compute\/image\/detail\/.[^/]+$/,name:e("Image Detail"),key:"imageDetail",level:2,routePath:"/compute/image/detail/:id"},{path:"/compute/image/create",name:e("Create Image"),key:"imageCreate",level:2}]},{path:"/compute/keypair",name:e("Key Pairs"),key:"keypair",level:1,children:[{path:/^\/compute\/keypair\/detail\/.[^/]*$/,name:e("Keypair Detail"),key:"keypairDetail",level:2,routePath:"/compute/keypair/detail/:id"}]}]},{path:"/storage",name:e("Storage"),key:"storage",icon:p.default.createElement(d.default,null),children:[{path:"/storage/volume",name:e("Volumes"),key:"volume",level:1,endpoints:"cinder",children:[{path:"/storage/volume/create",name:e("Create Volume"),key:"volumeCreate",level:2},{path:/^\/storage\/volume\/detail\/.[^/]+$/,name:e("Volume Detail"),key:"volumeDetail",level:2,routePath:"/storage/volume/detail/:id"}]},{path:"/storage/backup",name:e("Volume Backups"),key:"backup",level:1,endpoints:"cinder",children:[{path:/^\/storage\/backup\/detail\/.[^/]+$/,name:e("Volume Backup Detail"),key:"backupDetail",level:2,routePath:"/storage/backup/detail/:id"}]},{path:"/storage/snapshot",name:e("Volume Snapshots"),key:"snapshot",level:1,endpoints:"cinder",children:[{path:/^\/storage\/snapshot\/detail\/.[^/]+$/,name:e("Volume Snapshot Detail"),key:"snapshotDetail",level:2,routePath:"/storage/snapshot/detail/:id"}]},{path:"/storage/container",name:e("Object Storage"),key:"containers",endpoints:"swift",level:1,children:[{path:/^\/storage\/container\/detail\/[^/]+$/,name:e("Container Detail"),key:"containerDetail",level:2,routePath:"/storage/container/detail/:id"},{path:/^\/storage\/container\/detail\/[^/]+\/.+$/,name:e("Folder Detail"),key:"folderDetail",level:2,routePath:"/storage/container/detail/:container/:folder"}]}]},{path:"/network",name:e("Network"),key:"/network",icon:p.default.createElement(u.default,null),children:[{path:"/network/networks",name:e("Networks"),key:"network",level:1,children:[{path:/^\/network\/networks\/detail\/.[^/]+$/,name:e("Network Detail"),key:"networkDetail",level:2,routePath:"/network/networks/detail/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/subnet\/.[^/]+$/,name:e("Subnet Detail"),key:"subnetDetail",level:2,routePath:"/network/networks/detail/:networkId/subnet/:id"}]},{path:"/network/port",name:e("Ports"),key:"port",level:1,children:[{path:/^\/network\/port\/detail\/.[^/]+$/,name:e("Port Detail"),key:"portDetail",level:2,routePath:"/network/port/detail/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"networkPortDetail",level:2,routePath:"/network/networks/detail/:networkId/port/:id"},{path:/^\/network\/networks\/detail\/.[^/]+\/subnet\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"subnetPortDetail",level:2,routePath:"/network/networks/detail/:networkId/subnet/:subnetId/port/:id"},{path:/^\/network\/instance\/detail\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"instancePortDetail",level:2,routePath:"/network/instance/detail/:instanceId/port/:id"}]},{path:"/network/qos-policy",name:e("QoS Policies"),key:"networkQos",endpoints:"neutron_qos",level:1,children:[{path:/^\/network\/qos-policy\/detail\/.[^/]+$/,name:e("QoS Policy Detail"),key:"networkQosDetail",level:2,routePath:"/network/qos-policy/detail/:id"}]},{path:"/network/router",name:e("Routers"),key:"router",level:1,children:[{path:/^\/network\/router\/detail\/.[^/]+$/,name:e("Router Detail"),key:"routerDetail",level:2,routePath:"/network/router/detail/:id"},{path:/^\/network\/router\/.[^/]+\/port\/.[^/]+$/,name:e("Port Detail"),key:"routerPortDetail",level:2,routePath:"/network/router/:routerId/port/:id"}]},{path:"/network/floatingip",name:e("Floating IPs"),key:"fip",level:1,children:[{path:/^\/network\/floatingip\/detail\/.[^/]+$/,name:e("Floating Ip Detail"),key:"fipDetail",level:2,routePath:"/network/floatingip/detail/:id"}]},{path:"/network/topo",name:e("Topology"),key:"networkTopo",level:1,children:[]},{path:"/network/load-balancers",name:e("Load Balancers"),key:"lb",endpoints:"octavia",level:1,children:[{path:"/network/load-balancers/create",name:e("Create Loadbalancer"),key:"lbCreate",level:2},{path:/^\/network\/load-balancers\/detail\/.[^/]+$/,name:e("Load Balancer Detail"),key:"lbDetail",level:2,routePath:"/network/load-balancers/detail/:id"},{path:/^\/network\/load-balancers\/.[^/]+\/listener\/.[^/]+$/,name:e("Listener Detail"),key:"lbListenerDetail",level:2,routePath:"/network/load-balancers/:loadBalancerId/listener/:id"}]},{path:"/network/certificate",name:e("Certificates"),key:"certificate",endpoints:"barbican",level:1,children:[{path:/^\/network\/certificate-container\/detail\/.[^/]+$/,name:e("Certificate Detail"),key:"certificateContainerDetail",level:2,routePath:"/network/certificate-container/detail/:id"},{path:/^\/network\/certificate-secret\/detail\/.[^/]+$/,name:e("Certificate Detail"),key:"certificateSecretDetail",level:2,routePath:"/network/certificate-secret/detail/:id"}]},{path:"/network/vpn",name:e("VPNs"),key:"vpn",endpoints:"neutron_vpn",level:1,children:[{path:/^\/network\/ipsec-site-connection\/detail\/.[^/]+$/,name:e("IPsec site connection Detail"),key:"ipsecDetail",level:2,routePath:"/network/ipsec-site-connection/detail/:id"}]},{path:"/network/security-group",name:e("Security Groups"),key:"securityGroup",level:1,children:[{path:/^\/network\/security-group\/detail\/.[^/]+$/,name:e("Security Group Detail"),key:"securityGroupDetail",level:2,routePath:"/network/security-group/detail/:id"}]},{path:"/network/firewall",name:e("Firewalls"),key:"firewall",level:1,endpoints:"neutron_firewall",children:[{path:/^\/network\/firewall-policy\/detail\/[^/]+$/,name:e("Policy Detail"),key:"firewallPolicyDetail",level:2,routePath:"/network/firewall-policy/detail/:id"},{path:"/network/firewall-rule/create",name:e("Create Rule"),key:"firewallRuleCreate",level:2},{path:"/network/firewall-policy/add",name:e("Add Policy"),key:"firewallPolicyCreate",level:2},{path:"/network/firewall/create",name:e("Create Firewall"),key:"firewallCreate",level:2},{path:/^\/network\/firewall\/[^/]+\/port\/[^/]+$/,name:e("Firewall Port"),key:"firewallPortDetail",level:2,routePath:"/network/firewall/:firewallId/port/:portId"},{path:/^\/network\/firewall-rule\/edit\/[^/]+$/,name:e("Rule Edit"),key:"firewallRuleEdit",level:2,routePath:"/network/firewall-rule/edit/:id"},{path:/^\/network\/firewall\/detail\/[^/]+$/,name:e("Firewall Detail"),key:"firewallDetail",level:2,routePath:"/network/firewall/detail/:id"},{path:/^\/network\/firewall-rule\/detail\/[^/]+$/,name:e("Rule Detail"),key:"firewallRuleDetail",level:2,routePath:"/network/firewall-rule/detail/:id"},{path:/^\/network\/firewall-policy\/edit\/[^/]+$/,name:e("Policy Edit"),key:"firewallPolicyEdit",level:2,routePath:"/network/firewall-policy/edit/:id"}]},{path:"/network/dns/zones",name:e("DNS Zones"),key:"dnsZones",endpoints:"designate",level:1,children:[{path:/^\/network\/dns\/zones\/detail\/.[^/]+$/,name:e("Zones Detail"),key:"dnsZonesDetail",level:2,routePath:"/network/dns/zones/detail/:id"},{path:/^\/network\/dns\/zones\/detail\/.[^/]+\/recordsets\/.[^/]+$/,name:e("Recordsets Detail"),key:"dnsRecordSetDetail",level:2,routePath:"/network/dns/zones/detail/:zoneId/recordsets/:id"}]},{path:"/network/dns/reverse",name:e("DNS Reverse"),key:"dnsReverse",endpoints:"designate",level:1,children:[{path:/^\/network\/dns\/reverse\/detail\/.[^/]+$/,name:e("Reverse DNS Detail"),key:"dnsReverseDetail",level:2,routePath:"/network/dns/reverse/detail/:id"}]}]},{path:"/share",name:e("Share File Storage"),key:"fileStorage",endpoints:"manilav2",icon:p.default.createElement(s.default,null),children:[{path:"/share/share",name:e("Shares"),key:"share",level:1,children:[{path:/^\/share\/share\/detail\/.[^/]+$/,name:e("Share Detail"),key:"shareDetail",level:2,routePath:"/share/share/detail/:id"},{path:"/share/share/create",name:e("Create Share"),key:"shareCreate",level:2}]},{path:"/share/share-network",name:e("Share Networks"),key:"shareNetwork",level:1,children:[{path:/^\/share\/share-network\/detail\/.[^/]+$/,name:e("Share Network Detail"),key:"shareNetworkDetail",level:2,routePath:"/share/share-network/detail/:id"}]},{path:"/share/share-group",name:e("Share Groups"),key:"shareGroup",level:1,children:[{path:/^\/share\/share-group\/detail\/.[^/]+$/,name:e("Share Group Detail"),key:"shareGroupDetail",level:2,routePath:"/share/share-group/detail/:id"}]}]},{path:"/heat",name:e("Orchestration"),key:"heat",endpoints:"heat",icon:p.default.createElement(o.default,null),children:[{path:"/heat/stack",name:e("Stacks"),key:"stack",level:1,children:[{path:/^\/heat\/stack\/detail\/.[^/]+\/.[^/]+$/,name:e("Stack Detail"),key:"stackDetail",level:2,routePath:"/heat/stack/detail/:id/:name"},{path:"/heat/stack/create",name:e("Create Stack"),key:"stackCreate",level:2},{path:/^\/heat\/stack\/edit\/.[^/]+\/.[^/]+$/,name:e("Update Template"),key:"stackEdit",level:2,routePath:"/heat/stack/edit/:id/:name"}]}]},{path:"/database",name:e("Database"),key:"database",endpoints:"trove",icon:p.default.createElement(i.default,null),children:[{path:"/database/instances",name:e("Database Instances"),key:"databaseInstances",level:1,children:[{path:/^\/database\/instances\/detail\/.[^/]+$/,name:e("Database Instance Detail"),key:"databaseInstanceDetail",level:2,routePath:"/database/instances/detail/:id"},{path:"/database/instances/create",name:e("Create Database Instance"),key:"databaseInstanceCreate",level:2}]},{path:"/database/backups",name:e("Backups"),key:"databaseBackups",level:1,children:[{path:/^\/database\/backup\/detail\/.[^/]+$/,name:e("Backup Detail"),key:"databaseBackupDetail",level:2,routePath:"/database/backups/detail/:id"}]},{path:"/database/configurations",name:e("Configuration Groups"),key:"configurations",level:1,children:[{path:/^\/database\/configuration\/detail\/.[^/]+$/,name:e("Configuration Detail"),key:"configurationsDetail",level:2,routePath:"/database/configurations/detail/:id"}]}]},{path:"/container",name:e("Container"),key:"container",icon:p.default.createElement(l.default,null),children:[{path:"/container-service/containers",name:e("Containers"),key:"zunContainers",endpoints:"zun",level:1,children:[{path:"/container-service/containers/create",name:e("Create Container"),key:"zunContainersCreateContainer",level:2},{path:/^\/container-service\/containers\/detail\/.[^/]+$/,name:e("Container Detail"),key:"zunContainerDetail",level:2,routePath:"/container-service/containers/detail/:id"}]},{path:"/container-service/capsules",name:e("Capsules"),key:"zunCapsules",endpoints:"zun",level:1,children:[{path:/^\/container-service\/capsules\/detail\/.[^/]+$/,name:e("Capsule Detail"),key:"zunCapsuleDetail",level:2,routePath:"/container-service/capsules/detail/:id"}]},{path:"/container-infra/clusters",name:e("Clusters"),key:"containerInfraClusters",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/clusters\/detail\/.[^/]+$/,name:e("Cluster Detail"),key:"containerInfraClusterDetail",level:2,routePath:"/container-infra/clusters/detail/:id"},{path:"/container-infra/clusters/create",name:e("Create Cluster"),key:"containerInfraCreateCluster",level:2}]},{path:"/container-infra/cluster-template",name:e("Cluster Templates"),key:"clusterTemplate",endpoints:"magnum",level:1,children:[{path:/^\/container-infra\/cluster-template\/detail\/.[^/]+$/,name:e("Cluster Template Detail"),key:"containerInfraClusterTemplateDetail",level:2,routePath:"/container-infra/cluster-template/detail/:id"},{path:"/container-infra/cluster-template/create",name:e("Create Cluster Template"),key:"containerInfraCreateClusterTemplate",level:2},{path:/^\/container-infra\/cluster-template\/update\/.[^/]+$/,name:e("Update Cluster Template"),key:"containerInfraUpdateClusterTemplate",level:2,routePath:"/container-infra/cluster-template/update/:id"}]}]}]:[]);t.default=h},2068:function(e,t,a){"use strict";var n=a(20),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1348)),i=r(a(1382)),o=r(a(0)),s=(a(564),e=>e?[{path:"/user/center",name:e("User Center"),key:"userCenter",icon:o.default.createElement(i.default,null),level:0,hasBreadcrumb:!1,hasChildren:!1},{path:"/user/application-credentials",name:e("Application Credentials"),key:"applicationCredential",level:0,icon:o.default.createElement(l.default,null),children:[],hasChildren:!1}]:[]);t.default=s},2069:function(e,a,n){"use strict";var r=n(162),l=n(20),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=a.Right=void 0;var s=o(n(54)),u=o(n(77));n(1317);var d=o(n(1318));n(2070);var c=o(n(2073)),f=o(n(35));n(1431);var p=o(n(1432)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var n={},r=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=r?i(e,o):null;s&&(s.get||s.set)?l(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),m=(n(161),n(204)),g=n(412),v=o(n(4)),y=o(n(416)),b=o(n(1351)),x=o(n(690)),w=n(567),k=o(n(1454));function C(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(C=function(e){return e?a:t})(e)}var{Content:_}=p.default;class M extends h.Component{constructor(e){super(e),(0,f.default)(this,"checkHasTab",(()=>{var{currentRoutes:e=[]}=this.props;if(0===e.length)return!1;var{hasTab:t}=e[e.length-1];return t||!1})),(0,f.default)(this,"renderBreadcrumb",(function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(!t||0===t.length)return null;var{hasBreadcrumb:a=!0}=t[t.length-1];if(!a&&void 0!==a)return null;var n=(0,s.default)(t).call(t,((e,a)=>0===a||a===t.length-1?h.default.createElement(c.default.Item,{key:e.key,className:k.default["breadcrumb-item"]},e.name):h.default.createElement(c.default.Item,{key:e.key},h.default.createElement(m.Link,{key:e.key,to:e.path,className:(0,v.default)(k.default["breadcrumb-item"],k.default["breadcrumb-link"])},e.name))));if(0===n.length)return null;var{hasTab:r}=t[t.length-1],l=r?k.default["breadcrumb-has-tab"]:"";return h.default.createElement("div",{className:(0,u.default)(e="".concat(k.default.breadcrumb," ")).call(e,l)},h.default.createElement(c.default,null,n))})),(0,f.default)(this,"renderChildren",((e,a,n)=>{var{hasError:r}=this.state;if(r)return h.default.createElement(b.default,{title:t("data"),link:this.getRoutePath("overview"),codeError:!0});try{var l,i;return h.default.createElement("div",{className:(0,u.default)(l=(0,u.default)(i="".concat(k.default.main," ")).call(i,e," ")).call(l,a)},(0,y.default)(this.routes,n))}catch(e){var o=this.getRoutePath("overview");return h.default.createElement(b.default,{title:t("data"),link:o,codeError:!0})}})),this.routes=e.route.routes,this.state={hasError:!1}}componentDidUpdate(e){var{location:{pathname:t}={}}=e,{location:{pathname:a}={}}=this.props;t!==a&&this.updateErrorState(!1)}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,w.getPath)({key:n,params:t,query:a})}updateErrorState(e){this.setState({hasError:e})}render(){var{pathname:e}=this.props.location,{collapsed:t,currentRoutes:a,isAdminPage:n=!1}=this.props,r=this.renderBreadcrumb(a),l=null!==r,{user:i}=this.props.rootStore,o=this.checkHasTab(e),s=l?"":k.default["main-no-breadcrumb"],u=o?k.default["main-has-tab"]:"",c={sliderCollapsed:t,isAdminPage:n},f=i?this.renderChildren(s,u,c):h.default.createElement("div",{style:{margin:"44px"}},h.default.createElement(d.default,null));return h.default.createElement(p.default,{className:(0,v.default)(k.default["base-layout-right"],t?k.default["base-layout-right-collapsed"]:"")},h.default.createElement(_,{className:k.default.content},r,h.default.createElement(h.Suspense,{fallback:h.default.createElement(x.default,{className:"sl-page-loading"})},f)))}}a.Right=M;var S=(0,g.inject)("rootStore")((0,g.observer)(M));a.default=S},2077:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__nav--1IKuR {\n left: -270px;\n}\n.index__header--3eaFT,\n.index__header-collapsed--2VIjO {\n top: 0;\n left: 0;\n z-index: 1000;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n height: 40px;\n padding: 0;\n color: #fff;\n}\n.index__header-collapsed--2VIjO {\n padding-left: 40px;\n}\n.index__logo--t_KQf {\n height: 32px;\n margin: 16px 38px;\n}\n.index__logo-collapse--1dyW- {\n margin: 16px 24px;\n}\n.index__logo-image--1r9zB {\n height: 29px;\n}\n.index__logo-image-hover--r0EY5 {\n margin-left: -20px;\n}\n.index__site-layout-background--1KhiG {\n background: #fff;\n}\n.index__sider--3mcQr {\n position: relative;\n height: 100vh;\n overflow-y: auto;\n}\n.index__sider--3mcQr .ant-layout-sider-trigger {\n position: absolute;\n right: 0;\n bottom: 48px;\n width: 32px !important;\n height: 75px;\n font-size: 16px;\n line-height: 75px;\n background-color: #26262b;\n border-width: 32px;\n border-radius: 4px 0 0 4px;\n}\n.index__menu--38cbE,\n.index__menu-collapsed--3qSkQ {\n max-height: calc(100vh - 64px);\n padding-right: 14px;\n padding-left: 14px;\n overflow-x: hidden;\n overflow-y: auto;\n}\n.index__menu--38cbE::-webkit-scrollbar,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar {\n width: 12px;\n}\n.index__menu--38cbE::-webkit-scrollbar-track,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar-track {\n background-color: #f5f5f5;\n border-radius: 0;\n}\n.index__menu--38cbE::-webkit-scrollbar-thumb,\n.index__menu-collapsed--3qSkQ::-webkit-scrollbar-thumb {\n background-color: lightgray;\n border-radius: 0;\n}\n.index__menu--38cbE a,\n.index__menu-collapsed--3qSkQ a {\n color: inherit !important;\n}\n.index__menu--38cbE .ant-menu-item,\n.index__menu-collapsed--3qSkQ .ant-menu-item {\n font-size: 14px;\n}\n.index__menu--38cbE .ant-menu-submenu-title,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title {\n font-size: 14px;\n}\n.index__menu--38cbE .anticon,\n.index__menu-collapsed--3qSkQ .anticon {\n float: left;\n margin-right: 20px;\n font-size: 14px;\n line-height: 44px;\n}\n.index__menu--38cbE .ant-menu-item-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected,\n.index__menu--38cbE .ant-menu-item-active,\n.index__menu-collapsed--3qSkQ .ant-menu-item-active {\n color: #fff !important;\n border-radius: 4px;\n}\n.index__menu--38cbE .ant-menu-item-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected {\n background-color: #0068ff !important;\n}\n.index__menu--38cbE .ant-menu-item-selected::after,\n.index__menu-collapsed--3qSkQ .ant-menu-item-selected::after {\n border-right: 3px solid #0c63fa !important;\n}\n.index__menu--38cbE .ant-menu-submenu-active,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-active,\n.index__menu--38cbE .ant-menu-submenu-selected,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-selected,\n.index__menu--38cbE .ant-menu-submenu-title:hover,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title:hover,\n.index__menu--38cbE .ant-menu-submenu:hover > .ant-menu-submenu-title > .ant-menu-submenu-arrow,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu:hover > .ant-menu-submenu-title > .ant-menu-submenu-arrow {\n color: #fff !important;\n}\n.index__menu--38cbE .ant-menu-submenu-title:active,\n.index__menu-collapsed--3qSkQ .ant-menu-submenu-title:active {\n background-color: #fdd831 !important;\n}\n.index__menu--38cbE .ant-menu-sub.ant-menu-inline,\n.index__menu-collapsed--3qSkQ .ant-menu-sub.ant-menu-inline {\n background: linear-gradient(-240deg, #3f004a 50%, #210c24 150%) !important;\n}\n.index__menu-item--3jS31 {\n font-size: 14px;\n}\n.index__menu-item--3jS31 a {\n color: inherit;\n}\n.index__menu-item--3jS31 a::before {\n width: 5px;\n}\n.index__content--2bhUz {\n height: calc(100vh - 40px);\n background-color: #fafafa;\n}\n.index__sub-menu--1MaIG {\n font-size: 10px;\n}\n.index__sub-menu--1MaIG .ant-menu-sub.ant-menu-inline {\n padding-right: 5px;\n padding-left: 5px;\n}\n.index__sub-menu--1MaIG .ant-menu-item > span::before {\n position: absolute;\n top: 18px;\n bottom: 0;\n left: 30px;\n width: 5px;\n height: 5px;\n background-color: rgba(255, 255, 255, 0.65);\n border-radius: 50%;\n content: '';\n}\n.index__sub-menu--1MaIG .ant-menu-item {\n margin-top: 4px !important;\n margin-bottom: 8px !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected:hover {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-active > span::before {\n background-color: #0068ff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-active {\n background-color: transparent !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected > span::before {\n background-color: #fff !important;\n}\n.index__sub-menu--1MaIG .ant-menu-item-selected::after {\n border-right: 3px solid #0c63fa !important;\n}\n.index__sub-menu--1MaIG .ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected {\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n border-radius: 4px;\n}\n.index__sub-menu--1MaIG .ant-menu-dark {\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n}\n.index__breadcrumb--2Wm6M {\n height: 50px;\n padding-left: 16px;\n background-color: #fff;\n}\n.index__breadcrumb--2Wm6M .index__breadcrumb-item--qhsVt {\n font-size: 12px;\n line-height: 50px;\n}\n.index__breadcrumb--2Wm6M .index__breadcrumb-link--3_6RK {\n color: #0068ff;\n}\n.index__breadcrumb-has-tab--Nwd3S {\n height: 80px;\n}\n.index__main--jl6wy {\n height: calc(100vh - 40px - 50px);\n overflow: hidden;\n}\n.index__main-no-breadcrumb--2XmS2 {\n height: calc(100vh - 40px);\n}\n.index__main-has-tab--3wlbw {\n margin-top: -42px;\n}\n.index__trigger-wrapper--rqEk9 {\n position: absolute;\n right: -24px;\n bottom: 48px;\n width: 24px !important;\n height: 70px;\n font-size: 16px;\n line-height: 70px;\n border-width: 24px;\n border-radius: 4px 0 0 4px;\n cursor: pointer;\n}\n.index__trigger--3pSSC {\n position: absolute;\n left: 0;\n color: #fff;\n font-size: 20px;\n}\n.index__trigger--3pSSC::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: -1;\n background: rgba(0, 0, 0, 0.35);\n border-right: none;\n border-radius: 0 4px 4px 0;\n -webkit-transform: scaleX(2.2) perspective(50px) rotateY(50deg);\n transform: scaleX(2.2) perspective(50px) rotateY(50deg);\n -webkit-transform-origin: bottom;\n transform-origin: bottom;\n -webkit-transform-origin: left;\n transform-origin: left;\n content: '';\n}\n.index__trigger-icon--2oz_J {\n margin-left: 2px;\n}\n.index__base-layout--1IYXj {\n position: relative;\n width: 100%;\n height: 100vh;\n}\n.index__base-layout-sider--1TtvU {\n position: absolute;\n top: 40px;\n bottom: 0;\n left: 0;\n z-index: 1;\n width: 230px;\n padding-top: 10px;\n background: linear-gradient(-240deg, #3f004a 50%, #000 100%) !important;\n border-right: none;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-collapsed--37BAU {\n width: 40px;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-collapsed--37BAU .index__menu-collapsed--3qSkQ {\n padding-right: 0;\n padding-left: 0;\n}\n.index__base-layout-sider-collapsed--37BAU .index__menu-collapsed--3qSkQ .index__menu-item-collapsed--Vp0Qm {\n padding-left: 12px !important;\n text-overflow: inherit;\n}\n.index__base-layout-right--3JjUr {\n position: absolute;\n top: 40px;\n right: 0;\n left: 230px;\n height: calc(100vh - 40px);\n}\n.index__base-layout-right-collapsed--2DIVo {\n left: 40px;\n}\n.index__base-layout-sider-hover--MC2Db {\n width: 230px;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.index__base-layout-sider-hover--MC2Db .index__menu-collapsed--3qSkQ {\n padding-right: 14px;\n padding-left: 14px;\n}\n.index__base-layout-sider-hover--MC2Db .index__menu-collapsed--3qSkQ .index__menu-item-collapsed--Vp0Qm {\n padding-left: 48px !important;\n text-overflow: ellipsis;\n}\n.index__notice--1C1vX {\n position: absolute;\n top: 48px;\n right: 0;\n z-index: 1100;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 384px;\n max-width: calc(100vw - 48px);\n margin: 0 24px 0 0;\n margin-bottom: 16px;\n padding: 16px 24px;\n overflow: hidden;\n color: #0068ff;\n font-size: 18px;\n line-height: 24px;\n word-wrap: break-word;\n background: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n cursor: pointer;\n}\n.index__menu-item-title--2G1wq {\n font-size: 14px;\n}\n.index__menu-item-title--2G1wq span {\n display: inline-block;\n max-width: 120px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__sub-menu-item-title--2yPhe {\n color: rgba(255, 255, 255, 0.65);\n font-size: 14px;\n}\n.index__sub-menu-item-title--2yPhe span {\n display: inline-block;\n max-width: 120px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.index__sub-menu-title--_bWGB {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n.index__menu-item-title-wrapper--1WLcf {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",nav:"index__nav--1IKuR",header:"index__header--3eaFT","header-collapsed":"index__header-collapsed--2VIjO",logo:"index__logo--t_KQf","logo-collapse":"index__logo-collapse--1dyW-","logo-image":"index__logo-image--1r9zB","logo-image-hover":"index__logo-image-hover--r0EY5","site-layout-background":"index__site-layout-background--1KhiG",sider:"index__sider--3mcQr",menu:"index__menu--38cbE","menu-collapsed":"index__menu-collapsed--3qSkQ","menu-item":"index__menu-item--3jS31",content:"index__content--2bhUz","sub-menu":"index__sub-menu--1MaIG",breadcrumb:"index__breadcrumb--2Wm6M","breadcrumb-item":"index__breadcrumb-item--qhsVt","breadcrumb-link":"index__breadcrumb-link--3_6RK","breadcrumb-has-tab":"index__breadcrumb-has-tab--Nwd3S",main:"index__main--jl6wy","main-no-breadcrumb":"index__main-no-breadcrumb--2XmS2","main-has-tab":"index__main-has-tab--3wlbw","trigger-wrapper":"index__trigger-wrapper--rqEk9",trigger:"index__trigger--3pSSC","trigger-icon":"index__trigger-icon--2oz_J","base-layout":"index__base-layout--1IYXj","base-layout-sider":"index__base-layout-sider--1TtvU","base-layout-sider-collapsed":"index__base-layout-sider-collapsed--37BAU","menu-item-collapsed":"index__menu-item-collapsed--Vp0Qm","base-layout-right":"index__base-layout-right--3JjUr","base-layout-right-collapsed":"index__base-layout-right-collapsed--2DIVo","base-layout-sider-hover":"index__base-layout-sider-hover--MC2Db",notice:"index__notice--1C1vX","menu-item-title":"index__menu-item-title--2G1wq","sub-menu-item-title":"index__sub-menu-item-title--2yPhe","sub-menu-title":"index__sub-menu-title--_bWGB","menu-item-title-wrapper":"index__menu-item-title-wrapper--1WLcf"}},2078:function(e,t,a){"use strict";var n=a(162),r=a(20),l=a(25),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.LayoutMenu=void 0;var o=i(a(164)),s=i(a(54)),u=i(a(29)),d=i(a(86)),c=i(a(28)),f=i(a(350)),p=i(a(591)),h=i(a(77)),m=i(a(91)),g=i(a(1573)),v=i(a(1574));a(344);var y=i(a(202)),b=i(a(35));a(1276);var x=i(a(421)),w=i(a(205)),k=i(a(134)),C=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=j(t);if(a&&a.has(e))return a.get(e);var n={},i=r&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?r(n,o,s):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(a(0)),_=(a(161),a(564),a(412)),M=a(36),S=i(a(4)),I=a(567),N=i(a(237)),E=a(1710),T=a(1575),A=i(a(1454));function j(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(j=function(e){return e?a:t})(e)}var P={"/network":T.faSitemap,"/storage":T.faServer,"/compute":T.faMicrochip,"/random":T.faRandom},{SubMenu:D}=x.default,{getLocaleShortName:L}=N.default;class O extends C.Component{constructor(e){var t;super(e),t=this,(0,b.default)(this,"onCollapse",(e=>{this.setState({collapsed:e})})),(0,b.default)(this,"changeCollapse",(()=>{var{collapsed:e}=this.state;this.setState({collapsed:!e,hover:!1});var{onCollapseChange:t}=this.props;t&&t(!e)})),(0,b.default)(this,"onMouseEnter",(e=>{var{collapsed:t}=this.state;if(t){var a=e&&e.target||null,n=a&&a.className||"";(0,k.default)(n)&&!(0,o.default)(n).call(n,"trigger")&&this.setState({hover:!0})}})),(0,b.default)(this,"onMouseLeave",(()=>{var{hover:e}=this.state;e&&this.setState({hover:!1})})),(0,b.default)(this,"onClickMenuItem",(e=>{var{key:t}=e,a=(0,I.getPath)({key:t}),{pathname:n}=this.props;n!==a&&this.routing.push(a)})),(0,b.default)(this,"renderMenuItemIcon",(e=>{var{item:t}=e,a=P[t.path];return a?C.default.createElement(E.FontAwesomeIcon,{icon:a,className:A.default["action-icon"]}):t.icon||null})),(0,b.default)(this,"renderMenuItem",((e,t)=>{var a,{collapsed:n,hover:r}=this.state;if(n&&!r)return C.default.createElement(x.default.Item,{key:e.key,className:A.default["menu-item-collapsed"]},this.renderMenuItemIcon({item:e,collapsed:n,isSubMenu:t}));if(e.level>1)return null;var{showChildren:l=!0}=e;if(!l||!e.children||0===e.children.length||e.level)return C.default.createElement(x.default.Item,{key:e.key,className:A.default["menu-item"],onClick:this.onClickMenuItem},C.default.createElement("span",{className:A.default["menu-item-title-wrapper"]},this.renderMenuItemIcon({item:e,isSubMenu:t}),C.default.createElement("span",{className:0===e.level||1===e.level&&!l?A.default["menu-item-title"]:A.default["sub-menu-item-title"]},e.name.length>=this.maxTitleLength?C.default.createElement(y.default,{title:e.name,placement:"right"},e.name):e.name)));var i=C.default.createElement("span",{className:A.default["sub-menu-title"],style:{alignItems:"center"}},C.default.createElement("span",{style:{marginRight:"20px"}},this.renderMenuItemIcon({item:e})),C.default.createElement("span",{className:A.default["menu-item-title"]},e.name.length>=this.maxTitleLength?C.default.createElement(y.default,{title:e.name,placement:"right"},e.name):e.name)),o=(0,s.default)(a=e.children).call(a,(e=>this.renderMenuItem(e,!0)));return C.default.createElement(D,{key:e.key,title:i,className:A.default["sub-menu"]},o)})),(0,b.default)(this,"getFirstLevelKeys",(e=>{var t,a=(0,u.default)(t=this.menu).call(t,(t=>{var{children:a=[]}=t;if(!a.length)return(0,o.default)(e).call(e,t.key);var n=(0,d.default)(a).call(a,(t=>(0,o.default)(e).call(e,t.key)));return!!n||((0,c.default)(a).call(a,(t=>{var{children:a=[]}=t;(0,d.default)(a).call(a,(t=>(0,o.default)(e).call(e,t.key)))&&(n=!0)})),n)}));return(0,s.default)(a).call(a,(e=>e.key))})),(0,b.default)(this,"getSelectedKeysForMenu",(e=>{var{collapsed:t,hover:a}=this.state;return!t||a?e:this.getFirstLevelKeys(e)})),(0,b.default)(this,"getCurrentOpenKeys",(e=>this.getFirstLevelKeys(e))),(0,b.default)(this,"renderMenu",(function(){var e,a,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{collapsed:r}=t.state,{openKeys:l}=t.rootStore,i=(0,u.default)(e=(0,s.default)(a=t.menu).call(a,(e=>t.renderMenuItem(e)))).call(e,(e=>null!==e)),o=t.getSelectedKeysForMenu(n);return C.default.createElement(x.default,{theme:"dark",mode:"inline",className:r?A.default["menu-collapsed"]:A.default.menu,defaultSelectedKeys:o,selectedKeys:o,openKeys:l,onOpenChange:t.onOpenChange},i)})),(0,b.default)(this,"onOpenChange",(e=>{var{openKeys:t}=this.state,{openKeys:a}=this.rootStore,n=(0,f.default)(new p.default((0,h.default)(t).call(t,(0,M.toJS)(a)))),r=(0,d.default)(e).call(e,(e=>-1===(0,m.default)(n).call(n,e))),l=r?[r]:[];this.updateOpenKeys(l)})),(0,b.default)(this,"updateOpenKeys",(e=>{this.rootStore.updateOpenKeys(e),this.setState({openKeys:e})})),(0,b.default)(this,"getSelectedKeys",(e=>0===e.length?[]:1===e.length?[e[0].key]:e.length>=2?[e[1].key]:[])),this.state={collapsed:!1,hover:!1,openKeys:[]};var a=L();this.maxTitleLength="zh"===a?9:17}componentDidMount(){this.init()}componentDidUpdate(e){var{pathname:t}=this.props,{pathname:a}=e;a&&t!==a&&this.updateOpenKeysByRoute()}get menu(){return this.props.menu||[]}get isAdminPage(){return this.props.isAdminPage||!1}getRouteName(e){return this.isAdminPage?"".concat(e,"Admin"):e}getRoutePath(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.getRouteName(e);return(0,I.getPath)({key:n,params:t,query:a})}getOpenKeysByRoute(){var{currentRoutes:e}=this.props,t=this.getSelectedKeys(e);return this.getCurrentOpenKeys(t)}get rootStore(){return this.props.rootStore}get routing(){return this.props.rootStore.routing}updateOpenKeysByRoute(){var e=this.getOpenKeysByRoute(),{openKeys:t}=this.rootStore;(0,w.default)(e,(0,M.toJS)(t))||this.init()}init(){var e=this.getOpenKeysByRoute();this.updateOpenKeys(e)}renderTrigger(){var{collapsed:e}=this.state,t=e?C.default.createElement(v.default,{className:A.default["trigger-icon"]}):C.default.createElement(g.default,{className:A.default["trigger-icon"]});return C.default.createElement("div",{className:A.default["trigger-wrapper"]},C.default.createElement("div",{className:A.default.trigger,onClick:this.changeCollapse},t))}render(){var{currentRoutes:e}=this.props,t=this.getSelectedKeys(e),{hover:a,collapsed:n}=this.state,r=this.renderTrigger();return C.default.createElement("div",{className:(0,S.default)(A.default["base-layout-sider"],n?A.default["base-layout-sider-collapsed"]:"",a?A.default["base-layout-sider-hover"]:""),onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},this.renderMenu(t),r)}}t.LayoutMenu=O;var R=(0,_.inject)("rootStore")((0,_.observer)(O));t.default=R}}]); \ No newline at end of file diff --git a/skyline_console/static/basic.bundle.1739198880.js.gz b/skyline_console/static/basic.bundle.1739201236.js.gz similarity index 54% rename from skyline_console/static/basic.bundle.1739198880.js.gz rename to skyline_console/static/basic.bundle.1739201236.js.gz index dacd3fe7f56f38a0262396c1a0c5d73d8d7c16fd..f2f23a751ec5709d8ebedeae1902841bffa61c5c 100644 GIT binary patch delta 37030 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 aiOO_ZQG*Mg&*ztwm;WDFC!lx)M+E?Y5BmB5 delta 37011 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 H1V;q`yx0+N diff --git a/skyline_console/static/common.bundle.1739198880.js b/skyline_console/static/common.bundle.1739201236.js similarity index 100% rename from skyline_console/static/common.bundle.1739198880.js rename to skyline_console/static/common.bundle.1739201236.js diff --git a/skyline_console/static/common.bundle.1739198880.js.gz b/skyline_console/static/common.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/common.bundle.1739198880.js.gz rename to skyline_console/static/common.bundle.1739201236.js.gz diff --git a/skyline_console/static/compute.bundle.1739198880.js b/skyline_console/static/compute.bundle.1739201236.js similarity index 100% rename from skyline_console/static/compute.bundle.1739198880.js rename to skyline_console/static/compute.bundle.1739201236.js diff --git a/skyline_console/static/compute.bundle.1739198880.js.gz b/skyline_console/static/compute.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/compute.bundle.1739198880.js.gz rename to skyline_console/static/compute.bundle.1739201236.js.gz diff --git a/skyline_console/static/configuration.bundle.1739198880.js b/skyline_console/static/configuration.bundle.1739201236.js similarity index 100% rename from skyline_console/static/configuration.bundle.1739198880.js rename to skyline_console/static/configuration.bundle.1739201236.js diff --git a/skyline_console/static/configuration.bundle.1739198880.js.gz b/skyline_console/static/configuration.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/configuration.bundle.1739198880.js.gz rename to skyline_console/static/configuration.bundle.1739201236.js.gz diff --git a/skyline_console/static/container-infra.bundle.1739198880.js b/skyline_console/static/container-infra.bundle.1739201236.js similarity index 100% rename from skyline_console/static/container-infra.bundle.1739198880.js rename to skyline_console/static/container-infra.bundle.1739201236.js diff --git a/skyline_console/static/container-infra.bundle.1739198880.js.gz b/skyline_console/static/container-infra.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/container-infra.bundle.1739198880.js.gz rename to skyline_console/static/container-infra.bundle.1739201236.js.gz diff --git a/skyline_console/static/heat.bundle.1739198880.js b/skyline_console/static/heat.bundle.1739201236.js similarity index 100% rename from skyline_console/static/heat.bundle.1739198880.js rename to skyline_console/static/heat.bundle.1739201236.js diff --git a/skyline_console/static/heat.bundle.1739198880.js.gz b/skyline_console/static/heat.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/heat.bundle.1739198880.js.gz rename to skyline_console/static/heat.bundle.1739201236.js.gz diff --git a/skyline_console/static/identity.bundle.1739198880.js b/skyline_console/static/identity.bundle.1739201236.js similarity index 100% rename from skyline_console/static/identity.bundle.1739198880.js rename to skyline_console/static/identity.bundle.1739201236.js diff --git a/skyline_console/static/identity.bundle.1739198880.js.gz b/skyline_console/static/identity.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/identity.bundle.1739198880.js.gz rename to skyline_console/static/identity.bundle.1739201236.js.gz diff --git a/skyline_console/static/index.html b/skyline_console/static/index.html index 19b88ca6..27c5c3b2 100644 --- a/skyline_console/static/index.html +++ b/skyline_console/static/index.html @@ -8,5 +8,5 @@
- + diff --git a/skyline_console/static/main.bundle.1739198880.js b/skyline_console/static/main.bundle.1739201236.js similarity index 100% rename from skyline_console/static/main.bundle.1739198880.js rename to skyline_console/static/main.bundle.1739201236.js diff --git a/skyline_console/static/main.bundle.1739198880.js.gz b/skyline_console/static/main.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/main.bundle.1739198880.js.gz rename to skyline_console/static/main.bundle.1739201236.js.gz diff --git a/skyline_console/static/management.bundle.1739198880.js b/skyline_console/static/management.bundle.1739201236.js similarity index 100% rename from skyline_console/static/management.bundle.1739198880.js rename to skyline_console/static/management.bundle.1739201236.js diff --git a/skyline_console/static/monitor-center.bundle.1739198880.js b/skyline_console/static/monitor-center.bundle.1739201236.js similarity index 100% rename from skyline_console/static/monitor-center.bundle.1739198880.js rename to skyline_console/static/monitor-center.bundle.1739201236.js diff --git a/skyline_console/static/monitor-center.bundle.1739198880.js.gz b/skyline_console/static/monitor-center.bundle.1739201236.js.gz similarity index 100% rename from skyline_console/static/monitor-center.bundle.1739198880.js.gz rename to skyline_console/static/monitor-center.bundle.1739201236.js.gz diff --git a/skyline_console/static/network.bundle.1739198880.js.gz b/skyline_console/static/network.bundle.1739198880.js.gz deleted file mode 100644 index 9a493c11be1069fbf24feb8921c00801a813da01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86796 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
ksI=+&d_nC6@J~7?Ae=WIrA6L40pI5ng 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≫2{0Vz`bD1m69ABVC3&h!W< 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%0Dj>RpHLo}&xKyGP?;idkBxC? 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 r2_Y&0>[{title:t("Name"),dataIndex:"name"},{title:t("Certificate Type"),dataIndex:"mode",valueMap:h},{title:t("Expires At"),dataIndex:"expiration",valueRender:"toLocalTime"},{title:t("Domain Name"),dataIndex:"domain",render:e=>e||"-"},{title:t("Listener"),dataIndex:"listener",render:t=>t?(0,s.default)(t).call(t,(t=>f.default.createElement("div",{key:t.id},e.getLinkRender("lbListenerDetail",t.name,{loadBalancerId:t.lb,id:t.id},null)))):"-"},{title:t("Status"),dataIndex:"status",valueMap:v},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime"}];var g=[{label:t("One-way authentication"),value:"one-way"},{label:t("Two-way authentication"),value:"two-way"}];a.sslParseMethod=g;a.listenerProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"HTTPS",value:"TERMINATED_HTTPS"},{label:"UDP",value:"UDP"}];a.poolProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"UDP",value:"UDP"}];a.healthProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"UDP",value:"UDP-CONNECT"}];var _={"X-Forwarded-For":t("Specify the client IP address"),"X-Forwarded-Port":t("Specify the listener port")};a.INSERT_HEADERS=_;var b=(0,s.default)(l=(0,d.default)(_)).call(l,(e=>({label:e,value:e})));a.insertHeaderOptions=b;var y=f.default.createElement(f.default.Fragment,null,(0,s.default)(o=(0,d.default)(_)).call(o,(e=>f.default.createElement("p",{key:e},e,": ",_[e]))));a.insertHeaderTips=y;var I=t("The optional headers to insert into the request before it is sent to the backend member.");a.insertHeaderDesc=I;a.getListenerInsertHeadersFormItem=()=>({name:"insert_headers",label:t("Custom Headers"),type:"check-group",extra:I,tip:y,options:b});a.getInsertHeadersValueFromForm=e=>{var t;if(!e)return null;var a={};return(0,u.default)(t=(0,d.default)(_)).call(t,(t=>{e[t]&&(a[t]="true")})),(0,c.default)(a)?null:a};a.getInsertHeadersFormValueFromListener=e=>{var t,{insert_headers:a}=e||{},r={};return(0,u.default)(t=(0,d.default)(_)).call(t,(e=>{a[e]&&(r[e]="true"===a[e])})),r};a.getInsertHeaderCard=e=>{var a,r=[];return(0,u.default)(a=(0,d.default)(_)).call(a,(t=>{e[t]&&r.push({label:t,content:e[t],tooltip:_[t]})})),{title:t("Custom Headers"),titleHelp:I,options:r}}},1275:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.VpnIPsecConnectionStore=void 0;var f,p=c(a(25)),m=c(a(35)),h=c(a(49)),v=c(a(55)),g=c(a(119)),_=a(36),b=c(a(1339)),y=c(a(1340)),I=c(a(50)),A=c(a(53));function S(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t"default"===e.name;a.isMine=e=>e.project_id===v.default.projectId;a.hasNoProject=e=>!e.project_name||"-"===e.project_name;a.getDefaultFilter=e=>{var t=(0,p.default)(g.yesNoOptions).call(g.yesNoOptions,(t=>t.key?b(b({},t),{},{checkLabel:e,isQuick:!0}):t));return{label:e,name:"notDefault",options:t,filterFunc:(e,t)=>(0,h.default)(t)?!t||e:"true"!==t||e}}},1294:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallPolicyStore=void 0;var f,p=c(a(28)),m=c(a(91)),h=c(a(54)),v=c(a(86)),g=c(a(29)),_=c(a(25)),b=c(a(49)),y=c(a(35)),I=c(a(55)),A=a(36),S=c(a(50)),w=a(1362),x=c(a(53));function P(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function C(e){for(var t=1;tC(C({},e),{},{notDefault:!(0,w.isDefault)(e)})}listDidFetch(e){return(0,b.default)((function*(){var t,a=[];if((0,p.default)(e).call(e,(e=>{e.firewalls=[],e.rules=[];var{firewall_rules:t}=e;(0,p.default)(t).call(t,(e=>{(0,m.default)(a).call(a,e)<0&&a.push(e)}))})),0===a.length)return e;var r=yield S.default.neutron.firewallRules.list(),i=(0,h.default)(t=r.firewall_rules).call(t,(e=>C(C({},e),{},{protocol:e.protocol||"any"})));(0,p.default)(e).call(e,(e=>{var{firewall_rules:t}=e;e.rules=(0,h.default)(t).call(t,(e=>(0,v.default)(i).call(i,(t=>t.id===e))))}));var n=(yield S.default.neutron.firewalls.list()).firewall_groups;return(0,p.default)(e).call(e,(e=>{e.firewalls=(0,g.default)(n).call(n,(t=>t.egress_firewall_policy_id===e.id||t.ingress_firewall_policy_id===e.id))})),e}))()}detailDidFetch(e){return(0,b.default)((function*(){var t,a=[];e.firewalls=[],e.rules=[];var{firewall_rules:r}=e;if((0,p.default)(r).call(r,(e=>{(0,m.default)(a).call(a,e)<0&&a.push(e)})),0===a.length)return e;var i=yield S.default.neutron.firewallRules.list(),n=(0,h.default)(t=i.firewall_rules).call(t,(e=>C(C({},e),{},{protocol:e.protocol||"any"})));e.rules=(0,h.default)(r).call(r,(e=>(0,v.default)(n).call(n,(t=>t.id===e))));var l=(yield S.default.neutron.firewalls.list()).firewall_groups;return e.firewalls=(0,g.default)(l).call(l,(t=>t.egress_firewall_policy_id===e.id||t.ingress_firewall_policy_id===e.id)),e}))()}insertRule(e,t){var a=this;return(0,b.default)((function*(){var{id:r}=e;return a.submitting(a.client.insertRule(r,t))}))()}removeRule(e,t){var a=this;return(0,b.default)((function*(){var{id:r}=e;return a.submitting(a.client.removeRule(r,t))}))()}},(0,I.default)(f.prototype,"insertRule",[A.action],(0,_.default)(f.prototype,"insertRule"),f.prototype),(0,I.default)(f.prototype,"removeRule",[A.action],(0,_.default)(f.prototype,"removeRule"),f.prototype),f);t.FirewallPolicyStore=E;var D=new E;t.default=D},1306:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.ListenerStore=void 0;var f=c(a(54)),p=c(a(431)),m=c(a(49)),h=c(a(35)),v=c(a(50)),g=c(a(53));function _(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function b(e){for(var t=1;t{var t;return b(b({},e),{},{lbIds:(0,f.default)(t=e.loadbalancers).call(t,(e=>e.id))})}}detailDidFetch(e){var t=this;return(0,m.default)((function*(){var a,{default_pool_id:r,default_tls_container_ref:i,client_ca_tls_container_ref:n,sni_container_refs:l}=e,[,o]=(i||"").split("/containers/"),[,s]=(n||"").split("/secrets/"),d=(0,f.default)(a=l||[]).call(a,(e=>{var[,t]=e.split("/containers/");return t}));(0,p.default)(e,{serverCertificateId:o,caCertificateId:s,sniCertificateId:d});var{loadbalancers:u=[]}=e,{loadbalancer:c}=yield t.lbClient.show(u[0].id);if(e.loadBalancer=c,!r)return e;try{var{pool:m}=yield t.poolClient.show(r);e.default_pool=m;var{healthmonitor_id:h}=m;if(h){var{healthmonitor:v}=yield t.healthMonitorClient.show(h);e.healthMonitor=v}return e}catch(t){return e}}))()}}t.ListenerStore=y;var I=new y;t.default=I},1307:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.isDefault=a.isMine=a.tableOptions=a.tableFilter=a.tableColumns=a.protocolInfos=a.actionInfos=void 0;var l=n(r(164)),o=r(163),s=r(342),d=n(r(133)),u=r(1286),c={allow:t("ALLOW"),deny:t("DENY"),reject:t("REJECT")};a.actionInfos=c;var f={tcp:t("TCP"),udp:t("UDP"),icmp:t("ICMP"),any:t("ANY")};a.protocolInfos=f;var p=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Protocol"),dataIndex:"protocol",valueMap:f},{title:t("Source IP"),dataIndex:"source_ip_address"},{title:t("Source Port"),dataIndex:"source_port"},{title:t("Destination IP"),dataIndex:"destination_ip_address"},{title:t("Destination Port"),dataIndex:"destination_port"},{title:t("Rule Action"),dataIndex:"action",valueMap:c},{title:t("Enabled"),dataIndex:"enabled",valueRender:"yesNo"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"}];a.tableColumns=p;var m=[{label:t("Name"),name:"name"},{label:t("Protocol"),name:"protocol",options:(0,o.getOptions)(f)},{label:t("Rule Action"),name:"action",options:(0,o.getOptions)(c)},{label:t("Enabled"),name:"enabled",options:s.yesNoOptions},{label:t("Shared"),name:"shared",options:s.yesNoOptions},(0,u.getDefaultFilter)(t("Hide Default Rules"))];a.tableFilter=m;var h={filterParams:m,columns:p};a.tableOptions=h;a.isMine=e=>e.project_id===d.default.projectId;a.isDefault=e=>{var t;return(0,l.default)(t=["default egress ipv4","default egress ipv6","default ingress ipv4","default ingress ipv6"]).call(t,e.name)}},1321:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.ipsecPolicyTransformProtocolOptions=a.ipsecPolicyEncapsulationModeOptions=a.ikePolicyIKEVersionOptions=a.pfsOptions=a.encryptionAlgorithmOptions=a.authAlgorithmOptions=a.vpnStatusOptions=a.vpnStatus=void 0;var l,o,s,d,u,c,f,p=n(r(54)),m=n(r(32)),h={ACTIVE:t("Active"),DOWN:t("Down"),BUILD:t("Build"),ERROR:t("Error"),PENDING_CREATE:t("Pending Create"),PENDING_UPDATE:t("Pending Update"),PENDING_DELETE:t("Pending Delete")};a.vpnStatus=h;var v=(0,p.default)(l=(0,m.default)(h)).call(l,(e=>({label:h[e],value:e,key:e})));a.vpnStatusOptions=v;var g=(0,p.default)(o=["sha1","sha256","sha384","sha512"]).call(o,(e=>({label:e,value:e,key:e})));a.authAlgorithmOptions=g;var _=(0,p.default)(s=["3des","aes-128","aes-192","aes-256"]).call(s,(e=>({label:e,value:e,key:e})));a.encryptionAlgorithmOptions=_;var b=(0,p.default)(d=["group2","group5","group14"]).call(d,(e=>({label:e,value:e,key:e})));a.pfsOptions=b;var y=(0,p.default)(u=["v1","v2"]).call(u,(e=>({label:e,value:e,key:e})));a.ikePolicyIKEVersionOptions=y;var I=(0,p.default)(c=["tunnel","transport"]).call(c,(e=>({label:e,value:e,key:e})));a.ipsecPolicyEncapsulationModeOptions=I;var A=(0,p.default)(f=["esp","ah","ah-esp"]).call(f,(e=>({label:e,value:e,key:e})));a.ipsecPolicyTransformProtocolOptions=A},1337:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.ContainersStore=void 0;var f,p,m=c(a(29)),h=c(a(164)),v=c(a(54)),g=c(a(63)),_=c(a(28)),b=c(a(86)),y=c(a(431)),I=c(a(345)),A=c(a(25)),S=c(a(49)),w=c(a(74)),x=c(a(35)),P=(c(a(75)),c(a(55))),C=c(a(53)),E=c(a(50)),D=a(36),k=a(1338),R=c(a(1306));function N(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function j(e){for(var t=1;t({limit:e,offset:t}))),(0,w.default)(this,"delete",p,this)}get client(){return E.default.barbican.containers}get payloadClient(){return E.default.barbican.secrets.payload}get fetchListByLimit(){return!0}get secretStore(){return new k.SecretsStore}get mapper(){return e=>{var{container_ref:t,algorithm:a}=e,[,r]=t.split("/containers/"),{domain:i,expiration:n}=a?JSON.parse(a):{};return j(j({},e),{},{id:r,domain:i,expiration:n})}}requestListAllByLimit(e,t){var a=this;return(0,S.default)((function*(){for(var r=!0,i=[];r;){var n=i.length||"",l=yield a.requestListByMarker(e,t,n),o=a.getListDataFromResult(l);i=[...i,...o],(t>=l.total||n>=l.total)&&(r=!1)}return i}))()}updateItem(e,t){var{container_ref:a}=e,r=(0,m.default)(t).call(t,(e=>{var t=[e.default_tls_container_ref,e.client_ca_tls_container_ref,...e.sni_container_refs];return(0,h.default)(t).call(t,a)}));return r.length&&(e.listener=(0,v.default)(r).call(r,(e=>({id:e.id,name:e.name,lb:e.lbIds[0]})))),e}listDidFetch(e){var t=this;return(0,S.default)((function*(){if(0===e.length)return e;var[a,r]=yield g.default.all([t.secretStore.fetchList({mode:"SERVER"}),R.default.fetchList()]),i=(0,v.default)(e).call(e,(e=>{var{secret_refs:i=[]}=e;return 0===i.length?e.hidden=!0:((0,_.default)(i).call(i,(t=>{var{secret_ref:r=""}=t,[,i]=r.split("/secrets/"),n=(0,b.default)(a).call(a,(e=>e.id===i));n?((0,y.default)(t,{secret_info:n}),(0,y.default)(e,{algorithm:n.algorithm,mode:n.mode})):e.hidden=!0})),t.updateItem(e,r)),j({},e)}));return(0,m.default)(i).call(i,(e=>!0!==e.hidden))}))()}detailDidFetch(e){var t=this;return(0,S.default)((function*(){var a,{secret_refs:r=[]}=e,[i,n]=yield g.default.all([t.secretStore.fetchList({mode:"SERVER"}),R.default.fetchList()]),l=[];(0,_.default)(r).call(r,function(){var t=(0,S.default)((function*(t){var{secret_ref:a=""}=t,[,r]=a.split("/secrets/"),n=(0,b.default)(i).call(i,(e=>e.id===r));n&&(l.push(n.id),(0,y.default)(t,{secret_info:n}),(0,y.default)(e,{algorithm:n.algorithm,mode:n.mode}))}));return function(e){return t.apply(this,arguments)}}()),t.updateItem(e,n);var o=yield g.default.all((0,v.default)(l).call(l,(e=>t.payloadClient.list(e,{},{headers:{Accept:"text/plain"}}))));return(0,_.default)(a=o||[]).call(a,((e,t)=>{r[t].secret_info.payload=e})),e}))()}create(e){var t=this;return(0,S.default)((function*(){var a={name:e.name,mode:e.mode,payload_content_type:"text/plain",secret_type:"certificate",algorithm:(0,I.default)({domain:e.domain,expiration:e.expiration})},r=j(j({},a),{},{payload:e.certificate}),i=[t.secretStore.create(r)];if("SERVER"===e.mode){var n=j(j({},a),{},{payload:e.private_key});i.push(t.secretStore.create(n))}var[l,o]=yield g.default.all(i),s=[{name:"certificate",secret_ref:l.secret_ref}];o&&s.push({name:"private_key",secret_ref:o.secret_ref});var d={type:"certificate",name:e.name,secret_refs:s};return t.client.create(d)}))()}},(0,P.default)(f.prototype,"create",[D.action],(0,A.default)(f.prototype,"create"),f.prototype),p=(0,P.default)(f.prototype,"delete",[D.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){var e=this;return function(){var t=(0,S.default)((function*(t){var{id:a,secret_refs:r=[]}=t;return yield g.default.all((0,v.default)(r).call(r,(t=>{var{secret_ref:a=""}=t,[,r]=a.split("/secrets/");return e.secretStore.delete({id:r})}))),e.submitting(e.client.delete(a))}));return function(e){return t.apply(this,arguments)}}()}}),f);t.ContainersStore=M;var T=new M;t.default=T},1338:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.SecretsStore=void 0;var f,p=c(a(29)),m=c(a(164)),h=c(a(54)),v=c(a(63)),g=c(a(345)),_=c(a(25)),b=c(a(58)),y=c(a(49)),I=c(a(35)),A=c(a(55)),S=c(a(53)),w=c(a(50)),x=a(36),P=c(a(1306));function C(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function E(e){for(var t=1;t({limit:e,offset:t})))}get client(){return w.default.barbican.secrets}get payloadClient(){return w.default.barbican.secrets.payload}get fetchListByLimit(){return!0}get paramsFunc(){return e=>E({},e)}get mapper(){return e=>{var{secret_ref:t,algorithm:a}=e,[,r]=t.split("/secrets/"),{domain:i,expiration:n}=a?JSON.parse(a):{};return E(E({},e),{},{id:r,domain:i,expiration:n})}}requestListAllByLimit(e,t){var a=this;return(0,y.default)((function*(){for(var r=!0,i=[];r;){var n=i.length||"",l=yield a.requestListByMarker(e,t,n),o=a.getListDataFromResult(l);i=[...i,...o],(t>=l.total||n>=l.total)&&(r=!1)}return i}))()}updateItem(e,t){var{secret_ref:a}=e,r=(0,p.default)(t).call(t,(e=>{var t=[e.default_tls_container_ref,e.client_ca_tls_container_ref,...e.sni_container_refs];return(0,m.default)(t).call(t,a)}));return r.length&&(e.listener=(0,h.default)(r).call(r,(e=>({id:e.id,name:e.name,lb:e.lbIds[0]})))),e}fetchDetail(e){var t=this;return(0,y.default)((function*(){var{id:a,silent:r}=e;r||(t.isLoading=!0);var[i,n,l]=yield v.default.all([t.client.show(a,{},{headers:{Accept:"application/json"}}),t.payloadClient.list(a,{},{headers:{Accept:"text/plain"}}),P.default.fetchList()]);i.payload=n,t.updateItem(i,l);var o=t.mapper(i||{});return t.detail=o,t.isLoading=!1,o}))()}listDidFetch(e){var t=this;return(0,y.default)((function*(){if(0===e.length)return e;var a=yield P.default.fetchList();return(0,h.default)(e).call(e,(e=>(t.updateItem(e,a),E({},e))))}))()}create(e){var t=this;return(0,y.default)((function*(){var{expiration:a,domain:r,algorithm:i}=e,n=E(E({},(0,b.default)(e,["expiration","domain","algorithm"])),{},{algorithm:i||(0,g.default)({domain:r,expiration:a})});return t.client.create(n)}))()}},(0,A.default)(f.prototype,"fetchDetail",[x.action],(0,_.default)(f.prototype,"fetchDetail"),f.prototype),(0,A.default)(f.prototype,"create",[x.action],(0,_.default)(f.prototype,"create"),f.prototype),f);t.SecretsStore=D;var k=new D;t.default=k},1339:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnIKEPolicyStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.ikePolicies}get listResponseKey(){return"ikepolicies"}get listFilterByProject(){return!0}}t.VpnIKEPolicyStore=o;var s=new o;t.default=s},1340:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnIPsecPolicyStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.ipsecPolicies}get listResponseKey(){return"ipsecpolicies"}get listFilterByProject(){return!0}}t.VpnIPsecPolicyStore=o;var s=new o;t.default=s},1341:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallStore=void 0;var f=c(a(28)),p=c(a(91)),m=c(a(86)),h=c(a(49)),v=c(a(35)),g=c(a(50)),_=a(1286),b=c(a(53)),y=c(a(460));function I(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function A(e){for(var t=1;tA(A({},e),{},{name:e.name||e.id,notDefault:!(0,_.isDefault)(e)})}listDidFetch(e){var t=this;return(0,h.default)((function*(){var a=[],r=[];if((0,f.default)(e).call(e,(e=>{var{egress_firewall_policy_id:t,ingress_firewall_policy_id:i}=e;(0,p.default)(a).call(a,t)<0&&a.push(t),(0,p.default)(r).call(r,i)<0&&r.push(i)})),0===a.length&&0===r.length)return e;var i=yield t.policyClient.list();return(0,f.default)(e).call(e,(e=>{var t,a,{egress_firewall_policy_id:r,ingress_firewall_policy_id:n}=e;e.egressPolicy=(0,m.default)(t=i.firewall_policies).call(t,(e=>e.id===r)),e.egressPolicyName=e.egressPolicy?e.egressPolicy.name:"-",e.ingressPolicy=(0,m.default)(a=i.firewall_policies).call(a,(e=>e.id===n)),e.ingressPolicyName=e.ingressPolicy?e.ingressPolicy.name:"-"})),e}))()}detailDidFetch(e){var t=this;return(0,h.default)((function*(){var{egress_firewall_policy_id:a,ingress_firewall_policy_id:r,project_id:i}=e;r&&(e.ingress=(yield t.fetchPolicy(r)).firewall_policy),a&&(e.egress=(yield t.fetchPolicy(a)).firewall_policy);var n=yield y.default.fetchProjectDetail({id:i});return e.project_name=n&&n.name||"-",e}))()}fetchPolicy(e){return this.policyClient.show(e)}}t.FirewallStore=S;var w=new S;t.default=w},1358:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnServicesStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.vpnservices}get listFilterByProject(){return!0}}t.VpnServicesStore=o;var s=new o;t.default=s},1359:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnEndPointGroupStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.endpointGroups}get listFilterByProject(){return!0}}t.VpnEndPointGroupStore=o;var s=new o;t.default=s},1360:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.DNSZonesStore=void 0;var n,l,o,s=i(a(25)),d=i(a(49)),u=i(a(74)),c=(i(a(35)),i(a(75)),i(a(55))),f=a(36),p=i(a(50)),m=i(a(1647)),h=(n=class extends m.default{constructor(){super(...arguments),(0,u.default)(this,"delete",l,this),(0,u.default)(this,"update",o,this)}get client(){return p.default.designate.zones}create(e){var t=this;return(0,d.default)((function*(){return t.submitting(t.client.create(e))}))()}},(0,c.default)(n.prototype,"create",[f.action],(0,s.default)(n.prototype,"create"),n.prototype),l=(0,c.default)(n.prototype,"delete",[f.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{id:t}=e;return this.submitting(this.client.delete(t))}}}),o=(0,c.default)(n.prototype,"update",[f.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.client.patch(a,t))}}}),n);t.DNSZonesStore=h;var v=new h;t.default=v},1361:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.DNSRecordSetsStore=void 0;var n,l,o,s,d=i(a(58)),u=i(a(74)),c=i(a(35)),f=i(a(55)),p=(i(a(75)),i(a(50))),m=a(36),h=i(a(1647)),v=(n=class extends h.default{constructor(){super(...arguments),(0,c.default)(this,"getFatherResourceId",(e=>e.zoneId||e.id)),(0,u.default)(this,"delete",l,this),(0,u.default)(this,"update",o,this),(0,u.default)(this,"create",s,this)}get client(){return p.default.designate.zones.recordsets}get isSubResource(){return!0}get paramsFuncPage(){return e=>{var{id:t,zoneId:a,all_projects:r,current:i}=e;return(0,d.default)(e,["id","zoneId","all_projects","current"])}}},l=(0,f.default)(n.prototype,"delete",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{zone_id:t,recordset_id:a}=e;return this.submitting(this.client.delete(t,a))}}}),o=(0,f.default)(n.prototype,"update",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t,a)=>this.submitting(this.client.update(e,t,a))}}),s=(0,f.default)(n.prototype,"create",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.client.create(a,t))}}}),n);t.DNSRecordSetsStore=v;var g=new v;t.default=g},1362:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.isMine=a.isDefault=a.tableOptions=a.tableFilter=a.tableColumns=void 0;var l=n(r(54)),o=n(r(0)),s=n(r(133)),d=r(1286),u=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Rules"),dataIndex:"rules",render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},e.name))):"-"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Audited"),dataIndex:"audited",valueRender:"yesNo"}];a.tableColumns=u;var c=[{label:t("Name"),name:"name"},(0,d.getDefaultFilter)(t("Hide Default Policies"))];a.tableFilter=c;var f={filterParams:c,columns:u};a.tableOptions=f;a.isDefault=e=>"default egress"===e.name||"default ingress"===e.name;a.isMine=e=>e.project_id===s.default.projectId},1363:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallRuleStore=void 0;var f,p=c(a(28)),m=c(a(29)),h=c(a(91)),v=c(a(54)),g=c(a(86)),_=c(a(25)),b=c(a(58)),y=c(a(49)),I=c(a(35)),A=c(a(55)),S=c(a(119)),w=a(36),x=c(a(50)),P=a(1307),C=c(a(53));function E(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function D(e){for(var t=1;tD(D({},e),{},{protocol:e.protocol||"any",notDefault:!(0,P.isDefault)(e)})}listDidFetch(e){var t=this;return(0,y.default)((function*(){var a=(yield t.policyClient.list()).firewall_policies;return(0,p.default)(e).call(e,(e=>{e.policies=(0,m.default)(a).call(a,(t=>{var a;return(0,h.default)(a=t.firewall_rules).call(a,e.id)>=0}))})),e}))()}detailDidFetch(e){var t=this;return(0,y.default)((function*(){var a=(yield t.policyClient.list()).firewall_policies;return e.policies=(0,m.default)(a).call(a,(t=>{var a;return(0,h.default)(a=t.firewall_rules).call(a,e.id)>=0})),e}))()}fetchListByPolicy(){var e=arguments,t=this;return(0,y.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{limit:r,page:i,sortKey:n,sortOrder:l,conditions:o}=a,s=(0,b.default)(a,["limit","page","sortKey","sortOrder","conditions"]);t.list.isLoading=!0;var{tab:d,all_projects:u,firewall_rules:c}=s,f=(0,b.default)(s,["tab","all_projects","firewall_rules"]);if(0!==c.length){var p=D({},f);u&&(t.listFilterByProject||(p.all_projects=!0));var m=yield t.client.list(p),h=(0,S.default)(m,t.listResponseKey,[]),_=(0,v.default)(c).call(c,(e=>(0,g.default)(h).call(h,(t=>t.id===e)))),y=(0,v.default)(_).call(_,t.mapper),I=yield t.listDidFetchProject(y,u);return I=yield t.listDidFetch(I,u),t.list.update(D({data:I,total:y.length||0,limit:Number(r)||10,page:Number(i)||1,sortKey:n,sortOrder:l,filters:s,isLoading:!1},t.list.silent?{}:{selectedRowKeys:[]})),I}t.list.isLoading=!1}))()}},(0,A.default)(f.prototype,"fetchListByPolicy",[w.action],(0,_.default)(f.prototype,"fetchListByPolicy"),f.prototype),f);t.FirewallRuleStore=k;var R=new k;t.default=R},1400:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.Algorithm=a.algorithmTip=a.algorithmDict=a.BackendProtocol=void 0;var l,o=n(r(54)),s=n(r(32)),d=[{label:t("TCP"),value:"TCP"},{label:t("PING"),value:"PING"}];a.BackendProtocol=d;var u={LEAST_CONNECTIONS:t("LEAST_CONNECTIONS"),ROUND_ROBIN:t("ROUND_ROBIN"),SOURCE_IP:t("SOURCE_IP")};a.algorithmDict=u;var c={LEAST_CONNECTIONS:t("A dynamic scheduling algorithm that estimates the server load based on the number of currently active connections. The system allocates new connection requests to the server with the least number of current connections. Commonly used for long connection services, such as database connections and other services."),ROUND_ROBIN:t("Each new connection request is assigned to the next server in order, and all requests are finally divided equally among all servers. Commonly used for short connection services, such as HTTP services."),SOURCE_IP:t("Perform a consistent hash operation on the source IP address of the request to obtain a specific value. At the same time, the back-end server is numbered, and the request is distributed to the server with the corresponding number according to the calculation result. This can enable load distribution of visits from different source IPs, and at the same time enable requests from the same client IP to always be dispatched to a specific server. This method is suitable for load balancing TCP protocol without cookie function.")};a.algorithmTip=c;var f=(0,o.default)(l=(0,s.default)(u)).call(l,(e=>({label:u[e],value:e})));a.Algorithm=f},1401:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.PoolStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.octavia.pools}get listFilterByProject(){return!0}}t.PoolStore=o;var s=new o;t.default=s},1402:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.PoolMemberStore=void 0;var n,l,o=i(a(25)),s=i(a(74)),d=(i(a(35)),i(a(75)),i(a(55))),u=a(36),c=i(a(50)),f=i(a(53)),p=(n=class extends f.default{constructor(){super(...arguments),(0,s.default)(this,"delete",l,this)}get client(){return this.poolClient.members}get poolClient(){return c.default.octavia.pools}get responseKey(){return"member"}get listFilterByProject(){return!0}listFetchByClient(e,t){var{pool_id:a}=t;return this.client.list(a)}create(e){var{default_pool_id:t,data:a}=e,r={};return r[this.listResponseKey]=a,this.submitting(this.client.create(t,r))}batchUpdate(e){var{default_pool_id:t,data:a}=e,r={};return r[this.listResponseKey]=a,this.submitting(this.poolClient.batchUpdateMembers(t,r))}update(e){var{default_pool_id:t,member_id:a,data:r}=e,i={};return i[this.responseKey]=r,this.submitting(this.client.update(t,a,i))}},(0,d.default)(n.prototype,"create",[u.action],(0,o.default)(n.prototype,"create"),n.prototype),(0,d.default)(n.prototype,"batchUpdate",[u.action],(0,o.default)(n.prototype,"batchUpdate"),n.prototype),(0,d.default)(n.prototype,"update",[u.action],(0,o.default)(n.prototype,"update"),n.prototype),l=(0,d.default)(n.prototype,"delete",[u.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{id:t,default_pool_id:a}=e;return this.submitting(this.client.delete(a,t))}}}),n);t.PoolMemberStore=p;var m=new p;t.default=m},1403:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.ReverseStore=void 0;var n,l,o,s=i(a(634)),d=i(a(74)),u=(i(a(35)),i(a(55))),c=(i(a(75)),a(36)),f=i(a(50)),p=i(a(53)),m=(n=class extends p.default{constructor(){super(...arguments),(0,d.default)(this,"set",l,this),(0,d.default)(this,"unset",o,this)}get client(){return(0,s.default)(f.default.designate).floatingips}get reverseClient(){return(0,s.default)(f.default.designate)}get isSubResource(){return!0}detailFetchByClient(e){var{id:t}=e;return this.reverseClient.reverseDetail(t)}get paramsFunc(){return()=>{}}},l=(0,u.default)(n.prototype,"set",[c.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.reverseClient.setReverse(a,t))}}}),o=(0,u.default)(n.prototype,"unset",[c.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.reverseClient.unsetReverse(a,t))}}}),n);t.ReverseStore=m;var h=new m;t.default=h},1404:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.ZONE_STATUS=a.validateZoneName=a.zoneNameMessage=a.zoneNameRegex=a.zoneTypeOptions=a.ZONE_TYPES=a.ZONE_TYPE_ENUM=void 0;var l=n(r(63)),o=n(r(430)),s=r(163),d={primary:"PRIMARY",secondary:"SECONDARY"};a.ZONE_TYPE_ENUM=d;var u={[d.primary]:t("Primary"),[d.secondary]:t("Secondary")};a.ZONE_TYPES=u;var c=(0,s.getOptions)(u);a.zoneTypeOptions=c;var f=/^.+\.$/;a.zoneNameRegex=f;var p=t('The zone name should end with "."');a.zoneNameMessage=p;a.validateZoneName=(e,a)=>a?f.test(a)?(0,o.default)(a).call(a).split(".").length<=1?l.default.reject(new Error(t('More than one label is required, such as: "example.org."'))):l.default.resolve():l.default.reject(p):l.default.resolve();var m={ACTIVE:t("Active"),PENDING:t("Pending"),ERROR:t("Error")};a.ZONE_STATUS=m},1405:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.RECORD_STATUS=a.getRecordSetFormItem=a.validateName=a.nameMessage=a.nameRegex=a.dnsRRTypeList=a.getRecordSetType=a.DNS_RECORD_TYPE=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(596)),d=n(r(32)),u=n(r(63)),c=n(r(164)),f=n(r(28)),p=n(r(134)),m=n(r(0)),h=r(565),v=r(1404),g={A:{name:t("Address Record"),nameExtra:"example.com.",recordsExtra:"192.168.1.1"},AAAA:{name:t("IPv6 Address Record"),nameExtra:"example.com.",recordsExtra:"2001:db8:3333:4444:5555:6666:7777:8888"},CAA:{name:t("Certificate Authority Authorization Record"),nameExtra:"example.com.",recordsExtra:t('0 iodef mailto:security@example.com
  • 0: is flag. An unsigned integer between 0-255.
  • iodef: An ASCII string that represents the identifier of the property represented by the record.
    Available Tags: "issue", "issuewild", "iodef"
  • mailto:security@example.com: The value associated with the tag.
')},CNAME:{name:t("Canonical Name Record"),nameExtra:"first.example.com.",recordsExtra:"other-example.com"},MX:{name:t("Mail Exchange Record"),nameExtra:"example.com.",recordsExtra:t("10 mail.example.com
  • 10: Priority
  • mail.example.com: Value
")},NS:{name:t("Name Server"),nameExtra:"example.com.",recordsExtra:"ns1.example.com"},PTR:{name:t("Pointer Record"),nameExtra:"example.com.",recordsExtra:"1.1.0.192.in-addr.arpa."},SOA:{name:t("Start Of Authority"),nameExtra:"example.com.",recordsExtra:t("ns1.example.com admin.example.com 2013022001 86400 7200 604800 300
  • The primary name server for the domain, which is ns1.example.com or the first name server in the vanity name server list.
  • The responsible party for the domain: admin.example.com.
  • A timestamp that changes whenever you update your domain.
  • The number of seconds before the zone should be refreshed.
  • The number of seconds before a failed refresh should be retried.
  • The upper limit in seconds before a zone is considered no longer authoritative.
  • The negative result TTL (for example, how long a resolver should consider a negative result for a subdomain to be valid before retrying).
")},SPF:{name:t("Sender Policy Framework"),nameExtra:"example.com.",recordsExtra:t('"v=spf1 ipv4=192.1.1.1 include:examplesender.email +all"
  • v=spf1: Tells the server that this contains an SPF record. Every SPF record must begin with this string.
  • Guest List: Then comes the “guest list” portion of the SPF record or the list of authorized IP addresses. In this example, the SPF record is telling the server that ipv4=192.1.1.1 is authorized to send emails on behalf of the domain.
  • include:examplesender.net: is an example of the include tag, which tells the server what third-party organizations are authorized to send emails on behalf of the domain. This tag signals that the content of the SPF record for the included domain (examplesender.net) should be checked and the IP addresses it contains should also be considered authorized. Multiple domains can be included within an SPF record but this tag will only work for valid domains.
  • -all: Tells, the server that addresses not listed in the SPF record are not authorized to send emails and should be rejected.
')},SRV:{name:t("Service Locator"),nameExtra:"_sip._tcp.example.com.
  • _sip: represents the name of the service.
  • _tcp: represents the protocol of the service, this is usually either TCP or UDP.
  • example.com: represents the domain in which this record is for.
",recordsExtra:t('10 0 5060 server1.example.com.
  • "10" is the priority of the record. The lower the value, the higher the priority.
  • 0 is the weight of the record. This is the weight of which this record has a chance to be used when there are multiple matching SRV records of the same priority.
  • 5060 is the port of the record. This specifies the port on which the application or service is running.
  • server1.example.com is the target of the record. This specifies the domain of the application or service the record is for. SRV records must specify a target which is either an A record or AAAA record, and may not use CNAME records.
')},SSHFP:{name:t("SSH Public Key Fingerprint"),nameExtra:"example.com.",recordsExtra:t("4 2 123456789abcdef67890123456789abcdef67890123456789abcdef123456789
  • 4 is Algorithm: Algorithm (0: reserved; 1: RSA; 2: DSA, 3: ECDSA; 4: Ed25519; 6:Ed448)
  • 2 is Type: Algorithm used to hash the public key (0: reserved; 1: SHA-1; 2: SHA-256)
  • Last parameter is Fingerprint: Hexadecimal representation of the hash result, as text
")},TXT:{name:t("Text Record"),nameExtra:"example.com."}};a.DNS_RECORD_TYPE=g;a.getRecordSetType=e=>{var t;return g[e]?(0,l.default)(t="".concat(e," - ")).call(t,g[e].name):e};var _=()=>{var e,t;return(0,o.default)(e=(0,s.default)(t=(0,d.default)(g)).call(t)).call(e,(e=>{var t;return{label:(0,l.default)(t="".concat(e," - ")).call(t,g[e].name),value:e,key:e}}))};a.dnsRRTypeList=_;var b=/^.+\.$/;a.nameRegex=b;var y=t('The name should be end with "."');a.nameMessage=y;var I=(e,t)=>t?b.test(t)?u.default.resolve():u.default.reject(y):u.default.resolve();a.validateName=I;a.getRecordSetFormItem=(e,a)=>[{name:"type",label:t("Type"),type:"select",options:_(),onChange:a=>{var r,i,n;(0,c.default)(r=(0,d.default)(g)).call(r,a)&&e.setState({nameExtra:(0,l.default)(i="".concat(t("Exp: "))).call(i,g[a].nameExtra),recordsExtra:(0,p.default)(g[a].recordsExtra)?(0,l.default)(n="".concat(t("Exp: "))).call(n,g[a].recordsExtra):""})},required:!0},{name:"name",label:t("Name"),type:"input",required:!0,tip:()=>m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.nameExtra}}),extra:m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.nameExtra}}),validator:I},{name:"description",label:t("Description"),type:"textarea"},{name:"ttl",label:t("TTL"),type:"input-number",required:!0},{name:"records",label:t("Records"),type:"add-select",isInput:!0,required:!0,placeholder:t("Please input at least one record"),width:280,tip:()=>m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.recordsExtra}}),extra:m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.recordsExtra}}),validator:(e,r)=>{var{type:i}=a,{isIPv4:n,isIpv6:l}=h.ipValidate;return new u.default((e=>{r&&(0,f.default)(r).call(r,(e=>{if("A"===i&&!n(e.value))throw new Error(t("Please enter a valid IPv4 value."));if("AAAA"===i&&!l(e.value))throw new Error(t("Please enter a valid IPv6 value."))})),e()}))}}];var A=v.ZONE_STATUS;a.RECORD_STATUS=A},1406:function(e,a,r){"use strict";r(20)(a,"__esModule",{value:!0}),a.anyProject=a.objectTypes=void 0;var i={network:t("Network"),qos_policy:t("QoS Policy")};a.objectTypes=i;a.anyProject={id:"*",name:"*"}},1471:function(e,t,a){var r=a(3868);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(65)(r,i);r.locals&&(e.exports=r.locals)},1472:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3974)),l=i(a(3976)),o=i(a(3977)),s={actionConfigsContainer:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsSecret:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[n.default]}};t.default=s},1473:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.tableOptions=a.tableFilter=a.tableColumns=a.routerInterfaceOwners=a.instanceInterfaceOwners=void 0;var l=n(r(164)),o=r(163),s=r(1258);a.instanceInterfaceOwners=["compute:nova"];a.routerInterfaceOwners=["network:router_interface","network:ha_router_replicated_interface","network:router_interface_distributed"];var d=[{title:t("Port"),dataIndex:"id",width:150},{title:t("Network"),dataIndex:"network_name"},{title:t("Subnet"),dataIndex:"subnet_name"},{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Owner"),dataIndex:"owner"},{title:t("Device"),dataIndex:"device_name"},{title:t("Status"),dataIndex:"status",valueMap:s.portStatus}];a.tableColumns=d;var u=[{label:t("Network"),name:"network",filterFunc:(e,t)=>{var a;return(0,l.default)(a=(e||{}).name).call(a,t)}},{label:t("Device"),name:"router",filterFunc:(e,t)=>{var a;return(0,l.default)(a=(e||{}).name).call(a,t)}},{label:t("Status"),name:"status",options:(0,o.getOptions)(s.portStatus)}];a.tableFilter=u;var c={filterParams:u,columns:d};a.tableOptions=c},1474:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var m=p(r(63)),h=p(r(430)),v=p(r(1277)),g=p(r(54)),_=p(r(32)),b=p(r(164)),y=p(r(49)),I=p(r(58)),A=p(r(35)),S=p(r(601)),w=r(412),x=r(1241),P=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=N(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}r.default=e,a&&a.set(e,r);return r}(r(1363)),C=r(1307),E=r(565),D=r(36),k=r(1251),R=r(571);function N(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(N=function(e){return e?a:t})(e)}function j(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function M(e){for(var t=1;t(a,r)=>{var i="source"===e?t("Source IP"):t("Destination IP");if(!r)return m.default.resolve();var n=(0,h.default)(r).call(r);if((0,S.default)(r)||0===n.length)return m.default.resolve();var{ip_version:l=4}=this.state,o=4===l;return!o||F(n)||O(n)?o||L(n)||Q(n)?m.default.resolve():m.default.reject(t("{ name } Format Error (e.g. FE80:0:0:0:0:0:0:1 or FE80:0:0:0:0:0:0:1/10)",{name:i})):m.default.reject(t("{ name } Format Error (e.g. 192.168.1.1 or 192.168.1.1/24)",{name:i}))})),(0,A.default)(this,"checkSourceIp",(()=>this.checkIp("source"))),(0,A.default)(this,"checkDestinationIp",(()=>this.checkIp("destination"))),(0,A.default)(this,"canChangeShared",(()=>{if(!(0,k.checkPolicyRule)("update_firewall_rule:shared"))return!1;if(this.id){var e,t=(0,D.toJS)(this.store.detail);return(0,v.default)(e=t.policies||[]).call(e,(e=>!e.shared))}return!0})),(0,A.default)(this,"onSubmit",(e=>{var{options:{enabled:t,shared:a},protocol:r,destination_ip_address:i,source_ip_address:n,source_port:l,destination_port:o}=e,s=M(M({},(0,I.default)(e,["options","protocol","destination_ip_address","source_ip_address","source_port","destination_port"])),{},{enabled:t,protocol:"any"===r?null:r,destination_ip_address:i||null,source_ip_address:n||null,source_port:l||null,destination_port:o||null});return this.canChangeShared()&&(s.shared=a),this.id?P.default.edit({id:this.id},s):P.default.create(s)}))}init(){this.store=new P.FirewallRuleStore,this.getDetail(),(0,R.fetchNeutronQuota)(this)}get listUrl(){return this.getRoutePath("firewall",null,{tab:"rules"})}get isEdit(){return this.params&&!!this.params.id}get name(){return this.isEdit?t("Edit rule"):t("Create rule")}get id(){return this.params.id}static allowed(){return m.default.resolve(!0)}get disableSubmit(){return!this.isEdit&&(0,R.checkQuotaDisable)(T,B)}get showQuota(){return!this.isEdit}get quotaInfo(){return(0,R.getQuotaInfo)(this,T,B)}get defaultValue(){if(this.id){var e=(0,D.toJS)(this.store.detail);return M(M({},e),{},{options:{enabled:e.enabled,shared:e.shared}})}return{protocol:"tcp",action:"allow",ip_version:4,options:{enabled:!0,shared:!1}}}get protocolList(){var e;return(0,g.default)(e=(0,_.default)(C.protocolInfos)).call(e,(e=>({value:e,label:C.protocolInfos[e]})))}get actionList(){var e;return(0,g.default)(e=(0,_.default)(C.actionInfos)).call(e,(e=>({value:e,label:C.actionInfos[e]})))}get ipVersionList(){return[{value:4,label:t("IPv4")},{value:6,label:t("IPv6")}]}getDetail(){var e=this;return(0,y.default)((function*(){e.params.id&&(yield e.store.fetchDetail(e.params),e.updateDefaultValue(),e.updateState())}))()}get formItems(){var e,a,{protocol:r}=this.state;return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"protocol",label:t("Protocol"),type:"radio",options:this.protocolList,required:!0},{name:"action",label:t("Rule Action"),type:"select",options:this.actionList,required:!0},{name:"ip_version",label:t("IP Version"),type:"radio",options:this.ipVersionList},{name:"source_ip_address",label:t("Source IP Address/Subnet"),type:"input",validator:this.checkSourceIp()},{name:"source_port",label:t("Source Port/Port Range"),type:"port-range",hidden:(0,b.default)(e=["any","icmp"]).call(e,r)},{name:"destination_ip_address",label:t("Destination IP Address/Subnet"),type:"input",validator:this.checkDestinationIp()},{name:"destination_port",label:t("Destination Port/Port Range"),type:"input",help:t("Input destination port or port range (example: 80 or 80:160)"),hidden:(0,b.default)(a=["any","icmp"]).call(a,r)},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Enabled"),value:"enabled"},{label:t("Shared"),value:"shared",disabled:!this.canChangeShared()}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateForm=q,(0,A.default)(q,"id","rule-create"),(0,A.default)(q,"title",t("Create Rule")),(0,A.default)(q,"path","/network/firewall-rule/create"),(0,A.default)(q,"policy","create_firewall_rule");var V=(0,w.inject)("rootStore")((0,w.observer)(q));a.default=V},1626:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Networks=void 0;var p=f(r(573)),m=f(r(29)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(571),b=r(233),y=r(342),I=f(r(1627));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;tthis.isAdminPage||this.isAllTab?S(S({},e),{},{all_projects:!0}):this.isProjectTab?S(S({},e),{},{project_id:this.currentProjectId}):this.isSharedTab?S(S({},e),{},{shared:!0}):this.isExternalTab?S(S({},e),{},{"router:external":!0}):S({},e)))}init(){this.store=new b.NetworkStore,this.downloadStore=new b.NetworkStore}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"status"}get policy(){return"get_network"}get name(){return t("networks")}get actionConfigs(){return I.default}get hasTab(){return!this.isAdminPage}get adminPageHasProjectFilter(){return!0}get tab(){if(this.isAdminPage)return null;var{tab:e="projectNetwork"}=this.props;return e}get isProjectTab(){return"projectNetwork"===this.tab}get isSharedTab(){return"sharedNetwork"===this.tab}get isExternalTab(){return"externalNetwork"===this.tab}get isAllTab(){return"allNetwork"===this.tab}getColumns(){var e=(0,_.networkColumns)(this);return this.isAdminPage||this.isAllTab?((0,p.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,sortKey:"project_id"}),e):this.isProjectTab?(0,m.default)(e).call(e,(e=>"tenant_id"!==e.dataIndex)):this.isSharedTab?(0,m.default)(e).call(e,(e=>"shared"!==e.dataIndex)):this.isExternalTab?(0,m.default)(e).call(e,(e=>"router:external"!==e.dataIndex)):e}get searchFilters(){var e={label:t("Name"),name:"name"},a={label:t("Shared"),name:"shared",options:y.yesNoOptions},r={label:t("External"),name:"router:external",options:y.yesNoOptions},i={label:t("Project Range"),name:"project_id",options:[{label:t("Current Project"),key:this.currentProjectId},{label:t("All"),key:"all"}]};return this.isSharedTab?[e,r,i]:this.isExternalTab?[e,a,i]:[e,a,r]}}a.Networks=w;var x=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=x},1627:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1628)),l=i(a(1630)),o=i(a(3840)),s={rowActions:{firstAction:i(a(3841)).default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=s},1628:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateNetwork=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(91)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=f(r(352)),I=f(r(177)),A=r(412),S=r(1241),w=r(565),x=f(r(233)),P=f(r(340)),C=f(r(1270)),E=r(1251),D=f(r(1629)),k=r(571),R=r(1265),N=r(163),j=r(36),M=f(r(621));function T(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function B(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2],{left:r=0}=e||{},{left:i=0}=t||{};return a?0!==r&&0!==i?1:0:0!==r?1:0};class Y extends S.ModalAction{constructor(){super(...arguments),(0,b.default)(this,"onSubmit",(e=>{var{name:t,project_id:a,provider_network_type:r,provider_physical_network:i,provider_segmentation_id:n,shared:l,external_network:o,availableZone:s,allocation_pools:d,host_routes:u,description:c,mtu:f,port_security_enabled:p}=e,m=(0,_.default)(e,["name","project_id","provider_network_type","provider_physical_network","provider_segmentation_id","shared","external_network","availableZone","allocation_pools","host_routes","description","mtu","port_security_enabled"]),h=K(d),v=G(u),g={name:t,description:c,port_security_enabled:p};s&&(g.availability_zone_hints=[s]),f&&(g.mtu=f);var b={"router:external":o,project_id:a?a.selectedRowKeys[0]:this.currentProjectId,"provider:network_type":r,"provider:physical_network":i,"provider:segmentation_id":n},y={shared:l},I=B({},g);return this.isAdminPage&&(I=B(B({},I),b)),this.isSystemAdmin&&(I=B(B({},I),y)),x.default.createAndMore(I,B(B({},m),{},{allocation_pools:h,host_routes:v}))})),(0,b.default)(this,"onOk",((e,a,r)=>(this.values=e,this.onSubmit(e,a).then((()=>{!this.isModal&&this.routing.push(this.listUrl),C.default.success(this.successText),r&&(0,y.default)(r)&&r(!0,!1)}),(a=>{var{type:i,error:n}=JSON.parse(a);"create_network"===i?C.default.errorWithDetail(n,this.errorText):"create_subnet"===i&&C.default.errorWithDetail(n,t("Unable to {action}, instance: {name}.",{action:t("Create Subnet"),name:e.subnet_name})),r&&(0,y.default)(r)&&r(!1,!0)}))))),(0,b.default)(this,"checkCidr",(e=>{var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!z(e))&&!("ipv6"===t&&!J(e))})),(0,b.default)(this,"checkGateway",(e=>!!(0,I.default)(e)||!!W(e))),(0,b.default)(this,"validateAllocationPools",((e,t)=>Q.call(this,e,t))),(0,b.default)(this,"onProjectChange",(e=>{var{selectedRowKeys:t}=e;this.setState({projectId:t[0]},(()=>{this.getQuota()}))})),(0,b.default)(this,"onCreateSubnetChange",(e=>{this.setState({create_subnet:e}),x.default.updateCreateWithSubnet(e)}))}get name(){return t("create network")}static get modalSize(){var{pathname:e}=window.location;return(0,N.isAdminPage)(e)?"large":"small"}getModalSize(){return this.isAdminPage?"large":"small"}init(){x.default.updateCreateWithSubnet(!1),this.state.networkQuota={},this.state.subnetQuota={},this.state.quotaLoading=!0,this.state.create_subnet=!1,this.state.projectId=this.currentProjectId,this.projectStore=P.default,D.default.fetchAvailableZones(),this.isAdminPage&&this.fetchProjectList(),this.getQuota()}get isSystemAdmin(){return(0,E.checkSystemAdmin)()}static get disableSubmit(){var{neutronQuota:{network:e={},subnet:t={}}}=P.default,{createWithSubnet:a=!1}=x.default;return 0===X(e,t,a)}static get showQuota(){return!0}fetchProjectList(){var e=this;return(0,g.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,j.toJS)(this.projectStore.list.data)||[]}get showQuota(){return!0}getQuota(){var e=this;return(0,g.default)((function*(){var{projectId:t}=e.state;e.setState({quotaLoading:!0});var a=yield e.projectStore.fetchProjectNeutronQuota(t),{network:r={},subnet:i={}}=a||{};e.setState({networkQuota:r,subnetQuota:i,quotaLoading:!1})}))()}get quotaInfo(){var{networkQuota:e={},subnetQuota:a={},quotaLoading:r,create_subnet:i}=this.state;if(r)return[];var n=X(e,a,i);return[B(B({},e),{},{add:n,name:"network",title:t("Network")}),B(B({},a),{},{add:i?n:0,name:"subnet",title:t("Subnet"),type:"line"})]}get defaultValue(){var e={enable_dhcp:!0,provider_network_type:"vxlan",ip_version:"ipv4",disable_gateway:!1,more:!1,port_security_enabled:!0,ipv6_ra_mode:"slaac",ipv6_address_mode:"slaac"};return this.isAdminPage&&(e.project_id={selectedRowKeys:[this.currentProjectId]}),e}get availableZones(){var e,t;return(0,p.default)(e=(0,m.default)(t=D.default.availableZones||[]).call(t,(e=>"available"===e.state&&"network"===e.resource))).call(e,(e=>({value:e.name,label:e.name})))}get SegIDTips(){var{provider_network_type:e="vxlan"}=this.state;switch(e){case"vxlan":return t("For VXLAN networks, valid segmentation IDs are 1 to 16777215");case"vlan":return t("For VLAN networks, valid segmentation IDs are 1 to 4094");case"gre":return t("For GRE networks, valid segmentation IDs are 1 to 4294967295");default:return t("For VXLAN networks, valid segmentation IDs are 1 to 16777215")}}get SegMax(){var{provider_network_type:e="vxlan"}=this.state;switch(e){case"vxlan":return 16777215;case"vlan":return 4094;case"gre":return 4294967295;default:return 16777215}}get formItems(){var{more:e,create_subnet:a=!1,provider_network_type:r="vxlan",ip_version:i="ipv4",disable_gateway:n=!1}=this.state,l=this.isAdminPage&&(0,h.default)(F).call(F,r)>-1,o=this.isAdminPage&&(0,h.default)(F).call(F,r)>-1,s=this.isAdminPage&&(0,h.default)(L).call(L,r)>-1,d=this.isAdminPage&&(0,h.default)(O).call(O,r)>-1,u="ipv4"===i;return[{name:"name",label:t("Network Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),options:this.availableZones},{name:"mtu",label:t("MTU"),type:"input-number",min:68,max:9e3,extra:t("Minimum value is 68 for IPv4, and 1280 for IPv6.")},{name:"create_subnet",label:t("Create Subnet"),type:"check",onChange:this.onCreateSubnetChange},{name:"shared",label:t("Shared"),type:"check",hidden:!this.isSystemAdmin},{name:"port_security_enabled",label:t("Port Security Enabled"),type:"switch",required:!0},{name:"external_network",label:t("External Network"),type:"check",hidden:!this.isAdminPage},B({name:"project_id",label:t("Project"),type:"select-table",hidden:!this.isAdminPage,required:this.isAdminPage,isLoading:this.projectStore.list.isLoading,data:this.projects,onChange:this.onProjectChange},R.projectTableOptions),{name:"provider_network_type",label:t("Provider Network Type"),type:"select",hidden:!this.isAdminPage,required:this.isAdminPage,options:[{label:"vxlan",value:"vxlan"},{label:"flat",value:"flat"},{label:"vlan",value:"vlan"},{label:"gre",value:"gre"}],onChange:e=>{this.setState({provider_network_type:e})}},{name:"provider_physical_network",label:t("Provider Physical Network"),type:"input",hidden:!l,required:o},{name:"provider_segmentation_id",label:t("Segmentation ID"),type:"input-int",hidden:!s,required:d,min:1,max:this.SegMax,extra:this.SegIDTips},{name:"subnet_name",label:t("Subnet Name"),hidden:!a,type:"input",required:a,validator:Z},{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e})},required:!0,hidden:!a},{name:"ipv6_ra_mode",label:t("Router Advertisements Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:k.subnetIpv6Tip,hidden:"ipv6"!==i,dependencies:["ipv6_address_mode"],validator:(e,a)=>{var r=this.formRef.current&&this.formRef.current.getFieldValue("ipv6_address_mode")||void 0;return!a&&r?v.default.resolve():r&&r!==a?v.default.reject(new Error(t("Invalid combination"))):v.default.resolve()}},{name:"ipv6_address_mode",label:t("IP Distribution Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:k.subnetIpv6Tip,hidden:"ipv6"!==i},{name:"cidr",label:t("CIDR"),type:"input",placeholder:u?"192.168.0.0/24":"1001:1001::/64",required:a,validator:(e,r)=>a||r?(0,I.default)(r)||this.checkCidr(r)?v.default.resolve():v.default.reject(new Error(t("Invalid: ")+t("CIDR"))):v.default.resolve(),hidden:!a,tip:u?t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16"):t("e.g. 2001:Db8::/48")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e})},hidden:!(a&&e)},{name:"gateway_ip",label:t("Gateway IP"),type:"ipv6"===i?"input":"ip-input",onChange:e=>{this.setState({gateway_ip:e.target.value})},tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(a&&e&&!n),validator:"ipv6"===i?(e,a)=>this.checkGateway(a)?v.default.resolve():v.default.reject(new Error(t("Invalid: Please input a valid ipv6."))):null},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!(a&&e)},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. {ip})",{ip:u?"192.168.1.2,192.168.1.200":"1001:1001::,1001:1002::"}),hidden:!(a&&e),validator:this.validateAllocationPools,dependencies:["gateway_ip"]},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. {ip})",{ip:u?"114.114.114.114":"1001:1001::/64"}),hidden:!(a&&e),validator:u?q:V},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. {ip})",{ip:u?"192.168.200.0/24,10.56.1.254":"1001:1001::/64,1001:1001"}),hidden:!(a&&e),validator:u?H:U},{name:"more",label:t("Advanced Options"),type:"more",hidden:!a}]}}a.CreateNetwork=Y,(0,b.default)(Y,"id","create-network"),(0,b.default)(Y,"title",t("Create Network")),(0,b.default)(Y,"policy",["create_network","create_subnet"]),(0,b.default)(Y,"allowed",(()=>v.default.resolve(!0)));var $=(0,A.inject)("rootStore")((0,A.observer)(Y));a.default=$},1629:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.NeutronStore=void 0;var n,l,o,s=i(a(25)),d=i(a(49)),u=i(a(74)),c=(i(a(35)),i(a(55))),f=(i(a(75)),a(36)),p=i(a(50)),m=i(a(53)),h=(n=class extends m.default{constructor(){super(...arguments),(0,u.default)(this,"availableZones",l,this),(0,u.default)(this,"zoneLoading",o,this)}get zoneClient(){return p.default.neutron.azones}fetchAvailableZones(){var e=this;return(0,d.default)((function*(){e.zoneLoading=!0;var t=yield e.zoneClient.list(),{availability_zones:a=[]}=t;e.availableZones=a,e.zoneLoading=!1}))()}},l=(0,c.default)(n.prototype,"availableZones",[f.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),o=(0,c.default)(n.prototype,"zoneLoading",[f.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,c.default)(n.prototype,"fetchAvailableZones",[f.action],(0,s.default)(n.prototype,"fetchAvailableZones"),n.prototype),n);t.NeutronStore=h;var v=new h;t.default=v},1630:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSubnet=void 0;var p=f(r(1252)),m=f(r(63)),h=f(r(49)),v=f(r(58)),g=f(r(35)),_=f(r(177)),b=r(412),y=r(1241),I=r(565),A=f(r(233)),S=f(r(340)),w=f(r(133)),x=r(571),P=r(1265),C=r(36),E=f(r(621));function D(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function k(e){for(var t=1;t{var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!L(e))&&!("ipv6"===t&&!O(e))})),(0,g.default)(this,"checkGateway",(e=>!!(0,_.default)(e)||!!Q(e))),(0,g.default)(this,"onSubmit",(e=>{var{allocation_pools:t,host_routes:a,project_id:r}=e,i=(0,v.default)(e,["allocation_pools","host_routes","project_id"]),n=B(t),l=F(a);return A.default.createSubnet(k(k({},i),{},{project_id:r?r.selectedRowKeys[0]:this.currentProjectId,network_id:this.network.id,allocation_pools:n,host_routes:l}))})),(0,g.default)(this,"validateAllocationPools",((e,t)=>R.call(this,e,t))),(0,g.default)(this,"onProjectChange",(e=>{var{selectedRowKeys:t}=e;this.setState({projectId:t[0]},(()=>{this.getQuota()}))}))}get name(){return t("Create Subnet")}static get modalSize(){return w.default.hasAdminRole?"large":"small"}getModalSize(){return this.isSystemAdmin?"large":"small"}get network(){return this.props.containerProps.detail||this.item||{}}get instanceName(){return this.item.name||(0,p.default)(this).subnet_name}get defaultValue(){var e={enable_dhcp:!0,ip_version:"ipv4",disable_gateway:!1,more:!1,ipv6_ra_mode:"slaac",ipv6_address_mode:"slaac"};return this.isSystemAdmin&&(e.project_id={selectedRowKeys:[this.currentProjectId]}),e}init(){this.state.projectId=this.currentProjectId,this.state.quota={},this.state.quotaLoading=!0,this.projectStore=S.default,this.isSystemAdmin&&this.getProjects(),this.getQuota()}getProjects(){var e=this;return(0,h.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,C.toJS)(this.projectStore.list.data)||[]}static get disableSubmit(){var{neutronQuota:{subnet:{left:e=0}={}}}=S.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,h.default)((function*(){var{projectId:t}=e.state;e.setState({quotaLoading:!0});var a=yield e.projectStore.fetchProjectNeutronQuota(t),{subnet:r={}}=a||{};e.setState({quota:r,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e,i=0===r?0:1;return[k(k({},e),{},{add:i,name:"subnet",title:t("Subnet")})]}get isSystemAdmin(){return this.props.rootStore.hasAdminRole}get networkProjectId(){var{project_id:e}=this.item;if(e)return e;var{detail:t={}}=this.containerProps;return t.project_id}get formItems(){var{more:e,ip_version:a="ipv4",disable_gateway:r=!1,projectId:i}=this.state,n="ipv4"===a;return[{name:"subnet_name",label:t("Subnet Name"),type:"input-name",required:!0,withoutChinese:!0},k({name:"project_id",label:t("Project"),type:"select-table",required:!0,hidden:!this.isSystemAdmin,extra:i!==this.networkProjectId&&t("The selected project is different from the project to which the network belongs. That is, the subnet to be created is not under the same project as the network. Please do not continue unless you are quite sure what you are doing."),isLoading:this.projectStore.list.isLoading,data:this.projects,onChange:this.onProjectChange},P.projectTableOptions),{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e})},required:!0},{name:"ipv6_ra_mode",label:t("Router Advertisements Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:x.subnetIpv6Tip,hidden:"ipv6"!==a,dependencies:["ipv6_address_mode"],validator:(e,a)=>{var r=this.formRef.current&&this.formRef.current.getFieldValue("ipv6_address_mode")||void 0;return!a&&r?m.default.resolve():r&&r!==a?m.default.reject(new Error(t("Invalid combination"))):m.default.resolve()}},{name:"ipv6_address_mode",label:t("IP Distribution Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:x.subnetIpv6Tip,hidden:"ipv6"!==a},{name:"cidr",label:t("CIDR"),type:"input",placeholder:n?"192.168.0.0/24":"1001:1001::/64",required:!0,validator:(e,a)=>(0,_.default)(a)||this.checkCidr(a)?m.default.resolve():m.default.reject(new Error(t("Invalid: ")+t("CIDR"))),tip:n?t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16"):t("e.g. 2001:Db8::/48")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e})},hidden:!e},{name:"gateway_ip",label:t("Gateway IP"),type:"ipv6"===a?"input":"ip-input",onChange:e=>{this.setState({gateway_ip:e.target.value})},tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(e&&!r),validator:"ipv6"===a?(e,a)=>this.checkGateway(a)?m.default.resolve():m.default.reject(new Error(t("Invalid: Please input a valid ipv6."))):null},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!e},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. {ip})",{ip:n?"192.168.1.2,192.168.1.200":"1001:1001::,1001:1002::"}),hidden:!e,validator:this.validateAllocationPools},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. {ip})",{ip:n?"114.114.114.114":"1001:1001::"}),hidden:!e,validator:n?N:j},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. {ip})",{ip:n?"192.168.200.0/24,10.56.1.254":"1001:1001::/64,1001:1001"}),hidden:!e,validator:n?M:T},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.CreateSubnet=q,(0,g.default)(q,"id","create-subnet"),(0,g.default)(q,"title",t("Create Subnet")),(0,g.default)(q,"policy","create_subnet"),(0,g.default)(q,"allowed",((e,t)=>{var{project_id:a}=e||{},{detail:{project_id:r}={}}=t||{},i=a||r,n=w.default,{hasAdminRole:l=!1,user:{project:{id:o}={}}={}}=n;return l||i===o?m.default.resolve(!0):m.default.resolve(!1)}));var V=(0,b.inject)("rootStore")((0,b.observer)(q));a.default=V},1631:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1630)),l=i(a(3844)),o={rowActions:{firstAction:i(a(3845)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},1632:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1633)),l=i(a(3850)),o=i(a(3851)),s=i(a(3852)),d=i(a(3853)),u=i(a(3854)),c=i(a(3855)),f=i(a(3856)),p=i(a(3857)),m={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:u.default},{action:c.default},{action:l.default},{action:s.default},{action:d.default},{action:f.default},{action:p.default}]},primaryActions:[n.default],batchActions:[l.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default]}};t.default=m},1633:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(63)),v=f(r(49)),g=f(r(58)),_=f(r(35)),b=f(r(570)),y=r(412),I=r(575),A=r(233),S=f(r(1629)),w=f(r(340)),x=r(1241),P=r(571),C=r(1393);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{(0,b.default)(e,"openExternalNetwork")&&this.setState({openExternalNetwork:e.openExternalNetwork})})),(0,_.default)(this,"onSubmit",(e=>{var{openExternalNetwork:t,externalNetwork:a,hints:r={}}=e,i=(0,g.default)(e,["openExternalNetwork","externalNetwork","hints"]),n=t?{external_gateway_info:{network_id:a.selectedRows[0].id}}:null,l=r.selectedRowKeys||[];return this.store.create(D(D(D({},i),n),{},{availability_zone_hints:l}))}))}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=new I.RouterStore,this.networkStore=new A.NetworkStore,this.projectStore=w.default,this.fetchAzones(),this.getQuota()}get name(){return t("create router")}static get modalSize(){return"large"}getModalSize(){return"large"}fetchAzones(){S.default.fetchAvailableZones()}get aZones(){var e,t;return(0,p.default)(e=(0,m.default)(t=S.default.availableZones||[]).call(t,(e=>"available"===e.state&&"router"===e.resource))).call(e,(e=>D(D({},e),{},{id:e.name})))}static get disableSubmit(){var{neutronQuota:{router:{left:e=0}={}}={}}=w.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,v.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{router:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e,i=0===r?0:1;return[D(D({},e),{},{add:i,name:"router",title:t("Router")})]}get defaultValue(){return{openExternalNetwork:!1}}get formItems(){var{openExternalNetwork:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"hints",label:t("Availability Zone Hints"),type:"select-table",data:this.aZones,isLoading:S.default.zoneLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("State"),dataIndex:"state",valueMap:C.availabilityZoneState},{title:t("Resource Type"),dataIndex:"resource",valueMap:C.availabilityZoneResource}]},{name:"openExternalNetwork",label:t("Options"),type:"check",content:t("Open External Gateway")},{name:"externalNetwork",label:t("External Gateway"),type:"select-table",backendPageStore:this.networkStore,extraParams:{"router:external":!0},required:e,hidden:!e,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:P.networkStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.Create=k,(0,_.default)(k,"id","create"),(0,_.default)(k,"title",t("Create Router")),(0,_.default)(k,"policy","create_router"),(0,_.default)(k,"allowed",(()=>h.default.resolve(!0)));var R=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=R},1634:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(91)),s=n(r(54)),d=n(r(77));r(589);var u=n(r(590));r(1384);var c=n(r(1385));r(231);var f=n(r(341));r(1303);var p=n(r(1290)),m=n(r(35)),h=n(r(0)),v=r(163),g=r(580),_=r(1267),b=(r(161),r(204)),y=n(r(3871)),I=n(r(1471));class A extends h.default.Component{constructor(e){super(e),(0,m.default)(this,"detailButtons",(()=>[{name:t("Clear Gateway"),click:null},{name:t("Associate IP"),click:null},{name:t("Associate Network"),click:null},{name:t("delete"),type:"danger",click:null}])),this.state={}}get statusMap(){return{SHUTOFF:{status:"default",text:t("Shutoff")},ACTIVE:{color:"green",text:t("Active")}}}get detailInfos(){var{data:{subnets:e}}=this.props,a=(0,l.default)(e).call(e,(e=>{var t;return-1===(0,o.default)(t=e.name).call(t,"HA subnet tenant")}));return[{title:t("Name"),dataIndex:"name",render:(e,t)=>e?h.default.createElement(b.Link,{to:"/network/router/detail/".concat(t.id)},e):"-"},{title:t("UUID"),dataIndex:"id"},{title:t("Status"),dataIndex:"status",render:e=>_.routerStatus[e]||e},{title:t("External Fixed IP"),dataIndex:"external_gateway_info",isHideable:!0,render:e=>{var t;return(0,s.default)(t=(e||{}).external_fixed_ips||[]).call(t,(e=>h.default.createElement("span",{key:e.ip_address},e.ip_address,h.default.createElement("br",null))))||"-"}},{title:t("Subnet"),dataIndex:"subnets",render:e=>{if(!a[0])return"-";var t=(0,l.default)(a).call(a,(t=>-1!==(0,o.default)(e).call(e,t.id)));return(0,s.default)(t).call(t,(e=>h.default.createElement("span",{key:e.id},e.name," (",e.cidr,")",h.default.createElement("br",null))))}}]}renderCardInfos(e){var t,a=(0,s.default)(t=this.detailInfos).call(t,(t=>{var a,{title:r,dataIndex:i,render:n}=t;return!this.isLoading&&e&&e.id?(a=n?n(e[i],e):e[i],"create_time"!==i&&"update_time"!==i&&"created_at"!==i||n||(a=(0,g.getLocalTimeStr)(a)),void 0===a&&(a="-")):a="-",{label:r,content:a}}));return h.default.createElement(p.default,{column:1,className:I.default["descriptions-item"]},(0,s.default)(a).call(a,(e=>h.default.createElement(p.default.Item,{label:e.label,key:"label-".concat((0,v.generateId)())},e.content))))}renderButton(){var e=this.detailButtons();return h.default.createElement("div",{className:I.default["card-button"]},(0,s.default)(e).call(e,(e=>h.default.createElement(f.default,{type:e.type?e.type:"primary"},e.name))))}renderCard(e,t){return h.default.createElement("div",{style:{width:e}},this.renderCardInfos(t))}renderTitle(e,t){var a;return h.default.createElement("div",{className:I.default["node-card-title"]},(0,d.default)(a="".concat(e,": ")).call(a,t))}render(){var{x:e,y:a}=this.props,{data:{routers:r},infoIndex:i}=this.props,n=r[i];return h.default.createElement("div",{className:I.default["node-tooltips"],style:{top:"".concat(a,"px"),left:"".concat(e,"px")}},h.default.createElement(u.default,{placement:"rightTop",content:this.renderCard(430,n),title:this.renderTitle(t("Router"),n.name)},h.default.createElement("div",{style:{textAlign:"center",width:"50px",height:"50px",overflow:"hidden"}},h.default.createElement(c.default,{src:y.default,shape:"square",size:30}),h.default.createElement("div",{style:{transform:"scale(0.9,1)"}},n.name))))}}a.default=A},1635:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PortDetail=void 0;var l=r(412),o=r(582),s=n(r(1243)),d=r(1258),u=n(r(3879));class c extends s.default{get name(){return t("port")}get policy(){return"get_port"}get listUrl(){var{routerId:e}=this.params;return this.getRoutePath("routerDetail",{id:e},{tab:"interfaces"})}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:d.portStatus},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default}]}init(){this.store=new o.PortStore}}a.PortDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},1636:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.QoSPolicy=void 0;var p=f(r(35)),m=r(412),h=f(r(1242)),v=r(576),g=r(1357),_=r(66),b=r(342),y=f(r(1637));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t{switch(this.tabKey){case"projectQoSPolicy":return A(A({},e),{},{project_id:this.currentProjectId});case"sharedQoSPolicy":return A(A({},e),{},{shared:!0});default:return e}}))}init(){this.store=new v.QoSPolicyStore,this.downloadStore=new v.QoSPolicyStore}get isProjectTab(){var e=this.tabKey;return!this.isAdminPage&&(!e||"projectQoSPolicy"===e)}get checkEndpoint(){return!0}get endpoint(){return(0,_.qosEndpoint)()}get policy(){return"get_policy"}get aliasPolicy(){return"neutron:get_policy"}get name(){return t("QoS policies")}get actionConfigs(){return this.isAdminPage?y.default.actionConfigs:this.isProjectTab?y.default.consoleActions:b.emptyActionConfig}get hasTab(){return!this.isAdminPage}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"name"}get tabKey(){var{tab:e}=this.props;return e}getColumnParamsFromTabKey(){switch(this.tabKey){case"projectQoSPolicy":return{self:this,all:!1,shared:!1};case"sharedQoSPolicy":return{self:this,all:!1,shared:!0};case"allQoSPolicy":default:return{self:this,all:!0,shared:!1}}}getColumns(){return(0,g.getQosPolicyColumns)(this.getColumnParamsFromTabKey())}get searchFilters(){return(0,g.getQosPolicyFilters)(this.getColumnParamsFromTabKey())}}a.QoSPolicy=S;var w=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=w},1637:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3896)),l=i(a(3897)),o=i(a(3898)),s=i(a(3899)),d=i(a(3900)),u=i(a(3901)),c=i(a(3902)),f=i(a(3903)),p=i(a(3904)),m=i(a(3905)),h=i(a(3906)),v={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:p.default},{action:m.default},{action:c.default},{action:f.default},{action:d.default},{action:h.default},{action:u.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},consoleActions:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:p.default},{action:m.default},{action:c.default},{action:f.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]}};t.default=v},1638:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n,l=(0,i(a(54)).default)(n="0,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,46,48,56".split(",")).call(n,(e=>({label:e,value:e})));t.default=l},1639:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3910)),l=i(a(3911)),o=i(a(3912)),s=i(a(1640)),d=i(a(3918)),u={rowActions:{firstAction:n.default,moreActions:[{action:o.default},{action:d.default},{action:l.default}]},batchActions:[l.default],primaryActions:[s.default]};t.actionConfigs=u;var c={rowActions:{moreActions:[{action:l.default}]}};t.adminActions=c},1640:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(54)),o=n(r(28)),s=n(r(32)),d=n(r(91)),u=n(r(29)),c=n(r(63)),f=n(r(58)),p=n(r(35)),m=r(412),h=r(1241),v=n(r(581)),g=r(1254),_=n(r(3913)),b=n(r(3914)),y=n(r(3915)),I=n(r(3916)),A=n(r(3917));class S extends h.StepAction{constructor(){super(...arguments),(0,p.default)(this,"onSubmit",(e=>{var t,{name:a,description:r,vip_address:i,vip_network_id:n,admin_state_enabled:c,enableHealthMonitor:p,listener_protocol:m,listener_ssl_parsing_method:h,listener_sni_enabled:v,listener_default_tls_container_ref:_,listener_client_ca_tls_container_ref:b,listener_sni_container_refs:y,listener_admin_state_up:I,pool_admin_state_up:A,monitor_admin_state_up:S,insert_headers:w}=e,x=(0,f.default)(e,["name","description","vip_address","vip_network_id","admin_state_enabled","enableHealthMonitor","listener_protocol","listener_ssl_parsing_method","listener_sni_enabled","listener_default_tls_container_ref","listener_client_ca_tls_container_ref","listener_sni_container_refs","listener_admin_state_up","pool_admin_state_up","monitor_admin_state_up","insert_headers"]),P={name:a,description:r,vip_network_id:n.selectedRowKeys[0]},{ip_address:C,subnet:E}=i[0];P.vip_subnet_id=E,C&&C.ip&&(P.vip_address=C.ip),P.admin_state_up=c;var D,k={admin_state_up:I,protocol:m},R=(0,g.getInsertHeadersValueFromForm)(w);(R&&(k.insert_headers=R),"TERMINATED_HTTPS"===m)&&(_&&(k.default_tls_container_ref=_.selectedRows[0].container_ref),"two-way"===h&&b&&(k.client_ca_tls_container_ref=b.selectedRows[0].secret_ref,k.client_authentication="MANDATORY"),v&&y&&(k.sni_container_refs=(0,l.default)(D=y.selectedRows).call(D,(e=>e.container_ref))));var N={admin_state_up:A},j={admin_state_up:S};(0,o.default)(t=(0,s.default)(x)).call(t,(t=>{0===(0,d.default)(t).call(t,"listener")?k[t.replace("listener_","")]=e[t]:0===(0,d.default)(t).call(t,"pool")?N[t.replace("pool_","")]=e[t]:0===(0,d.default)(t).call(t,"health")&&(j[t.replace("health_","")]=e[t])})),p&&(N.healthmonitor=j);var{extMembers:M=[],Member:{selectedRowKeys:T=[],selectedRows:B,memberUpdateValue:F=[]}={}}=x,L=[];return(0,o.default)(T).call(T,(e=>{var t=(0,u.default)(B).call(B,(t=>t.id===e))[0],a=(0,u.default)(F).call(F,(t=>t.id===e))[0],{weight:r=0,protocol_port:i=1}=a||{},{member_ip:n,fixed_ips:l=[]}=t;(0,o.default)(n).call(n,(e=>{var{subnet_id:t}=(0,u.default)(l).call(l,(t=>t.ip_address===e))[0],a={weight:r,protocol_port:i,address:e,subnet_id:t};L.push(a)}))})),(0,o.default)(M).call(M,(e=>{var{ip:t,protocol_port:a,weight:r,name:i=null,subnet_id:n}=e.ip_address,l={weight:r,protocol_port:a,address:t,name:i,subnet_id:n};L.push(l)})),N.members=L,k.default_pool=N,P.listeners=[k],this.store.create(P)}))}init(){this.store=v.default}static allowed(e,t){var{isAdminPage:a=!1}=t;return c.default.resolve(!a)}get name(){return t("Create Loadbalancer")}get listUrl(){return this.getRoutePath("lb")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Base Config"),component:_.default},{title:t("Listener Detail"),component:b.default},{title:t("Pool Detail"),component:y.default},{title:t("Member Detail"),component:I.default},{title:t("Health Monitor Detail"),component:A.default}]}}a.StepCreate=S,(0,p.default)(S,"id","lb-create"),(0,p.default)(S,"title",t("Create Loadbalancer")),(0,p.default)(S,"path","/network/load-balancers/create"),(0,p.default)(S,"policy","os_load-balancer_api:loadbalancer:post");var w=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=w},1641:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3921)),l=i(a(3922)),o=i(a(3923)),s=i(a(3924)),d=i(a(3925)),u=i(a(1642)),c=i(a(3927)),f={rowActions:{firstAction:o.default,moreActions:[{action:l.default},{action:n.default},{action:s.default},{action:c.default},{action:d.default}]},batchActions:[],primaryActions:[u.default]};t.actionConfigs=f;var p={rowActions:{moreActions:[{action:c.default},{action:l.default}]}};t.adminActions=p},1642:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(63)),v=f(r(49)),g=f(r(58)),_=f(r(35)),b=r(412),y=r(1241),I=r(1306),A=r(1337),S=r(1338),w=r(1254);function x(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function P(e){for(var t=1;t"os_load-balancer_api:listener:post")),(0,_.default)(this,"onSubmit",(e=>{var t,{sni_enabled:a,ssl_parsing_method:r,default_tls_container_ref:i,client_ca_tls_container_ref:n,sni_container_refs:l,insert_headers:o}=e,s=P(P({},(0,g.default)(e,["sni_enabled","ssl_parsing_method","default_tls_container_ref","client_ca_tls_container_ref","sni_container_refs","insert_headers"])),{},{loadbalancer_id:this.containerProps.detail.id}),d=(0,w.getInsertHeadersValueFromForm)(o);(d&&(s.insert_headers=d),i&&(s.default_tls_container_ref=i.selectedRows[0].container_ref),n&&(s.client_ca_tls_container_ref=n.selectedRows[0].secret_ref,s.client_authentication="MANDATORY"),l)&&(s.sni_container_refs=(0,p.default)(t=l.selectedRows).call(t,(e=>e.container_ref)));return this.store.create(s)}))}get name(){return t("Create Listener")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.store=new I.ListenerStore,this.containersStore=new A.ContainersStore,this.secretsStore=new S.SecretsStore,this.fetchContainers(),this.fetchSecrets()}fetchContainers(){var e=this;return(0,v.default)((function*(){yield e.containersStore.fetchList(),e.updateDefaultValue()}))()}fetchSecrets(){var e=this;return(0,v.default)((function*(){yield e.secretsStore.fetchList({mode:"CA"}),e.updateDefaultValue()}))()}get ServerCertificate(){return this.containersStore.list.data||[]}get CaCertificate(){return this.secretsStore.list.data||[]}get SNICertificate(){var e;return(0,m.default)(e=this.containersStore.list.data||[]).call(e,(e=>!!e.domain))}get isEdit(){return!1}get nameForStateUpdate(){return["protocol","ssl_parsing_method","sni_enabled"]}get defaultValue(){return{ssl_parsing_method:"one-way",sni_enabled:!1,connection_limit:-1,admin_state_up:!0}}get formItems(){var e,{protocol:a,ssl_parsing_method:r,sni_enabled:i}=this.state,n=(0,w.getListenerInsertHeadersFormItem)();return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"description",label:t("Description"),type:"textarea"},{name:"protocol",label:t("Protocol"),type:"select",options:w.listenerProtocols,required:!0,disabled:this.isEdit},{name:"ssl_parsing_method",label:t("SSL Parsing Method"),type:"select",options:w.sslParseMethod,required:!0,display:"TERMINATED_HTTPS"===a},{name:"default_tls_container_ref",label:t("Server Certificate"),type:"select-table",required:!0,data:this.ServerCertificate,isLoading:this.containersStore.list.isLoading,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,w.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a},{name:"client_ca_tls_container_ref",label:t("CA Certificate"),type:"select-table",required:!0,data:this.CaCertificate,isLoading:this.secretsStore.list.isLoading,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,m.default)(e=(0,w.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex)),display:"TERMINATED_HTTPS"===a&&"two-way"===r},{name:"sni_enabled",label:t("SNI Enabled"),type:"switch",display:"TERMINATED_HTTPS"===a},{name:"sni_container_refs",label:t("SNI Certificate"),type:"select-table",required:!0,data:this.SNICertificate,isLoading:this.containersStore.list.isLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,w.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a&&i},{name:"protocol_port",label:t("Port"),type:"input-number",required:!0,disabled:this.isEdit},{name:"connection_limit",label:t("Connection Limit"),type:"input-number",min:-1,extra:t("-1 means no connection limit"),required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the listener.")},n]}}a.Create=C,(0,_.default)(C,"id","create_listener"),(0,_.default)(C,"title",t("Create Listener")),(0,_.default)(C,"policy","os_load-balancer_api:listener:post"),(0,_.default)(C,"allowed",(e=>h.default.resolve("ACTIVE"===e.provisioning_status)));var E=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=E},1643:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3958)),l=i(a(3960)),o=i(a(3961)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},1644:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3965)),l=i(a(3966)),o=i(a(3967)),s=i(a(1645)),d={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[]}};t.default=d},1645:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(164)),m=f(r(234)),h=f(r(54)),v=f(r(28)),g=f(r(32)),_=f(r(431)),b=f(r(77)),y=f(r(63)),I=f(r(49)),A=f(r(58)),S=f(r(35)),w=f(r(570)),x=r(412),P=r(1241),C=f(r(622)),E=f(r(419)),D=f(r(340)),k=r(354),R=r(565);function N(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function j(e){for(var t=1;t{(0,w.default)(e,"portOrRange")&&this.setState({sourcePort:""},(()=>{this.updateDefaultValue()})),(0,w.default)(e,"remoteType")&&this.setState({remote_ip_prefix:"",remote_group_id:""},(()=>{this.updateDefaultValue()})),this.setState(j({},e))})),(0,S.default)(this,"handleDirectionChange",(e=>{this.setState({direction:e})})),(0,S.default)(this,"onSubmit",((e,t)=>{var a,{match:{params:{id:r}={}}={}}=t,{sourcePort:i,protocol:n,ipProtocol:l,icmpType:o,icmpCode:s,portOrRange:d,remoteType:u}=e,c=(0,A.default)(e,["sourcePort","protocol","ipProtocol","icmpType","icmpCode","portOrRange","remoteType"]),f=(0,p.default)(a=["custom_udp","custom_tcp"]).call(a,n)&&"range"===d,h=i.split(":"),v="custom_protocol"!==n?this.defaultRules[n].ip_protocol:l,g=j({security_group_id:r||this.item.id,port_range_min:"custom_icmp"===n?o:f?(0,m.default)(h[0],10):null,port_range_max:"custom_icmp"===n?s:f?(0,m.default)(h[1]||h[0],10):null,protocol:v},c);return(0,p.default)(n).call(n,"all")&&(delete g.remote_ip_prefix,delete g.remote_group_id),this.store.create(g)})),this.state={protocol:this.protocolList[0].value,portOrRange:"range",remoteType:"cidr",direction:"ingress",ipProtocol:"ah"}}get name(){return t("Create rule")}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=C.default,this.groupStore=E.default,this.projectStore=D.default,this.getAllGroups(),this.getQuota()}get messageHasItemName(){return!1}getAllGroups(){var e=this;return(0,I.default)((function*(){var t=yield E.default.fetchList();e.allGroups=(0,h.default)(t).call(t,(e=>({label:e.name,value:e.id})))}))()}static get disableSubmit(){var{neutronQuota:{security_group_rule:{left:e=0}={}}={}}=D.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,I.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{security_group_rule:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e||{},i=0===r?0:1;return[j(j({},e),{},{add:i,name:"security_group_rule",title:t("Security Group Rule")})]}get defaultRules(){return{custom_tcp:{name:t("Custom TCP Rule"),ip_protocol:"tcp"},custom_udp:{name:t("Custom UDP Rule"),ip_protocol:"udp"},custom_icmp:{name:t("Custom ICMP Rule"),ip_protocol:"icmp"},all_proto:{name:t("All Proto"),ip_protocol:null},all_tcp:{name:t("All TCP"),ip_protocol:"tcp",from_port:"1",to_port:"65535"},all_udp:{name:t("All UDP"),ip_protocol:"udp",from_port:"1",to_port:"65535"},all_icmp:{name:t("All ICMP"),ip_protocol:"icmp"},custom_protocol:{name:t("Other Protocol")}}}get protocolList(){var e,t=[];return(0,v.default)(e=(0,g.default)(this.defaultRules)).call(e,(e=>{t.push({value:e,label:this.defaultRules[e].name})})),t}get ruleList(){return(0,_.default)(this.defaultRules,this.settingRules)}get defaultValue(){var e,t=this.state,{protocol:a}=t,r=(0,A.default)(t,["protocol"]),{from_port:i,to_port:n}=this.ruleList[a],{sourcePort:l=""}=this.state;i&&(l=i!==n?(0,b.default)(e="".concat(i,":")).call(e,n):i);return j(j({},r),{},{protocol:a,sourcePort:l})}get formItems(){var e,a,{protocol:r,portOrRange:i,remoteType:n,direction:l}=this.state,o="custom_protocol"===r,s="custom_icmp"===r,d=(0,p.default)(e=["custom_udp","custom_tcp"]).call(e,r),u=(0,p.default)(a=["custom_udp","custom_tcp","custom_icmp"]).call(a,r),c=d&&"range"===i,f=u&&"cidr"===n,m=u&&"sg"===n;return[{name:"protocol",label:t("Protocol"),type:"select",required:!0,options:this.protocolList},{name:"direction",label:t("Direction"),type:"select",required:!0,options:[{value:"ingress",label:t("Ingress")},{value:"egress",label:t("Egress")}],onChange:this.handleDirectionChange},{name:"ethertype",label:t("Ether Type"),type:"select",required:!0,options:[{value:"IPv4",label:t("IPv4")},{value:"IPv6",label:t("IPv6")}]},{name:"portOrRange",label:t("Port Type"),type:"select",required:d,options:[{value:"all",label:t("All Port")},{value:"range",label:t("Custom")}],hidden:!d},{name:"sourcePort",label:"egress"===l?t("Destination Port/Port Range"):t("Source Port/Port Range"),type:"port-range",required:c,hidden:!c,extra:"egress"===l&&t("Input destination port or port range (example: 80 or 80:160)")},{name:"ipProtocol",label:t("IP Protocol"),type:"select-input",options:k.ipProtocols,required:o,hidden:!o,formRef:this.formRef,help:t("Please input protocol number if it absent in select list.")},{name:"icmpType",label:t("ICMP Type"),type:"input-int",min:0,max:255,required:!1,hidden:!s,help:t("Please input ICMP type(0-255)")},{name:"icmpCode",label:t("ICMP Code"),type:"input-int",min:0,max:255,required:!1,hidden:!s,help:t("Please input ICMP code(0-255)")},{name:"remoteType",label:t("Remote Type"),type:"select",required:u,options:[{value:"cidr",label:t("cidr")},{value:"sg",label:t("Security Group")}],hidden:!u},{name:"remote_ip_prefix",label:t("Remote IP Prefix"),type:"input",hidden:!f,required:f,validator:f?R.cidrAllValidate:null,placeholder:t("Please input IPv4 or IPv6 cidr"),extra:t("Please input IPv4 or IPv6 cidr, (e.g. 192.168.0.0/24, 2001:DB8::/48)")},{name:"remote_group_id",label:t("Remote Security Group"),type:"select",required:m,hidden:!m,options:this.allGroups}]}}a.Create=M,(0,S.default)(M,"id","create"),(0,S.default)(M,"title",t("Create Rule")),(0,S.default)(M,"policy","create_security_group_rule"),(0,S.default)(M,"allowed",(()=>y.default.resolve(!0)));var T=(0,x.inject)("rootStore")((0,x.observer)(M));a.default=T},1646:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3983)),l=i(a(3984)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]}};t.default=o},1647:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(49)),l=i(a(58)),o=i(a(35)),s=i(a(53));class d extends s.default{constructor(){super(...arguments),(0,o.default)(this,"updateParamsSortPage",((e,t,a)=>{t&&a&&(e.sort_key=t,e.sort_dir="descend"===a?"desc":"asc")}))}get paramsFuncPage(){return e=>{var{current:t,all_projects:a}=e;return(0,l.default)(e,["current","all_projects"])}}listFetchByClient(e,t){var{all_projects:a=!1}=t,r={headers:{"x-auth-all-projects":a}};if(!this.isSubResource)return this.client.list(e,r);var i=this.getFatherResourceId(t);return this.client.list(i,e,r)}detailFetchByClient(e,t,a){var{id:r}=e,{all_projects:i=!1}=a,n={headers:{"x-auth-all-projects":i}};if(!this.isSubResource)return this.client.show(r,t,n);var l=this.getFatherResourceId(e);return this.client.show(l,r,t,n)}getCountForPage(e,t,a,r){return(0,n.default)((function*(){var{metadata:e={}}=r,{total_count:t=0}=e||{};return{total:t,count:t}}))()}}t.default=d},1648:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(86)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=r(1241),b=r(412),y=r(1404),I=f(r(1360)),A=r(565);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{if(!a||!a.length)return p.default.resolve();if((0,m.default)(a).call(a,(e=>!e.value||!(A.ipValidate.isIPv4(e.value)||!A.ipValidate.isIpv6(e.value)))))return p.default.reject(t("Please input a valid ip!"));var r=(0,m.default)(a).call(a,(e=>!!(0,m.default)(a).call(a,(t=>t.value===e.value&&t.index!==e.index))));return r?p.default.reject(t("The ip address {ip} is duplicated, please modify it.",{ip:r.value})):p.default.resolve()})),(0,g.default)(this,"onSubmit",(e=>{var{masters:t=[],type:a,email:r,ttl:i}=e,n=w(w({},(0,v.default)(e,["masters","type","email","ttl"])),{},{type:a,masters:(0,h.default)(t).call(t,(e=>e.value))});return"PRIMARY"===a&&(n.email=r,n.ttl=i),this.store.create(n)}))}init(){this.store=I.default}static get modalSize(){return"small"}get name(){return t("Create Zone")}static allowed(){return p.default.resolve(!0)}get defaultValue(){return{ttl:3600,type:y.ZONE_TYPE_ENUM.primary}}get nameForStateUpdate(){return["type"]}get formItems(){var{type:e=y.ZONE_TYPE_ENUM.primary}=this.state,a=e===y.ZONE_TYPE_ENUM.primary;return[{name:"name",label:t("Name"),type:"input",required:!0,extra:y.zoneNameMessage,validator:y.validateZoneName},{name:"description",label:t("Description"),type:"textarea"},{name:"type",label:t("Type"),type:"select",options:y.zoneTypeOptions,tip:t("Primary is controlled by Designate, Secondary zones are slaved from another DNS Server.")},{name:"email",label:t("Email Address"),type:"input",required:a,hidden:!a,validator:A.emailValidate,extra:t("Email for the zone. Used in SOA records for the zone.")},{name:"ttl",label:t("TTL"),type:"input-number",min:0,required:a,hidden:!a,extra:t("TTL (Time to Live) for the zone.")},{name:"masters",label:t("Masters"),type:"add-select",isInput:!0,placeholder:t("Please input ip address"),tip:t("Mandatory for secondary zones. The servers to slave from to get DNS information."),minCount:1,hidden:a,required:!a,validator:this.validateMasters}]}}a.Create=x,(0,g.default)(x,"id","create_zone"),(0,g.default)(x,"title",t("Create Zone")),(0,g.default)(x,"policy","create_zone");var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},1649:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(28)),m=f(r(77)),h=f(r(63)),v=f(r(58)),g=f(r(35)),_=r(1241),b=r(412),y=f(r(1361)),I=r(1405);function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t{var{detail:t}=this.containerProps,{id:a}=t||this.item,{records:r}=e,i=(0,v.default)(e,["records"]),n=[];(0,p.default)(r).call(r,(e=>{n.push(e.value)}));var l=S({records:n},i);return this.store.create({id:a},l)}))}init(){var e,a;this.store=y.default,this.state=S(S({},this.state),{},{nameExtra:(0,m.default)(e="".concat(t("Exp: "))).call(e,I.DNS_RECORD_TYPE.A.nameExtra),recordsExtra:(0,m.default)(a="".concat(t("Exp: "))).call(a,I.DNS_RECORD_TYPE.A.recordsExtra)})}get name(){return t("Create Record Set")}static allowed(){return h.default.resolve(!0)}get defaultValue(){return{ttl:3600,type:"A"}}get formItems(){return(0,I.getRecordSetFormItem)(this,this.currentFormValue)}}a.Create=w,(0,g.default)(w,"id","create-record-set"),(0,g.default)(w,"title",t("Create Record Set")),(0,g.default)(w,"policy","create_recordset");var x=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=x},1650:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3994)),l=i(a(3995)),o=i(a(1649)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default}]},primaryActions:[o.default],batchActions:[l.default]};t.default=s},1651:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1652)),l=i(a(4e3)),o=i(a(4001)),s={actionConfigs:{rowActions:{firstAction:i(a(4002)).default,moreActions:[{action:o.default},{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=s},1652:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var p=f(r(63)),m=f(r(28)),h=f(r(29)),v=f(r(164)),g=f(r(86)),_=f(r(54)),b=f(r(49)),y=f(r(58)),I=f(r(35)),A=r(412),S=r(1241),w=f(r(1341)),x=f(r(1294)),P=f(r(575)),C=f(r(233)),E=f(r(582)),D=r(1362),k=r(1473),R=r(1258),N=r(36),j=r(571);function M(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function T(e){for(var t=1;t{var{ingressPolicy:t={},egressPolicy:a={},options:{admin_state_up:r=!0,shared:i=!1}={},ports:n={}}=e,l=(0,y.default)(e,["ingressPolicy","egressPolicy","options","ports"]),o=t.selectedRowKeys&&t.selectedRowKeys[0],s=a.selectedRowKeys&&a.selectedRowKeys[0],d=T({admin_state_up:r,shared:i},l);return o&&(d.ingress_firewall_policy_id=o),s&&(d.egress_firewall_policy_id=s),n.selectedRowKeys&&(d.ports=n.selectedRowKeys),this.store.create(d)}))}init(){this.store=w.default,this.policyStore=x.default,this.routerStore=P.default,this.networkStore=C.default,this.portStore=E.default,this.getNetworks(),this.getRouters(),this.getPolicies(),this.getPorts(),(0,j.fetchNeutronQuota)(this)}get listUrl(){return this.getRoutePath("firewall")}get name(){return t("Create firewall")}static allowed(){return p.default.resolve(!0)}get disableSubmit(){return(0,j.checkQuotaDisable)(B,F)}get showQuota(){return!0}get quotaInfo(){return(0,j.getQuotaInfo)(this,B,F)}getNetworks(){this.networkStore.fetchList({isFirewall:!0})}getRouters(){this.routerStore.fetchList({isFirewall:!0})}getPolicies(){this.policyStore.fetchList()}getPorts(){var e=this;return(0,b.default)((function*(){e.portStore.fetchList({device_owner:"compute:nova",project_id:e.currentProjectId}),e.updateDefaultValue()}))()}get networks(){return(0,N.toJS)(this.networkStore.list.data||[])}get ports(){var e,a=[];return(0,m.default)(e=(0,N.toJS)(this.routerStore.list.data)||[]).call(e,(e=>{var r,i=(0,h.default)(r=e.ports).call(r,(e=>(0,v.default)(k.routerInterfaceOwners).call(k.routerInterfaceOwners,e.device_owner)));(0,m.default)(i).call(i,(a=>{var r,i;a.device_name=e.name,a.owner=t("Router"),a.network=(0,g.default)(r=this.networks).call(r,(e=>e.id===a.network_id)),a.network_name=a.network?a.network.name:"",a.name=a.id,a.ip_address=a.fixed_ips[0].ip_address,a.subnet=a.network?(0,g.default)(i=a.network.subnetDetails).call(i,(e=>e.id===a.fixed_ips[0].subnet_id)):null,a.subnet_name=a.subnet&&a.subnet.name||"-"})),a=[...a,...i]})),a}get policies(){var e,t;return(0,_.default)(e=(0,h.default)(t=this.policyStore.list.data||[]).call(t,(e=>e.firewalls.length<2))).call(e,(e=>T(T({},e),{},{key:e.id})))}get defaultValue(){return{options:{admin_state_up:!0}}}get instancePorts(){var e;return(0,_.default)(e=(0,N.toJS)(this.portStore.list.data||[])).call(e,(e=>T(T({},e),{},{name:e.name||e.id})))}get portTabs(){var e={title:t("Router Port"),key:"router",props:T(T({data:this.ports},k.tableOptions),{},{isLoading:this.routerStore.list.isLoading,isMulti:!0})};return[{title:t("Instance Port"),key:"instance",props:T(T({data:this.instancePorts},(0,R.instancePortOptions)(this)),{},{isLoading:this.portStore.list.isLoading,isMulti:!0})},e]}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},T({name:"ingressPolicy",label:t("Ingress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},D.tableOptions),T({name:"egressPolicy",label:t("Egress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},D.tableOptions),{name:"ports",label:t("Ports"),type:"tab-select-table",tabs:this.portTabs},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Admin State"),value:"admin_state_up"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateForm=L,(0,I.default)(L,"id","firewall-create"),(0,I.default)(L,"title",t("Create Firewall")),(0,I.default)(L,"path","/network/firewall/create"),(0,I.default)(L,"policy","create_firewall_group");var O=(0,A.inject)("rootStore")((0,A.observer)(L));a.default=O},1653:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1654)),l=i(a(4004)),o=i(a(1655)),s=i(a(4005)),d=i(a(4006)),u={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:s.default},{action:d.default},{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=u},1654:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(1294)),u=r(1241),c=r(1251),f=r(571),p=["firewall_policy"],m=[1];class h extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a,options:{shared:r,audited:i}={}}=e,n={name:t,shared:r,audited:i,description:a};return this.store.create(n)}))}get name(){return t("create firewall policy")}init(){this.store=d.default,(0,f.fetchNeutronQuota)(this)}static get disableSubmit(){return(0,f.checkQuotaDisable)(p,m)}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,f.getQuotaInfo)(this,p,m)}get defaultValue(){return{options:{shared:!1,audited:!1}}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Shared"),value:"shared",disabled:!(0,c.checkPolicyRule)("update_firewall_policy:shared")},{label:t("Audited"),value:"audited"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=h,(0,o.default)(h,"id","create-simple"),(0,o.default)(h,"title",t("Create Firewall Policy")),(0,o.default)(h,"buttonText",t("Create Policy")),(0,o.default)(h,"policy","create_firewall_policy"),(0,o.default)(h,"allowed",(()=>l.default.resolve(!0)));var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},1655:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(35)),o=r(412),s=n(r(1294)),d=r(1241),u=r(1362),c=r(1251);class f extends d.ModalAction{constructor(){super(...arguments),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{name:a,options:{shared:r,audited:i}={},description:n}=e,l={name:a,audited:i,description:n};return this.canChangeShared()&&(l.shared=r),this.store.edit({id:t},l)}))}init(){this.store=s.default}get defaultValue(){var{name:e,shared:t,description:a,audited:r}=this.item;return{name:e,description:a,options:{shared:t,audited:r}}}canChangeShared(){return(0,c.checkPolicyRule)("update_firewall_policy:shared")}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Shared"),value:"shared",disabled:!this.canChangeShared()},{label:t("Audited"),value:"audited"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=f,(0,l.default)(f,"id","edit"),(0,l.default)(f,"title",t("Edit")),(0,l.default)(f,"policy","update_firewall_policy"),(0,l.default)(f,"allowed",(e=>!(0,u.isDefault)(e)&&(0,u.isMine)(e)));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},1656:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rule=void 0;var p=f(r(35)),m=f(r(58)),h=f(r(49)),v=f(r(54)),g=f(r(203)),_=f(r(91)),b=f(r(0)),y=r(412),I=f(r(1242)),A=r(1363),S=r(1307),w=r(342),x=f(r(1657));function P(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class C extends I.default{init(){this.store=new A.FirewallRuleStore}get policy(){return"get_firewall_rule"}get name(){return t("firewall rules")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?this.inDetailPage?w.emptyActionConfig:x.default.actionConfigsAdmin:this.inDetailPage?x.default.actionConfigsInDetail:x.default.actionConfigs}get adminPageHasProjectFilter(){return!0}getColumns(){var e={title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallRuleDetail")},a={title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},r={title:t("Related Policy"),dataIndex:"policies",isHideable:!0,render:e=>(0,v.default)(e).call(e,(e=>b.default.createElement("div",{key:e.id},this.getLinkRender("firewallPolicyDetail",e.name,{id:e.id})))),stringify:e=>(0,v.default)(e).call(e,(e=>e.name)).join(",")};return[e,a,...(0,g.default)(S.tableColumns).call(S.tableColumns,1,2),r,...(0,g.default)(S.tableColumns).call(S.tableColumns,2,S.tableColumns.length)]}get searchFilters(){return S.tableFilter}getData(){var e=arguments,t=this;return(0,h.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,m.default)(a,["silent"]),{detail:{firewall_rules:n=[]}={},match:l}=t.props,{path:f}=l,v=function(e){for(var t=1;t=0?(v.firewall_rules=n,yield t.store.fetchListByPolicy(v)):yield t.store.fetchList(v),t.list.silent=!1})))}))()}}a.Rule=C;var E=(0,y.inject)("rootStore")((0,y.observer)(C));a.default=E},1657:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1474)),l=i(a(1658)),o=i(a(4007)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsInDetail:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[],primaryActions:[]},actionConfigsAdmin:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[]}};t.default=s},1658:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1307),u=n(r(1474));class c extends u.default{get listUrl(){return this.getRoutePath("firewall",null,{tab:"rules"})}get name(){return t("Edit rule")}static allowed(e){return l.default.resolve((0,d.isMine)(e))}}a.EditForm=c,(0,o.default)(c,"id","rule-edit"),(0,o.default)(c,"title",t("Edit Rule")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"path",(e=>"/network/firewall-rule/edit/".concat(e.id))),(0,o.default)(c,"policy","update_firewall_rule");var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},1659:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(4016)),l=i(a(4017)),o=i(a(4018)),s={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[o.default]};t.default=s},3837:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(416)),l=i(a(3838)),o=e=>(0,n.default)(l.default,e);t.default=o},3838:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1263)),l=i(a(579)),o=i(a(3839)),s=i(a(1626)),d=i(a(3842)),u=i(a(3847)),c=i(a(3849)),f=i(a(1466)),p=i(a(3858)),m=i(a(3864)),h=i(a(3872)),v=i(a(1635)),g=i(a(1395)),_=i(a(3880)),b=i(a(3895)),y=i(a(1636)),I=i(a(3907)),A=i(a(3909)),S=i(a(1640)),w=i(a(3919)),x=i(a(3928)),P=i(a(3936)),C=i(a(3962)),E=i(a(3964)),D=i(a(3968)),k=i(a(3972)),R=i(a(3978)),N=i(a(3980)),j=i(a(3982)),M=i(a(3985)),T=i(a(3987)),B=i(a(3991)),F=i(a(3996)),L=i(a(3998)),O=i(a(4008)),Q=i(a(4011)),q=i(a(4012)),V=i(a(1474)),H=i(a(1658)),U=i(a(4013)),K=i(a(1654)),G=i(a(1655)),z=i(a(1652)),J=i(a(4015)),W=i(a(4019)),Z="/network",X=[{path:Z,component:n.default,routes:[{path:"".concat(Z,"/networks"),component:o.default,exact:!0},{path:"".concat(Z,"/networks-admin"),component:s.default,exact:!0},{path:"".concat(Z,"/networks/detail/:id"),component:d.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/subnet/:id"),component:u.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/subnet/:id"),component:u.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/subnet/:subnetId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/subnet/:subnetId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/instance/detail/:instanceId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/instance-admin/detail/:instanceId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/router"),component:c.default,exact:!0},{path:"".concat(Z,"/router-admin"),component:c.default,exact:!0},{path:"".concat(Z,"/router/detail/:id"),component:h.default,exact:!0},{path:"".concat(Z,"/router-admin/detail/:id"),component:h.default,exact:!0},{path:"".concat(Z,"/router/:routerId/port/:id"),component:v.default,exact:!0},{path:"".concat(Z,"/router-admin/:routerId/port/:id"),component:v.default,exact:!0},{path:"".concat(Z,"/floatingip"),component:f.default,exact:!0},{path:"".concat(Z,"/floatingip-admin"),component:f.default,exact:!0},{path:"".concat(Z,"/floatingip/detail/:id"),component:p.default,exact:!0},{path:"".concat(Z,"/floatingip-admin/detail/:id"),component:p.default,exact:!0},{path:"".concat(Z,"/port"),component:g.default,exact:!0},{path:"".concat(Z,"/port-admin"),component:g.default,exact:!0},{path:"".concat(Z,"/port/detail/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/port-admin/detail/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/qos-policy"),component:b.default,exact:!0},{path:"".concat(Z,"/qos-policy-admin"),component:y.default,exact:!0},{path:"".concat(Z,"/qos-policy/detail/:id"),component:I.default,exact:!0},{path:"".concat(Z,"/qos-policy-admin/detail/:id"),component:I.default,exact:!0},{path:"".concat(Z,"/topo"),component:m.default,exact:!0},{path:"".concat(Z,"/load-balancers"),component:A.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin"),component:A.default,exact:!0},{path:"".concat(Z,"/load-balancers/create"),component:S.default,exact:!0},{path:"".concat(Z,"/load-balancers/detail/:id"),component:w.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin/detail/:id"),component:w.default,exact:!0},{path:"".concat(Z,"/load-balancers/:loadBalancerId/listener/:id"),component:x.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin/:loadBalancerId/listener/:id"),component:x.default,exact:!0},{path:"".concat(Z,"/certificate"),component:k.default,exact:!0},{path:"".concat(Z,"/certificate-container/detail/:id"),component:R.default,exact:!0},{path:"".concat(Z,"/certificate-secret/detail/:id"),component:N.default,exact:!0},{path:"".concat(Z,"/vpn"),component:P.default,exact:!0},{path:"".concat(Z,"/ipsec-site-connection/detail/:id"),component:C.default,exact:!0},{path:"".concat(Z,"/ipsec-site-connection-admin/detail/:id"),component:C.default,exact:!0},{path:"".concat(Z,"/vpn-admin"),component:P.default,exact:!0},{path:"".concat(Z,"/security-group"),component:E.default,exact:!0},{path:"".concat(Z,"/security-group-admin"),component:E.default,exact:!0},{path:"".concat(Z,"/security-group/detail/:id"),component:D.default,exact:!0},{path:"".concat(Z,"/security-group-admin/detail/:id"),component:D.default,exact:!0},{path:"".concat(Z,"/dns/zones"),component:T.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones"),component:T.default,exact:!0},{path:"".concat(Z,"/dns/zones/detail/:id"),component:B.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones/detail/:id"),component:B.default,exact:!0},{path:"".concat(Z,"/dns/zones/detail/:zoneId/recordsets/:id"),component:F.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones/detail/:zoneId/recordsets/:id"),component:F.default,exact:!0},{path:"".concat(Z,"/dns/reverse"),component:j.default,exact:!0},{path:"".concat(Z,"/dns/reverse/detail/:id"),component:M.default,exact:!0},{path:"".concat(Z,"/firewall"),component:L.default,exact:!0},{path:"".concat(Z,"/firewall/:firewallId/port/:id"),component:Q.default,exact:!0},{path:"".concat(Z,"/firewall-admin/:firewallId/port/:id"),component:Q.default,exact:!0},{path:"".concat(Z,"/firewall-admin"),component:L.default,exact:!0},{path:"".concat(Z,"/firewall/detail/:id"),component:O.default,exact:!0},{path:"".concat(Z,"/firewall-admin/detail/:id"),component:O.default,exact:!0},{path:"".concat(Z,"/firewall-policy/detail/:id"),component:q.default,exact:!0},{path:"".concat(Z,"/firewall-policy-admin/detail/:id"),component:q.default,exact:!0},{path:"".concat(Z,"/firewall-rule/create"),component:V.default,exact:!0},{path:"".concat(Z,"/firewall-rule/edit/:id"),component:H.default,exact:!0},{path:"".concat(Z,"/firewall-rule/detail/:id"),component:U.default,exact:!0},{path:"".concat(Z,"/firewall-rule-admin/detail/:id"),component:U.default,exact:!0},{path:"".concat(Z,"/firewall/create"),component:z.default,exact:!0},{path:"".concat(Z,"/firewall-policy/add"),component:K.default,exact:!0},{path:"".concat(Z,"/firewall-policy/edit/:id"),component:G.default,exact:!0},{path:"".concat(Z,"/rbac-policies-admin"),component:J.default,exact:!0},{path:"".concat(Z,"/rbac-policies-admin/detail/:id"),component:W.default,exact:!0},{path:"*",component:l.default}]}];t.default=X},3839:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Network=void 0;var l=r(412),o=n(r(1282)),s=n(r(1626));class d extends o.default{get tabs(){var e=[{title:t("Current Project Networks"),key:"projectNetwork",component:s.default},{title:t("Shared Networks"),key:"sharedNetwork",component:s.default},{title:t("External Networks"),key:"externalNetwork",component:s.default}];return this.hasAdminRole&&e.push({title:t("All Networks"),key:"allNetwork",component:s.default}),e}}a.Network=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3840:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(233)),d=r(1251),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_network"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Network")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete network")}isCurrentProject(e){var t=u.default;return!(!(0,d.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3841:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(233)),b=r(1251),y=f(r(133)),I=r(163);function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{item:{id:t}={}}=this.props,{name:a,description:r,port_security_enabled:i}=e,n=(0,m.default)(e,["name","description","port_security_enabled"]),l={name:a,description:r,port_security_enabled:i};return this.isSystemAdmin&&(l.shared=n.shared),this.isAdminPage&&(l["router:external"]=n["router:external"]),_.default.edit({id:t},l)}))}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;t{var t=y.default;return(0,b.checkSystemAdmin)()||e.project_id===t.user.project.id?p.default.resolve(!0):p.default.resolve(!1)}));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3842:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.NetworkDetail=void 0;var p=f(r(573)),m=f(r(35)),h=r(412),v=f(r(1243)),g=r(233),_=r(571),b=f(r(1395)),y=f(r(3843)),I=f(r(3846)),A=f(r(1627));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{if(this.store.fetchDetail){var t=w(w(w({},this.params),e||{}),{},{all_projects:this.isAdminPage});this.store.fetchDetailWithAvailabilityAndUsage(w(w({},t),{},{isAdminPage:this.isAdminPage,canAddNetworkIPUsageInfo:this.canAddNetworkIPUsageInfo})).catch(this.catch)}}))}get name(){return t("network")}get policy(){return"get_network"}get listUrl(){return this.getRoutePath("network")}get actionConfigs(){return A.default}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get detailInfos(){var e=[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id"},{title:t("Status"),dataIndex:"status",valueMap:_.networkStatus},{title:t("Admin State"),dataIndex:"admin_state_up",valueRender:"yesNo"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Update At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}];return this.isAdminPage&&((0,p.default)(e).call(e,2,0,{title:t("Project Name"),dataIndex:"projectName"}),(0,p.default)(e).call(e,7,0,{title:t("DHCP Agents"),dataIndex:"dhcp_agents"})),this.canAddNetworkIPUsageInfo&&(0,p.default)(e).call(e,4,0,{title:t("Total IPs"),dataIndex:"total_ips"},{title:t("Used IPs"),dataIndex:"used_ips"}),e}get tabs(){return[{title:t("Detail"),key:"detail",component:I.default},{title:t("Subnets"),key:"subnets",component:y.default},{title:t("Ports"),key:"ports",component:b.default}]}init(){this.store=new g.NetworkStore}}a.NetworkDetail=x;var P=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=P},3843:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Subnets=void 0;var l=n(r(573)),o=n(r(35)),s=n(r(0)),d=r(412),u=n(r(1242)),c=r(417),f=n(r(1631));class p extends u.default{constructor(){super(...arguments),(0,o.default)(this,"updateFetchParams",(()=>({network_id:this.id,network:this.props.detail,all_projects:this.isAdminPage}))),(0,o.default)(this,"getColumns",(()=>{var e=[{title:t("Subnet ID/Name"),dataIndex:"name",routeName:this.getRouteName("subnetDetail"),routeParamsFunc:e=>({networkId:e.network_id,id:e.id})},{title:t("CIDR"),dataIndex:"cidr",isHideable:!0},{title:t("Gateway IP"),dataIndex:"gateway_ip",isHideable:!0},{title:t("IP Version"),dataIndex:"ip_version",isHideable:!0},{title:t("Port Count"),dataIndex:"subnetPorts",isHideable:!0,stringify:e=>(e||[]).length,render:(e,t)=>{var a=(e||[]).length;if(!a)return"-";var r=this.getLinkRender("subnetDetail",a,{id:t.id,networkId:t.network_id},{tab:"ports"});return s.default.createElement(s.default.Fragment,null,r)}},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0}];return this.canAddNetworkIPUsageInfo&&(0,l.default)(e).call(e,5,0,{title:t("Total IPs"),dataIndex:"total_ips"},{title:t("Used IPs"),dataIndex:"used_ips",titleTip:this.isAdminPage?"":t("Number of IPs used by all projects")}),e}))}init(){this.store=new c.SubnetStore}get policy(){return"get_subnet"}get name(){return t("subnets")}get id(){return this.params.id}get actionConfigs(){return f.default}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Subnets=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3844:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(133)),d=n(r(417));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_subnet"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Subnet")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete subnet")}isOwnerOrAdmin(e){var{tenant_id:t}=e;return this.isAdminPage||t===s.default.projectId}}a.default=u},3845:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.EditSubnet=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=r(565),b=f(r(417)),y=f(r(133)),I=f(r(621));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t{var{gateway_ip:t,allocation_pools:a,host_routes:r,dns:i,disable_gateway:n}=e,l=(0,m.default)(e,["gateway_ip","allocation_pools","host_routes","dns","disable_gateway"]),o=k(a),s=R(r),d=T(i),u=S(S({},l),{},{network_id:this.subnet.network_id,allocation_pools:o,host_routes:s,dns_nameservers:d});return n?u.gateway_ip=null:t&&t!==this.item.gateway_ip&&(u.gateway_ip=t),b.default.update(this.subnet,u)}))}get name(){return t("Edit Subnet")}get subnet(){return this.props.item}get defaultValue(){return S(S({},this.subnet),{},{subnet_name:this.subnet.name,allocation_pools:N(this.subnet.allocation_pools),host_routes:M(this.subnet.host_routes),dns:j(this.subnet.dns_nameservers),disable_gateway:!this.subnet.gateway_ip,gateway_ip:this.subnet.gateway_ip,more:!1})}get formItems(){var{more:e,disable_gateway:a=!this.item.gateway_ip}=this.state;return[{name:"subnet_name",label:t("Subnet Name"),type:"input-name",required:!0},{name:"cidr",label:t("CIDR"),type:"input",placeholder:"192.168.0.0/24",disabled:!0,required:!0,validator:(e,a)=>(4===this.subnet.ip_version?B(a):F(a))?p.default.resolve(!0):p.default.reject(new Error(t("Invalid CIDR."))),tip:t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e},(()=>{this.formRef.current.validateFields(["gateway_ip"])}))},hidden:!e},{name:"gateway_ip",label:t("Gateway IP"),type:"ip-input",version:this.subnet.ip_version,required:!a,tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(e&&!a)},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!e},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. 192.168.1.2,192.168.1.200)"),hidden:!e,validator:4===this.subnet.ip_version?w:x},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. 114.114.114.114)"),hidden:!e,validator:4===this.subnet.ip_version?P:C},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. 192.168.200.0/24,10.56.1.254)"),hidden:!e,validator:4===this.subnet.ip_version?E:D},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.EditSubnet=L,(0,h.default)(L,"id","edit-subnet"),(0,h.default)(L,"title",t("Edit Subnet")),(0,h.default)(L,"buttonText",t("Edit")),(0,h.default)(L,"policy","update_subnet"),(0,h.default)(L,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t||{},{tenant_id:r}=e,i=a||r===y.default.projectId;return p.default.resolve(i)}));var O=(0,v.inject)("rootStore")((0,v.observer)(L));a.default=O},3846:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249)),s=r(66);class d extends o.default{get leftCards(){return[this.baseInfoCard]}get qosEndpoint(){return(0,s.qosEndpoint)()}get baseInfoCard(){var e=[{label:t("Availability Zone"),dataIndex:"availability_zones"},{label:t("Availability Zone Hints"),dataIndex:"availability_zone_hints"},{label:t("MTU"),dataIndex:"mtu"},{label:t("Router External"),dataIndex:"router:external",valueRender:"yesNo"},{label:t("Provider Network Type"),dataIndex:"provider:network_type"},{label:t("Provider Physical Network"),dataIndex:"provider:physical_network",render:e=>e||"-"},{label:t("Segmentation ID"),dataIndex:"provider:segmentation_id"},{label:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"}];return this.qosEndpoint&&e.push({label:t("QoS Policy"),dataIndex:"qos_policy_id",render:e=>e||"-"}),{title:t("Base Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3847:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SubnetDetail=void 0;var p=f(r(35)),m=r(412),h=f(r(1243)),v=r(417),g=f(r(1395)),_=f(r(3848)),b=f(r(1631));function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;tI(I({},e),{},{inDetail:!0,canAddNetworkIPUsageInfo:this.store.hasAdminRole})))}get name(){return t("subnet")}get policy(){return"get_subnet"}get listUrl(){var{networkId:e}=this.params;return this.getRoutePath("networkDetail",{id:e},{tab:"subnets"})}get actionConfigs(){return b.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id"},{title:t("CIDR"),dataIndex:"cidr"},{title:t("IP Version"),dataIndex:"ip_version"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Update At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:_.default},{title:t("Ports"),key:"ports",component:g.default}]}init(){this.store=new v.SubnetStore}}a.SubnetDetail=A;var S=(0,m.inject)("rootStore")((0,m.observer)(A));a.default=S},3848:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(77)),s=n(r(0)),d=r(412),u=n(r(1249));class c extends u.default{get leftCards(){var e=[this.networkCard,this.baseInfoCard];return this.canAddNetworkIPUsageInfo&&e.push(this.ipUsageCard),e}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get networkCard(){var e=[{label:t("Network Name"),dataIndex:"network.name"},{label:t("Network ID"),dataIndex:"network.id",render:e=>this.getLinkRender("networkDetail",e,{id:e})}];return{title:t("Network Info"),options:e}}get baseInfoCard(){var e=[{label:t("Gateway IP"),dataIndex:"gateway_ip"},{label:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t,a=(0,l.default)(t=e||[]).call(t,(e=>{var t,{start:a,end:r}=e;return s.default.createElement("div",{key:(0,o.default)(t="".concat(a,"-")).call(t,r)},a," - ",r)}));return s.default.createElement(s.default.Fragment,null,a)}},{label:t("Enable DHCP"),dataIndex:"enable_dhcp",valueRender:"yesNo"},{label:t("Host Routes"),dataIndex:"host_routes",render:e=>{if(!e.length)return"-";var t=(0,l.default)(e).call(e,(e=>{var t,{destination:a,nexthop:r}=e;return s.default.createElement("div",{key:(0,o.default)(t="".concat(a,",")).call(t,r)},a,",",r)}));return s.default.createElement(s.default.Fragment,null,t)}},{label:t("DNS Nameservers"),dataIndex:"dns_nameservers",render:e=>{if(!e.length)return"-";var t=(0,l.default)(e).call(e,(e=>s.default.createElement("div",{key:e},e)));return s.default.createElement(s.default.Fragment,null,t)}}];return{title:t("Base Info"),options:e}}get ipUsageCard(){if(!this.canAddNetworkIPUsageInfo)return null;var e=[{label:t("Total IPs"),dataIndex:"total_ips"},{label:t("Used IPs"),dataIndex:"used_ips"}];return{title:t("IP Usage"),options:e}}}a.BaseDetail=c;var f=(0,d.inject)("rootStore")((0,d.observer)(c));a.default=f},3849:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Routes=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=r(1267),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(575)),p=o(r(1632));function m(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(m=function(e){return e?a:t})(e)}class h extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>(0,c.getRouterColumns)(this)))}init(){this.store=this.inDetailPage?new f.RouterStore:f.default,this.downloadStore=new f.RouterStore}get policy(){return"get_router"}get name(){return t("routers")}get actionConfigs(){return this.isAdminPage?p.default.adminConfigs:p.default.actionConfigs}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"status"}get searchFilters(){return c.routerFilters}}a.Routes=h;var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3850:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(232)),s=n(r(91)),d=n(r(49)),u=n(r(35)),c=n(r(92)),f=r(1241),p=n(r(575));class m extends f.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_router"),(0,u.default)(this,"submitErrorMsg",(e=>{var a=this.getName(e);return this.connectSubnets?t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.actionName||this.title,name:a,reason:t("the router has connected subnet")}):t("Unable to {action}, instance: {name}.",{action:this.actionName||this.title,name:a})})),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.notExternalGateway(e))),(0,u.default)(this,"performErrorMsg",(e=>{var a=(0,c.default)(e)?e[0]:e,{name:r}=a,i=t('You are not allowed to delete router "{ name }".',{name:r});return this.notExternalGateway(a)||(i=t('Unable to delete router "{ name }". External gateway is opened, please clear external gateway first.',{name:r})),i})),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a,r,i){if(i)return p.default.delete(a);var n=yield p.default.fetchConnectedSubnets(e.item);return n.connectSubnets.length?(e.connectSubnets=n.connectSubnets,e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:e.item.name,reason:t("the router has connected subnet")}),l.default.reject()):(e.showConfirmErrorBeforeSubmit=!1,p.default.delete(a))}));return function(e,t,r){return a.apply(this,arguments)}}())}get id(){return"delete"}get title(){return t("Delete Router")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete router")}notAssociatedNet(e){if(!e.ports||0===e.ports.length)return!0;var t,a=["network:router_interface_distributed","network:router_interface","network:ha_router_replicated_interface"];return!(e.ports.length>0)||!(0,o.default)(t=e.ports).call(t,(e=>(0,s.default)(a).call(a,e.device_owner)>-1))}notExternalGateway(e){return!e.hasExternalGateway}}a.default=m},3851:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(575)),u=r(1241);class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return d.default.edit({id:t},e)}))}init(){this.store=d.default}get defaultValue(){var{item:e}=this.props;return{name:e.name,description:e.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name"),withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-router"),(0,o.default)(c,"title",t("Edit Router")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_router"),(0,o.default)(c,"allowed",(e=>l.default.resolve("Default Router"!==e.name)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3852:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_router"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.hasGateway(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e;return s.default.edit({id:t},{external_gateway_info:null})}))}get id(){return"clear-gateway"}get title(){return t("Close External Gateway")}get buttonText(){return t("Close External Gateway")}get actionName(){return t("Close external gateway")}hasGateway(e){return e.hasExternalGateway}}a.default=d},3853:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SetGateway=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=f(r(575)),g=r(233),_=r(1241),b=r(571);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{externalNetwork:t}=e,{id:a}=this.item,r={external_gateway_info:{network_id:t.selectedRowKeys[0]}};return this.store.edit({id:a},r)}))}init(){this.store=v.default,this.networkStore=new g.NetworkStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("open external gateway")}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"router"},I({name:"externalNetwork",label:t("External Gateway"),type:"select-table",backendPageStore:this.networkStore,extraParams:{"router:external":!0},required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:b.networkStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime",sorter:!1}]},b.networkSortProps)]}}a.SetGateway=A,(0,m.default)(A,"id","set-gateway"),(0,m.default)(A,"title",t("Open External Gateway")),(0,m.default)(A,"policy","update_router"),(0,m.default)(A,"allowed",(e=>p.default.resolve(!e.external_gateway_info)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3854:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ConnectSubnet=void 0;var l=n(r(91)),o=n(r(28)),s=n(r(77)),d=n(r(63)),u=n(r(35)),c=r(412),f=r(36),p=r(575),m=n(r(417)),h=r(582),v=r(1241);class g extends v.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"getSubnets",(()=>{var{networkId:e}=this.state;e&&this.subnetStore.fetchList({network_id:e})})),(0,u.default)(this,"onNetworkChange",(e=>{var{selectedRowKeys:t=[]}=e;this.setState({networkId:t[0]},(()=>{this.getSubnets()}))})),(0,u.default)(this,"disabledFuncSubnet",(e=>{var t,{allocation_pools:a=[]}=e;return 0===a.length||(0,l.default)(t=this.excludeSubnetIds).call(t,e.id)>=0})),(0,u.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{subnet:a}=e,r=a.selectedRowKeys[0],{networkId:i}=this.state;return this.store.connectSubnet({id:t,subnetId:r,networkId:i})}))}init(){this.store=new p.RouterStore,this.subnetStore=m.default,this.portStore=new h.PortStore,this.getPortList()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("connect subnet")}get subnets(){var{networkId:e}=this.state;return e?(0,f.toJS)(this.subnetStore.list.data||[]):[]}getPortList(){var{id:e}=this.item;this.portStore.fetchList({device_id:e})}get excludeSubnetIds(){var e,t=[];return(0,o.default)(e=(0,f.toJS)(this.portStore.list.data||[])).call(e,(e=>{var a;(0,o.default)(a=e.fixed_ips).call(a,(e=>{t.push(e.subnet_id)}))})),t}get formItems(){var{networkId:e}=this.state;return[{name:"name",label:t("Name"),type:"label",iconType:"router"},{name:"network",label:t("Network"),type:"network-select-table",required:!0,onChange:this.onNetworkChange},{name:"subnet",label:t("Subnet"),type:"select-table",data:this.subnets,isLoading:e&&this.subnetStore.list.isLoading,disabledFunc:this.disabledFuncSubnet,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Cidr"),dataIndex:"cidr"},{title:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t;return e&&0!==e.length?(0,s.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end):"-"}},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.ConnectSubnet=g,(0,u.default)(g,"id","connect-subnet"),(0,u.default)(g,"title",t("Connect Subnet")),(0,u.default)(g,"policy","add_router_interface"),(0,u.default)(g,"allowed",(()=>d.default.resolve(!0)));var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3855:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DisconnectSubnet=void 0;var l=n(r(28)),o=n(r(91)),s=n(r(63)),d=n(r(54)),u=n(r(350)),c=n(r(591)),f=n(r(86)),p=n(r(77)),m=n(r(49)),h=n(r(35)),v=r(412),g=r(36),_=r(575),b=n(r(233)),y=n(r(417)),I=r(582),A=r(1241);class S extends A.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{subnet:a}=e,r=a.selectedRowKeys[0];return this.store.disconnectSubnet({id:t,subnetId:r})}))}init(){this.store=new _.RouterStore,this.networkStore=b.default,this.subnetStore=y.default,this.portStore=new I.PortStore,this.getSubnetList(),this.state.subnetLoading=!0}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("disconnect subnet")}getSubnetList(){var e=this;return(0,m.default)((function*(){var t,a,r,{id:i}=e.item;yield e.portStore.fetchList({device_id:i});var n=[],p=[],m=["network:router_interface_distributed","network:router_interface","network:ha_router_replicated_interface"];(0,l.default)(t=(0,g.toJS)(e.portStore.list.data||[])).call(t,(e=>{var t;(0,o.default)(m).call(m,e.device_owner)>-1&&(p.push(e.network_id),(0,l.default)(t=e.fixed_ips).call(t,(e=>{n.push(e.subnet_id)})))}));var h=yield s.default.all((0,d.default)(a=(0,u.default)(new c.default(n))).call(a,(t=>e.subnetStore.fetchDetail({id:t})))),v=yield s.default.all((0,d.default)(r=(0,u.default)(new c.default(p))).call(r,(t=>e.networkStore.fetchDetail({id:t}))));(0,l.default)(h).call(h,(e=>{var t=(0,f.default)(v).call(v,(t=>t.id===e.network_id));e.network=t})),e.setState({subnets:(0,d.default)(h).call(h,(e=>(0,g.toJS)(e))),subnetLoading:!1})}))()}get formItems(){var{subnets:e=[],subnetLoading:a}=this.state;return[{name:"name",label:t("Name"),type:"label",iconType:"router"},{name:"subnet",label:t("Subnet"),type:"select-table",data:e,isLoading:a,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Network"),dataIndex:"network",render:e=>e&&e.name||"-"},{title:t("Cidr"),dataIndex:"cidr"},{title:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t;return e&&0!==e.length?(0,p.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end):"-"}},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.DisconnectSubnet=S,(0,h.default)(S,"id","disconnect-subnet"),(0,h.default)(S,"title",t("Disconnect Subnet")),(0,h.default)(S,"policy","remove_router_interface"),(0,h.default)(S,"allowed",(()=>s.default.resolve(!0)));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3856:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["update_router","update_router:external_gateway_info","update_router:external_gateway_info:network_id","update_router:external_gateway_info:enable_snat"]),(0,l.default)(this,"allowedCheckFunc",(e=>(null==e?void 0:e.external_gateway_info)&&!e.external_gateway_info.enable_snat)),(0,l.default)(this,"onSubmit",(e=>{var{id:t,external_gateway_info:{network_id:a}}=e,r={external_gateway_info:{network_id:a,enable_snat:!0}};return s.default.edit({id:t},r)}))}get id(){return"enable-snat"}get title(){return t("Enable SNAT")}get actionName(){return t("Enable SNAT")}}a.default=d},3857:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["update_router","update_router:external_gateway_info","update_router:external_gateway_info:network_id","update_router:external_gateway_info:enable_snat"]),(0,l.default)(this,"allowedCheckFunc",(e=>{var t;return null==e||null===(t=e.external_gateway_info)||void 0===t?void 0:t.enable_snat})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,external_gateway_info:{network_id:a}}=e,r={external_gateway_info:{network_id:a,enable_snat:!1}};return s.default.edit({id:t},r)}))}get id(){return"disable-snat"}get title(){return t("Disable SNAT")}get actionName(){return t("Disable SNAT")}}a.default=d},3858:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FloatingIpDetail=void 0;var l=n(r(1314)),o=r(412),s=n(r(1243)),d=r(1273),u=r(346),c=r(1393),f=n(r(1606)),p=n(r(3859)),m=n(r(3860));class h extends s.default{get name(){return t("floating ip")}get policy(){return"get_floatingip"}get listUrl(){return this.getRoutePath("fip")}get actionConfigs(){return this.isAdminPage?f.default.adminConfigs:f.default.actionConfigs}get detailInfos(){return[{title:t("Floating IP"),dataIndex:"floating_ip_address"},{title:t("Status"),dataIndex:"status",valueMap:d.floatingIpStatus},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:p.default}];return(0,c.enablePFW)()&&(0,l.default)(this.detailData.fixed_ip_address)&&e.push({title:t("Port Forwardings"),key:"port_forwarding",component:m.default}),e}init(){this.store=new u.FloatingIpStore}}a.FloatingIpDetail=h;var v=(0,o.inject)("rootStore")((0,o.observer)(h));a.default=v},3859:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(77)),m=f(r(35)),h=r(412),v=r(346),g=f(r(1249));function _(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function b(e){for(var t=1;t{var{router_id:e}=this.props.detail;e&&this.store.getAddInfo({router_id:e}).catch(this.catch)}))}init(){this.store=new v.FloatingIpStore}get isLoading(){var{router_id:e}=this.props.detail;return!!e&&this.store.isLoading}get detailData(){return b(b({},this.props.detail),{},{router_name:this.store.addInfo.name,network_name:this.store.addInfo.externalNetworkName})}get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Fixed IP"),dataIndex:"fixed_ip_address"},{label:t("Network Line"),dataIndex:"network_name"},{label:t("Router"),dataIndex:"router_id",render:(e,t)=>{if(e){var a,{router_name:r,network_name:i}=t;if("-"===r&&"-"===i)return e;var n=r?(0,p.default)(a="".concat(e," (")).call(a,r,")"):e;return this.getLinkRender("routerDetail",n,{id:e})}return"-"}}];return{title:t("Base Info"),options:e}}}a.BaseDetail=y;var I=(0,h.inject)("rootStore")((0,h.observer)(y));a.default=I},3860:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.PortForwarding=void 0;var p=f(r(164)),m=f(r(58)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(615),b=r(163),y=r(1273),I=f(r(3861));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.default{constructor(){super(...arguments),(0,h.default)(this,"updateFetchParams",(e=>{var{id:t,all_projects:a}=e,r=(0,m.default)(e,["id","all_projects"]);return function(e){for(var t=1;t[{title:t("ID"),dataIndex:"id"},{title:t("External Port/Port Range"),dataIndex:"external_port",splitColumnForDownload:!1,render:(e,t)=>e||t.external_port_range},{title:t("Internal Ip Address"),dataIndex:"internal_ip_address",isHideable:!0},{title:t("Internal Port/Port Range"),dataIndex:"internal_port",splitColumnForDownload:!1,isHideable:!0,render:(e,t)=>e||t.internal_port_range},{title:t("Protocol"),dataIndex:"protocol",isHideable:!0,valueMap:y.portForwardingProtocols},{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=new _.PortForwardingStore}get policy(){return"get_floatingip_port_forwarding"}get name(){return t("port forwardings")}get isFilterByBackend(){return!1}get actionConfigs(){return this.isAdminPage?I.default.actionConfigsAdmin:I.default.actionConfigs}get searchFilters(){return[{label:t("Protocol"),name:"protocol",options:(0,b.getOptions)(y.portForwardingProtocols)},{label:t("External Port/Port Range"),name:"external_port",filterFunc:(e,t,a)=>{var r,i,{external_port:n,external_port_range:l}=a||{};return(0,p.default)(r="".concat(n||"")).call(r,t)||(0,p.default)(i="".concat(l||"")).call(i,t)}},{label:t("Internal Ip Address"),name:"internal_ip_address",filterFunc:(e,t)=>(0,p.default)(e).call(e,t)},{label:t("Internal Port/Port Range"),name:"internal_port",filterFunc:(e,t,a)=>{var r,i,{internal_port:n,internal_port_range:l}=a||{};return(0,p.default)(r="".concat(n||"")).call(r,t)||(0,p.default)(i="".concat(l||"")).call(i,t)}},{label:t("Description"),name:"description"}]}}a.PortForwarding=S;var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3861:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1467)),l=i(a(3862)),o=i(a(3863)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default},batchActions:[],primaryActions:[]}};t.default=s},3862:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(29)),m=f(r(54)),h=f(r(164)),v=f(r(86)),g=f(r(431)),_=f(r(58)),b=f(r(49)),y=f(r(35)),I=r(412),A=f(r(615)),S=f(r(572)),w=r(1267),x=r(1273),P=r(1258),C=r(1467);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;tA.default.edit({fipId:this.fipId,id:this.item.id},e))),(0,y.default)(this,"checkPortUsedBase",((e,t,a,r)=>{var{external_port:i,internal_port:n,external_port_range:l,internal_port_range:o}=e,s="external"===t?l:o;if(s){var[d,u]=this.getRangeFromString(s);return a>=d&&a<=u&&e.protocol===r}var c="external"===t?i:n;return this.item.id!==e.id&&a===c&&e.protocol===r})),(0,y.default)(this,"checkPortUsedInternal",((e,t)=>{if(!e)return!1;var a=this.formRef.current.getFieldsValue(["virtual_adapter","fixed_ip_address"]),r=a.fixed_ip_address.selectedRows[0].fixed_ip_address,i=a.virtual_adapter.selectedRows[0].id;return this.item.id!==t.id&&t.internal_port_id===i&&t.internal_ip_address===r}))}get name(){return t("Edit Port Forwarding")}get instanceName(){var{floating_ip_address:e}=this.item;return(0,x.getPortForwardingName)(this.item,e)}get tips(){return""}get fipId(){return this.item.fip.id}getExtraInfo(){w.getCanReachSubnetIdsWithRouterIdInComponent.call(this,(e=>{var{item:{fip:t}}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id})).then((()=>{this.getInitialPortFixedIPs()}))}getInitialPortFixedIPs(){var e=this;return(0,b.default)((function*(){e.setState({fixedIpLoading:!0});var{internal_port_id:t,internal_ip_address:a}=e.item,r=yield S.default.fetchDetail({id:t});return e.handlePortSelect({selectedRows:[r]}).then((t=>{var i=(0,p.default)(t).call(t,(e=>e.fixed_ip_address===a)),n={selectedRowKeys:(0,m.default)(i).call(i,(e=>e.id)),selectedRows:i};return e.updateFormValue("virtual_adapter",{selectedRowKeys:[r.id],selectedRows:[r]}),n})).then((t=>{e.setState({fixed_ip_address:t})}))}))()}get defaultValue(){var e=this.item,{floating_ip_address:t,fip:a,internal_port_id:r,internal_ip_address:i}=e;return D({floatingIp:t,virtual_adapter:{selectedRowKeys:[r]},fixed_ip_address:{selectedRowKeys:[i],selectedRows:[{fixed_ip_address:i}]}},(0,_.default)(e,["floating_ip_address","fip","internal_port_id","internal_ip_address"]))}getSubmitData(e){var t,a,{floatingIp:r,virtual_adapter:{selectedRows:i=[]}={},fixed_ip_address:{selectedRows:n=[]}={},external_port:l,internal_port:o}=e,s=D({},(0,_.default)(e,["floatingIp","virtual_adapter","fixed_ip_address","external_port","internal_port"]));return(0,h.default)(t=l.toString()).call(t,":")?s.external_port_range=l:s.external_port=l,(0,h.default)(a=o.toString()).call(a,":")?s.internal_port_range=o:s.internal_port=o,s.internal_ip_address=n[0].fixed_ip_address,s.internal_port_id=i[0].id,s}get formItems(){var e=super.formItems;if(this.supportRange)return e;var a=(0,v.default)(e).call(e,(e=>"external_port"===e.name)),r=(0,v.default)(e).call(e,(e=>"internal_port"===e.name));a.label=t("External Port"),r.label=t("Internal Port");var i={type:"input-int",min:1,max:65535,extra:t("Enter an integer value between 1 and 65535."),hasRequiredCheck:!0};return(0,g.default)(a,i,{placeholder:t("Please input {label}",{label:a.label})}),(0,g.default)(r,i,{placeholder:t("Please input {label}",{label:r.label})}),e}}a.Edit=k,(0,y.default)(k,"id","edit"),(0,y.default)(k,"title",t("Edit")),(0,y.default)(k,"policy","update_floatingip_port_forwarding"),(0,y.default)(k,"allowed",(()=>!0));var R=(0,I.inject)("rootStore")((0,I.observer)(k));a.default=R},3863:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(615)),d=r(1273);class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_floatingip_port_forwarding"),(0,l.default)(this,"getItemName",(e=>(0,d.getPortForwardingName)(e,e.floating_ip_address))),(0,l.default)(this,"onSubmit",(e=>{var{fip:t,id:a}=e,r=t.id;return s.default.delete({floatingipId:r,id:a})}))}get id(){return"delete"}get title(){return t("Delete Port Forwarding")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete port forwarding")}}a.default=u},3864:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Topology=a.errorStrokeColor=a.errorShadowColor=a.activeShadowColor=void 0;var p=f(r(164)),m=f(r(28)),h=f(r(422)),v=f(r(91)),g=f(r(54)),_=f(r(77)),b=f(r(29)),y=f(r(345));r(347);var I=f(r(348));r(1280);var A=f(r(1281));r(584);var S=f(r(420));r(231);var w=f(r(341)),x=f(r(1584)),P=f(r(49)),C=f(r(35)),E=f(r(0)),D=(r(161),f(r(3865))),k=f(r(3866)),R=(r(564),r(412)),N=f(r(233)),j=r(3867),M=f(r(1388)),T=r(565),B=r(36),F=r(571),L=f(r(1471)),O=f(r(1633)),Q=f(r(1628)),q=f(r(1304)),V=f(r(3869)),H=f(r(1634));function U(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function K(e){for(var t=1;t{G.on("node:mouseenter",(e=>{var t,{item:a}=e,{nodeType:r}=a._cfg.model;if((0,p.default)(t=["router","ins","lb"]).call(t,r)){var i,n=G.findAllByState("node","hover");(0,m.default)(n).call(n,(e=>{G.setItemState(e,"hover",!1)})),G.setItemState(a,"hover",!0);var l=G.findAllByState("edge","hover");(0,m.default)(l).call(l,(e=>{G.setItemState(e,"hover",!1),G.updateItem(e,{style:{stroke:e._cfg.target._cfg.model.style.stroke}})}));var o=a._cfg.model.style.stroke;(0,m.default)(i=a._cfg.edges).call(i,(e=>{G.setItemState(e,"hover",!0),G.updateItem(e,{style:{stroke:o}})}))}}))})),(0,C.default)(this,"updateGraph",(()=>{G&&(G.clear(),G.destroy(),G=null),this.setState({firstSubnetY:290,nodeCard:[],lbCard:[],insCard:[],extendWidth:0,loading:!0,withoutServerData:null,allData:null,showAll:!0}),this.initTopo()})),(0,C.default)(this,"renderRouterNode",((e,t)=>{var{routers:a}=this.topoInfo,r=[];if((0,m.default)(a).call(a,((a,i)=>{var{id:n,external_gateway_info:l,subnets:o,name:s}=a,d=(0,h.default)((t/10*i+t/20*3).toFixed(0));if(r.push({nodeCardX:d,nodeCardY:190}),e.nodes.push({id:n,x:d,y:190,type:"rect",nodeType:"router",infoIndex:i,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"ACTIVE"===a.status?globalCSS.successColor:Z,shadowColor:"ACTIVE"===a.status?J:W,shadowBlur:"ACTIVE"===a.status?5:4},anchorPoints:[[.5,0]]}),null!==l&&e.edges.push({id:"edge-".concat(s,"-ext"),target:"extNet",targetAnchor:1,source:n,sourceAnchor:0,type:"arrowLine",style:{stroke:j.subnetsColors[0][0]}}),0!==o.length){var u=0;(0,m.default)(o).call(o,(t=>{var a,r,i=(0,v.default)(a=(0,g.default)(r=e.subnetNodes).call(r,(e=>e.id))).call(a,t);if(-1!==i){var l,{style:{stroke:o}}=e.subnetNodes[i];u+=1,e.edges.push({id:(0,_.default)(l="edge-".concat(s,"-")).call(l,t),target:t,targetAnchor:0,source:n,sourceAnchor:u,type:"arrowLine",style:{stroke:o}})}})),e.nodes[e.nodes.length-1].anchorPoints=this.getAnchorPoints(1,u)}})),r[0]){var i=r[r.length-1].nodeCardX,{extendWidth:n}=this.state;if(i>=t-5){var l=Math.ceil((i-(t-5))/(t/10));this.setState({extendWidth:n+l*(t/10)})}this.setState({nodeCard:r})}})),(0,C.default)(this,"renderNetworkNode",((e,t)=>{var{subnets:a,networks:r}=this.topoInfo,{extendWidth:i}=this.state;e.subnetNodes=[],(0,m.default)(r).call(r,(r=>{if(!(0,F.isExternalNetwork)(r)){var n,l=[],{firstSubnetY:o}=this.state;(0,m.default)(n=r.subnets).call(n,(e=>{(0,m.default)(a).call(a,(t=>{t.id===e&&l.push(t)}))}));var s=o+32*l.length+60;(0,m.default)(l).call(l,((a,n)=>{var l=j.subnetsColors[0],d=l[n%l.length];e.subnetNodes.push({id:a.id,label:a.name,labelCfg:{position:"right",offset:-t/2,style:{fill:"#000000"}},type:"rect",x:t/2,y:o+32*n,cardY:s,anchorPoints:[[.5,0],[.5,1]],comboId:r.id,style:{radius:4,fill:d,stroke:d,width:t+i-50,height:20},pools:a.allocation_pools,networkId:a.network_id})})),0!==l.length&&(this.setState({firstSubnetY:e.subnetNodes[e.subnetNodes.length-1].y+200}),e.combos.push({id:r.id,label:r.name,type:"rect",size:[t-40,30],style:{fill:j.combosBackground[0],stroke:j.combosColors[0],radius:4},labelCfg:{refY:1,position:"top",style:{fontSize:12}}}))}}))})),(0,C.default)(this,"renderInstanceNode",((e,a)=>{var{servers:r,subnets:i,extNetwork:n}=this.topoInfo,l=[];(0,m.default)(r).call(r,((r,o)=>{var s,{fixed_addresses:d,fixed_networks:u}=r,c=(0,h.default)((a/10*2).toFixed(0)),f=null,p=0,g=[];(0,m.default)(n).call(n,(e=>g.push(...(0,B.toJS)(e.subnets))));var y=(0,b.default)(i).call(i,(e=>-1!==(0,v.default)(g).call(g,e.id)));if(!d[0]){var{insCard:I}=this.state;f=e.subnetNodes[0].cardY,(0,m.default)(I).call(I,(e=>{e[0]===c&&e[1]===f&&(c+=(0,h.default)((a/10).toFixed(0))),Math.round(c)>=a+this.state.extendWidth&&this.setState((e=>({extendWidth:e.extendWidth+(0,h.default)((a/10).toFixed(0))})))})),l.push([c,f]),e.nodes.push({id:r.id,x:c,y:f,type:"rect",nodeType:"ins",infoIndex:o,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"active"===r.vm_state?globalCSS.successColor:Z,shadowColor:"active"===r.vm_state?J:W,shadowBlur:"active"===r.vm_state?5:4}})}var A=0;(0,m.default)(d).call(d,(i=>{var n,s=null,d=0;if((0,m.default)(y).call(y,(e=>{var t;(0,m.default)(t=e.allocation_pools).call(t,(e=>{z(i,e.start,e.end)&&(s="extNet",d=0)}))})),(0,m.default)(n=e.subnetNodes).call(n,((e,t)=>{var a;-1!==(0,v.default)(u).call(u,e.networkId)&&(0,m.default)(a=e.pools).call(a,(a=>{z(i,a.start,a.end)&&(s=e.id,d=t)}))})),e.nodes[e.nodes.length-1].id!==r.id&&s){var{insCard:g}=this.state;f=e.subnetNodes[d].cardY,(0,m.default)(g).call(g,(e=>{e[0]===c&&e[1]===f&&(c+=(0,h.default)((a/10).toFixed(0))),c>=a+this.state.extendWidth&&this.setState((e=>({extendWidth:e.extendWidth+a/10})))})),l.push([c,f]),e.nodes.push({id:r.id,x:c,y:f,type:"rect",nodeType:"ins",infoIndex:o,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"active"===r.vm_state?globalCSS.successColor:Z,shadowColor:"active"===r.vm_state?J:W,shadowBlur:"active"===r.vm_state?5:4}})}s&&function(){var n,{style:{stroke:o}}=e.subnetNodes[d],u=e.subnetNodes[d].y;ue.source!==r.id&&e.linePath&&e.linePath.source_x===c&&e.topAnchorNum===p&&(e.linePath.source_y>=f&&e.linePath.target_y<=u||e.linePath.source_y<=f&&e.linePath.target_y>=u))),I=(0,b.default)(g=e.nodes).call(g,(e=>e.x===c&&e.y===f&&e.id!==r.id));if(0===y.length&&0===I.length)break;c+=(0,h.default)((a/10).toFixed(0)),e.nodes[e.nodes.length-1].x=c,l[l.length-1]=[c,f],Math.round(c)>=a+t.state.extendWidth&&t.setState((e=>({extendWidth:e.extendWidth+a/10})))}e.edges.push({id:(0,_.default)(n="edge-".concat(r.id,"-")).call(n,i),target:s,targetAnchor:u>f?0:1,source:r.id,sourceAnchor:A,type:"arrowLine",topAnchorNum:p,style:{stroke:o},linePath:{source_x:c,source_y:f,target_y:u}}),A+=1}()}));var S=this.getAnchorPoints(p,A-p),w=(0,b.default)(s=e.edges).call(s,(e=>e.source===r.id));(0,m.default)(w).call(w,((e,t)=>{"extNet"===e.target&&1===S[t][1]&&([S[t],S[p-1]]=[S[p-1],S[t]])})),e.nodes[e.nodes.length-1].anchorPoints=S,this.setState({insCard:l})}))})),(0,C.default)(this,"getAnchorPoints",((e,t)=>{var a=[];return e>0&&a.push(...(0,F.getAnchorData)(e,0)),t>0&&a.push(...(0,F.getAnchorData)(t,1)),a})),(0,C.default)(this,"renderG6",(()=>{D.default.registerEdge("arrowLine",{draw(e,t){var{endPoint:a,startPoint:r}=e,i=e.style.stroke;return t.addShape("path",{attrs:{path:[["M",r.x,r.y],["L",r.x,a.y]],endArrow:{path:D.default.Arrow.vee(4,8,-4),d:1},startArrow:{path:D.default.Arrow.vee(4,8,-4),d:1},stroke:i||"#C8DEFF",lineWidth:2},name:"path-shape"}),t}});var e=document.getElementById("container").scrollWidth,t={nodes:[{id:"networkImage",x:e/2,y:50,img:k.default,type:"image",size:56,clipCfg:{show:!1,type:"circle",r:15}},{id:"extNet",type:"rect",label:"extNetwork",labelCfg:{position:"right",offset:-e/2,style:{fill:"#000000"}},x:e/2,y:100,anchorPoints:[[.5,0],[0,1]],style:{radius:4,fill:"#FFFFFFFF",stroke:j.subnetsColors[0][0],width:e-10,height:20}}],edges:[{id:"edge3",target:"networkImage",source:"extNet",style:{startArrow:{path:D.default.Arrow.vee(4,6,-1),d:2},lineWidth:1,stroke:j.subnetsColors[0][0]}}],combos:[]},{servers:a}=this.topoInfo;if(a){t=G.cfg.data,this.renderRouterNode(t,e),this.extendNetworkWidth(t,e);var r=JSON.parse((0,y.default)(t));this.setState({withoutServerData:r}),this.renderInstanceNode(t,e),this.extendNetworkWidth(t,e);var i=JSON.parse((0,y.default)(t));this.setState({allData:i})}else this.renderNetworkNode(t,e),this.extendNetworkWidth(t,e);G&&(G.clear(),G.destroy());var{firstSubnetY:n,extendWidth:l}=this.state;(G=new D.default.Graph({container:"container",width:e+l,height:n,nodeStateStyles:{hover:{lineWidth:3}}})).data(t),G.render(),this.bindEvents(),this.setState({loading:!1})})),(0,C.default)(this,"extendNetworkWidth",((e,t)=>{var{subnetNodes:a,nodes:r}=e,{extendWidth:i}=this.state;i>0&&((0,m.default)(a).call(a,(e=>{e.style.width=t-50+i,e.x=(t+i)/2,e.labelCfg.offset=-(t+i)/2})),r[1].style.width=t+i-10,r[0].x=(t+i)/2,r[1].labelCfg.offset=-(t+i)/2,r[1].x=(t+i)/2),a&&a[0]&&(e.nodes=(0,_.default)(r).call(r,a))})),(0,C.default)(this,"onCheckChange",(()=>{var{firstSubnetY:e,extendWidth:t,showAll:a,withoutServerData:r,allData:i}=this.state,n=document.getElementById("container").scrollWidth,l=!a;this.setState({showAll:l});var o=n+t;l||(o=n-t),G.clear(),G.destroy(),G=null,(G=new D.default.Graph({container:"container",width:o,height:e,nodeStateStyles:{hover:{lineWidth:3}}})).data(l?i:r),G.render(),this.bindEvents()})),this.init(),this.state={firstSubnetY:290,nodeCard:[],lbCard:[],insCard:[],extendWidth:0,loading:!0,showAll:!0,withoutServerData:null,allData:null}}componentDidMount(){}get topoInfo(){return this.store.topology}initNetwork(){var e=this;return(0,P.default)((function*(){yield e.store.fetchTopoNetwork(K(K({},e.props.match.params),{},{metrics:!0})),e.renderG6()}))()}initAll(){var e=this;return(0,P.default)((function*(){yield e.store.fetchTopo(K(K({},e.props.match.params),{},{metrics:!0})),e.topoInfo.networks&&e.renderG6()}))()}initTopo(){this.initNetwork(),this.initAll()}init(){this.store=N.default,G=null,this.initTopo()}render(){var{nodeCard:e,insCard:a,loading:r,showAll:i}=this.state,{topology:n}=this.store;return E.default.createElement("div",{className:L.default.main},E.default.createElement("div",{style:{marginBottom:16,marginTop:16,marginLeft:16}},E.default.createElement(M.default,{primaryActions:[O.default]},t("create router")),E.default.createElement(M.default,{primaryActions:[Q.default]},t("Create Network")),E.default.createElement(M.default,{primaryActions:[q.default]},t("Create Instance")),E.default.createElement(w.default,{type:"primary",shape:"circle",style:{marginLeft:16},onClick:()=>this.updateGraph(),icon:E.default.createElement(x.default,null)}),E.default.createElement(S.default,{onChange:()=>this.onCheckChange(),checked:i},t("Show Instance"))),E.default.createElement(I.default,{spinning:r},E.default.createElement(A.default,{style:{margin:16},id:"card",className:L.default.container},E.default.createElement("div",{id:"container"},n&&(0,g.default)(e).call(e,((e,t)=>E.default.createElement(H.default,{key:t,x:e.nodeCardX,y:e.nodeCardY,data:this.topoInfo,infoIndex:t}))),i?n&&(0,g.default)(a).call(a,((e,t)=>E.default.createElement(V.default,{key:t,x:e[0],y:e[1],data:this.topoInfo,infoIndex:t}))):null))))}}a.Topology=X;var Y=(0,R.inject)("rootStore")((0,R.observer)(X));a.default=Y},3866:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/cloud.1739198880.png"},3867:function(e,t,a){"use strict";a(20)(t,"__esModule",{value:!0}),t.subnetsColors=t.combosColors=t.combosBackground=void 0;t.combosBackground=["rgba(0,104,255,0.05)","rgba(94,246,255,0.08)","rgba(236,220,255,0.08)","rgba(255,255,240,0.3)"];t.combosColors=["#9AC3FF","#A5FFF0","#ECDCFF","#FFFF00"];t.subnetsColors=[["#9AC3FF","#4C95FF","#0068FF","#0080FF","#0066CC","#0000FF"],["#CCF2EC","#92DACF","#46B1A5","#CCF2EC","#92DACF","#46B1A5"],["#ECDCFF","#D6B3FF","#BA80FF","#ECDCFF","#D6B3FF","#BA80FF"],["#FFFACD","#FFFF00","#FFD700","#FFFACD","#FFFF00","#FFD700"]]},3868:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__node-tooltips--1M7su {\n position: absolute;\n}\n.index__node-tooltips--1M7su .ant-card-body {\n padding: 15px;\n}\n.index__image-icon--2ABo6 {\n width: 15px;\n height: 15px;\n margin-right: 2px;\n}\n.index__descriptions-item--iUKkb .ant-descriptions-item-label {\n width: 80px;\n}\n.index__descriptions-item--iUKkb .ant-descriptions-row > th,\n.index__descriptions-item--iUKkb .ant-descriptions-row > td {\n padding-bottom: 8px;\n}\n.index__node-card-title--3zjAj {\n font-size: 16px;\n}\n.index__card-button--1hPxO .ant-btn-primary {\n margin-right: 6px;\n}\n.index__main--2dSfi {\n height: 100%;\n}\n.index__main--2dSfi .ant-btn-primary {\n margin-right: 16px;\n}\n.index__container--3ea1Q {\n height: calc(100vh - 170px);\n overflow-y: auto;\n}\n",""]),t.locals={"node-tooltips":"index__node-tooltips--1M7su","image-icon":"index__image-icon--2ABo6","descriptions-item":"index__descriptions-item--iUKkb","node-card-title":"index__node-card-title--3zjAj","card-button":"index__card-button--1hPxO",main:"index__main--2dSfi",container:"index__container--3ea1Q"}},3869:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(54));r(589);var o=n(r(590));r(1384);var s=n(r(1385)),d=n(r(35)),u=n(r(0)),c=(r(161),r(1248)),f=n(r(3870)),p=n(r(597)),m=r(204),h=n(r(1471)),v=n(r(1634));class g extends v.default{constructor(e){super(e),(0,d.default)(this,"detailButtons",(()=>{var{data:{servers:e},infoIndex:a}=this.props,{status:r}=e[a];return[..."SHUTOFF"===r?[{name:t("Power On"),click:null}]:[{name:t("Power Off"),click:null}],{name:t("Associate IP"),click:null},{name:t("Add network"),click:null},{name:t("VNC"),click:null},{name:t("Delete"),type:"danger",click:null}]})),this.state={}}get detailInfos(){return[{title:t("Name"),dataIndex:"name",width:100,render:(e,t)=>e?u.default.createElement(m.Link,{to:"/compute/instance/detail/".concat(t.id)},e):"-"},{title:t("UUID"),dataIndex:"id"},{title:t("Status"),dataIndex:"status",isHideable:!0,render:e=>c.instanceStatus[e&&e.toLowerCase()]||"-"},{title:t("Image"),dataIndex:"image_os_distro",isHideable:!0,render:(e,t)=>u.default.createElement(p.default,{type:e,title:t.image_name}),stringify:(e,t)=>t.image_name},{title:t("Fixed IP"),dataIndex:"fixed_addresses",isHideable:!0,width:120,render:e=>e.length?(0,l.default)(e).call(e,(e=>u.default.createElement("span",{key:e},e,u.default.createElement("br",null)))):"-",stringify:e=>e.join(",")||"-"},{title:t("Floating IP"),dataIndex:"floating_addresses",isHideable:!0,width:120,render:e=>e.length?(0,l.default)(e).call(e,(e=>u.default.createElement("span",{key:e},e,u.default.createElement("br",null)))):"-"}]}render(){var{x:e,y:a}=this.props,{data:{servers:r},infoIndex:i}=this.props,n=r[i];return u.default.createElement("div",{className:h.default["node-tooltips"],style:{top:"".concat(a,"px"),left:"".concat(e-8,"px")}},u.default.createElement(o.default,{placement:"rightTop",content:this.renderCard(435,n),title:this.renderTitle(t("Instance"),n.name)},u.default.createElement("div",{style:{textAlign:"center",width:"66px",height:"50px",overflow:"hidden"}},u.default.createElement(s.default,{src:f.default,shape:"square",size:28}),u.default.createElement("div",null,n.name))))}}a.default=g},3870:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,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"},3871:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/router.1739198880.png"},3872:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RouterDetail=void 0;var l=r(412),o=r(575),s=n(r(1243)),d=r(1267),u=n(r(3873)),c=n(r(3874)),f=n(r(3875)),p=n(r(1632));class m extends s.default{get name(){return t("router")}get policy(){return"get_router"}get listUrl(){return this.getRoutePath("router")}get actionConfigs(){return this.isAdminPage?p.default.adminConfigs:p.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:d.routerStatus},{title:t("Admin State"),dataIndex:"admin_state_up",render:e=>(0,d.getRouterState)(e)||"-"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default},{title:t("Ports"),key:"ports",component:c.default},{title:t("Static Routes"),key:"staticRoutes",component:f.default}]}init(){this.store=new o.RouterStore}}a.RouterDetail=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3873:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCards(){return[this.aZoneCard]}get rightCards(){return[this.externalNetInfo]}get externalNetInfo(){var e=[{label:t("Network Name"),dataIndex:"externalNetworkName"},{label:t("Network ID"),dataIndex:"externalNetworkId"},{label:t("SNAT Enabled"),dataIndex:"external_gateway_info.enable_snat",valueRender:"yesNo"},{label:t("External Fixed IPs"),dataIndex:"external_gateway_info.external_fixed_ips",render:e=>e&&0!==e.length?(0,l.default)(e).call(e,((e,a)=>o.default.createElement("div",{key:"ip-".concat(a)},o.default.createElement("div",{key:e.subnet_id},o.default.createElement("b",null,t("Subnet ID")),": ",e.subnet_id),o.default.createElement("div",{key:e.ip_address},o.default.createElement("b",null,t("IP Address")),": ",e.ip_address),o.default.createElement("div",{style:{marginBottom:"8px"}})))):"-"}];return{title:t("External Network Info"),options:e,labelCol:4}}get aZoneCard(){var e=[{label:t("Current Availability Zones"),dataIndex:"availability_zones",render:e=>(e||[]).join(",")||"-"},{label:t("Availability Zone Hints"),dataIndex:"availability_zone_hints",render:e=>(e||[]).join(",")||"-"}];return{title:t("Availability Zone Info"),options:e}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3874:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Ports=void 0;var p=f(r(54)),m=f(r(58)),h=f(r(49)),v=f(r(35)),g=f(r(0)),_=r(412),b=f(r(1242)),y=r(1258),I=r(582),A=r(163);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class w extends b.default{constructor(){super(...arguments),(0,v.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("routerPortDetail"),routeParamsFunc:e=>({routerId:this.id,id:e.id})},{title:t("IP Address"),dataIndex:"fixed_ips",isHideable:!0,render:e=>e&&0!==e.length?(0,p.default)(e).call(e,(e=>g.default.createElement("div",{key:e.ip_address},e.ip_address))):"-",stringify:e=>e&&0!==e.length?(0,p.default)(e).call(e,(e=>e.ip_address)).join(","):"-"},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Associated Resources"),dataIndex:"device_owner",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:y.portStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=new I.PortStore}get policy(){return"get_port"}get name(){return t("ports")}get id(){return this.params.id}getData(){var e=arguments,t=this;return(0,h.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,m.default)(a,["silent"]);r&&(t.list.silent=!0);var{id:n}=t.props.match.params,{tab:l}=i,f=(0,m.default)(i,["tab"]);t.fetchListWithTry((0,h.default)((function*(){yield t.store.fetchList(function(e){for(var t=1;t[{title:t("Destination CIDR"),dataIndex:"destination"},{title:t("Next Hop"),dataIndex:"nexthop",isHideable:!0}]))}init(){this.store=d.default}get policy(){return"get_router"}get name(){return t("static routers")}get actionConfigs(){return this.isAdminPage?u.default.actionConfigsAdmin:u.default.actionConfigs}get searchFilters(){return[]}}a.StaticRouters=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3876:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3877)),l=i(a(3878)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=o},3877:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(623)),u=r(1241);class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",((e,t)=>{var{match:{params:{id:a}={}}={}}=t,r=[e];return this.store.addStaticRoute({id:a,routes:r})}))}init(){this.store=d.default}get name(){return t("Create static route")}get defaultValue(){return{}}get messageHasItemName(){return!1}get formItems(){return[{name:"destination",label:t("Destination CIDR"),type:"input",required:!0},{name:"nexthop",label:t("Next Hop"),type:"input",required:!0}]}}a.Create=c,(0,o.default)(c,"id","create"),(0,o.default)(c,"title",t("Create Static Route")),(0,o.default)(c,"policy","update_router"),(0,o.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3878:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(35)),s=r(1241),d=n(r(623));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","update_router"),(0,o.default)(this,"getItemName",(e=>{var t,{destination:a,nexthop:r}=e;return(0,l.default)(t="".concat(a,"(")).call(t,r,")")})),(0,o.default)(this,"onSubmit",(e=>{var{destination:t,nexthop:a,router_id:r}=e,i=[{destination:t,nexthop:a}];return d.default.removeStaticRoute({id:r,routes:i})}))}get id(){return"delete"}get title(){return t("Delete Static Route")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete static route")}}a.default=u},3879:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(177)),d=n(r(0)),u=r(412),c=n(r(1249));class f extends c.default{get leftCards(){var e=[this.portInfo],{dns_assignment:t=[],fixed_ips:a=[],deviceOwner:r={}}=this.detailData;return t.length>0&&e.push(this.dnsAssignment),a.length>0&&e.push(this.fixedIps),r&&this.isAdmin&&e.push(this.deviceOwner),e.push(this.binding),e}get portInfo(){var e=[{label:t("Network Name"),dataIndex:"network_name"},{label:t("Network ID"),dataIndex:"network_id"},{label:t("MAC Address"),dataIndex:"mac_address"},{label:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"},{label:t("DNS Name"),dataIndex:"dns_name",hidden:!this.isAdmin}];return this.detailData.mac_state&&e.push({label:t("MAC Learning State"),dataIndex:"mac_state"}),this.detailData.qos_policy_id&&e.push({label:t("QoS Policy ID"),dataIndex:"qos_policy_id"}),{title:t("Port Info"),options:e}}get dnsAssignment(){var e=this.detailData.dns_assignment[0]||{},{hostname:a,ip_address:r}=e,i=[{label:t("Hostname"),dataIndex:"dns_assignment",render:()=>a},{label:t("IP Address"),dataIndex:"ip_address",render:()=>r}];return{title:t("DNS Assignment"),options:i}}get fixedIps(){var e=this.detailData.fixed_ips[0]||{},{ip_address:a,subnet_id:r}=e,i=[{label:t("IP Address"),dataIndex:"ip_address",render:()=>a},{label:t("Subnet ID"),dataIndex:"subnet_id",render:()=>r}];return{title:t("Fixed IPs"),options:i}}get deviceOwner(){var e=[{label:t("Device Owner"),dataIndex:"device_owner"},{label:t("Device ID"),dataIndex:"device_id"}];return{title:t("Attached Device"),options:e}}get binding(){var e=[{label:t("VNIC Type"),dataIndex:"binding__vnic_type"}];if(this.detailData.binding__host_id){var a=[{label:t("Host"),dataIndex:"binding__host_id"},{label:t("Profile"),dataIndex:"binding__profile",render:e=>{var t;return!e||(0,s.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>d.default.createElement("div",{key:t},d.default.createElement("b",null,t),": ",d.default.createElement("b",null,e[t]))))}},{label:t("VIF Type"),dataIndex:"binding__vif_type"},{label:t("VIF Details"),dataIndex:"binding__vif_details",render:e=>{var t;return!e||(0,s.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>d.default.createElement("div",{key:t},d.default.createElement("b",null,t)," ",d.default.createElement("span",null,e[t].toString()))))}}];e=[...e,...a]}return{title:t("Binding"),options:e}}}a.BaseDetail=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3880:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PortDetail=void 0;var l=n(r(164)),o=n(r(29)),s=r(412),d=r(572),u=n(r(1243)),c=r(571),f=n(r(3881)),p=n(r(3886)),m=n(r(3890)),h=n(r(3894)),v=n(r(1607));class g extends u.default{get name(){return t("port")}get policy(){return"get_port"}get listUrl(){var{networkId:e,subnetId:t,instanceId:a}=this.params;return this.isSubnetPortDetail?this.getRoutePath("subnetDetail",{id:t,networkId:e},{tab:"ports"}):this.isNetworkPortDetail?this.getRoutePath("networkDetail",{id:e},{tab:"ports"}):this.isInstancePortDetail?this.getRoutePath("instanceDetail",{id:a},{tab:"interface"}):this.getRoutePath("port")}get isSubnetPortDetail(){var e;return(0,l.default)(e=this.path).call(e,"subnet")}get isNetworkPortDetail(){var e;return(0,l.default)(e=this.path).call(e,"networks")&&!this.isSubnetPortDetail}get isInstancePortDetail(){var e;return(0,l.default)(e=this.path).call(e,"instance")}get actionConfigs(){return this.isAdminPage?v.default.adminActions:v.default.actionConfigs}getActionData(){return this.detailData.itemInList||{}}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Status"),dataIndex:"status",valueMap:c.networkStatus},{title:t("Owned Network"),dataIndex:"itemInList.network_name"},{title:t("Network ID"),dataIndex:"network_id"},{title:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"},{title:t("Mac Address"),dataIndex:"mac_address"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:h.default},{title:t("Fixed IPs"),key:"fixed_ips",component:f.default},{title:t("Security Groups"),key:"security_groups",component:p.default},{title:t("Allowed Address Pairs"),key:"allowed_address_pair",component:m.default}],{port_security_enabled:a}=this.detailData;return a?e:(0,o.default)(e).call(e,(e=>"security_groups"!==e.key))}init(){this.store=new d.PortStore}}a.PortDetail=g;var _=(0,s.inject)("rootStore")((0,s.observer)(g));a.default=_},3881:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FixedIP=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(3882),u=n(r(3883));class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Floating IP"),dataIndex:"fip",render:e=>0===e.length?"-":e[0].floating_ip_address},{title:t("Owned Subnet"),dataIndex:"subnet",render:e=>e&&e.name||"-"}]))}init(){this.store=new d.FixedIpStore,this.downloadStore=new d.FixedIpStore}get rowKey(){return"ip_address"}get policy(){return"get_port"}get name(){return t("Fixed IP")}get actionConfigs(){return this.isAdminPage?u.default.adminConfigs:u.default.actionConfigs}get hideCustom(){return!0}get searchFilters(){return[{label:t("IP Address"),name:"ip_address"},{label:t("Owned Subnet"),name:"subnet",filterFunc:(e,t)=>e.name===t}]}}a.FixedIP=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3882:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FixedIpStore=void 0;var f=c(a(350)),p=c(a(591)),m=c(a(54)),h=c(a(63)),v=c(a(28)),g=c(a(35)),_=c(a(49)),b=c(a(58)),y=c(a(233)),I=c(a(346)),A=c(a(50)),S=c(a(53));function w(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function x(e){for(var t=1;t{var{all_projects:t}=e;return(0,b.default)(e,["all_projects"])}}getItemFloatingIPs(e,t){return(0,_.default)((function*(){return I.default.pureFetchList({fixed_ip_address:e,port_id:t})}))()}listDidFetch(e){var t=this;return(0,_.default)((function*(){if(0===e.length)return[];var a=e[0],{fixed_ips:r=[],id:i}=a,n=(0,f.default)(new p.default((0,m.default)(r).call(r,(e=>e.subnet_id)))),l=yield h.default.all((0,m.default)(n).call(n,(e=>y.default.fetchSubnetDetail({id:e})))),o={};(0,v.default)(l).call(l,(e=>{o[e.id]=e}));var s=yield h.default.all((0,m.default)(r).call(r,(e=>t.getItemFloatingIPs(e.ip_address,i))));return(0,m.default)(r).call(r,((e,t)=>x(x({},e),{},{subnet:o[e.subnet_id],fip:s[t],port:a})))}))()}}t.FixedIpStore=P;var C=new P;t.default=C},3883:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3884)),l=i(a(3885)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3884:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AllocateIP=void 0;var l=n(r(54)),o=n(r(63)),s=n(r(49)),d=n(r(35)),u=r(412),c=r(1241),f=n(r(572)),p=r(233),m=r(417);class h extends c.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{fixed_ips:t}=e,a=(0,l.default)(t).call(t,(e=>{var t={subnet_id:e.subnet};return e.ip_address&&"manual"===e.ip_address.type&&(t.ip_address=e.ip_address.ip),t}));return f.default.update(this.item,{fixed_ips:[...a,...this.item.fixed_ips]})}))}get name(){return t("Allocate IP")}init(){this.networkStore=new p.NetworkStore,this.subnetStore=new m.SubnetStore,this.getNetworkDetail(this.item.network_id),this.getSubnets(this.item.network_id)}getSubnets(e){var t=this;return(0,s.default)((function*(){var a=yield t.subnetStore.fetchList({network_id:e});t.setState({subnetDetails:a||[]})}))()}getNetworkDetail(e){var t=this;return(0,s.default)((function*(){var a=yield t.networkStore.fetchDetail({id:e});t.updateFormValue("network_name",a.name)}))()}get defaultValue(){return{network_id:this.item.network_id}}get isAllowed(){return!0}static get modalSize(){return"large"}get messageHasItemName(){return!1}get formItems(){var{subnetDetails:e=[]}=this.state;return[{name:"network_id",label:t("Owned Network ID"),type:"label"},{name:"network_name",label:t("Owned Network"),type:"label"},{name:"fixed_ips",label:t("Owned Subnet"),type:"ip-distributor",subnets:e,required:!0}]}}a.AllocateIP=h,(0,d.default)(h,"id","allocate-ip"),(0,d.default)(h,"title",t("Allocate IP")),(0,d.default)(h,"policy","update_port:fixed_ips:ip_address"),(0,d.default)(h,"allowed",(()=>o.default.resolve(!0)));var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},3885:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(28)),o=n(r(29)),s=n(r(63)),d=n(r(35)),u=r(1241),c=n(r(572));class f extends u.ConfirmAction{constructor(){super(...arguments),(0,d.default)(this,"getItemName",(e=>e.ip_address)),(0,d.default)(this,"policy","update_port"),(0,d.default)(this,"onSubmit",((e,t,a,r,i)=>{var{port:{id:n,fixed_ips:d=[]}={}}=e,u=d;if(a){if(0!==r)return s.default.resolve();(0,l.default)(i).call(i,(e=>{var{subnet_id:t,ip_address:a}=e;u=(0,o.default)(u).call(u,(e=>e.ip_address!==a||e.subnet_id!==t))}))}else{var{subnet_id:f,ip_address:p}=e;u=(0,o.default)(d).call(d,(e=>e.ip_address!==p||e.subnet_id!==f))}return c.default.update({id:n},{fixed_ips:u})}))}get id(){return"delete"}get title(){return t("Release Fixed IP")}get buttonText(){return t("Release")}get isDanger(){return!0}get actionName(){return t("release fixed ip")}get passiveAction(){return t("be released")}}a.default=f},3886:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SecurityGroup=void 0;var l=n(r(54));r(347);var o=n(r(348));r(426);var s=n(r(429)),d=n(r(1458));r(585);var u=n(r(587)),c=n(r(343));r(1246);var f=n(r(1247));r(1244);var p=n(r(1245));r(231);var m=n(r(341));r(1300);var h=n(r(1301)),v=n(r(35));r(1468);var g=n(r(1469)),_=n(r(0)),b=r(412),y=r(572),I=(r(161),n(r(1608))),A=r(204),S=n(r(4)),w=r(36),x=(r(564),n(r(1388))),P=n(r(1302)),C=r(354),E=r(163),D=r(567),k=n(r(3887)),R=n(r(3888)),{Panel:N}=g.default;class j extends _.default.Component{constructor(e){super(e),(0,v.default)(this,"refreshSecurityGroup",(()=>{this.store.fetchSecurityGroupsDetail(this.portId)})),this.store=new y.PortStore}componentDidMount(){this.refreshSecurityGroup()}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,D.getPath)({key:t,params:{id:e}})}get portId(){var{detail:{id:e}}=this.props;return e}get isAdminPage(){var{pathname:e}=this.props.location;return(0,E.isAdminPage)(e)}renderPanelTitle(e){var{security_groups:{data:a}}=this.store,r=this.getDetailUrl(e.id);return _.default.createElement(f.default,null,_.default.createElement(p.default,{span:18},_.default.createElement("span",null,t("Security Group")),_.default.createElement(h.default,{type:"vertical",className:R.default["header-divider"]}),_.default.createElement(m.default,{type:"link"},e.name)),_.default.createElement(p.default,{span:6},!this.isAdminPage&&_.default.createElement(_.default.Fragment,null,_.default.createElement(A.Link,{style:{fontSize:12,marginRight:16},to:r},t("Edit Rule"))),!this.isAdminPage&&1!==a.length&&_.default.createElement(_.default.Fragment,null,_.default.createElement(P.default,{actions:{firstAction:k.default},onFinishAction:this.refreshSecurityGroup,item:e,containerProps:this.props},t("Detach")))))}renderPanel(e,t){return _.default.createElement(N,{header:this.renderPanelTitle(e,t),key:t,className:R.default.panel},_.default.createElement(u.default,(0,c.default)({size:"middle",pagination:!1,bordered:!1,rowKey:"id"},this.state,{columns:(0,C.getSelfColumns)(this),dataSource:e.security_group_rules?(0,w.toJS)(e.security_group_rules):null})))}render(){var e,{security_groups:t}=this.store;return _.default.createElement("div",{className:(0,S.default)(R.default.wrapper,this.className)},this.isAdminPage?null:_.default.createElement("div",{style:{marginBottom:20}},_.default.createElement(x.default,{containerProps:this.props,primaryActions:[I.default],onFinishAction:this.refreshSecurityGroup})),_.default.createElement(o.default,{spinning:t.isLoading},t.data&&0!==t.data.length?_.default.createElement(g.default,{className:R.default.collapse,accordion:!0,bordered:!1,expandIcon:e=>{var{isActive:t}=e;return _.default.createElement(d.default,{rotate:t?90:0})}},(0,l.default)(e=t.data).call(e,((e,t)=>this.renderPanel(e,t)))):_.default.createElement(s.default,{image:s.default.PRESENTED_IMAGE_SIMPLE,style:{backgroundColor:"white",padding:"32px 0"}})))}}a.SecurityGroup=j;var M=(0,b.inject)("rootStore")((0,b.observer)(j));a.default=M},3887:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(35)),s=r(1241),d=n(r(572));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","update_port"),(0,o.default)(this,"allowedCheckFunc",(()=>!0)),(0,o.default)(this,"onSubmit",(e=>{var{port:{id:t,security_groups:a=[]}={}}=e,r={security_groups:(0,l.default)(a).call(a,(t=>t!==e.id))};return d.default.update({id:t},r)}))}get id(){return"detach"}get title(){return t("Detach Security Group")}get isDanger(){return!0}get buttonText(){return t("Detach")}get actionName(){return t("detach security group")}}a.default=u},3888:function(e,t,a){var r=a(3889);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(65)(r,i);r.locals&&(e.exports=r.locals)},3889:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--3LuNN {\n min-height: calc(100vh - 108px);\n padding: 0 16px;\n}\n.index__collapse--3_l12 {\n margin-bottom: 24px;\n overflow: hidden;\n}\n.index__panel--3V7V- {\n margin-bottom: 24px;\n padding-top: 12px;\n padding-bottom: 12px;\n font-size: larger;\n background: #fff;\n}\n.index__header-divider--EyyRf {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__image--XS90m {\n width: 100px;\n padding: 10px;\n}\n.index__radio-button--2oJLs .ant-radio-button-wrapper {\n width: 250px;\n height: 100px;\n margin-right: 40px;\n padding: 15px;\n}\n.index__security-group-text--1Hv_J {\n font-size: 14px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--3LuNN",collapse:"index__collapse--3_l12",panel:"index__panel--3V7V-","header-divider":"index__header-divider--EyyRf",image:"index__image--XS90m","radio-button":"index__radio-button--2oJLs","security-group-text":"index__security-group-text--1Hv_J"}},3890:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.AllowedAddressPair=void 0;var p=f(r(54)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=f(r(572)),b=f(r(432)),y=f(r(3891));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;tthis.props.detail.allowed_address_pairs)),(0,h.default)(this,"getColumns",(()=>[{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Mac Address"),dataIndex:"mac_address"}]))}init(){this.store=_.default,this.store.setDetail(this.props.detail)}get list(){var e,t=new b.default;this.props.detail.allowed_address_pairs&&t.update({data:(0,p.default)(e=this.props.detail.allowed_address_pairs||[]).call(e,((e,t)=>A(A({},e),{},{id:"port_detail_allowed_address_pair_".concat(t)})))});return t}get isLoading(){return!1}getData(){return(0,m.default)((function*(){}))()}get policy(){return"get_port"}get name(){return t("Allowed Address Pairs")}get actionConfigs(){return this.isAdminPage?y.default.adminConfigs:y.default.actionConfigs}get hideCustom(){return!0}get searchFilters(){return[{label:t("IP Address"),name:"ip_address"},{label:t("Mac Address"),name:"mac_address"}]}}a.AllowedAddressPair=S;var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3891:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3892)),l=i(a(3893)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3892:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAllowedAddressPair=void 0;var l=n(r(1252)),o=n(r(63)),s=n(r(35)),d=n(r(177)),u=r(412),c=r(1241),f=n(r(572)),p=r(565),{isIpCidr:m,isIPv6Cidr:h}=p.ipValidate;class v extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{allowed_address_pairs:t=[]}=this.item,{ip_address:a,mac_address:r}=e,i={ip_address:a};return"manual"===r.type&&(i.mac_address=r.mac),f.default.update(this.item,{allowed_address_pairs:[i,...t]}).then((e=>{f.default.setDetail(e.port)}))})),(0,s.default)(this,"checkCidr",(e=>{if((0,d.default)(e))return!1;var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!m(e))&&!("ipv6"===t&&!h(e))}))}init(){this.store=f.default}get name(){return t("create allowed address pair")}get instanceName(){return(0,l.default)(this).ip_address}get isAllowed(){return!0}static get modalSize(){return"middle"}get defaultValue(){return{ip_version:"ipv4"}}get formItems(){return[{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e},(()=>{this.formRef.current.validateFields()}))},required:!0},{name:"ip_address",label:t("CIDR"),type:"input",required:!0,validator:(e,a)=>this.checkCidr(a)?o.default.resolve():o.default.reject(new Error(t("Invalid CIDR.")))},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},required:!0,type:"mac-address",options:[{label:t("From port"),value:"auto"},{label:t("Manual input"),value:"manual"}]}]}}a.CreateAllowedAddressPair=v,(0,s.default)(v,"id","create-ip"),(0,s.default)(v,"title",t("Create Allowed Address Pair")),(0,s.default)(v,"policy","update_port"),(0,s.default)(v,"allowed",(()=>o.default.resolve(!0)));var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3893:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(572));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"getItemName",(e=>e.ip_address)),(0,s.default)(this,"policy","update_port"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,s.default)(this,"onSubmit",function(){var e=(0,o.default)((function*(e,t){var{allowed_address_pairs:a=[],id:r}=t.detail,i=(0,l.default)(a).call(a,(t=>t.ip_address!==e.ip_address));return u.default.update({id:r},{allowed_address_pairs:i}).then((e=>{u.default.setDetail(e.port)}))}));return function(t,a){return e.apply(this,arguments)}}())}get id(){return"delete"}get title(){return t("Delete Allowed Address Pair")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete allowed address pair")}isOwnerOrAdmin(){return!0}}a.default=c},3894:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(77)),o=r(412),s=n(r(1249)),d=r(66);class u extends s.default{get leftCards(){return[this.baseInfoCard]}get qosEndpoint(){return(0,d.qosEndpoint)()}get baseInfoCard(){var e=[{label:t("Bind Device Type"),dataIndex:"device_owner"},{label:t("Bind Device"),dataIndex:"device_id",render:(e,t)=>{var{itemInList:{device_id:a,device_owner:r,server_name:i}={}}=t;if(a&&"compute:nova"===r){var n,o=i?(0,l.default)(n="".concat(a," (")).call(n,i,")"):a;return this.getLinkRender("instanceDetail",o,{id:a},{tab:"interface"})}return e||"-"}},{label:t("VNIC Type"),dataIndex:"binding:vnic_type"}];return this.qosEndpoint&&e.push({label:t("QoS Policy"),dataIndex:"qos_policy_id",copyable:!1,render:e=>{var t;if(!e)return"-";var{qosPolicy:a}=this.detailData,{name:r}=a||{},i=r?(0,l.default)(t="".concat(e,"(")).call(t,r,")"):e;return this.getLinkRender("networkQosDetail",i,{id:e})}}),{title:t("Base Info"),options:e}}}a.BaseDetail=u;var c=(0,o.inject)("rootStore")((0,o.observer)(u));a.default=c},3895:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.QoSPolicy=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(1636));class u extends o.default{get checkEndpoint(){return!0}get endpoint(){return(0,s.qosEndpoint)()}get tabs(){var e=[{title:t("Current Project QoS Policies"),key:"projectQoSPolicy",component:d.default},{title:t("Shared QoS Policies"),key:"sharedQoSPolicy",component:d.default}];return this.hasAdminRole&&e.push({title:t("All QoS Policies"),key:"allQoSPolicy",component:d.default}),e}}a.QoSPolicy=u;var c=(0,l.inject)("rootStore")((0,l.observer)(u));a.default=c},3896:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(49)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(340)),b=r(576),y=r(1265),I=r(163),A=r(36);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{name:t,description:a,shared:r,is_default:i,project_id:n}=e;return this.store.create({name:t,description:a,shared:r,is_default:i,project_id:n?n.selectedRowKeys[0]:this.props.rootStore.user.project.id})}))}get name(){return t("Create QoS Policy")}static get modalSize(){var{pathname:e}=window.location;return(0,I.isAdminPage)(e)?"large":"small"}getModalSize(){return this.isAdminPage?"large":"small"}init(){this.store=new b.QoSPolicyStore,this.projectStore=_.default,this.isAdminPage&&this.fetchProjectList()}fetchProjectList(){var e=this;return(0,m.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,A.toJS)(this.projectStore.list.data)||[]}get defaultValue(){return this.isAdminPage?{project_id:{selectedRowKeys:[this.props.rootStore.user.project.id]}}:{}}get formItems(){return[{name:"name",label:t("Policy Name"),type:"input-name",required:!0,withoutChinese:!0},w({name:"project_id",label:t("Project"),type:"select-table",required:this.isAdminPage,isLoading:_.default.list.isLoading,data:this.projects,hidden:!this.isAdminPage},y.projectTableOptions),{name:"description",label:t("Description"),type:"textarea"},{name:"shared",label:t("Shared"),type:"switch",hidden:!this.isAdminPage},{name:"is_default",label:t("Default Policy"),type:"switch",hidden:!this.isAdminPage}]}}a.Create=x,(0,h.default)(x,"id","create_qos_policy"),(0,h.default)(x,"title",t("Create QoS Policy")),(0,h.default)(x,"policy","create_policy"),(0,h.default)(x,"aliasPolicy","neutron:create_policy"),(0,h.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,v.inject)("rootStore")((0,v.observer)(x));a.default=P},3897:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=r(1241),g=r(576);function _(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class b extends v.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"policy",(()=>({rules:[["network","edit_qos_policy"]]}))),(0,m.default)(this,"onSubmit",(e=>this.store.update(this.props.item,e)))}get name(){return t("Edit QoS Policy")}init(){this.store=new g.QoSPolicyStore}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;tp.default.resolve(!0)));var y=(0,h.inject)("rootStore")((0,h.observer)(b));a.default=y},3898:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(576));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_policy"),(0,l.default)(this,"aliasPolicy","neutron:delete_policy"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete QoS Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete qos policy")}isOwnerOrAdmin(){return!0}}a.default=d},3899:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateBandwidthLimitRule=void 0;var p=f(r(232)),m=f(r(63)),h=f(r(58)),v=f(r(35)),g=f(r(0)),_=r(412),b=r(1241),y=f(r(576));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t{var{max_kbps:t,max_burst_kbps:a}=e,r=A(A({},(0,h.default)(e,["max_kbps","max_burst_kbps"])),{},{max_kbps:1024*t,max_burst_kbps:1024*a});return y.default.createBandwidthLimitRule(this.props.item,r)}))}get name(){return t("create bandwidth limit rule")}get defaultValue(){return{max_kbps:1,max_burst_kbps:1,direction:"egress"}}get formItems(){return[{label:t("Type"),type:"label",component:g.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"direction",label:t("Direction"),type:"select",options:[{label:t("egress"),value:"egress"},{label:t("ingress"),value:"ingress"}]}]}}a.CreateBandwidthLimitRule=S,(0,v.default)(S,"id","create_bandwidth_limit_rule"),(0,v.default)(S,"title",t("Create Bandwidth Limit Rule")),(0,v.default)(S,"policy","create_policy_bandwidth_limit_rule"),(0,v.default)(S,"allowed",(e=>{var{rules:t=[]}=e,a=(0,p.default)(t).call(t,(e=>"ingress"===e.direction)),r=(0,p.default)(t).call(t,(e=>"egress"===e.direction));return m.default.resolve(!(a&&r))}));var w=(0,_.inject)("rootStore")((0,_.observer)(S));a.default=w},3900:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateDSCPMarkingRules=void 0;var l=n(r(232)),o=n(r(63)),s=n(r(35)),d=n(r(0)),u=r(412),c=r(1241),f=n(r(576)),p=n(r(1638));class m extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>f.default.createDSCPMarkingRule(this.props.item,e)))}get name(){return t("create DSCP marking rule")}get defaultValue(){return{dscp_mark:0}}get formItems(){return[{label:t("Type"),type:"label",component:d.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("DSCP Marking"))},{name:"dscp_mark",label:t("Value"),type:"select",options:p.default}]}}a.CreateDSCPMarkingRules=m,(0,s.default)(m,"id","create_DSCP_marking_rule"),(0,s.default)(m,"title",t("Create DSCP Marking Rule")),(0,s.default)(m,"policy","create_policy_dscp_marking_rule"),(0,s.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,l.default)(t).call(t,(e=>"dscp_marking"===e.type));return o.default.resolve(!a)}));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3901:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_dscp_marking_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasDSCPMarkingRule(e))),(0,s.default)(this,"hasDSCPMarkingRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"dscp_marking"===e.type))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"dscp_marking"===e.type));return u.default.deleteDSCPMarkingRules(e,a)}))}get id(){return"delete"}get title(){return t("Delete DSCP Marking Rules")}get isDanger(){return!0}get buttonText(){return t("Delete DSCP Marking Rules")}get actionName(){return t("delete dscp marking rules")}isOwnerOrAdmin(){return!0}}a.default=c},3902:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_bandwidth_limit_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasEgressRule(e))),(0,s.default)(this,"hasEgressRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"egress"===e.direction))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction));return u.default.deleteBandwidthLimitRules(e,a)}))}get id(){return"delete-egress"}get title(){return t("Delete Bandwidth Egress Rules")}get isDanger(){return!0}get buttonText(){return t("Delete Bandwidth Egress Rules")}get actionName(){return t("delete bandwidth egress rules")}isOwnerOrAdmin(){return!0}}a.default=c},3903:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_bandwidth_limit_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasIngressRule(e))),(0,s.default)(this,"hasIngressRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"ingress"===e.direction))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction));return u.default.deleteBandwidthLimitRules(e,a)}))}get id(){return"delete-ingress"}get title(){return t("Delete Bandwidth Ingress Rules")}get isDanger(){return!0}get buttonText(){return t("Delete Bandwidth Ingress Rules")}get actionName(){return t("delete bandwidth ingress rules")}isOwnerOrAdmin(){return!0}}a.default=c},3904:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditBandwidthEgressRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576));class m extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{max_kbps:t,max_burst_kbps:a}=e,r={max_kbps:1024*t,max_burst_kbps:1024*a};return p.default.updateBandwidthLimitRule(this.props.item,this.egressRule.id,r)}))}get name(){return t("Edit Bandwidth Egress Limit Rule")}get defaultValue(){var{max_kbps:e,max_burst_kbps:t}=this.egressRule;return{max_kbps:e/1024,max_burst_kbps:t/1024}}init(){var{rules:e=[]}=this.item||{};this.egressRule=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Egress Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"}]}}a.EditBandwidthEgressRule=m,(0,d.default)(m,"id","edit_bandwidth_egress_limit_rule"),(0,d.default)(m,"title",t("Edit Bandwidth Egress Limit Rule")),(0,d.default)(m,"policy","update_policy_bandwidth_limit_rule"),(0,d.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"egress"===e.direction));return s.default.resolve(a)}));var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3905:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditBandwidthIngressRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576));class m extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>p.default.updateBandwidthLimitRule(this.props.item,this.ingressRule.id,{max_kbps:1024*e.max_kbps,max_burst_kbps:1024*e.max_burst_kbps})))}get name(){return t("Edit Bandwidth Ingress Limit Rule")}get defaultValue(){var{max_kbps:e,max_burst_kbps:t}=this.ingressRule;return{max_kbps:e/1024,max_burst_kbps:t/1024}}init(){var{rules:e=[]}=this.item||{};this.ingressRule=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Ingress Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"}]}}a.EditBandwidthIngressRule=m,(0,d.default)(m,"id","edit_bandwidth_ingress_limit_rule"),(0,d.default)(m,"title",t("Edit Bandwidth Ingress Limit Rule")),(0,d.default)(m,"policy","update_policy_bandwidth_limit_rule"),(0,d.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"ingress"===e.direction));return s.default.resolve(a)}));var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3906:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditDSCPMarkingRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576)),m=n(r(1638));class h extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>p.default.updateDSCPMarkingRule(this.props.item,this.dscpMarkingRule.id,e)))}get name(){return t("Edit DSCP Marking Rule")}get defaultValue(){return{dscp_mark:this.dscpMarkingRule.dscp_mark||0}}init(){var{rules:e=[]}=this.item;this.dscpMarkingRule=(0,l.default)(e).call(e,(e=>"dscp_marking"===e.type))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("DSCP Marking"))},{name:"dscp_mark",label:t("Value"),type:"select",options:m.default}]}}a.EditDSCPMarkingRule=h,(0,d.default)(h,"id","edit_DSCP_marking_rule"),(0,d.default)(h,"title",t("Edit DSCP Marking Rule")),(0,d.default)(h,"policy","update_policy_dscp_marking_rule"),(0,d.default)(h,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"dscp_marking"===e.type));return s.default.resolve(a)}));var v=(0,c.inject)("rootStore")((0,c.observer)(h));a.default=v},3907:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.QoSPolicyDetail=void 0;var l=n(r(573)),o=r(412),s=n(r(1243)),d=r(576),u=n(r(1466)),c=n(r(3908)),f=n(r(1637));class p extends s.default{get name(){return t("qoS policy")}get policy(){return"get_policy"}get aliasPolicy(){return"neutron:get_policy"}get listUrl(){return this.getRoutePath("networkQos")}get actionConfigs(){return this.isAdminPage?f.default.actionConfigs:f.default.consoleActions}get detailInfos(){var e=[{title:t("Policy Name"),dataIndex:"name"},{title:t("Rule Numbers"),dataIndex:"rules",render:e=>e.length},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Default Policy"),dataIndex:"is_default",valueRender:"yesNo"},{title:t("Description"),dataIndex:"description"}];return this.isAdminPage&&(0,l.default)(e).call(e,3,0,{title:t("Owned Project"),dataIndex:"project_name"}),e}get tabs(){return[{title:t("Detail"),key:"detail",component:c.default},{title:t("Floating IPs"),key:"fip",component:u.default}]}init(){this.store=new d.QoSPolicyStore}}a.QoSPolicyDetail=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3908:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(86)),o=r(412),s=n(r(1249));class d extends s.default{get leftCards(){return[...this.BandwidthCard,this.DSCPMarkingCard]}getOptions(e){var{max_kbps:a="-",max_burst_kbps:r="-"}=e||{};return[{label:t("Max BandWidth"),content:"".concat("-"===a?a:a/1024," Mbps")},{label:t("Max Burst"),content:"".concat("-"===r?r:r/1024," Mbps")}]}get BandwidthCard(){var{rules:e=[]}=this.detailData,a=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction)),r=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction));return[{title:t("BandWidth Limit Egress"),options:this.getOptions(a)},{title:t("BandWidth Limit Ingress"),options:this.getOptions(r)}]}get DSCPMarkingCard(){var{rules:e=[]}=this.detailData,a=(0,l.default)(e).call(e,(e=>"dscp_marking"===e.type))||{},r=[{label:t("Value"),content:0===a.dscp_mark?"0":a.dscp_mark||"-"}];return{title:t("DSCP Marking"),options:r}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3909:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.LoadBalancerInstance=void 0,r(1246);var l=n(r(1247));r(1244);var o=n(r(1245)),s=n(r(49)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=(r(161),r(581)),m=r(1254),h=r(66),v=r(1639);class g extends f.default{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"fetchDataByPage",function(){var t=(0,s.default)((function*(t){yield e.store.fetchListByPageWithFip(t),e.list.silent=!1}));return function(e){return t.apply(this,arguments)}}()),(0,d.default)(this,"fetchDownloadData",function(){var t=(0,s.default)((function*(t){return e.isFilterByBackend?yield e.downloadStore.fetchListByPageWithFip(e.updateFetchParamsByPage(t)):yield e.downloadStore.fetchList(e.updateFetchParams(t))}));return function(e){return t.apply(this,arguments)}}()),(0,d.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("lbDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Network ID"),dataIndex:"vip_network_id"},{title:t("IP"),dataIndex:"vip_address"},{title:t("Floating IP"),dataIndex:"fip",render:e=>e||"-"},{title:t("Port ID"),dataIndex:"vip_port_id"},{title:t("Operating Status"),dataIndex:"operating_status",valueMap:m.operatingStatusCodes,titleTip:u.default.createElement(l.default,null,u.default.createElement(o.default,null,t("DRAINING: The member is not accepting new connections")),u.default.createElement(o.default,null,t("DEGRADED: One or more of the entity’s components are in ERROR")))},{title:t("Provisioning Status"),dataIndex:"provisioning_status",valueMap:m.provisioningStatusCodes},{title:t("Listener Number"),dataIndex:"listeners",render:e=>e.length},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0}]))}init(){this.store=new p.LbaasStore,this.downloadStore=new p.LbaasStore}get fetchDataByCurrentProject(){return!0}get policy(){return"os_load-balancer_api:loadbalancer:get_all"}get checkEndpoint(){return!0}get endpoint(){return(0,h.lbEndpoint)()}get name(){return t("Load Balancers")}get isFilterByBackend(){return!0}get actionConfigs(){return this.isAdminPage?v.adminActions:v.actionConfigs}get adminPageHasProjectFilter(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.LoadBalancerInstance=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3910:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(581));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"policy",(()=>"edit_load_balancer")),(0,o.default)(this,"onSubmit",(e=>u.default.update({id:this.item.id},e)))}get name(){return t("Edit Load Balancer")}get defaultValue(){var{item:e}=this;return{name:e.name,description:e.description}}get formItems(){return[{name:"name",label:t("Load Balancer Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=c,(0,o.default)(c,"id","edit_load_balancer"),(0,o.default)(c,"title",t("Edit")),(0,o.default)(c,"policy","os_load-balancer_api:loadbalancer:put"),(0,o.default)(c,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&"ACTIVE"===e.provisioning_status)}));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3911:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=r(1251),d=n(r(581)),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_load-balancer_api:loadbalancer:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})+t("This will delete all child objects of the load balancer.")})),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(this.isCurrentProject(e)&&"ACTIVE"===e.provisioning_status||"ERROR"===e.provisioning_status))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Load Balancer")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete load balancer")}isCurrentProject(e){var t=u.default;return!(!(0,s.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3912:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(412),u=n(r(346)),c=r(1241),f=r(1258),p=r(1273),m=r(1267);class h extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"handleFixedIPChange",(e=>p.handleFixedIPChange.call(this,e))),(0,s.default)(this,"onSubmit",(e=>{var{fixed_ip:t,fip:a}=e,r=t.selectedRows[0],i=a.selectedRowKeys[0];return u.default.associateFip({id:i,port_id:this.item.vip_port_id,fixed_ip_address:r.ip_address})}))}init(){this.getInterfaces(),m.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={interfaces:[],fixed_ip:null,portFixedIPs:[],canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],portLoading:!0}}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Associate Floating IP")}getInterfaces(){var e=this;return(0,o.default)((function*(){var t=[{port_id:e.item.vip_port_id,network_id:e.item.vip_network_id,fixed_ips:[{ip_address:e.item.vip_address,subnet_id:e.item.vip_subnet_id}]}],a=yield(0,p.getInterfaceWithReason)(t);e.setState({interfaces:a,portLoading:!1})}))()}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return f.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{lb:e}}getFIPFormItemExtra(){return(0,p.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,p.disableFIPAssociate)(e)}get formItems(){var e=(0,p.getFixedIPFormItemForAssociate)(t("Fixed IP"),this),a=(0,p.getFIPFormItemForAssociate)(this);return[{name:"lb",label:t("Load Balancer"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=h,(0,s.default)(h,"id","AssociateFip"),(0,s.default)(h,"title",t("Associate Floating IP")),(0,s.default)(h,"policy","update_floatingip"),(0,s.default)(h,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&"ACTIVE"===e.provisioning_status&&function(e){return null===e.fip||void 0===e.fip}(e))}));var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3913:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=n(r(1250)),u=r(412),c=r(233),f=r(417),p=r(581);class m extends d.default{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"allowed",(()=>l.default.resolve())),(0,s.default)(this,"handleOwnedNetworkChange",(e=>{var{network_id:t}=this.state,a=e.selectedRowKeys[0];this.setState({network_id:a},(()=>{var{network_id:e}=this.state;t&&t!==e&&this.formRef.current.setFieldsValue({vip_address:void 0})})),this.getSubnets(a)})),(0,s.default)(this,"fetchSubnetDetails",function(){var t=(0,o.default)((function*(t){var a=yield e.subnetStore.fetchList({network_id:t});e.setState({subnetDetails:a||[]})}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new p.LbaasStore,this.networkStore=new c.NetworkStore,this.subnetStore=new f.SubnetStore}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){return{project_id:this.props.rootStore.user.project.id,admin_state_enabled:!0}}getSubnets(e){var t=this;return(0,o.default)((function*(){yield t.networkStore.fetchDetail({id:e}),yield t.fetchSubnetDetails(e)}))()}get formItems(){var{network_id:e,subnetDetails:a=[]}=this.state;return[{name:"name",label:t("Load Balancer Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"},{name:"vip_network_id",label:t("Owned Network"),type:"network-select-table",onChange:this.handleOwnedNetworkChange,required:!0},{name:"vip_address",label:t("Owned Subnet"),type:"ip-distributor",subnets:a,formRef:this.formRef,maxNumber:1,hidden:!e,required:!0},{name:"admin_state_enabled",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the port.")}]}}a.BaseStep=m;var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3914:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ListenerStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(35)),d=r(412),u=n(r(1250)),c=r(1254),f=r(1337),p=r(1338);class m extends u.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>l.default.resolve()))}init(){this.containersStore=new f.ContainersStore,this.secretsStore=new p.SecretsStore,this.fetchContainers(),this.fetchSecrets()}get title(){return"Listener Detail"}get name(){return"Listener Detail"}get isStep(){return!0}fetchContainers(){this.containersStore.fetchList()}fetchSecrets(){this.secretsStore.fetchList({mode:"CA"})}get SERVERSecrets(){return this.containersStore.list.data||[]}get CASecrets(){return this.secretsStore.list.data||[]}get SNISecrets(){var e;return(0,o.default)(e=this.containersStore.list.data||[]).call(e,(e=>!!e.domain))}get defaultValue(){return{listener_ssl_parsing_method:"one-way",listener_sni_enabled:!1,listener_connection_limit:-1,listener_admin_state_up:!0}}get nameForStateUpdate(){return["listener_protocol","listener_ssl_parsing_method","listener_sni_enabled"]}get formItems(){var e,{listener_protocol:a,listener_ssl_parsing_method:r,listener_sni_enabled:i}=this.state,n=(0,c.getListenerInsertHeadersFormItem)();return[{name:"listener_name",label:t("Listener Name"),type:"input-name",required:!0},{name:"listener_description",label:t("Listener Description"),type:"textarea"},{name:"listener_protocol",label:t("Listener Protocol"),type:"select",options:c.listenerProtocols,onChange:()=>{this.updateContext({pool_protocol:"",health_type:""})},required:!0},{name:"listener_ssl_parsing_method",label:t("SSL Parsing Method"),type:"select",options:c.sslParseMethod,required:!0,display:"TERMINATED_HTTPS"===a},{name:"listener_default_tls_container_ref",label:t("Server Certificate"),type:"select-table",required:!0,data:this.SERVERSecrets,isLoading:!1,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a},{name:"listener_client_ca_tls_container_ref",label:t("CA Certificate"),type:"select-table",required:!0,data:this.CASecrets,isLoading:!1,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,o.default)(e=(0,c.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex)),display:"TERMINATED_HTTPS"===a&&"two-way"===r},{name:"listener_sni_enabled",label:t("SNI Enabled"),type:"switch",display:"TERMINATED_HTTPS"===a},{name:"listener_sni_container_refs",label:t("SNI Certificate"),type:"select-table",required:!0,data:this.SNISecrets,isLoading:!1,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a&&i},{name:"listener_protocol_port",label:t("Listener Protocol Port"),type:"input-number",required:!0},{name:"listener_connection_limit",label:t("Listener Connection Limit"),type:"input-number",min:-1,extra:t("-1 means no connection limit"),required:!0},{name:"listener_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the listener.")},n]}}a.ListenerStep=m;var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3915:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PoolStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(164)),d=n(r(35)),u=r(412),c=n(r(1250)),f=r(1400),p=r(1254);class m extends c.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve())),(0,d.default)(this,"handleAlgorithmChange",(e=>{this.setState({pool_lb_algorithm:e})}))}get title(){return"Pool Detail"}get name(){return"Pool Detail"}get isStep(){return!0}get filterOptions(){var{context:{listener_protocol:e=""}={}}=this.props;return(0,o.default)(p.poolProtocols).call(p.poolProtocols,(t=>(0,s.default)(e).call(e,t.label)))}init(){this.state={pool_lb_algorithm:void 0}}get defaultValue(){return{pool_admin_state_up:!0}}get formItems(){var{pool_lb_algorithm:e}=this.state;return[{name:"pool_name",label:t("Pool Name"),type:"input-name",required:!0},{name:"pool_description",label:t("Pool Description"),type:"textarea"},{name:"pool_lb_algorithm",label:t("Pool Algorithm"),type:"select",options:f.Algorithm,onChange:this.handleAlgorithmChange,extra:e&&f.algorithmTip[e],required:!0},{name:"pool_protocol",label:t("Pool Protocol"),type:"select",options:this.filterOptions,onChange:()=>{this.updateContext({health_type:""})},required:!0},{name:"pool_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.PoolStep=m;var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3916:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.MemberStep=void 0;var n=i(a(63)),l=i(a(29)),o=i(a(35)),s=i(a(119)),d=a(412),u=i(a(1250)),c=a(572);class f extends u.default{constructor(){super(...arguments),(0,o.default)(this,"allowed",(()=>n.default.resolve()))}init(){this.store=new c.PortStore,this.state={ports:[]},this.store.fetchList().then((e=>{this.setState({ports:(0,l.default)(e).call(e,(e=>"network:dhcp"!==e.device_owner&&"network:router_gateway"!==e.device_owner))})}))}get title(){return"Member Detail"}get name(){return"Member Detail"}get isStep(){return!0}get wrapperCol(){return{xs:{span:16},sm:{span:12}}}get formItems(){return[{name:"extMembers",type:"member-allocator",lbSubnetId:(0,s.default)(this.props.context,"vip_address[0].subnet",""),isLoading:this.store.list.isLoading,ports:this.state.ports}]}}t.MemberStep=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));t.default=p},3917:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HealthMonitorStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(164)),d=n(r(35)),u=r(412),c=n(r(1250)),f=r(1254);class p extends c.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}get title(){return"Health Monitor Detail"}get name(){return"Health Monitor Detail"}get isStep(){return!0}get filteredProtocolOptions(){var{context:{listener_protocol:e=""}={}}=this.props;return(0,o.default)(f.healthProtocols).call(f.healthProtocols,(t=>(0,s.default)(e).call(e,t.label)))}get defaultValue(){return{enableHealthMonitor:!0,health_delay:5,health_timeout:3,health_max_retries:3,health_type:"",monitor_admin_state_up:!0}}get formItems(){var{health_delay:e,enableHealthMonitor:a}=this.state;return[{name:"enableHealthMonitor",label:t("Enable Health Monitor"),type:"radio",options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"health_name",label:t("Health Monitor Name"),type:"input-name",required:!0,hidden:!a},{name:"health_delay",label:t("Health Monitor Delay"),type:"input-number",onChange:e=>{this.setState({health_delay:e})},min:0,extra:t("Maximum interval time for each health check response"),required:!0,hidden:!a},{name:"health_max_retries",label:t("Health Monitor Max Retries"),type:"input-number",min:1,max:10,extra:t("That is, after how many consecutive failures of the health check, the health check status of the back-end cloud server is changed from normal to abnormal"),required:!0,hidden:!a},{name:"health_timeout",label:t("Health Monitor Timeout"),type:"input-number",min:e||0,extra:t("The timeout period of waiting for the return of the health check request, the check timeout will be judged as a check failure"),required:!0,hidden:!a},{name:"health_type",label:t("Health Monitor Type"),type:"select",options:this.filteredProtocolOptions,required:!0,hidden:!a},{name:"monitor_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the health monitor."),hidden:!a}]}}a.HealthMonitorStep=p;var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3918:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(346));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_floatingip"),(0,l.default)(this,"allowedCheckFunc",(e=>"ACTIVE"===e.provisioning_status&&!!e.fip_id)),(0,l.default)(this,"onSubmit",(()=>s.default.disassociateFip({id:this.item.fip_id})))}get id(){return"disassociate-fip-from-lb"}get title(){return t("Disassociate Floating IP")}get buttonText(){return t("Disassociate Floating IP")}get actionName(){return t("disassociate floating ip")}}a.default=d},3919:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LoadBalancerDetail=void 0;var p=f(r(35)),m=r(412),h=f(r(1243)),v=r(581),g=r(1254),_=f(r(3920)),b=r(1639);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{if(this.store.fetchDetailWithFip){var t=I(I(I({},this.params),e||{}),{},{silent:!0,all_projects:this.isAdminPage});this.store.fetchDetailWithFip(t).catch(this.catch)}}))}get name(){return t("load balancer")}get policy(){return"os_load-balancer_api:loadbalancer:get_one"}get listUrl(){return this.getRoutePath("lb")}get actionConfigs(){return this.isAdminPage?b.adminActions:b.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"provisioning_status",valueMap:g.provisioningStatusCodes},{title:t("Network"),dataIndex:"vip_network_id"},{title:t("Subnet"),dataIndex:"vip_subnet_id"},{title:t("IP"),dataIndex:"vip_address"},{title:t("Floating IP"),dataIndex:"fip"},{title:t("Provider"),dataIndex:"provider"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Listeners"),key:"listener",component:_.default}]}init(){this.store=new v.LbaasStore}}a.LoadBalancerDetail=A;var S=(0,m.inject)("rootStore")((0,m.observer)(A));a.default=S},3920:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Listeners=void 0;var p=f(r(58)),m=f(r(35)),h=r(412),v=f(r(1242)),g=r(1254),_=r(1306),b=r(342),y=r(1641);function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class A extends v.default{constructor(){super(...arguments),(0,m.default)(this,"updateFetchParamsByPage",(e=>{var{id:t}=e;return function(e){for(var t=1;t[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("lbListenerDetail"),routeParamsFunc:e=>({loadBalancerId:this.id,id:e.id})},{title:t("Status"),dataIndex:"provisioning_status",valueMap:g.provisioningStatusCodes,isHideable:!0},{title:t("Protocol"),dataIndex:"protocol",isHideable:!0,render:e=>("TERMINATED_HTTPS"===e?"HTTPS":e)||"-"},{title:t("Port"),dataIndex:"protocol_port",isHideable:!0},{title:t("Max connect"),dataIndex:"connection_limit"},{title:t("Admin State Up"),dataIndex:"admin_state_up",render:e=>e?t("On"):t("Off")}]))}init(){this.store=new _.ListenerStore,this.downloadStore=new _.ListenerStore}get policy(){return"os_load-balancer_api:listener:get_all"}get name(){return t("listeners")}get id(){return this.params.id}get isFilterByBackend(){return!0}get forceRefreshTopDetailWhenListRefresh(){return!0}get actionConfigs(){var{provisioning_status:e}=this.props.detail;return"ACTIVE"!==e?b.emptyActionConfig:this.isAdminPage?y.adminActions:y.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Listeners=A;var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3921:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreatePool=void 0;var l=n(r(29)),o=n(r(164)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(412),f=r(1241),p=n(r(1401)),m=n(r(581)),h=r(1400),v=r(1254);class g extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"handleAlgorithmChange",(e=>{this.setState({algorithm:e})})),(0,u.default)(this,"onSubmit",(e=>(e.listener_id=this.item.id,p.default.create(e))))}get name(){return t("create default pool")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filterOptions(){var{protocol:e=""}=this.item;return(0,l.default)(v.poolProtocols).call(v.poolProtocols,(t=>(0,o.default)(e).call(e,t.label)))}init(){this.state={algorithm:void 0}}get defaultValue(){return{admin_state_up:!0}}get formItems(){var{algorithm:e}=this.state;return[{name:"name",label:t("Pool Name"),type:"input-name",required:!0},{name:"description",label:t("Pool Description"),type:"textarea"},{name:"lb_algorithm",label:t("Pool Algorithm"),type:"select",options:h.Algorithm,onChange:this.handleAlgorithmChange,extra:e&&h.algorithmTip[e],required:!0},{name:"protocol",label:t("Pool Protocol"),type:"select",options:this.filterOptions,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.CreatePool=g,(0,u.default)(g,"id","pool-create"),(0,u.default)(g,"title",t("Create Default Pool")),(0,u.default)(g,"buttonText",t("Create Default Pool")),(0,u.default)(g,"policy","os_load-balancer_api:pool:post"),(0,u.default)(g,"allowed",function(){var e=(0,d.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield m.default.pureFetchDetail(e.loadbalancers[0])),s.default.resolve(!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3922:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(1306)),c=n(r(581));class f extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_load-balancer_api:listener:delete"),(0,s.default)(this,"allowed",function(){var e=(0,o.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield c.default.pureFetchDetail(e.loadbalancers[0])),l.default.resolve(!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}()),(0,s.default)(this,"onSubmit",(e=>u.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Listener")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete listener")}}a.default=f},3923:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(164)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=f(r(1306)),A=f(r(581)),S=r(1254),w=r(1642);function x(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class P extends w.Create{constructor(){super(...arguments),(0,b.default)(this,"onSubmit",(e=>{var t,{id:a}=this.item,{protocol:r,protocol_port:i,sni_enabled:n,ssl_parsing_method:l,default_tls_container_ref:f,client_ca_tls_container_ref:m,sni_container_refs:h,insert_headers:v}=e,g=function(e){for(var t=1;te.container_ref)):[]);return I.default.edit({id:a},g)}))}get name(){return t("Edit Listener")}get isEdit(){return!0}get defaultValue(){var{item:e}=this.props,{name:t,description:a,protocol:r,protocol_port:i,connection_limit:n,admin_state_up:l}=e||{},o={name:t,description:a,protocol:r,protocol_port:i,connection_limit:n,insert_headers:(0,S.getInsertHeadersFormValueFromListener)(e),admin_state_up:l};if("TERMINATED_HTTPS"===e.protocol){if(e.default_tls_container_ref){var s,[,d]=e.default_tls_container_ref.split("/containers/");o.default_tls_container_ref={selectedRowKeys:[d],selectedRows:(0,m.default)(s=this.ServerCertificate).call(s,(e=>e.id===d))}}if(e.client_ca_tls_container_ref){var u,[,c]=e.client_ca_tls_container_ref.split("/secrets/");o.ssl_parsing_method="two-way",o.client_ca_tls_container_ref={selectedRowKeys:[c],selectedRows:(0,m.default)(u=this.CaCertificate).call(u,(e=>e.id===c))}}else o.ssl_parsing_method="one-way";if(e.sni_container_refs&&e.sni_container_refs.length){var f,v;o.sni_enabled=!0;var g=(0,p.default)(f=e.sni_container_refs).call(f,(e=>{var[,t]=e.split("/containers/");return t}));o.sni_container_refs={selectedRowKeys:g,selectedRows:(0,m.default)(v=this.SNICertificate).call(v,(e=>(0,h.default)(g).call(g,e.id)))}}else o.sni_enabled=!1}return o}get formItems(){var e=super.formItems;return(0,p.default)(e).call(e,(e=>("sni_enabled"===e.name&&(e.disabled=this.item.sni_container_refs&&this.item.sni_container_refs.length,e.tip=t("If the listener has an SNI certificate installed, it cannot be removed. Please delete the listener or replace the SNI certificate")),e)))}}a.Edit=P,(0,b.default)(P,"id","edit-listener"),(0,b.default)(P,"title",t("Edit Listener")),(0,b.default)(P,"buttonText",t("Edit")),(0,b.default)(P,"policy","os_load-balancer_api:listener:put"),(0,b.default)(P,"allowed",function(){var e=(0,g.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield A.default.pureFetchDetail(e.loadbalancers[0])),v.default.resolve("ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var C=(0,y.inject)("rootStore")((0,y.observer)(P));a.default=C},3924:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditPoolInfo=void 0;var l=n(r(29)),o=n(r(164)),s=n(r(63)),d=n(r(49)),u=n(r(58)),c=n(r(35)),f=r(412),p=r(1241),m=n(r(1401)),h=r(1400),v=r(1254),g=n(r(581));class _ extends p.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.item,{protocol:a}=e,r=(0,u.default)(e,["protocol"]);return this.store.edit({id:t},r)}))}init(){this.state.pool={},this.store=m.default,this.getPoolDetail()}get name(){return t("edit default pool")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filteredProtocolOptions(){var{pool:{protocol:e=""}={}}=this.state;return(0,l.default)(v.poolProtocols).call(v.poolProtocols,(t=>(0,o.default)(e).call(e,t.label)))}get defaultValue(){var{pool:e}=this.state,{name:t,description:a,protocol:r,lb_algorithm:i,admin_state_up:n}=e;return{name:t,description:a,protocol:r,lb_algorithm:i,admin_state_up:n}}getPoolDetail(){var e=this;return(0,d.default)((function*(){var{default_pool_id:t}=e.item,a=yield e.store.fetchDetail({id:t});e.setState({pool:a},(()=>{e.updateDefaultValue()}))}))()}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"protocol",label:t("Protocol"),type:"select",options:this.filteredProtocolOptions,required:!0},{name:"lb_algorithm",label:t("LB Algorithm"),type:"select",options:h.Algorithm,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.EditPoolInfo=_,(0,c.default)(_,"id","pool-edit"),(0,c.default)(_,"title",t("Edit Default Pool")),(0,c.default)(_,"buttonText",t("Edit Default Pool")),(0,c.default)(_,"policy","os_load-balancer_api:pool:put"),(0,c.default)(_,"allowed",function(){var e=(0,d.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield g.default.pureFetchDetail(e.loadbalancers[0])),s.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var b=(0,f.inject)("rootStore")((0,f.observer)(_));a.default=b},3925:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.EditHealthMonitor=void 0;var m=p(r(63)),h=p(r(29)),v=p(r(164)),g=p(r(49)),_=p(r(58)),b=p(r(35)),y=r(412),I=r(1241),A=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}r.default=e,a&&a.set(e,r);return r}(r(3926)),S=r(1254),w=r(1401),x=p(r(581)),P=r(1306);function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{var{default_pool_id:t}=this.item,{healthMonitor:a}=this.state,{id:r}=a||{},{enableHealthMonitor:i,type:n}=e,l=(0,_.default)(e,["enableHealthMonitor","type"]);if(r)return i?A.default.edit({id:r},l):A.default.delete({id:r});if(!i)return m.default.resolve();var o=D(D({type:n},l),{},{pool_id:t});return A.default.create(o)}))}init(){this.store=new A.HealthMonitorStore,this.listenerStore=new P.ListenerStore,this.poolStore=new w.PoolStore,this.state={enableHealthMonitor:!1,dataLoading:!0,healthMonitor:null}}componentDidMount(){this.getHealthMonitor()}get name(){return t("edit health monitor")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filteredProtocolOptions(){var{protocol:e=""}=this.item;return(0,h.default)(S.healthProtocols).call(S.healthProtocols,(t=>(0,v.default)(e).call(e,t.label)))}get defaultValue(){var{healthMonitor:e}=this.state;if(!e)return{delay:5,timeout:3,max_retries:3,enableHealthMonitor:!1,admin_state_up:!0};var{admin_state_up:t,operating_status:a,type:r,delay:i,timeout:n,max_retries:l}=e;return{enableHealthMonitor:!0,admin_state_up:t,operating_status:a,type:r,delay:i,timeout:n,max_retries:l}}getHealthMonitor(){var e=this;return(0,g.default)((function*(){var t=yield e.listenerStore.fetchDetail(e.item),{healthMonitor:a}=t;e.setState({healthMonitor:a,enableHealthMonitor:!!a,dataLoading:!1},(()=>{e.updateDefaultValue()}))}))()}get formItems(){var{enableHealthMonitor:e,dataLoading:a,healthMonitor:r}=this.state;return a?[{name:"loading",type:"loading"}]:[{name:"enableHealthMonitor",label:t("Enable Health Monitor"),type:"radio",required:!0,options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"type",label:t("HealthMonitor Type"),type:"select",options:this.filteredProtocolOptions,hidden:!e,required:!0,disabled:!!r},{name:"delay",label:t("Delay Interval(s)"),type:"input-int",min:0,extra:t("Maximum interval time for each health check response"),hidden:!e,required:!0},{name:"timeout",label:t("Timeout(s)"),type:"input-int",min:0,extra:t("The timeout period of waiting for the return of the health check request, the check timeout will be judged as a check failure"),hidden:!e,required:!0},{name:"max_retries",label:t("Max Retries"),type:"input-int",min:0,extra:t("That is, after how many consecutive failures of the health check, the health check status of the back-end cloud server is changed from normal to abnormal"),hidden:!e,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the health monitor."),hidden:!e}]}}a.EditHealthMonitor=k,(0,b.default)(k,"id","health-monitor-edit"),(0,b.default)(k,"title",t("Edit Health Monitor")),(0,b.default)(k,"buttonText",t("Edit Health Monitor")),(0,b.default)(k,"policy","os_load-balancer_api:healthmonitor:put"),(0,b.default)(k,"allowed",function(){var e=(0,g.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield x.default.pureFetchDetail(e.loadbalancers[0])),m.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var R=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=R},3926:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.HealthMonitorStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.octavia.healthMonitors}get listFilterByProject(){return!0}}t.HealthMonitorStore=o;var s=new o;t.default=s},3927:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(1401)),c=n(r(581));class f extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_load-balancer_api:pool:delete"),(0,s.default)(this,"allowedCheckFunc",function(){var e=(0,o.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield c.default.pureFetchDetail(e.loadbalancers[0])),l.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}()),(0,s.default)(this,"onSubmit",(()=>u.default.delete({id:this.item.default_pool_id})))}get id(){return"delete"}get title(){return t("Delete Default Pool")}get isDanger(){return!0}get buttonText(){return t("Delete Default Pool")}get actionName(){return t("delete default pool")}isOwnerOrAdmin(){return!0}}a.default=f},3928:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ListenerDetail=void 0;var l=r(412),o=r(1306),s=r(1254),d=n(r(1243)),u=n(r(3929)),c=n(r(3930)),f=r(1641);class p extends d.default{get name(){return t("listener")}get policy(){return"os_load-balancer_api:listener:get_one"}get listUrl(){var{loadBalancerId:e}=this.params;return this.getRoutePath("lbDetail",{id:e})}get actionConfigs(){return this.isAdminPage?f.adminActions:f.actionConfigs}get detailInfos(){return[{title:t("Listener Name"),dataIndex:"name"},{title:t("Protocol Type"),dataIndex:"protocol",render:e=>("TERMINATED_HTTPS"===e?"HTTPS":e)||"-"},{title:t("Port"),dataIndex:"protocol_port"},{title:t("Status"),dataIndex:"provisioning_status",valueMap:s.provisioningStatusCodes},{title:t("Max connect"),dataIndex:"connection_limit"},{title:t("Admin State Up"),dataIndex:"admin_state_up",render:e=>e?t("On"):t("Off")},{title:t("Description"),dataIndex:"description"}]}get forceLoadingTabs(){return["detail"]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default},{title:t("Members"),key:"members",component:c.default}]}init(){this.store=new o.ListenerStore}}a.ListenerDetail=p;var m=(0,l.inject)("rootStore")((0,l.observer)(p));a.default=m},3929:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(77)),s=n(r(177)),d=r(412),u=n(r(1249)),c=r(1254),f=r(1400);class p extends u.default{get leftCards(){var e=[this.poolCard],{insert_headers:t={},default_pool_id:a}=this.detailData;return a&&e.push(this.healthMonitor),(0,s.default)(t)||e.push(this.customHeaders),e}get rightCards(){var{protocol:e}=this.detailData||{};return"TERMINATED_HTTPS"!==e||this.isAdminPage?[]:[this.certificateInfo]}get poolCard(){var{default_pool:e={},default_pool_id:a}=this.detailData||{},{name:r,protocol:i,lb_algorithm:n,description:l,admin_state_up:o}=e,s=a?[{label:t("Name"),content:r||"-"},{label:t("Protocol"),content:i||"-"},{label:t("LB Algorithm"),content:f.algorithmDict[n]||n||"-"},{label:t("Admin State Up"),content:o?t("On"):t("Off")},{label:t("Description"),content:l||"-"}]:[{label:"",content:t("No default pool set")}];return{title:t("Pool Info"),options:s}}get customHeaders(){var{insert_headers:e={}}=this.detailData||{};return(0,c.getInsertHeaderCard)(e||{})}get healthMonitor(){var e=this.detailData.healthMonitor||{},{type:a,delay:r,timeout:i,max_retries:n,admin_state_up:l}=e,o=[{label:t("Enable Health Monitor"),content:(0,s.default)(e)?t("No"):t("Yes")}];return(0,s.default)(e)||o.push({label:t("Health Monitor Type"),content:a},{label:t("Delay Interval(s)"),content:r},{label:t("Timeout(s)"),content:i},{label:t("Max Retries"),content:n},{label:t("Admin State Up"),content:l?t("On"):t("Off")}),{title:t("Health Monitor"),options:o}}get certificateInfo(){var e=[{label:t("Server Certificate"),dataIndex:"serverCertificateId",render:e=>e?this.getLinkRender("certificateContainerDetail",e,{id:e},null):"-"},{label:t("CA Certificate"),dataIndex:"caCertificateId",render:e=>e?this.getLinkRender("certificateSecretDetail",e,{id:e},null):"-"},{label:t("SNI Certificate"),dataIndex:"sniCertificateId",render:e=>e.length?(0,l.default)(e).call(e,((t,a)=>{var r;return this.getLinkRender("certificateContainerDetail",(0,o.default)(r="".concat(t)).call(r,a===e.length-1?"":" , "),{id:t})}),null):"-"}];return{title:t("certificate"),options:e,labelCol:4}}}a.BaseDetail=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3930:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Members=void 0;var l=n(r(49)),o=n(r(35)),s=r(412),d=n(r(1242)),u=r(1254),c=n(r(1402)),f=r(418),p=r(3931);class m extends d.default{constructor(){var e;super(...arguments),e=this,(0,o.default)(this,"fetchData",(0,l.default)((function*(){var{default_pool_id:t}=e.props.detail;t?e.fetchListWithTry((0,l.default)((function*(){yield e.store.fetchList({pool_id:t}),e.list.silent=!1}))):(e.list.data=[],e.list.isLoading=!1)}))),(0,o.default)(this,"getColumns",(()=>[f.idNameColumn,{title:t("Status"),dataIndex:"provisioning_status",valueMap:u.provisioningStatusCodes,isHideable:!0},{title:t("Ip Address"),dataIndex:"address",isHideable:!0},{title:t("Port"),dataIndex:"protocol_port",isHideable:!0},{title:t("Weight"),dataIndex:"weight"}]))}init(){this.store=c.default}get policy(){return"os_load-balancer_api:member:get_all"}get name(){return t("Members")}get id(){return this.params.id}get forceRefreshTopDetailWhenListRefresh(){return!0}get actionConfigs(){return this.isAdminPage?p.adminActions:p.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Members=m;var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},3931:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3932)),l=i(a(3933)),o={rowActions:{firstAction:i(a(3935)).default,moreActions:[{action:n.default}]},batchActions:[],primaryActions:[l.default]};t.actionConfigs=o;var s={rowActions:{moreActions:[{action:n.default}]},batchActions:[],primaryActions:[]};t.adminActions=s},3932:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1402));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_load-balancer_api:member:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&"ACTIVE"===e.provisioning_status)),(0,l.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.containerProps.detail;return s.default.delete({id:e.id,default_pool_id:t})}))}get id(){return"delete"}get title(){return t("Delete Member")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete member")}isOwnerOrAdmin(){return!0}}a.default=d},3933:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var l=n(r(54)),o=n(r(28)),s=n(r(29)),d=n(r(63)),u=n(r(49)),c=n(r(35)),f=n(r(119)),p=n(r(3934)),m=n(r(0)),h=r(412),v=r(1241),g=r(1402),_=r(572),b=r(36),y=n(r(581)),I=n(r(1459));class A extends v.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var t,{default_pool_id:a}=this.item,{extMembers:r=[]}=e,i=(0,l.default)(t=(0,b.toJS)(this.memberStore.list.data)).call(t,(e=>{var{weight:t,protocol_port:a,address:r,name:i,subnet_id:n}=e;return{weight:t,protocol_port:a,address:r,name:i,subnet_id:n}}));return(0,o.default)(r).call(r,(e=>{var{ip:t,protocol_port:a,weight:r,name:n=null,subnet_id:l}=e.ip_address,o={weight:r,protocol_port:a,address:t,name:n,subnet_id:l};i.push(o)})),this.memberStore.batchUpdate({default_pool_id:a,data:(0,p.default)(i,I.default)})}))}get name(){return t("Add Member")}init(){this.store=new _.PortStore,this.memberStore=new g.PoolMemberStore,this.lbDetail={},this.state={ports:[]}}componentDidMount(){this.getMember(),y.default.fetchDetail({id:this.props.containerProps.match.params.loadBalancerId}).then((e=>(this.lbDetail=e,this.store.fetchList()))).then((e=>{this.setState({ports:(0,s.default)(e).call(e,(e=>"network:dhcp"!==e.device_owner&&"network:router_gateway"!==e.device_owner))})}))}static get modalSize(){return"large"}getMember(){var e=this;return(0,u.default)((function*(){var{default_pool_id:t}=e.item;yield e.memberStore.fetchList({pool_id:t})}))()}getModalSize(){return"large"}get item(){var{item:e}=this.props;return e||this.containerProps.detail}get defaultValue(){return{}}get tips(){return m.default.createElement("div",{style:{display:"inline-table"}},m.default.createElement("p",{style:{color:globalCSS.primaryColor}},t("The amphora instance is required for load balancing service setup and is not recommended")))}get formItems(){return[{name:"extMembers",type:"member-allocator",lbSubnetId:(0,f.default)(this.lbDetail,"vip_subnet_id",""),isLoading:this.store.list.isLoading,ports:this.state.ports,members:this.memberStore.list.data}]}}a.CreateAction=A,(0,c.default)(A,"id","manage-member"),(0,c.default)(A,"title",t("Add Member")),(0,c.default)(A,"policy","os_load-balancer_api:member:post"),(0,c.default)(A,"allowed",(e=>d.default.resolve("ACTIVE"===e.provisioning_status&&!!e.default_pool_id)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3935:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(86)),o=n(r(63)),s=n(r(54)),d=n(r(35)),u=r(412),c=r(1241),f=n(r(1402)),p=r(36);class m extends c.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"protocolValidator",((e,a)=>{var r,{address:i,protocol_port:n}=this.item;return(0,l.default)(r=f.default.list.data||[]).call(r,(e=>e.address===i&&a===e.protocol_port&&a!==n))?o.default.reject(new Error(t("Invalid IP Address and Port"))):o.default.resolve()})),(0,d.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.containerProps.detail,{id:a}=this.item,r=(0,p.toJS)(this.store.list.data),i=(0,s.default)(r).call(r,(t=>{if(t.id===a){var{weight:r,protocol_port:i}=e;t.weight=r,t.protocol_port=i}var{weight:n,protocol_port:l,address:o,name:s,subnet_id:d}=t;return{weight:n,protocol_port:l,address:o,name:s,subnet_id:d}}));return this.store.batchUpdate({default_pool_id:t,data:i})}))}init(){this.state={},this.store=f.default}get name(){return t("edit member")}get defaultValue(){var{weight:e,protocol_port:t}=this.item;return e&&t&&this.formRef.current&&this.formRef.current.setFieldsValue({weight:e,protocol_port:t}),{weight:e,protocol_port:t}}get formItems(){return[{name:"weight",label:t("Weight"),type:"input-number",required:!0},{name:"protocol_port",label:t("Port"),type:"input-number",required:!0,validator:this.protocolValidator}]}}a.Edit=m,(0,d.default)(m,"id","member-edit"),(0,d.default)(m,"title",t("Edit Member")),(0,d.default)(m,"buttonText",t("Edit Member")),(0,d.default)(m,"policy","os_load-balancer_api:member:put"),(0,d.default)(m,"allowed",(e=>o.default.resolve("ACTIVE"===e.provisioning_status)));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3936:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.VPN=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(3937)),u=n(r(3942)),c=n(r(3947)),f=n(r(3952)),p=n(r(3957));class m extends o.default{get name(){return t("VPN")}get checkEndpoint(){return!0}get endpoint(){return(0,s.vpnEndpoint)()}get tabs(){return[{title:t("VPN Gateways"),key:"vpn_gateway",component:d.default},{title:t("VPN EndPoint Groups"),key:"vpn_endpoint_groups",component:u.default},{title:t("IKE Policies"),key:"ike_policy",component:c.default},{title:t("IPsec Policies"),key:"ipsec_policy",component:f.default},{title:t("IPsec Site Connections"),key:"ipsec_site_connections",component:p.default}]}}a.VPN=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3937:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.VPNGateway=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(1358),u=r(1321),c=r(418),f=r(3938);class p extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[c.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("External IP"),dataIndex:"null",render:(e,t)=>t.external_v4_ip||t.external_v6_ip},{title:t("Router ID"),dataIndex:"router_id",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:u.vpnStatus}]))}init(){this.store=new d.VpnServicesStore,this.downloadStore=new d.VpnServicesStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_vpnservice"}get name(){return t("vpn services")}get hasTab(){return!0}get adminPageHasProjectFilter(){return!0}get actionConfigs(){return this.isAdminPage?f.adminConfigs:f.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:u.vpnStatusOptions},{label:t("Router ID"),name:"router_id"},{label:t("External IP(V4)"),name:"external_v4_ip"},{label:t("External IP(V6)"),name:"external_v6_ip"}]}}a.VPNGateway=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3938:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3939)),l=i(a(3940)),o=i(a(3941)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3939:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=r(1241),g=r(575),_=f(r(1358)),b=r(1267);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{name:t,description:a,router_id:r}=e;return _.default.create({name:t,description:a,router_id:r.selectedRowKeys[0]})}))}get name(){return t("create vpn")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.routerStore=new g.RouterStore}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},I(I({name:"router_id",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,extraParams:{project_id:this.currentProjectId}},(0,b.getRouterSelectTablePropsBackend)(this)),{},{disabledFunc:e=>!e.external_gateway_info,required:!0})]}}a.Create=A,(0,m.default)(A,"id","create-vpn"),(0,m.default)(A,"title",t("Create VPN")),(0,m.default)(A,"buttonText",t("Create")),(0,m.default)(A,"policy","create_vpnservice"),(0,m.default)(A,"allowed",(()=>p.default.resolve(!0)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3940:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(1358));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return u.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-vpn"),(0,o.default)(c,"title",t("Edit VPN")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_vpnservice"),(0,o.default)(c,"allowed",(e=>"ACTIVE"!==e.status?l.default.resolve(!1):l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3941:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1358)),m=n(r(133)),h=n(r(1275));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_vpnservice"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield h.default.fetchList({vpnservice_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the vpn gateway is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpnservice"}get title(){return t("Delete VPN")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn")}isCurrentProject(e){var t=m.default;return!(!f.checkSystemAdmin&&e.project_id!==t.user.project.id)}}a.default=v},3942:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.EndpointGroup=void 0;var s=o(r(77)),d=o(r(54)),u=o(r(63));r(347);var c=o(r(348));r(1246);var f=o(r(1247));r(1244);var p=o(r(1245)),m=o(r(49));r(589);var h=o(r(590)),v=o(r(610)),g=o(r(35)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(0)),b=r(412),y=o(r(1242)),I=r(1359),A=(r(161),r(564),r(417)),S=r(418),w=r(3943);function x(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(x=function(e){return e?a:t})(e)}class P extends y.default{constructor(){super(...arguments),(0,g.default)(this,"getColumns",(()=>[S.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Type"),dataIndex:"type",isHideable:!0,render:e=>{switch(e){case"subnet":return t("Local");case"cidr":return t("Peer");default:return""}}},{title:t("Endpoint Counts"),dataIndex:"endpoints",render:(e,a)=>{var r=_.default.createElement(C,{record:a});return _.default.createElement(_.default.Fragment,null,e.length," ",_.default.createElement(h.default,{content:r,title:"cidr"===a.type?t("Peer Network"):t("Local Network"),destroyTooltipOnHide:!0},_.default.createElement(v.default,null)))},stringify:e=>{var t;return(0,s.default)(t="".concat(e.length,"(")).call(t,e.join(","),")")}}]))}init(){this.store=new I.VpnEndPointGroupStore,this.downloadStore=new I.VpnEndPointGroupStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_endpoint_group"}get aliasPolicy(){return"neutron:get_endpoint_group"}get name(){return t("vpn endpoint groups")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?w.adminConfigs:w.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}function C(e){var{record:t}=e,{type:a,endpoints:r}=t,[i,n]=(0,_.useState)([]);return(0,_.useEffect)((()=>{"subnet"===a&&0===i.length&&(0,m.default)((function*(){var e=(0,d.default)(r).call(r,(e=>(new A.SubnetStore).fetchDetail({id:e}))),t=yield u.default.all(e);n(t)}))()})),"cidr"===a?_.default.createElement(f.default,null,(0,d.default)(r).call(r,(e=>{var a;return _.default.createElement(p.default,{span:24,key:(0,s.default)(a="".concat(e,"_")).call(a,t.id)},e)}))):0===i.length?_.default.createElement(c.default,null):_.default.createElement(f.default,{style:{maxWidth:550}},(0,d.default)(i).call(i,(e=>{var a;return _.default.createElement(p.default,{span:24,key:(0,s.default)(a="".concat(e,"_")).call(a,t.id)},_.default.createElement(f.default,{gutter:24},_.default.createElement(p.default,{span:6},e.name),_.default.createElement(p.default,{span:6},e.cidr),_.default.createElement(p.default,{span:12},e.id)))})))}a.EndpointGroup=P;var E=(0,b.inject)("rootStore")((0,b.observer)(P));a.default=E},3943:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3944)),l=i(a(3945)),o=i(a(3946)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3944:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(29)),m=f(r(1390)),h=f(r(232)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=r(1241),A=r(565),S=r(575),w=r(417),x=f(r(1359)),P=r(1267),C=r(1273);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{var{type:t}=this.state,{name:a,description:r}=e,i=(0,_.default)(e,["name","description"]),n={name:a,description:r,type:t};if("subnet"===t){var{subnet_id:l}=i;n.endpoints=l.selectedRowKeys}else if("cidr"===t){var{endpoints:o}=i;n.endpoints=o.split("\n")}return x.default.create(n)})),(0,b.default)(this,"handleRouterChange",function(){var t=(0,g.default)((function*(t){var a;e.setState({subnetLoading:!0});var r=yield(0,C.getPortsWithFixedIPs)(),i=(0,C.getSubnetToRouter)(r,t.selectedRows,!1);e.setState({subnets:(0,p.default)(a=e.allSubnets).call(a,(e=>(0,m.default)(i).call(i,(t=>t.subnet_id===e.id))>-1)),subnetLoading:!1}),e.formRef.current.resetFields(["subnet_id"])}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("create vpn endpoint group")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.routerStore=new S.RouterStore,this.subnetStore=new w.SubnetStore,this.state={subnets:[],type:"subnet",subnetLoading:!0},this.getAllSubnets()}getAllSubnets(){var e=this;return(0,g.default)((function*(){e.allSubnets=yield e.subnetStore.pureFetchList(),e.setState({subnetLoading:!1})}))()}get defaultValue(){return{type:"subnet"}}get formItems(){var{subnets:e,type:a,subnetLoading:r}=this.state,i="subnet"===a;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"type",label:t("Type"),type:"select",required:!0,options:[{label:t("Peer"),value:"cidr"},{label:t("Local"),value:"subnet"}],onChange:e=>{this.setState({type:e})}},D(D({name:"router_id",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,extraParams:{project_id:this.currentProjectId}},(0,P.getRouterSelectTablePropsBackend)(this)),{},{required:!0,onChange:this.handleRouterChange,hidden:!i}),{name:"subnet_id",label:t("Subnet"),type:"select-table",data:e,isLoading:r,isMulti:!0,columns:[{title:t("Name"),dataIndex:"name",isLink:!0},{title:t("CIDR"),dataIndex:"cidr"}],required:!0,hidden:!i},{name:"endpoints",label:t("Peer Network Segment"),type:"textarea",validator:(e,a)=>{var r;return(0,h.default)(r=a.split("\n")).call(r,(e=>!k(e)&&!R(e)))?v.default.reject(new Error(t("Invalid: CIDR Format Error(e.g. 10.10.10.0/24)"))):v.default.resolve(!0)},extra:t("Please fill in the peer network segment and subnet mask of CIDR format, the written subnets should be under the same router, one per line."),hidden:i,required:!0}]}}a.Create=N,(0,b.default)(N,"id","create-vpn-endpoint-group"),(0,b.default)(N,"title",t("Create VPN Endpoint Group")),(0,b.default)(N,"buttonText",t("Create")),(0,b.default)(N,"policy","create_endpoint_group"),(0,b.default)(N,"aliasPolicy","neutron:create_endpoint_group"),(0,b.default)(N,"allowed",(()=>v.default.resolve(!0)));var j=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=j},3945:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(1359));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return u.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-vpn-endpoint-groups"),(0,o.default)(c,"title",t("Edit VPN EndPoint Groups")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_endpoint_group"),(0,o.default)(c,"aliasPolicy","neutron:update_endpoint_group"),(0,o.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3946:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1359)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_endpoint_group"),(0,u.default)(this,"aliasPolicy","neutron:delete_endpoint_group"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r;switch(a.type){case"cidr":r={peer_ep_group_id:a.id};break;case"subnet":r={local_ep_group_id:a.id}}var i,n=yield m.default.fetchList(r);return n.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(i="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(i,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(n).call(n,(e=>e.name)).join(", "),ids:(0,o.default)(n).call(n,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-endpoint-group"}get title(){return t("Delete VPN EndPoint Groups")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn endpoint groups")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3947:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IKEPolicy=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(77)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=r(1339),m=r(1321),h=r(418),v=r(3948);class g extends f.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[h.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Auth Algorithm"),dataIndex:"auth_algorithm",isHideable:!0},{title:t("Encryption Algorithm"),dataIndex:"encryption_algorithm",isHideable:!0},{title:t("IKE Version"),dataIndex:"ike_version",isHideable:!0},{title:t("Lifetime"),dataIndex:"lifetime",isHideable:!0,render:e=>{var t;return u.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,l.default)(t=(0,o.default)(e)).call(t,((t,a)=>{var r,i;return u.default.createElement("li",{key:(0,s.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,s.default)(i="".concat(t,": ")).call(i,e[t]))})))},stringify:e=>{var t;return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{var a;return(0,s.default)(a="".concat(t,": ")).call(a,e[t])})).join(" | ")}},{title:t("PFS"),dataIndex:"pfs",isHideable:!0}]))}init(){this.store=new p.VpnIKEPolicyStore,this.downloadStore=new p.VpnIKEPolicyStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ikepolicy"}get name(){return t("vpn IKE policy")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?v.adminConfigs:v.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Auth Algorithm"),name:"auth_algorithm",options:m.authAlgorithmOptions},{label:t("Encryption Algorithm"),name:"encryption_algorithm",options:m.encryptionAlgorithmOptions},{label:t("IKE Version"),name:"ike_version",options:m.ikePolicyIKEVersionOptions},{label:t("PFS"),name:"pfs",options:m.pfsOptions}]}}a.IKEPolicy=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3948:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3949)),l=i(a(3950)),o=i(a(3951)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3949:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(1339)),b=r(1321);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{lifetimeValue:t}=e,a=function(e){for(var t=1;tp.default.resolve(!0)));var A=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=A},3950:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(77)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=f(r(0)),b=r(412),y=r(1241),I=f(r(1339)),A=f(r(1275));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{lifetimeValue:t,canSubmit:a}=e,r=w({lifetime:{units:"seconds",value:t}},(0,v.default)(e,["lifetimeValue","canSubmit"]));return I.default.update({id:this.item.id},r)}))}init(){this.state={canSubmit:!0,connections:[]},A.default.fetchList({ikepolicy_id:this.item.id}).then((e=>{e.length>0&&this.setState({canSubmit:!1,connections:e})}))}get defaultValue(){var e=this.item,{lifetime:t}=e;return w(w({},(0,v.default)(e,["lifetime"])),{},{lifetimeValue:t.value})}get formItems(){var e,a,r,i,{canSubmit:n}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"canSubmit",label:t("Status"),component:_.default.createElement(_.default.Fragment,null,t("In Use")),validator:()=>{var e,{connections:a}=this.state;return n?p.default.resolve(!0):p.default.reject(new Error((0,m.default)(e="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.name,name:this.item.name,reason:t("the policy is in use")}),"\n\n ")).call(e,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,h.default)(a).call(a,(e=>e.name)).join(", "),ids:(0,h.default)(a).call(a,(e=>e.id)).join(", ")}))))},hidden:n},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"auth_algorithm",label:t("Auth Algorithm"),type:"select",options:(0,h.default)(e=["sha1","sha256","sha384","sha512"]).call(e,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"encryption_algorithm",label:t("Encryption Algorithm"),type:"select",options:(0,h.default)(a=["3des","aes-128","aes-192","aes-256"]).call(a,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"pfs",label:t("PFS"),type:"select",options:(0,h.default)(r=["group2","group5","group14"]).call(r,(e=>({label:e,value:e}))),required:!0},{name:"lifetimeValue",label:t("Lifetime Value"),type:"input-number",min:0,required:!0},{name:"ike_version",label:t("IKE Version"),type:"select",options:(0,h.default)(i=["v1","v2"]).call(i,(e=>({label:e,value:e}))),required:!0}]}}a.Edit=x,(0,g.default)(x,"id","edit-vpn-ike-policy"),(0,g.default)(x,"title",t("Edit VPN IKE Policy")),(0,g.default)(x,"buttonText",t("Edit")),(0,g.default)(x,"policy","update_ikepolicy"),(0,g.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},3951:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1339)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_ikepolicy"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield m.default.fetchList({ikepolicy_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-ike-policy"}get title(){return t("Delete VPN IKE Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn IKE policy")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3952:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecPolicy=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(77)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=r(1340),m=r(1321),h=r(418),v=r(3953);class g extends f.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[h.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Auth Algorithm"),dataIndex:"auth_algorithm",isHideable:!0},{title:t("Encapsulation Mode"),dataIndex:"encapsulation_mode",isHideable:!0},{title:t("Encryption Algorithm"),dataIndex:"encryption_algorithm",isHideable:!0},{title:t("Transform Protocol"),dataIndex:"transform_protocol",idHideable:!0},{title:t("Lifetime"),dataIndex:"lifetime",isHideable:!0,render:e=>{var t;return u.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,l.default)(t=(0,o.default)(e)).call(t,((t,a)=>{var r,i;return u.default.createElement("li",{key:(0,s.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,s.default)(i="".concat(t,": ")).call(i,e[t]))})))},stringify:e=>{var t;return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{var a;return(0,s.default)(a="".concat(t,": ")).call(a,e[t])})).join(" | ")}},{title:t("PFS"),dataIndex:"pfs",isHideable:!0}]))}init(){this.store=new p.VpnIPsecPolicyStore,this.downloadStore=new p.VpnIPsecPolicyStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ipsecpolicy"}get name(){return t("vpn IPsec policy")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?v.adminConfigs:v.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Auth Algorithm"),name:"auth_algorithm",options:m.authAlgorithmOptions},{label:t("Encapsulation Mode"),name:"encapsulation_mode",options:m.ipsecPolicyEncapsulationModeOptions},{label:t("Encryption Algorithm"),name:"encryption_algorithm",options:m.encryptionAlgorithmOptions},{label:t("Transform Protocol"),name:"transform_protocol",options:m.ipsecPolicyTransformProtocolOptions},{label:t("PFS"),name:"pfs",options:m.pfsOptions}]}}a.IPsecPolicy=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3953:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3954)),l=i(a(3955)),o=i(a(3956)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3954:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(1340)),b=r(1321);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{lifetimeValue:t}=e,a=function(e){for(var t=1;tp.default.resolve(!0)));var A=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=A},3955:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(77)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=f(r(0)),b=r(412),y=r(1241),I=f(r(1340)),A=f(r(1275));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{lifetimeValue:t}=e,a=w({lifetime:{units:"seconds",value:t}},(0,v.default)(e,["lifetimeValue"]));return I.default.update({id:this.item.id},a)}))}init(){this.state={canSubmit:!0,connections:[]},A.default.fetchList({ipsecpolicy_id:this.item.id}).then((e=>{e.length>0&&this.setState({canSubmit:!1,connections:e})}))}get defaultValue(){var e=this.item,{lifetime:t,canSubmit:a}=e;return w(w({},(0,v.default)(e,["lifetime","canSubmit"])),{},{lifetimeValue:t.value})}get formItems(){var e,a,r,i,n,{canSubmit:l}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"canSubmit",label:t("Status"),component:_.default.createElement(_.default.Fragment,null,t("In Use")),validator:()=>{var e,{connections:a}=this.state;return l?p.default.resolve(!0):p.default.reject(new Error((0,m.default)(e="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.name,name:this.item.name,reason:t("the policy is in use")}),"\n\n ")).call(e,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,h.default)(a).call(a,(e=>e.name)).join(", "),ids:(0,h.default)(a).call(a,(e=>e.id)).join(", ")}))))},hidden:l},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"auth_algorithm",label:t("Auth Algorithm"),type:"select",options:(0,h.default)(e=["sha1","sha256","sha384","sha512"]).call(e,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"encapsulation_mode",label:t("Encapsulation Mode"),type:"select",options:(0,h.default)(a=["tunnel","transport"]).call(a,(e=>({label:e,value:e}))),required:!0},{name:"encryption_algorithm",label:t("Encryption Algorithm"),type:"select",options:(0,h.default)(r=["3des","aes-128","aes-192","aes-256"]).call(r,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"pfs",label:t("PFS"),type:"select",options:(0,h.default)(i=["group2","group5","group14"]).call(i,(e=>({label:e,value:e}))),required:!0},{name:"lifetimeValue",label:t("Lifetime Value"),type:"input-number",min:0,required:!0},{name:"transform_protocol",label:t("Transform Protocol"),type:"select",options:(0,h.default)(n=["esp","ah","ah-esp"]).call(n,(e=>({label:e,value:e}))),required:!0}]}}a.Edit=x,(0,g.default)(x,"id","edit-vpn-ipsec-policy"),(0,g.default)(x,"title",t("Edit VPN IPsec Policy")),(0,g.default)(x,"buttonText",t("Edit")),(0,g.default)(x,"policy","update_ipsecpolicy"),(0,g.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},3956:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1340)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_ipsecpolicy"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield m.default.fetchList({ipsecpolicy_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-ipsec-policy"}get title(){return t("Delete VPN IPsec Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn IPsec policy")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3957:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecSiteConnection=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(1275),u=r(1321),c=r(1643);class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("ipsecDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Local Endpoint Group ID"),dataIndex:"local_ep_group_id",isHideable:!0},{title:t("Peer Endpoint Group ID"),dataIndex:"peer_ep_group_id",isHideable:!0},{title:t("Peer Address"),dataIndex:"peer_address",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:u.vpnStatus}]))}init(){this.store=new d.VpnIPsecConnectionStore,this.downloadStore=new d.VpnIPsecConnectionStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ipsec_site_connection"}get name(){return t("ipsec site connection")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?c.adminConfigs:c.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Local Endpoint Group ID"),name:"local_ep_group_id"},{label:t("Peer Endpoint Group ID"),name:"peer_ep_group_id"},{label:t("Peer Address"),name:"peer_address"},{label:t("Status"),name:"status",options:u.vpnStatusOptions}]}}a.IPsecSiteConnection=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3958:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(54)),h=f(r(29)),v=f(r(77)),g=f(r(86));r(1246);var _=f(r(1247));r(1244);var b=f(r(1245));r(426);var y=f(r(429)),I=f(r(49)),A=f(r(58)),S=f(r(35)),w=f(r(607)),x=f(r(0)),P=r(412),C=r(1241),E=r(565),D=f(r(1358)),k=f(r(1339)),R=f(r(1340)),N=f(r(1359)),j=(r(161),f(r(1275))),M=f(r(3959));function T(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function B(e){for(var t=1;t{var t=(0,w.default)({},this.defaultValue,e),{interval:a,timeout:r,action:i,password:n,confirmPassword:l,more:o}=t,s=(0,A.default)(t,["interval","timeout","action","password","confirmPassword","more"]),d=B(B({},s),{},{psk:n,peer_id:s.peer_address,dpd:{interval:a,timeout:r,action:i}});return j.default.create(d)}))}get name(){return t("create ipsec site connection")}init(){this.vpnServiceStore=D.default,this.ikePolicyStore=k.default,this.ipsecPolicyStore=R.default,this.endpointGroupStore=N.default,this.fetchData()}fetchData(){var e=this;return(0,I.default)((function*(){yield p.default.all([e.vpnServiceStore.fetchList(),e.ikePolicyStore.fetchList(),e.ipsecPolicyStore.fetchList(),e.endpointGroupStore.fetchList()])}))()}get defaultValue(){return{mtu:1500,initiator:"bi-directional",action:"hold",interval:30,timeout:120}}get formItems(){var e,a,r,i,n,l,o,s,d,u,c,{local_ep_group_id:f,peer_ep_group_id:I,more:A}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"vpnservice_id",label:t("VPN Service"),type:"select",options:(0,m.default)(e=this.vpnServiceStore.list.data).call(e,(e=>({label:e.name,value:e.id}))),required:!0},{name:"ikepolicy_id",label:t("IKE Policy"),type:"select",options:(0,m.default)(a=this.ikePolicyStore.list.data).call(a,(e=>({label:e.name,value:e.id}))),required:!0},{name:"ipsecpolicy_id",label:t("IPsec Policy"),type:"select",options:(0,m.default)(r=this.ipsecPolicyStore.list.data).call(r,(e=>({label:e.name,value:e.id}))),required:!0},{name:"local_ep_group_id",label:t("Local Endpoint Group"),type:"select",options:(0,m.default)(i=(0,h.default)(n=this.endpointGroupStore.list.data).call(n,(e=>"subnet"===e.type))).call(i,(e=>({label:e.name,value:e.id}))),onChange:e=>{this.setState({local_ep_group_id:e})},required:!0},{name:"local_subnet",type:"label",label:t("Local Subnet"),component:x.default.createElement(M.default,{data:this.endpointGroupStore.list.data,local_ep_group_id:f})},{name:"peer_address",type:"input",label:t("Peer Gateway Public Address"),extra:t("Peer gateway public address for the IPsec site connection"),validator:(e,a)=>{var r;return F(a)||L(a)?p.default.resolve():p.default.reject(new Error((0,v.default)(r="".concat(t("Invalid")," ")).call(r,t("Peer Gateway Public Address"))))},required:!0},{name:"peer_ep_group_id",label:t("Peer Endpoint Group"),type:"select",options:(0,m.default)(l=(0,h.default)(o=this.endpointGroupStore.list.data).call(o,(e=>"cidr"===e.type))).call(l,(e=>({label:e.name,value:e.id}))),onChange:e=>{this.setState({peer_ep_group_id:e})},required:!0},{name:"peer_cidrs",type:"label",label:t("Peer Cidrs"),component:x.default.createElement(_.default,null,I?(0,m.default)(s=(0,g.default)(d=this.endpointGroupStore.list.data).call(d,(e=>e.id===I)).endpoints).call(s,(e=>x.default.createElement(b.default,{span:24},e))):x.default.createElement(b.default,{span:24},x.default.createElement(y.default,null)))},{name:"password",type:"input-password",label:t("Pre-Shared Key(PSK) String"),otherRule:(0,E.getPasswordOtherRule)("password","instance"),required:!0},{name:"confirmPassword",type:"input-password",label:t("Confirm Shared Key"),otherRule:(0,E.getPasswordOtherRule)("confirmPassword","instance",void 0,t("Pre-Shared Key must be the same with Confirm Shared Key.")),required:!0},{name:"mtu",type:"input-number",label:t("MTU"),min:68,tip:t("The maximum transmission unit (MTU) value to address fragmentation. Minimum value is 68 for IPv4, and 1280 for IPv6."),required:!0,hidden:!A},{name:"initiator",label:t("Initiator Mode"),type:"select",options:(0,m.default)(u=["bi-directional","response-only"]).call(u,(e=>({label:e,value:e}))),tip:t("Indicates whether this VPN can only respond to connections or both respond to and initiate connections."),required:!0,hidden:!A},{name:"action",label:t("DPD Action"),type:"select",options:(0,m.default)(c=["clear","hold","restart","disabled","restart-by-peer"]).call(c,(e=>({label:e,value:e}))),tip:t("DPD actions controls the use of Dead Peer Detection Protocol."),required:!0,hidden:!A},{name:"interval",type:"input-number",label:t("DPD Interval (sec)"),min:0,tip:t("Sec for DPD delay, > 0"),required:!0,hidden:!A},{name:"timeout",type:"input-number",label:t("DPD timeout (sec)"),min:0,tip:t("Sec for DPD timeout, > 0 & > DPD Interval"),required:!0,hidden:!A},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.Create=O,(0,S.default)(O,"id","create-ipsec-site-connection"),(0,S.default)(O,"title",t("Create IPsec Site Connection")),(0,S.default)(O,"buttonText",t("Create")),(0,S.default)(O,"policy","create_ipsec_site_connection"),(0,S.default)(O,"allowed",(()=>p.default.resolve(!0)));var Q=(0,P.inject)("rootStore")((0,P.observer)(O));a.default=Q},3959:function(e,t,a){"use strict";var r=a(162),i=a(20),n=a(25),l=a(21);i(t,"__esModule",{value:!0}),t.default=void 0;var o=l(a(86)),s=l(a(54)),d=l(a(63));a(347);var u=l(a(348));a(1244);var c=l(a(1245));a(426);var f=l(a(429)),p=l(a(49)),m=l(a(119)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=_(t);if(a&&a.has(e))return a.get(e);var r={},l=i&&n;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=l?n(e,o):null;s&&(s.get||s.set)?i(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(a(0)),v=l(a(16)),g=(a(161),a(417));function _(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(_=function(e){return e?a:t})(e)}class b extends h.Component{constructor(e){super(e),this.state={subnets:[],isLoading:!0}}componentDidUpdate(e){var{local_ep_group_id:t}=this.props,{local_ep_group_id:a}=e;t!==a&&this.getSubnets()}get currentEndpoints(){var{data:e,local_ep_group_id:t}=this.props;return(0,m.default)((0,o.default)(e).call(e,(e=>e.id===t)),"endpoints",[])}getSubnets(){var e=this;return(0,p.default)((function*(){var t;e.setState({isLoading:!0});var a=(0,s.default)(t=e.currentEndpoints).call(t,(e=>(new g.SubnetStore).fetchDetail({id:e}))),r=yield d.default.all(a);e.setState({subnets:r,isLoading:!1})}))()}render(){var e,{local_ep_group_id:t}=this.props,{subnets:a,isLoading:r}=this.state;return t?r?h.default.createElement(c.default,null,h.default.createElement(u.default,null)):h.default.createElement(h.default.Fragment,null,(0,s.default)(e=this.currentEndpoints).call(e,((e,t)=>h.default.createElement(c.default,{span:24,key:"cep_".concat(t)},(0,m.default)(a[t],"cidr"))))):h.default.createElement(c.default,null,h.default.createElement(f.default,null))}}b.propTypes={data:v.default.array,local_ep_group_id:v.default.string},b.defaultProps={data:[],local_ep_group_id:void 0};var y=b;t.default=y},3960:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(91)),s=n(r(35)),d=r(412),u=r(1241),c=n(r(1275)),f=["ACTIVE","DOWN"];class p extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return c.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=p,(0,s.default)(p,"id","edit-ipsec-site-connection"),(0,s.default)(p,"title",t("Edit IPsec Site Connection")),(0,s.default)(p,"buttonText",t("Edit")),(0,s.default)(p,"policy","update_ipsec_site_connection"),(0,s.default)(p,"allowed",(e=>l.default.resolve((0,o.default)(f).call(f,e.status)>-1)));var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3961:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=r(1251),d=n(r(1275)),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_ipsec_site_connection"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete-ipsec-site-connection"}get title(){return t("Delete IPsec Site Connection")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete ipsec site connection")}isCurrentProject(e){var t=u.default;return!(!(0,s.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3962:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecSiteConnection=void 0;var l=r(412),o=n(r(1243)),s=r(1275),d=r(1321),u=n(r(3963)),c=r(1643);class f extends o.default{init(){this.store=new s.VpnIPsecConnectionStore}get name(){return t("IPsec Site Connection")}get policy(){return"get_ipsec_site_connection"}get listUrl(){return this.getRoutePath("vpn",null,{tab:"ipsec_site_connections"})}get actionConfigs(){return this.isAdminPage?c.adminConfigs:c.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id",hidden:!this.isAdminPage},{title:t("VPN Service ID"),dataIndex:"vpnservice_id"},{title:t("Status"),dataIndex:"status",valueMap:d.vpnStatus},{title:t("Local Endpoint Group ID"),dataIndex:"local_ep_group_id"},{title:t("Peer Endpoint Group ID"),dataIndex:"peer_ep_group_id"},{title:t("Peer Address"),dataIndex:"peer_address"},{title:t("Peer ID"),dataIndex:"peer_id"},{title:t("Admin State"),dataIndex:"admin_state_up",valueRender:"yesNo"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default}]}}a.IPsecSiteConnection=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3963:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(54)),m=f(r(32)),h=f(r(77)),v=f(r(49)),g=f(r(35)),_=r(412),b=f(r(1249)),y=r(1275),I=f(r(0)),A=r(36);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class w extends b.default{constructor(){var e;super(...arguments),e=this,(0,g.default)(this,"fetchData",function(){var t=(0,v.default)((function*(t){e.store.fetchDetailWithPolicyDetail(function(e){for(var t=1;te||"-"},{label:t("Auth Algorithm"),dataIndex:"auth_algorithm"},{label:t("Encryption Algorithm"),dataIndex:"encryption_algorithm"},{label:t("IKE Version"),dataIndex:"ike_version"},{label:t("Lifetime"),dataIndex:"lifetime",render:e=>{var t;return e&&I.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,p.default)(t=(0,m.default)(e)).call(t,((t,a)=>{var r,i;return I.default.createElement("li",{key:(0,h.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,h.default)(i="".concat(t,": ")).call(i,e[t]))})))}},{label:t("PFS"),dataIndex:"pfs"}];return{title:t("IKE Policy"),options:e,sourceData:this.detailData.ikeDetail}}get ipsecInfoCard(){var e=[{label:t("Name"),dataIndex:"name"},{label:t("Description"),dataIndex:"description"},{label:t("Auth Algorithm"),dataIndex:"auth_algorithm"},{label:t("Encapsulation Mode"),dataIndex:"encapsulation_mode"},{label:t("Encryption Algorithm"),dataIndex:"encryption_algorithm"},{label:t("Transform Protocol"),dataIndex:"transform_protocol"},{label:t("Lifetime"),dataIndex:"lifetime",render:e=>{var t;return e&&I.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,p.default)(t=(0,m.default)(e)).call(t,((t,a)=>{var r,i;return I.default.createElement("li",{key:(0,h.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,h.default)(i="".concat(t,": ")).call(i,e[t]))})))}},{label:t("PFS"),dataIndex:"pfs"}];return{title:t("IPsec Policy"),options:e,sourceData:this.detailData.ipsecDetail}}get advancedInfo(){var e=[{label:t("MTU"),dataIndex:"mtu"},{label:t("Initiator Mode"),dataIndex:"initiator"},{label:t("DPD Action"),dataIndex:"dpd",render:e=>e&&e.action},{label:t("DPD Interval (sec)"),dataIndex:"dpd",render:e=>e&&e.interval},{label:t("DPD timeout (sec)"),dataIndex:"dpd",render:e=>e&&e.timeout}];return{title:t("Advanced Params"),options:e}}}a.BaseDetail=w;var x=(0,_.inject)("rootStore")((0,_.observer)(w));a.default=x},3964:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.SecurityGroups=void 0;var s=o(r(164)),d=o(r(35)),u=r(412),c=o(r(1242)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(419)),p=r(342),m=o(r(1644));function h(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(h=function(e){return e?a:t})(e)}class v extends c.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("securityGroupDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=f.default,this.downloadStore=new f.SecurityGroupStore}get policy(){return"get_security_group"}get name(){return t("security groups")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,s.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?p.emptyActionConfig:this.isAdminPage?m.default.actionConfigsAdmin:m.default.actionConfigs}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get adminPageHasProjectFilter(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.SecurityGroups=v;var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3965:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var p=f(r(63)),m=f(r(49)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(419)),b=f(r(340));function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{left:a=0}=e||{},{left:r=0}=t||{};return 0!==a&&(r>=2||-1===r)?1:0};class S extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>_.default.create(e)))}get name(){return t("Create security group")}init(){this.state.groupQuota={},this.state.ruleQuota={},this.state.quotaLoading=!0,this.projectStore=b.default,this.getQuota()}static get disableSubmit(){var{neutronQuota:{security_group:e={},security_group_rule:t={}}={}}=b.default;return 0===A(e,t)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,m.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{security_group:a={},security_group_rule:r={}}=t||{};e.setState({groupQuota:a,ruleQuota:r,quotaLoading:!1})}))()}get tips(){return t("This operation creates a security group with default security group rules for the IPv4 and IPv6 ether types.")}get quotaInfo(){var{groupQuota:e={},ruleQuota:a={},quotaLoading:r}=this.state;if(r)return[];var i=A(e,a);return[I(I({},e),{},{add:i,name:"security_group",title:t("Security Group")}),I(I({},a),{},{add:2*i,name:"security_group_rule",title:t("Security Group Rule"),type:"line"})]}get defaultValue(){return{}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateAction=S,(0,h.default)(S,"id","create"),(0,h.default)(S,"title",t("Create Security Group")),(0,h.default)(S,"policy","create_security_group"),(0,h.default)(S,"allowed",(()=>p.default.resolve(!0)));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3966:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(419));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return u.default.edit({id:t},e)}))}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditAction=c,(0,o.default)(c,"id","edit"),(0,o.default)(c,"title",t("Edit")),(0,o.default)(c,"policy","update_security_group"),(0,o.default)(c,"allowed",(e=>l.default.resolve("default"!==e.name)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3967:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(419));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_security_group"),(0,l.default)(this,"hasNoProject",(e=>!e.project_name||"-"===e.project_name)),(0,l.default)(this,"allowedCheckFunc",(e=>this.isAdminPage&&this.hasNoProject(e)||"default"!==e.name)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Security Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Security Group")}}a.default=d},3968:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SecurityGroupDetail=void 0;var l=n(r(205)),o=r(412),s=r(419),d=n(r(1243)),u=n(r(3969)),c=n(r(1644));class f extends d.default{get name(){return t("security group")}get policy(){return"get_security_group"}get listUrl(){return this.getRoutePath("securityGroup")}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Rules"),key:"rules",component:u.default}]}init(){this.store=new s.SecurityGroupStore}componentDidUpdate(e){(0,l.default)(this.props.match.params,e.match.params)||this.fetchDataWithPolicy()}}a.SecurityGroupDetail=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3969:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rule=void 0;var p=f(r(58)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=f(r(622)),b=r(354),y=r(567),I=f(r(3970));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t(0,b.getSelfColumns)(this)))}init(){this.store=_.default}get policy(){return"get_security_group_rule"}get name(){return t("security group rules")}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,y.getPath)({key:t,params:{id:e}})}get actionConfigs(){return this.isAdminPage?I.default.actionConfigsAdmin:I.default.actionConfigs}get searchFilters(){return b.filterParams}getData(){var e=arguments,t=this;return(0,m.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,p.default)(a,["silent"]),{detail:n={}}=t.props,{id:l}=n;r&&(t.list.silent=!0),l&&(yield t.store.fetchList(S(S({},i),{},{security_group_id:l}))),t.list.silent=!1}))()}}a.Rule=w;var x=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=x},3970:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1645)),l=i(a(3971)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=o},3971:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(234)),o=n(r(77)),s=n(r(35)),d=r(1241),u=n(r(622));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_security_group_rule"),(0,s.default)(this,"getItemName",(e=>{var a,r,i;if(e.name)return e.name;var n,s,d,u,{ethertype:c,port_range_min:f,port_range_max:p,protocol:m,remote_group_id:h,remote_ip_prefix:v}=e,g="",_=(0,l.default)(f,10),b=(0,l.default)(p,10),y=m.toLowerCase();_&&(g=_===b?(0,o.default)(s="".concat(_," / ")).call(s,y):(0,o.default)(d=(0,o.default)(u="".concat(_," - ")).call(u,b," / ")).call(d,y));var I="egress"===e.direction?"to":"from";return n=h||(v||t("ANY")),(0,o.default)(a=(0,o.default)(r=(0,o.default)(i="ALLOW ".concat(c," ")).call(i,g," ")).call(r,I," ")).call(a,n)})),(0,s.default)(this,"onSubmit",(e=>u.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Rule")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Rule")}}a.default=c},3972:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Certificate=void 0;var l=r(412),o=n(r(1282)),s=n(r(3973));class d extends o.default{get tabs(){return[{title:t("Server Certificates"),key:"SERVER",component:s.default},{title:t("CA Certificates"),key:"CA",component:s.default}]}}a.Certificate=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3973:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Certificate=void 0;var m=p(r(54)),h=p(r(203)),v=p(r(35)),g=p(r(0)),_=r(412),b=p(r(1242)),y=C(r(1337)),I=r(1251),A=C(r(1338)),S=r(1254),w=r(349),x=p(r(1472));function P(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(P=function(e){return e?a:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=P(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}return r.default=e,a&&a.set(e,r),r}function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;tD(D({},e),{},{mode:this.currentMode}))),(0,v.default)(this,"getColumns",(()=>[{title:this.showDetail?t("ID/Name"):t("Name"),dataIndex:"name",routeName:this.showDetail?this.getRouteName(this.routeLinkPath):null},{title:t("Certificate Type"),dataIndex:"mode",valueMap:S.certificateMode,isHideable:!0},{title:t("Expires At"),dataIndex:"expiration",valueRender:"toLocalTime",isHideable:!0},{title:t("Domain Name"),dataIndex:"domain",render:e=>e||"-",hidden:"CA"===this.currentMode,isHideable:!0},{title:t("Listener"),dataIndex:"listener",render:e=>e?(0,m.default)(e).call(e,(e=>g.default.createElement("div",{key:e.id},this.getLinkRender("lbListenerDetail",e.name,{loadBalancerId:e.lb,id:e.id},null)))):"-",isHideable:!0,stringify:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,m.default)(e).call(e,(e=>e.name)).join(",")||"-"}},{title:t("Status"),dataIndex:"status",valueMap:S.certificateStatus},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime",isHideable:!0}]))}init(){"SERVER"===this.currentMode?(this.store=y.default,this.downloadStore=new y.ContainersStore):(this.store=A.default,this.downloadStore=new A.SecretsStore)}get policy(){return["containers:get","secrets:get"]}get aliasPolicy(){return["barbican:containers:get","barbican:secrets:get"]}get showDetail(){return(0,I.checkPolicyRule)("barbican:secret:decrypt")}get name(){return t("certificate")}get hasTab(){return!0}get actionConfigs(){return"SERVER"===this.currentMode?x.default.actionConfigsContainer:x.default.actionConfigsSecret}get currentMode(){var e,t=(0,w.parse)((0,h.default)(e=this.props.location.search).call(e,1)),{tab:a="SERVER"}=t;return a}get routeLinkPath(){return"SERVER"===this.currentMode?"certificateContainerDetail":"certificateSecretDetail"}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Certificate=k;var R=(0,_.inject)("rootStore")((0,_.observer)(k));a.default=R},3974:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var l=n(r(164)),o=n(r(63)),s=n(r(1277)),d=n(r(203)),u=n(r(29)),c=n(r(35)),f=r(412),p=r(1241),m=r(163),h=r(565),v=r(1254),g=r(3975),_=n(r(1337)),b=n(r(112)),y=r(349);class I extends p.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"validateDomain",((e,a)=>{var r;if((0,l.default)(r=[void 0,null,""]).call(r,a))return o.default.resolve();var i=a.split(","),n=(0,s.default)(i).call(i,(e=>e.length<=100&&(0,h.isDomain)(e)));return i.length>30||!n?o.default.reject(t("Please enter a correct domain, format is refer to the left tip!")):o.default.resolve()})),(0,c.default)(this,"validateCertificateContent",((e,a)=>{if(!a)return o.default.reject();var r=a.split(/\n/g),i=r[0],n=r[r.length-1]||r[r.length-2];return"-----BEGIN CERTIFICATE-----"===i&&"-----END CERTIFICATE-----"===n?o.default.resolve():o.default.reject(t("Please enter a correct certificate content, format is refer to the left tip!"))})),(0,c.default)(this,"validateCertificateKeyPair",((e,a)=>{if(!a)return o.default.reject();var r=a.split(/\n/g),i=r[0],n=r[r.length-1]||r[r.length-2];return"-----BEGIN RSA PRIVATE KEY-----"===i&&"-----END RSA PRIVATE KEY-----"===n?o.default.resolve():o.default.reject(t("Please enter a correct private key, format is refer to the left tip!"))})),(0,c.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=_.default}get name(){return t("Create Certificate")}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){return{mode:this.typeTab}}get typeTab(){var{location:{search:e=""}={}}=this.containerProps;return(0,y.parse)((0,d.default)(e).call(e,1)).tab||"SERVER"}get certificateModeOptions(){var e;return(0,u.default)(e=(0,m.getOptions)(v.certificateMode)).call(e,(e=>e.value===this.typeTab))}get certificateContentTip(){return g.certificateContentTip}get certificateKeyPairTip(){return g.certificateKeyPairTip}get formItems(){var{mode:e}=this.state;return[{name:"name",label:t("Certificate Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"mode",label:t("Certificate Type"),type:"radio",options:this.certificateModeOptions},{name:"certificate",label:t("Certificate Content"),type:"textarea-from-file",placeholder:t("PEM encoding"),accept:".crt,.pem",tip:this.certificateContentTip,required:!0,rows:6},{name:"private_key",label:t("Private Key"),type:"textarea-from-file",placeholder:t("PEM encoding"),accept:".key,.pem",tip:this.certificateKeyPairTip,required:!0,display:"SERVER"===e,rows:6},{name:"domain",label:t("Domain Name"),type:"textarea",placeholder:t("Please input"),maxLength:1024,hidden:"CA"===e,validator:this.validateDomain,tip:t("The domain name can only be composed of letters, numbers, dashes, in A dash cannot be at the beginning or end, and a single string cannot exceed more than 63 characters, separated by dots; At most can support 30 domain names, separated by commas;The length of a single domain name does not exceed 100 characters, and the total length degree does not exceed 1024 characters."),extra:t("If it is an SNI type certificate, a domain name needs to be specified")},{name:"expiration",label:t("Expires At"),type:"date-picker",showToday:!1,disabledDate:e=>e&&e<=(0,b.default)().endOf("d")}]}}a.CreateAction=I,(0,c.default)(I,"id","create-certificate"),(0,c.default)(I,"title",t("Create Certificate")),(0,c.default)(I,"policy",["secrets:post","containers:post"]),(0,c.default)(I,"allowed",(()=>o.default.resolve(!0)));var A=(0,f.inject)("rootStore")((0,f.observer)(I));a.default=A},3975:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.certificateKeyPairTip=a.certificateContentTip=void 0;var l=n(r(0)),o=l.default.createElement("div",null,l.default.createElement("p",null,t('The certificate contains information such as the public key and signature of the certificate. The extension of the certificate is "pem" or "crt", you can directly enter certificate content or upload certificate file.')),l.default.createElement("p",null,t("It is recommended to refer to the following description format, otherwise it may not be effective")),l.default.createElement("p",null,t('The format of the certificate content is: by "----BEGIN CERTIFICATE-----" as the beginning,"-----END CERTIFICATE----" as the end, 64 characters per line, the last line does not exceed 64 characters, and there cannot be blank lines.')));a.certificateContentTip=o;var s=l.default.createElement("div",null,l.default.createElement("p",null,t('The private key of the certificate, the extension of the private key is "key", you can directly enter the content of the private key file or upload a private key that conforms to the format document.')),l.default.createElement("p",null,t("It is recommended to refer to the following description format, otherwise it may not be effective")),l.default.createElement("p",null,t('The private key content format is: with "-----BEGIN RSA PRIVATE KEY-----" as the beginning,"-----END RSA PRIVATE KEY-----" as the end, 64 characters per line, the last line does not exceed 64 characters, and there cannot be blank lines.')));a.certificateKeyPairTip=s},3976:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1337));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["secret:delete","container:delete"]),(0,l.default)(this,"aliasPolicy",["barbican:secret:delete","barbican:container:delete"]),(0,l.default)(this,"allowedCheckFunc",(e=>!e.listener)),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Certificate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete certificate")}}a.default=d},3977:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1338));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","secret:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.listener)),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Certificate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete certificate")}}a.default=d},3978:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(412),o=n(r(1243)),s=r(1337),d=r(1254),u=n(r(3979)),c=n(r(1472));class f extends o.default{init(){this.store=new s.ContainersStore}get policy(){return"container:get"}get aliasPolicy(){return"barbican:container:get"}get name(){return"Certificate Detail"}get listUrl(){return this.getRoutePath("certificate",null,{tab:"SERVER"})}get actionConfigs(){return c.default.actionConfigsContainer}get detailInfos(){return(0,d.getCertificateColumns)(this)}get tabs(){return[{title:t("Detail Info"),key:"detail_info",component:u.default}]}}a.Detail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3979:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(86)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCardsStyle(){return{flex:1}}get leftCards(){return[this.contentCard]}get rightCards(){return[this.keyPairCard]}get contentCard(){var{secret_refs:e=[]}=this.props.detail,{secret_info:a={}}=(0,l.default)(e).call(e,(e=>"certificate"===e.name))||{},r=[{content:o.default.createElement("pre",null,a.payload),copyable:{text:a.payload}}];return{title:t("Certificate Content"),labelCol:0,contentCol:24,options:r}}get keyPairCard(){var{secret_refs:e=[]}=this.props.detail,{secret_info:a={}}=(0,l.default)(e).call(e,(e=>"private_key"===e.name))||{},r=[{content:o.default.createElement("pre",null,a.payload),copyable:{text:a.payload}}];return{title:t("Private Key"),labelCol:0,contentCol:24,options:r}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3980:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=n(r(29)),o=r(412),s=n(r(1243)),d=r(1338),u=r(1254),c=n(r(3981)),f=n(r(1472));class p extends s.default{init(){this.store=new d.SecretsStore}get policy(){return"secret:get"}get name(){return"Certificate Detail"}get listUrl(){return this.getRoutePath("certificate",null,{tab:"CA"})}get actionConfigs(){return f.default.actionConfigsSecret}get detailInfos(){var e;return(0,l.default)(e=(0,u.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex))}get tabs(){return[{title:t("Detail Info"),key:"detail_info",component:c.default}]}}a.Detail=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3981:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(0)),o=r(412),s=n(r(1249));class d extends s.default{get leftCardsStyle(){return{flex:1}}get leftCards(){return[this.contentCard]}get contentCard(){var{payload:e}=this.props.detail,a=[{content:l.default.createElement("pre",null,e),copyable:{text:e}}];return{title:t("Certificate Content"),labelCol:0,contentCol:24,options:a}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3982:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Reverse=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=p(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(1403)),f=o(r(1646));function p(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(p=function(e){return e?a:t})(e)}class m extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Address"),dataIndex:"address",isLink:!0,routeName:"dnsReverseDetail",routeParamsFunc:e=>({id:e.id})},{title:t("PTR Domain Name"),dataIndex:"ptrdname",isHideable:!0},{title:t("Status"),dataIndex:"status",isHideable:!0}]))}init(){this.store=c.default,this.downloadStore=new c.ReverseStore}get policy(){return"get_images"}get name(){return t("Reverse Dns")}get actionConfigs(){return f.default}}a.Reverse=m;var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3983:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Set=void 0;var l=n(r(63)),o=n(r(35)),s=r(1241),d=r(412),u=n(r(1403));class c extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.set({id:t},e)}))}init(){this.store=u.default}static get modalSize(){return"small"}get name(){return t("Set Domain Name PTR")}static allowed(){return l.default.resolve(!0)}get formItems(){return[{name:"ptrdname",label:t("Domain Name"),type:"input",required:!0,placeholder:t("smtp.example.com"),tip:t("Domain name ending in.")},{name:"description",label:t("Description"),type:"textarea",tip:t("Details about the PTR record.")},{name:"ttl",label:t("TTL"),type:"input-number",min:0,tip:t("Time To Live in seconds."),placeholder:t("3600")}]}}a.Set=c,(0,o.default)(c,"id","set-reverse"),(0,o.default)(c,"title",t("Set")),(0,o.default)(c,"policy","get_images");var f=(0,d.inject)("rootStore")((0,d.observer)(c));a.default=f},3984:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1403));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunc",(e=>null!==e.ptrdname&&"ACTIVE"===e.status)),(0,l.default)(this,"policy","instance:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action}? (Zone: {name})",{action:this.actionNameDisplay||this.title,name:a})})),(0,l.default)(this,"onSubmit",(e=>s.default.unset({id:e.id},{ptrdname:null})))}get id(){return"usnet"}get title(){return t("Unset")}get actionName(){return t("Unset")}get buttonText(){return t("Unset")}}a.default=d},3985:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ReverseDetail=void 0;var l=r(412),o=n(r(1243)),s=n(r(1403)),d=n(r(3986)),u=n(r(1646));class c extends o.default{init(){this.store=s.default}get name(){return t("Reverse Detail")}get policy(){return"get_image"}get listUrl(){return this.getRoutePath("dns-reverse")}get actionConfigs(){return u.default}get tabs(){return[{title:t("Detail"),key:"detail",component:d.default}]}}a.ReverseDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},3986:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249));class s extends o.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Address"),dataIndex:"address"},{label:t("PTR Domain Name"),dataIndex:"ptrdname"},{label:t("Description"),dataIndex:"description"},{label:t("ID"),dataIndex:"id"},{label:t("Time To Live"),dataIndex:"ttl"},{label:t("Status"),dataIndex:"status"},{label:t("Action"),dataIndex:"action"}];return{title:t("Base Info"),options:e}}}a.BaseDetail=s;var d=(0,l.inject)("rootStore")((0,l.observer)(s));a.default=d},3987:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Zones=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(1360)),f=r(1404),p=r(163),m=o(r(3988));function h(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(h=function(e){return e?a:t})(e)}class v extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Zone ID/Name"),dataIndex:"name",isHideable:!0,isLink:!0,routeName:this.getRouteName("dnsZonesDetail"),sortKey:"id"},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sortKey:"tenant_id"},{title:t("Type"),dataIndex:"type",isHideable:!0,sorter:!1,valueMap:f.ZONE_TYPES},{title:t("Status"),dataIndex:"status",isHideable:!0,valueMap:f.ZONE_STATUS},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=c.default,this.downloadStore=new c.DNSZonesStore}get policy(){return"get_zones"}get name(){return t("dns zones")}get actionConfigs(){return m.default}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Type"),name:"type",options:(0,p.getOptions)(f.ZONE_TYPES)},{label:t("Status"),name:"status",options:(0,p.getOptions)(f.ZONE_STATUS)}]}}a.Zones=v;var g=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=g},3988:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1648)),l=i(a(3989)),o=i(a(3990)),s=i(a(1649)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},primaryActions:[n.default],batchActions:[o.default]};t.default=d},3989:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Update=void 0;var p=f(r(54)),m=f(r(63)),h=f(r(58)),v=f(r(35)),g=r(412),_=f(r(1360)),b=r(1648);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{id:t}=this.item,{type:a}=this.item,{masters:r=[],email:i,ttl:n,description:l}=e,o={description:l,masters:(0,p.default)(r).call(r,(e=>e.value))};return"PRIMARY"===a&&(o.email=i,o.ttl=n),this.store.update({id:t},o)}))}init(){this.store=_.default}get name(){return t("Edit")}static allowed(){return m.default.resolve(!0)}get defaultValue(){var e=this.item,{masters:t=[]}=e,a=(0,h.default)(e,["masters"]),r=(0,p.default)(t).call(t,((e,t)=>({index:t,value:e})));return I(I({},a),{},{masters:r})}get formItems(){var e=super.formItems;return(0,p.default)(e).call(e,(e=>"name"===e.name||"type"===e.name?I(I({},e),{},{disabled:!0}):e))}}a.Update=A,(0,v.default)(A,"id","update-dns-zone"),(0,v.default)(A,"title",t("Edit")),(0,v.default)(A,"policy","update_zone");var S=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=S},3990:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1360));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunction",(()=>!0)),(0,l.default)(this,"policy","delete_zone"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action}? (Zone: {name})",{action:this.actionNameDisplay||this.title,name:a})})),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Zone")}get actionName(){return t("Delete Zone")}get buttonText(){return t("Delete")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3991:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ZonesDetail=void 0;var l=r(412),o=r(1360),s=n(r(1243)),d=r(1404),u=n(r(3992)),c=n(r(3993));class f extends s.default{init(){this.store=new o.DNSZonesStore}get name(){return t("DNS Zones Detail")}get listUrl(){return this.getRoutePath("dnsZones")}get policy(){return"get_zone"}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Type"),dataIndex:"type",valueMap:d.ZONE_TYPES},{title:t("Status"),dataIndex:"status",valueMap:d.ZONE_STATUS},{title:t("Email"),dataIndex:"email"}]}get tabs(){return[{title:t("Overview"),key:"overview",component:u.default},{title:t("Record Sets"),key:"record_sets",component:c.default}]}}a.ZonesDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3992:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(345)),o=r(412),s=n(r(1249));class d extends s.default{get leftCards(){return[this.baseInfoCard,this.modificationTimesCard]}get rightCards(){return[this.attributesCard,this.associationsCard]}get baseInfoCard(){var e=[{label:t("Action"),dataIndex:"action"},{label:t("Serial"),dataIndex:"serial"},{label:t("TTL"),dataIndex:"ttl"},{label:t("Version"),dataIndex:"version"}];return{title:t("Base Info"),options:e}}get modificationTimesCard(){var e=[{label:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{label:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{label:t("Transferred"),dataIndex:"transferred_at",valueRender:"toLocalTime"}];return{title:t("Modification Times"),options:e}}get attributesCard(){var e=[{label:t("Attributes"),dataIndex:"attributes",render:e=>(0,l.default)(e)}];return{title:t("Attributes"),options:e}}get associationsCard(){var e=[{label:t("Pool ID"),dataIndex:"pool_id"},{label:t("Project ID"),dataIndex:"project_id"},{label:t("Masters"),dataIndex:"masters",render:e=>(0,l.default)(e)}];return{title:t("Associations"),options:e}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3993:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RecordSets=void 0,r(1311);var l=n(r(1312)),o=n(r(54)),s=n(r(0)),d=n(r(1242)),u=r(412),c=(r(161),r(1361)),f=r(1405),p=r(163),m=n(r(1650));class h extends d.default{init(){this.store=new c.DNSRecordSetsStore,this.downloadStore=new c.DNSRecordSetsStore}get name(){return t("recordsets")}get policy(){return"get_recordsets"}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get actionConfigs(){return m.default}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("dnsRecordSetDetail"),routeParamsFunc:e=>({zoneId:e.zone_id,id:e.id}),isLink:!0,sortKey:"id"},{title:t("Type"),dataIndex:"type",render:e=>(0,f.getRecordSetType)(e)},{title:t("Records"),dataIndex:"records",render:e=>(0,o.default)(e).call(e,(e=>s.default.createElement(l.default,{key:e},e))),stringify:e=>e.join("\n"),sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:f.RECORD_STATUS,sorter:!1},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Type"),name:"type",options:(0,f.dnsRRTypeList)()},{label:t("Status"),name:"status",options:(0,p.getOptions)(f.RECORD_STATUS)}]}}a.RecordSets=h;var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},3994:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Update=void 0;var p=f(r(28)),m=f(r(77)),h=f(r(63)),v=f(r(54)),g=f(r(58)),_=f(r(35)),b=r(1241),y=r(412),I=r(1405),A=f(r(1361));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{zone_id:t}=this.item,a=this.item.id,{records:r}=e,i=(0,g.default)(e,["records"]),n=[];(0,p.default)(r).call(r,(e=>{n.push(e.value)}));var l=w({records:n},i);return this.store.update(t,a,l)}))}init(){var e,a;this.store=A.default,this.state=w(w({},this.state),{},{nameExtra:(0,m.default)(e="".concat(t("Exp: "))).call(e,I.DNS_RECORD_TYPE[this.item.type].nameExtra),recordsExtra:(0,m.default)(a="".concat(t("Exp: "))).call(a,I.DNS_RECORD_TYPE[this.item.type].recordsExtra)})}get name(){return t("Update Record Set")}static allowed(){return h.default.resolve(!0)}get defaultValue(){var{records:e,type:t,name:a,description:r,ttl:i}=this.item;return{type:t,name:a,description:r,ttl:i,records:(0,v.default)(e).call(e,((e,t)=>({index:t,value:e})))}}get formItems(){var e=(0,I.getRecordSetFormItem)(this,this.currentFormValue);return(0,v.default)(e).call(e,(e=>"name"===e.name||"type"===e.name?w(w({},e),{},{disabled:!0}):e))}}a.Update=x,(0,_.default)(x,"id","create-record-set"),(0,_.default)(x,"title",t("Update Record Set")),(0,_.default)(x,"buttonText",t("Update")),(0,_.default)(x,"policy","update_recordset");var P=(0,y.inject)("rootStore")((0,y.observer)(x));a.default=P},3995:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1361));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunction",(()=>!0)),(0,l.default)(this,"policy","delete_recordset"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e),r=this.getItemId(e);return t("Are you sure to {action}? (Record Set: {name} - {id})",{action:this.actionNameDisplay||this.title,name:a,id:r})})),(0,l.default)(this,"onSubmit",(e=>{var{zone_id:t}=e,a=e.id;return s.default.delete({zone_id:t,recordset_id:a})}))}get id(){return"delete"}get title(){return t("Delete Record Set")}get actionName(){return t("Delete Record Set")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=d},3996:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RecordSetsDetail=void 0;var l=r(412),o=n(r(1243)),s=r(1361),d=r(1405),u=n(r(3997)),c=n(r(1650));class f extends o.default{init(){this.store=new s.DNSRecordSetsStore}get titleValue(){return this.detailData.id}get name(){return t("Recordset Detail")}get listUrl(){return this.getRoutePath("dnsZonesDetail",{id:this.detailData.zone_id},{tab:"record_sets"})}get actionConfigs(){return c.default}get policy(){return"get_recordset"}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Type"),dataIndex:"type",render:e=>(0,d.getRecordSetType)(e)},{title:t("Status"),dataIndex:"status",valueMap:d.RECORD_STATUS}]}get tabs(){return[{title:t("Overview"),key:"overview",component:u.default}]}}a.RecordSetsDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3997:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCards(){return[this.baseInfoCard,this.modificationTimesCard]}get rightCards(){return[this.associationsCard]}get baseInfoCard(){var e=[{label:t("Action"),dataIndex:"action"},{label:t("Records"),dataIndex:"records",render:e=>(0,l.default)(e).call(e,(e=>o.default.createElement("div",null,e)))},{label:t("TTL"),dataIndex:"ttl"},{label:t("Version"),dataIndex:"version"}];return{title:t("Base Info"),labelCol:6,contentCol:18,options:e}}get modificationTimesCard(){var e=[{label:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{label:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}];return{title:t("Modification Times"),labelCol:6,contentCol:18,options:e}}get associationsCard(){var e=[{label:t("Zone ID"),dataIndex:"zone_id",copyable:!0},{label:t("Zone Name"),dataIndex:"zone_name"},{label:t("Project ID"),dataIndex:"project_id",copyable:!0}];return{title:t("Associations"),options:e}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3998:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(3999)),u=n(r(4003)),c=n(r(1656));class f extends o.default{get name(){return t("firewalls")}get checkEndpoint(){return!0}get endpoint(){return(0,s.firewallEndpoint)()}get tabs(){return[{title:t("Firewalls"),key:"firewalls",component:d.default},{title:t("Firewall Policies"),key:"policies",component:u.default},{title:t("Firewall Rules"),key:"rules",component:c.default}]}}a.Detail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3999:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Firewall=void 0;var l=r(412),o=n(r(1242)),s=n(r(1341)),d=r(1286),u=r(163),c=n(r(1651));class f extends o.default{init(){this.store=s.default}get policy(){return"get_firewall_group"}get name(){return t("firewalls")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get transitionStatusList(){return d.transitionStatus}get adminPageHasProjectFilter(){return!0}get initFilter(){return{notDefault:!0}}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Ingress Policy"),dataIndex:"ingressPolicyName",isLink:!0,routeName:this.getRouteName("firewallPolicyDetail"),idKey:"ingress_firewall_policy_id",isHideable:!0},{title:t("Egress Policy"),dataIndex:"egressPolicyName",isLink:!0,routeName:this.getRouteName("firewallPolicyDetail"),idKey:"egress_firewall_policy_id",isHideable:!0},{title:t("Associated Ports"),dataIndex:"ports",render:e=>e.length,isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:d.firewallStatus},{title:t("Admin State"),dataIndex:"admin_state_up",valueMap:d.adminState}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:(0,u.getOptions)(d.firewallStatus),include:!1},{label:t("Admin State"),name:"admin_state_up",options:(0,u.getOptions)(d.adminState)},(0,d.getDefaultFilter)(t("Hide Default Firewalls"))]}}a.Firewall=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},4e3:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1341)),d=r(1286);class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_firewall_group"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(!(!this.isAdminPage||!(0,d.hasNoProject)(e))||!(0,d.isDefault)(e)&&this.isNotActive(e)&&((0,d.isMine)(e)||this.isAdminPage)))),(0,l.default)(this,"isNotActive",(e=>"ACTIVE"!==e.status)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Firewall")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete firewall")}}a.default=u},4001:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManagePort=void 0;var p=f(r(28)),m=f(r(29)),h=f(r(164)),v=f(r(86)),g=f(r(54)),_=f(r(63)),b=f(r(49)),y=f(r(35)),I=r(412),A=f(r(575)),S=f(r(233)),w=f(r(1341)),x=f(r(582)),P=r(1241),C=r(1473),E=r(1258),D=r(36),k=r(1286);function R(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function N(e){for(var t=1;t{var{id:t}=this.item,{ports:a}=e,r={ports:a.selectedRowKeys||null};return this.store.edit({id:t},r)}))}init(){this.store=w.default,this.routerStore=A.default,this.networkStore=S.default,this.portStore=x.default,this.getNetworks(),this.getRouters(),this.getPorts()}get name(){return t("manage ports")}static get modalSize(){return"large"}getModalSize(){return"large"}getNetworks(){var e=this;return(0,b.default)((function*(){e.networkStore.fetchList({isFirewall:!0}),e.updateDefaultValue()}))()}getRouters(){var e=this;return(0,b.default)((function*(){e.routerStore.fetchList({isFirewall:!0}),e.updateDefaultValue()}))()}getPorts(){var e=this;return(0,b.default)((function*(){e.portStore.fetchList({device_owner:"compute:nova",project_id:e.currentProjectId}),e.updateDefaultValue()}))()}get networks(){return(0,D.toJS)(this.networkStore.list.data||[])}get ports(){var e,a=[];return(0,p.default)(e=(0,D.toJS)(this.routerStore.list.data)||[]).call(e,(e=>{var r,i=(0,m.default)(r=e.ports).call(r,(e=>(0,h.default)(C.routerInterfaceOwners).call(C.routerInterfaceOwners,e.device_owner)));(0,p.default)(i).call(i,(a=>{var r,i;a.device_name=e.name,a.owner=t("Router"),a.network=(0,v.default)(r=this.networks).call(r,(e=>e.id===a.network_id)),a.router=e,a.network_name=a.network?a.network.name:"-",a.name=a.id,a.ip_address=a.fixed_ips[0].ip_address,a.subnet=a.network?(0,v.default)(i=a.network.subnetDetails).call(i,(e=>e.id===a.fixed_ips[0].subnet_id)):null,a.subnet_name=a.subnet&&a.subnet.name||"-"})),a=[...a,...i]})),a}get instancePorts(){var e;return(0,g.default)(e=(0,D.toJS)(this.portStore.list.data||[])).call(e,(e=>N(N({},e),{},{name:e.name||e.id})))}get portTabs(){var e={title:t("Router Port"),key:"router",props:N(N({data:this.ports},C.tableOptions),{},{isLoading:this.routerStore.list.isLoading,isMulti:!0})};return[{title:t("Instance Port"),key:"instance",props:N(N({data:this.instancePorts},(0,E.instancePortOptions)(this)),{},{isLoading:this.portStore.list.isLoading,isMulti:!0})},e]}get defaultValue(){var e;return{name:this.item.name,ports:{selectedRows:(0,g.default)(e=this.item.ports).call(e,(e=>({id:e,name:e}))),selectedRowKeys:this.item.ports}}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"firewall"},{name:"ports",label:t("Ports"),type:"tab-select-table",tabs:this.portTabs}]}}a.ManagePort=j,(0,y.default)(j,"id","manage-port"),(0,y.default)(j,"title",t("Manage Ports")),(0,y.default)(j,"policy","update_firewall_group"),(0,y.default)(j,"allowed",(e=>_.default.resolve((0,k.isMine)(e))));var M=(0,I.inject)("rootStore")((0,I.observer)(j));a.default=M},4002:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(86)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=f(r(1294)),A=f(r(1341)),S=r(1241),w=r(1362),x=r(1286);function P(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;t{var{id:t}=this.item,{ingressPolicy:a,egressPolicy:r,options:{admin_state_up:i=!0}={}}=e,n=(0,_.default)(e,["ingressPolicy","egressPolicy","options"]),l=C({admin_state_up:i,ingress_firewall_policy_id:a.selectedRowKeys[0]||null,egress_firewall_policy_id:r.selectedRowKeys[0]||null},n);return this.store.edit({id:t},l)}))}init(){this.store=A.default,this.policyStore=I.default,this.getPolicies()}static get modalSize(){return"large"}getModalSize(){return"large"}getPolicies(){var e=this;return(0,g.default)((function*(){yield e.policyStore.fetchList(),e.updateDefaultValue()}))()}get policies(){var e,t,{id:a}=this.item;return(0,p.default)(e=(0,m.default)(t=this.policyStore.list.data||[]).call(t,(e=>{var t;return e.firewalls.length<2||!!(0,h.default)(t=e.firewalls).call(t,(e=>e.id===a))}))).call(e,(e=>C(C({},e),{},{key:e.id})))}get defaultValue(){if(0===this.policies.length)return{};var{ingress_firewall_policy_id:e,egress_firewall_policy_id:t,admin_state_up:a,description:r}=this.item;return{name:this.item.name,ingressPolicy:{selectedRowKeys:e?[e]:[]},egressPolicy:{selectedRowKeys:t?[t]:[]},options:{admin_state_up:a},description:r}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},C({name:"ingressPolicy",label:t("Ingress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},w.tableOptions),C({name:"egressPolicy",label:t("Egress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},w.tableOptions),{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Admin State"),value:"admin_state_up"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=E,(0,b.default)(E,"id","edit"),(0,b.default)(E,"title",t("Edit")),(0,b.default)(E,"policy","update_firewall_group"),(0,b.default)(E,"allowed",(e=>v.default.resolve(!(0,x.isDefault)(e)&&(0,x.isMine)(e))));var D=(0,y.inject)("rootStore")((0,y.observer)(E));a.default=D},4003:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Policy=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1242)),u=n(r(1294)),c=r(342),f=r(1286),p=n(r(1653));class m extends d.default{init(){this.store=u.default}get policy(){return"get_firewall_policy"}get name(){return t("firewall policies")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?p.default.actionConfigsAdmin:p.default.actionConfigs}get adminPageHasProjectFilter(){return!0}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallPolicyDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Rules"),dataIndex:"rules",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},this.getLinkRender("firewallRuleDetail",e.name,{id:e.id})))):"-",stringify:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>e.name)).join(", "):"-"},{title:t("Firewalls"),dataIndex:"firewalls",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},this.getLinkRender("firewallDetail",e.name,{id:e.id})))):"-",stringify:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>e.name)).join(", "):"-"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo",width:80},{title:t("Audited"),dataIndex:"audited",valueRender:"yesNo",width:100}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Shared"),name:"shared",options:c.yesNoOptions},{label:t("Audited"),name:"audited",options:c.yesNoOptions},(0,f.getDefaultFilter)(t("Hide Default Policies"))]}}a.Policy=m;var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},4004:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(54)),o=n(r(35)),s=n(r(92)),d=r(1241),u=n(r(1294)),c=r(1362);class f extends d.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","delete_firewall_policy"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isNotUse(e)&&((0,c.isMine)(e)||this.isAdminPage))),(0,o.default)(this,"performErrorMsg",(e=>{var a,r=(0,s.default)(e)?e[0]:e,i=t('You are not allowed to delete policy "{ name }".',{name:r.name});this.isNotUse(r)||(i=t('You are not allowed to delete policy "{ name }" used by firewalls: { firewalls }.',{name:r.name,firewalls:(0,l.default)(a=r.firewalls).call(a,(e=>e.name)).join(", ")}));return i})),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete policy")}isNotUse(e){return 0===e.firewalls.length}}a.default=f},4005:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(1277)),v=f(r(63)),g=f(r(35)),_=r(412),b=f(r(1294)),y=f(r(1363)),I=r(1241),A=r(1307);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{id:t}=this.item,{rule:a,insert:r,current:{selectedRowKeys:i=[]}={}}=e,n=a.selectedRowKeys[0],l="",o="";i.length>0&&("before"===r?o=i[0]:l=i[0]);var s={firewall_policy_id:t,firewall_rule_id:n,insert_before:o,insert_after:l};return this.store.insertRule({id:t},s)}))}init(){this.store=b.default,this.ruleStore=y.default,this.getRules()}get name(){return t("insert rule")}static get modalSize(){return"large"}getModalSize(){return"large"}getRules(){this.ruleStore.fetchList()}get rules(){var e,t,a;return(0,p.default)(e=(0,m.default)(t=(0,m.default)(a=this.ruleStore.list.data||[]).call(a,(e=>{var t;return(0,h.default)(t=this.currentRules).call(t,(t=>t.id!==e.id))}))).call(t,(e=>!this.item.shared||e.shared))).call(e,(e=>w(w({},e),{},{key:e.id})))}get currentRules(){var{rules:e}=this.item;return e}get defaultValue(){var{name:e}=this.item;return{name:e,insert:"before"}}get insertTypes(){return[{label:t("Insert Before"),value:"before"},{label:t("Insert After"),value:"after"}]}get tips(){var e=t("A rule specified before insertion or after insertion a rule. If both are not specified, the new rule is inserted as the first rule of the policy.");return this.item.shared?e+t("Shared policy only can insert shared rules."):e}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"policy"},w({name:"rule",label:t("Rule"),type:"select-table",required:!0,data:this.rules,isLoading:this.ruleStore.list.isLoading,isMulti:!1},A.tableOptions),{name:"insert",label:t("Insert"),type:"radio",options:this.insertTypes,required:!0},w({name:"current",label:t("Current Rules"),type:"select-table",data:this.currentRules,isMulti:!1},A.tableOptions)]}}a.Edit=x,(0,g.default)(x,"id","edit"),(0,g.default)(x,"title",t("Insert Rule")),(0,g.default)(x,"policy","update_firewall_policy"),(0,g.default)(x,"allowed",(e=>v.default.resolve((0,A.isMine)(e))));var P=(0,_.inject)("rootStore")((0,_.observer)(x));a.default=P},4006:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=f(r(1294)),g=r(1241),_=r(1307);function b(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function y(e){for(var t=1;t{var{id:t}=this.item,{rule:a}=e,r={firewall_rule_id:a.selectedRowKeys[0]};return v.default.removeRule({id:t},r)}))}get name(){return t("remove rule")}static get modalSize(){return"large"}getModalSize(){return"large"}get rules(){var{rules:e}=this.item;return e}get defaultValue(){return{name:this.item.name}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"policy"},y({name:"rule",label:t("Rules"),type:"select-table",required:!0,data:this.rules,isMulti:!1},_.tableOptions)]}}a.Edit=I,(0,m.default)(I,"id","edit"),(0,m.default)(I,"title",t("Remove Rule")),(0,m.default)(I,"policy","update_firewall_policy"),(0,m.default)(I,"allowed",(e=>p.default.resolve((0,_.isMine)(e))));var A=(0,h.inject)("rootStore")((0,h.observer)(I));a.default=A},4007:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=n(r(92)),s=r(1241),d=n(r(1363)),u=r(1307);class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_firewall_rule"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isNotUse(e)&&((0,u.isMine)(e)||this.isAdminPage))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to delete rule "{ name }".',{name:a.name});return this.isNotUse(a)||(r=t('You are not allowed to delete rule "{ name }" in use.',{name:a.name})),r})),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return d.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Rule")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete rule")}isNotUse(e){return 0===e.policies.length}}a.default=c},4008:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FirewallDetail=void 0;var l=r(412),o=r(1341),s=n(r(1243)),d=r(1286),u=n(r(4009)),c=n(r(4010)),f=n(r(1651));class p extends s.default{get name(){return t("firewall")}get policy(){return"get_firewall_group"}get listUrl(){return this.getRoutePath("firewall")}get actionConfigs(){return this.isAdminPage?f.default.actionConfigsAdmin:f.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Status"),dataIndex:"status",valueMap:d.firewallStatus},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:u.default},{title:t("Ports"),key:"ports",component:c.default}]}init(){this.store=new o.FirewallStore}}a.FirewallDetail=p;var m=(0,l.inject)("rootStore")((0,l.observer)(p));a.default=m},4009:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=r(1286),s=n(r(1249));class d extends s.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Ingress Policy ID"),dataIndex:"ingress_firewall_policy_id"},{label:t("Ingress Policy Name"),dataIndex:"ingress",render:e=>e?e.name:"-"},{label:t("Egress Policy ID"),dataIndex:"egress_firewall_policy_id"},{label:t("Egress Policy Name"),dataIndex:"egress",render:e=>e?e.name:"-"},{label:t("Admin State"),dataIndex:"admin_state_up",valueMap:o.adminState}];return{title:t("Base Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},4010:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Ports=void 0;var p=f(r(58)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(1473),b=r(582),y=r(1258);function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class A extends g.default{constructor(){super(...arguments),(0,h.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",width:150,isLink:!0,routeName:this.getRouteName("firewallPortDetail"),routeParamsFunc:e=>({firewallId:this.id,portId:e.id})},{title:t("Network ID/Name"),dataIndex:"network.name",isLink:!0,routeName:this.getRouteName("networkDetail"),idKey:"network.id"},{title:t("Owner"),dataIndex:"owner",isHideable:!0},{title:t("Device ID/Name"),dataIndex:"router.name",isLink:!0,routeName:this.getRouteName("routerDetail"),idKey:"router.id"},{title:t("Status"),dataIndex:"status",valueMap:y.portStatus}]))}init(){this.store=new b.PortStore}get policy(){return"get_port"}get name(){return t("ports")}get id(){return this.params.id}getData(){var e=arguments,t=this;return(0,m.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,p.default)(a,["silent"]);r&&(t.list.silent=!0);var{tab:n}=i,l=(0,p.default)(i,["tab"]),{detail:{ports:f=[]}={}}=t.props,v=function(e){for(var t=1;tI(I({},e),{},{label:e.title}))),r=[{label:t("Related Policy"),dataIndex:"policies",render:e=>{var t;return(0,m.default)(t=e||[]).call(t,(e=>v.default.createElement("div",{key:e.id},this.getLinkRender("firewallPolicyDetail",e.name,{id:e.id}))))}},...a];return{title:t("Base Info"),options:r}}}a.BaseDetail=A;var S=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=S},4015:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RbacPolicies=void 0;var l=r(412),o=n(r(1242)),s=r(604),d=r(1406),u=r(163),c=n(r(1659));class f extends o.default{init(){this.store=new s.RbacPoliciesStore,this.downloadStore=new s.RbacPoliciesStore}get policy(){return"get_rbac_policy"}get name(){return t("RBAC Policies")}get actionConfigs(){return c.default}getColumns(){return[{title:t("ID"),dataIndex:"id",routeName:this.getRouteName("rbacPolicyDetail"),isLink:!0,withoutName:!0},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0},{title:t("Object Type"),dataIndex:"object_type",isHideable:!0,valueMap:d.objectTypes},{title:t("Object ID/Name"),dataIndex:"object_name",isHideable:!0,idKey:"object_id",isLink:!0,getRouteName:(e,t)=>{var{object_type:a}=t||{};return"network"===a?this.getRouteName("networkDetail"):"qos_policy"===a?this.getRouteName("networkQosDetail"):""}},{title:t("Target Project ID/Name"),dataIndex:"target_tenant_name",isHideable:!0,idKey:"target_tenant_id",routeName:this.getRouteName("projectDetail"),isLink:!0,emptyRender:()=>"*"}]}get objectTypes(){return(0,u.getOptions)(d.objectTypes)}get searchFilters(){return[{label:t("Id"),name:"id"},{label:t("Target Project ID"),name:"target_tenant"},{label:t("Target Project Name"),name:"target_tenant_name"},{label:t("Object Type"),name:"object_type",options:this.objectTypes},{label:t("Object"),name:"object_name"},{label:t("Project ID"),name:"project_id"},{label:t("Project Name"),name:"project_name"}]}}a.RbacPolicies=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},4016:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(604));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_rbac_policy"),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete RBAC Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get messageHasItemName(){return!1}get actionName(){return t("delete")}}a.default=d},4017:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(54)),o=n(r(63)),s=n(r(49)),d=n(r(35)),u=r(412),c=r(1241),f=r(604),p=r(340),m=r(1406);class h extends c.ModalAction{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"onSubmit",function(){var t=(0,s.default)((function*(t){var{id:a}=e.item;return e.store.update({id:a},t)}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Edit")}get messageHasItemName(){return!1}init(){this.store=new f.RbacPoliciesStore,this.projectStore=new p.ProjectStore,this.state.projects=[],this.state.isReady=!1,this.getProjects()}get tips(){return t("You may update the editable properties of the RBAC policy here.")}getProjects(){var e=this;return(0,s.default)((function*(){var t=yield e.projectStore.pureFetchList();t.unshift(m.anyProject),e.setState({projects:t,isReady:!0})}))()}get projects(){var e,{projects:t}=this.state;return(0,l.default)(e=t||[]).call(e,(e=>({value:e.id,label:e.name})))}get defaultValue(){var{target_tenant:e}=this.item;return{target_tenant:e}}get formItems(){return[{name:"target_tenant",label:t("Target Project"),placeholder:t("Select a project"),type:"select",options:this.projects,loading:!this.state.isReady,required:!0}]}}a.Edit=h,(0,d.default)(h,"id","edit-policy"),(0,d.default)(h,"title",t("Edit")),(0,d.default)(h,"policy","update_rbac_policy"),(0,d.default)(h,"allowed",(()=>o.default.resolve(!0)));var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},4018:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(54)),h=f(r(29)),v=f(r(58)),g=f(r(49)),_=f(r(35)),b=r(412),y=r(1241),I=r(604),A=r(340),S=r(233),w=r(576),x=r(66),P=r(1406);function C(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function E(e){for(var t=1;t{e.updateFormValue("object_id",void 0)}))}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Create")}get messageHasItemName(){return!1}init(){this.state=E(E({},this.state),{},{isReady:!1,allNetworks:[],qosPolices:[]}),this.store=new I.RbacPoliciesStore,this.projectStore=new A.ProjectStore,this.qosPolicyStore=new w.QoSPolicyStore,this.networkStore=new S.NetworkStore,this.getAllData()}getAllData(){var e=this;return(0,g.default)((function*(){yield p.default.all([e.getProjects(),e.getQoSPolicy(),e.getNetworks()]),e.setState({isReady:!0})}))()}get enableQosPolicy(){return(0,x.qosEndpoint)()}getProjects(){var e=this;return(0,g.default)((function*(){var t=yield e.projectStore.pureFetchList();t.unshift(P.anyProject),e.setState({allProjects:t})}))()}getQoSPolicy(){var e=this;return(0,g.default)((function*(){e.enableQosPolicy&&(yield e.qosPolicyStore.fetchList())}))()}getNetworks(){var e=this;return(0,g.default)((function*(){var t=yield e.networkStore.pureFetchList();e.setState({allNetworks:t})}))()}get projects(){var e,{allProjects:t}=this.state;return(0,m.default)(e=t||[]).call(e,(e=>({value:e.id,label:e.name})))}get qosPolicy(){var e;return(0,m.default)(e=this.qosPolicyStore.list.data||[]).call(e,(e=>({value:e.id,label:e.name})))}get sharedNetworks(){var e,t,{allNetworks:a}=this.state;return(0,m.default)(e=(0,h.default)(t=a||[]).call(t,(e=>!0===e.shared))).call(e,(e=>({value:e.id,label:e.name})))}get externalNetworks(){var e,t,{allNetworks:a}=this.state;return(0,m.default)(e=(0,h.default)(t=a||[]).call(t,(e=>!0===e["router:external"]))).call(e,(e=>({value:e.id,label:e.name})))}get createObjectList(){var e=[{value:"network",label:t("Shared Network")},{value:"external-network",label:t("External Network")}];return this.enableQosPolicy&&e.push({value:"qos_policy",label:t("Shared QoS Policy")}),e}get formItems(){var{object_type:e}=this.state,a="network"===e,r="external-network"===e,i="qos_policy"===e;return[{name:"target_tenant",label:t("Target Project"),placeholder:t("Select a project"),type:"select",options:this.projects,isLoading:!this.state.isReady,required:!0},{name:"object_type",label:t("Object Type"),placeholder:t("Select an object type"),type:"select",onChange:this.onChangeHandler,options:this.createObjectList,required:!0},{name:"object_id",label:t("Shared Network"),placeholder:t("Select a network"),type:"select",options:this.sharedNetworks,hidden:!a,isLoading:!this.state.isReady,required:!0},{name:"object_id",label:t("External Network"),placeholder:t("Select a network"),type:"select",options:this.externalNetworks,hidden:!r,isLoading:!this.state.isReady,required:!0},{name:"object_id",label:t("QoS Policy"),placeholder:t("Select a QoS Policy"),type:"select",options:this.qosPolicy,hidden:!i,isLoading:!this.state.isReady,required:!0}]}}a.Create=D,(0,_.default)(D,"id","create-policy"),(0,_.default)(D,"title",t("Create RBAC Policy")),(0,_.default)(D,"policy","create_rbac_policy"),(0,_.default)(D,"allowed",(()=>p.default.resolve(!0)));var k=(0,b.inject)("rootStore")((0,b.observer)(D));a.default=k},4019:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RbacPolicyDetail=void 0;var l=r(412),o=n(r(1243)),s=n(r(1659)),d=r(604),u=n(r(4020));class c extends o.default{get name(){return t("Rbac Policy")}get listUrl(){return this.getRoutePath("rbacPolicy")}get actionConfigs(){return s.default}get detailInfos(){return[{title:t("Project ID"),dataIndex:"project_id"}]}get tabs(){return[{title:t("Detail"),key:"rbacPolicyDetailAdmin",component:u.default}]}init(){this.store=new d.RbacPoliciesStore}}a.RbacPolicyDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},4020:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249)),s=r(1406);class d extends o.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Object Type"),dataIndex:"object_type",valueMap:s.objectTypes},{label:t("Object ID"),dataIndex:"object_id",render:e=>{var{object_type:t}=this.detailData;return"network"===t?this.getLinkRender("networkDetail",e,{id:e}):"qos_policy"===t?this.getLinkRender("networkQosDetail",e,{id:e}):e}},{label:t("Object Name"),dataIndex:"object.name"},{label:t("Action"),dataIndex:"action"},{label:t("Target Tenant"),dataIndex:"target_tenant",render:e=>{if("*"===e)return e;var{targetProject:t}=this.detailData;return this.getLinkRender("projectDetail",(null==t?void 0:t.name)||e,{id:e})}}];return{title:t("Detail Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{1254:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.getInsertHeaderCard=a.getInsertHeadersFormValueFromListener=a.getInsertHeadersValueFromForm=a.getListenerInsertHeadersFormItem=a.insertHeaderDesc=a.insertHeaderTips=a.insertHeaderOptions=a.INSERT_HEADERS=a.healthProtocols=a.poolProtocols=a.listenerProtocols=a.sslParseMethod=a.getCertificateColumns=a.certificateStatus=a.certificateMode=a.provisioningStatusCodes=a.operatingStatusCodes=void 0;var l,o,s=n(r(54)),d=n(r(32)),u=n(r(28)),c=n(r(177)),f=n(r(0)),p={ONLINE:t("Online"),DRAINING:t("Draining"),OFFLINE:t("Offline"),DEGRADED:t("Degraded"),ERROR:t("Error"),NO_MONITOR:t("No Monitor")};a.operatingStatusCodes=p;var m={ACTIVE:t("Active"),DELETED:t("Deleted"),ERROR:t("Error"),PENDING_CREATE:t("Pending Create"),PENDING_UPDATE:t("Pending Update"),PENDING_DELETE:t("Pending Delete")};a.provisioningStatusCodes=m;var h={SERVER:t("Server Certificate"),CA:t("CA Certificate")};a.certificateMode=h;var v={ACTIVE:t("Active"),ERROR:t("Error")};a.certificateStatus=v;a.getCertificateColumns=e=>[{title:t("Name"),dataIndex:"name"},{title:t("Certificate Type"),dataIndex:"mode",valueMap:h},{title:t("Expires At"),dataIndex:"expiration",valueRender:"toLocalTime"},{title:t("Domain Name"),dataIndex:"domain",render:e=>e||"-"},{title:t("Listener"),dataIndex:"listener",render:t=>t?(0,s.default)(t).call(t,(t=>f.default.createElement("div",{key:t.id},e.getLinkRender("lbListenerDetail",t.name,{loadBalancerId:t.lb,id:t.id},null)))):"-"},{title:t("Status"),dataIndex:"status",valueMap:v},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime"}];var g=[{label:t("One-way authentication"),value:"one-way"},{label:t("Two-way authentication"),value:"two-way"}];a.sslParseMethod=g;a.listenerProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"HTTPS",value:"TERMINATED_HTTPS"},{label:"UDP",value:"UDP"}];a.poolProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"UDP",value:"UDP"}];a.healthProtocols=[{label:"HTTP",value:"HTTP"},{label:"TCP",value:"TCP"},{label:"UDP",value:"UDP-CONNECT"}];var _={"X-Forwarded-For":t("Specify the client IP address"),"X-Forwarded-Port":t("Specify the listener port")};a.INSERT_HEADERS=_;var b=(0,s.default)(l=(0,d.default)(_)).call(l,(e=>({label:e,value:e})));a.insertHeaderOptions=b;var y=f.default.createElement(f.default.Fragment,null,(0,s.default)(o=(0,d.default)(_)).call(o,(e=>f.default.createElement("p",{key:e},e,": ",_[e]))));a.insertHeaderTips=y;var I=t("The optional headers to insert into the request before it is sent to the backend member.");a.insertHeaderDesc=I;a.getListenerInsertHeadersFormItem=()=>({name:"insert_headers",label:t("Custom Headers"),type:"check-group",extra:I,tip:y,options:b});a.getInsertHeadersValueFromForm=e=>{var t;if(!e)return null;var a={};return(0,u.default)(t=(0,d.default)(_)).call(t,(t=>{e[t]&&(a[t]="true")})),(0,c.default)(a)?null:a};a.getInsertHeadersFormValueFromListener=e=>{var t,{insert_headers:a}=e||{},r={};return(0,u.default)(t=(0,d.default)(_)).call(t,(e=>{a[e]&&(r[e]="true"===a[e])})),r};a.getInsertHeaderCard=e=>{var a,r=[];return(0,u.default)(a=(0,d.default)(_)).call(a,(t=>{e[t]&&r.push({label:t,content:e[t],tooltip:_[t]})})),{title:t("Custom Headers"),titleHelp:I,options:r}}},1275:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.VpnIPsecConnectionStore=void 0;var f,p=c(a(25)),m=c(a(35)),h=c(a(49)),v=c(a(55)),g=c(a(119)),_=a(36),b=c(a(1339)),y=c(a(1340)),I=c(a(50)),A=c(a(53));function S(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function w(e){for(var t=1;t"default"===e.name;a.isMine=e=>e.project_id===v.default.projectId;a.hasNoProject=e=>!e.project_name||"-"===e.project_name;a.getDefaultFilter=e=>{var t=(0,p.default)(g.yesNoOptions).call(g.yesNoOptions,(t=>t.key?b(b({},t),{},{checkLabel:e,isQuick:!0}):t));return{label:e,name:"notDefault",options:t,filterFunc:(e,t)=>(0,h.default)(t)?!t||e:"true"!==t||e}}},1294:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallPolicyStore=void 0;var f,p=c(a(28)),m=c(a(91)),h=c(a(54)),v=c(a(86)),g=c(a(29)),_=c(a(25)),b=c(a(49)),y=c(a(35)),I=c(a(55)),A=a(36),S=c(a(50)),w=a(1362),x=c(a(53));function P(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function C(e){for(var t=1;tC(C({},e),{},{notDefault:!(0,w.isDefault)(e)})}listDidFetch(e){return(0,b.default)((function*(){var t,a=[];if((0,p.default)(e).call(e,(e=>{e.firewalls=[],e.rules=[];var{firewall_rules:t}=e;(0,p.default)(t).call(t,(e=>{(0,m.default)(a).call(a,e)<0&&a.push(e)}))})),0===a.length)return e;var r=yield S.default.neutron.firewallRules.list(),i=(0,h.default)(t=r.firewall_rules).call(t,(e=>C(C({},e),{},{protocol:e.protocol||"any"})));(0,p.default)(e).call(e,(e=>{var{firewall_rules:t}=e;e.rules=(0,h.default)(t).call(t,(e=>(0,v.default)(i).call(i,(t=>t.id===e))))}));var n=(yield S.default.neutron.firewalls.list()).firewall_groups;return(0,p.default)(e).call(e,(e=>{e.firewalls=(0,g.default)(n).call(n,(t=>t.egress_firewall_policy_id===e.id||t.ingress_firewall_policy_id===e.id))})),e}))()}detailDidFetch(e){return(0,b.default)((function*(){var t,a=[];e.firewalls=[],e.rules=[];var{firewall_rules:r}=e;if((0,p.default)(r).call(r,(e=>{(0,m.default)(a).call(a,e)<0&&a.push(e)})),0===a.length)return e;var i=yield S.default.neutron.firewallRules.list(),n=(0,h.default)(t=i.firewall_rules).call(t,(e=>C(C({},e),{},{protocol:e.protocol||"any"})));e.rules=(0,h.default)(r).call(r,(e=>(0,v.default)(n).call(n,(t=>t.id===e))));var l=(yield S.default.neutron.firewalls.list()).firewall_groups;return e.firewalls=(0,g.default)(l).call(l,(t=>t.egress_firewall_policy_id===e.id||t.ingress_firewall_policy_id===e.id)),e}))()}insertRule(e,t){var a=this;return(0,b.default)((function*(){var{id:r}=e;return a.submitting(a.client.insertRule(r,t))}))()}removeRule(e,t){var a=this;return(0,b.default)((function*(){var{id:r}=e;return a.submitting(a.client.removeRule(r,t))}))()}},(0,I.default)(f.prototype,"insertRule",[A.action],(0,_.default)(f.prototype,"insertRule"),f.prototype),(0,I.default)(f.prototype,"removeRule",[A.action],(0,_.default)(f.prototype,"removeRule"),f.prototype),f);t.FirewallPolicyStore=E;var D=new E;t.default=D},1306:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.ListenerStore=void 0;var f=c(a(54)),p=c(a(431)),m=c(a(49)),h=c(a(35)),v=c(a(50)),g=c(a(53));function _(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function b(e){for(var t=1;t{var t;return b(b({},e),{},{lbIds:(0,f.default)(t=e.loadbalancers).call(t,(e=>e.id))})}}detailDidFetch(e){var t=this;return(0,m.default)((function*(){var a,{default_pool_id:r,default_tls_container_ref:i,client_ca_tls_container_ref:n,sni_container_refs:l}=e,[,o]=(i||"").split("/containers/"),[,s]=(n||"").split("/secrets/"),d=(0,f.default)(a=l||[]).call(a,(e=>{var[,t]=e.split("/containers/");return t}));(0,p.default)(e,{serverCertificateId:o,caCertificateId:s,sniCertificateId:d});var{loadbalancers:u=[]}=e,{loadbalancer:c}=yield t.lbClient.show(u[0].id);if(e.loadBalancer=c,!r)return e;try{var{pool:m}=yield t.poolClient.show(r);e.default_pool=m;var{healthmonitor_id:h}=m;if(h){var{healthmonitor:v}=yield t.healthMonitorClient.show(h);e.healthMonitor=v}return e}catch(t){return e}}))()}}t.ListenerStore=y;var I=new y;t.default=I},1307:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.isDefault=a.isMine=a.tableOptions=a.tableFilter=a.tableColumns=a.protocolInfos=a.actionInfos=void 0;var l=n(r(164)),o=r(163),s=r(342),d=n(r(133)),u=r(1286),c={allow:t("ALLOW"),deny:t("DENY"),reject:t("REJECT")};a.actionInfos=c;var f={tcp:t("TCP"),udp:t("UDP"),icmp:t("ICMP"),any:t("ANY")};a.protocolInfos=f;var p=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Protocol"),dataIndex:"protocol",valueMap:f},{title:t("Source IP"),dataIndex:"source_ip_address"},{title:t("Source Port"),dataIndex:"source_port"},{title:t("Destination IP"),dataIndex:"destination_ip_address"},{title:t("Destination Port"),dataIndex:"destination_port"},{title:t("Rule Action"),dataIndex:"action",valueMap:c},{title:t("Enabled"),dataIndex:"enabled",valueRender:"yesNo"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"}];a.tableColumns=p;var m=[{label:t("Name"),name:"name"},{label:t("Protocol"),name:"protocol",options:(0,o.getOptions)(f)},{label:t("Rule Action"),name:"action",options:(0,o.getOptions)(c)},{label:t("Enabled"),name:"enabled",options:s.yesNoOptions},{label:t("Shared"),name:"shared",options:s.yesNoOptions},(0,u.getDefaultFilter)(t("Hide Default Rules"))];a.tableFilter=m;var h={filterParams:m,columns:p};a.tableOptions=h;a.isMine=e=>e.project_id===d.default.projectId;a.isDefault=e=>{var t;return(0,l.default)(t=["default egress ipv4","default egress ipv6","default ingress ipv4","default ingress ipv6"]).call(t,e.name)}},1321:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.ipsecPolicyTransformProtocolOptions=a.ipsecPolicyEncapsulationModeOptions=a.ikePolicyIKEVersionOptions=a.pfsOptions=a.encryptionAlgorithmOptions=a.authAlgorithmOptions=a.vpnStatusOptions=a.vpnStatus=void 0;var l,o,s,d,u,c,f,p=n(r(54)),m=n(r(32)),h={ACTIVE:t("Active"),DOWN:t("Down"),BUILD:t("Build"),ERROR:t("Error"),PENDING_CREATE:t("Pending Create"),PENDING_UPDATE:t("Pending Update"),PENDING_DELETE:t("Pending Delete")};a.vpnStatus=h;var v=(0,p.default)(l=(0,m.default)(h)).call(l,(e=>({label:h[e],value:e,key:e})));a.vpnStatusOptions=v;var g=(0,p.default)(o=["sha1","sha256","sha384","sha512"]).call(o,(e=>({label:e,value:e,key:e})));a.authAlgorithmOptions=g;var _=(0,p.default)(s=["3des","aes-128","aes-192","aes-256"]).call(s,(e=>({label:e,value:e,key:e})));a.encryptionAlgorithmOptions=_;var b=(0,p.default)(d=["group2","group5","group14"]).call(d,(e=>({label:e,value:e,key:e})));a.pfsOptions=b;var y=(0,p.default)(u=["v1","v2"]).call(u,(e=>({label:e,value:e,key:e})));a.ikePolicyIKEVersionOptions=y;var I=(0,p.default)(c=["tunnel","transport"]).call(c,(e=>({label:e,value:e,key:e})));a.ipsecPolicyEncapsulationModeOptions=I;var A=(0,p.default)(f=["esp","ah","ah-esp"]).call(f,(e=>({label:e,value:e,key:e})));a.ipsecPolicyTransformProtocolOptions=A},1337:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.ContainersStore=void 0;var f,p,m=c(a(29)),h=c(a(164)),v=c(a(54)),g=c(a(63)),_=c(a(28)),b=c(a(86)),y=c(a(431)),I=c(a(345)),A=c(a(25)),S=c(a(49)),w=c(a(74)),x=c(a(35)),P=(c(a(75)),c(a(55))),C=c(a(53)),E=c(a(50)),D=a(36),k=a(1338),R=c(a(1306));function N(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function j(e){for(var t=1;t({limit:e,offset:t}))),(0,w.default)(this,"delete",p,this)}get client(){return E.default.barbican.containers}get payloadClient(){return E.default.barbican.secrets.payload}get fetchListByLimit(){return!0}get secretStore(){return new k.SecretsStore}get mapper(){return e=>{var{container_ref:t,algorithm:a}=e,[,r]=t.split("/containers/"),{domain:i,expiration:n}=a?JSON.parse(a):{};return j(j({},e),{},{id:r,domain:i,expiration:n})}}requestListAllByLimit(e,t){var a=this;return(0,S.default)((function*(){for(var r=!0,i=[];r;){var n=i.length||"",l=yield a.requestListByMarker(e,t,n),o=a.getListDataFromResult(l);i=[...i,...o],(t>=l.total||n>=l.total)&&(r=!1)}return i}))()}updateItem(e,t){var{container_ref:a}=e,r=(0,m.default)(t).call(t,(e=>{var t=[e.default_tls_container_ref,e.client_ca_tls_container_ref,...e.sni_container_refs];return(0,h.default)(t).call(t,a)}));return r.length&&(e.listener=(0,v.default)(r).call(r,(e=>({id:e.id,name:e.name,lb:e.lbIds[0]})))),e}listDidFetch(e){var t=this;return(0,S.default)((function*(){if(0===e.length)return e;var[a,r]=yield g.default.all([t.secretStore.fetchList({mode:"SERVER"}),R.default.fetchList()]),i=(0,v.default)(e).call(e,(e=>{var{secret_refs:i=[]}=e;return 0===i.length?e.hidden=!0:((0,_.default)(i).call(i,(t=>{var{secret_ref:r=""}=t,[,i]=r.split("/secrets/"),n=(0,b.default)(a).call(a,(e=>e.id===i));n?((0,y.default)(t,{secret_info:n}),(0,y.default)(e,{algorithm:n.algorithm,mode:n.mode})):e.hidden=!0})),t.updateItem(e,r)),j({},e)}));return(0,m.default)(i).call(i,(e=>!0!==e.hidden))}))()}detailDidFetch(e){var t=this;return(0,S.default)((function*(){var a,{secret_refs:r=[]}=e,[i,n]=yield g.default.all([t.secretStore.fetchList({mode:"SERVER"}),R.default.fetchList()]),l=[];(0,_.default)(r).call(r,function(){var t=(0,S.default)((function*(t){var{secret_ref:a=""}=t,[,r]=a.split("/secrets/"),n=(0,b.default)(i).call(i,(e=>e.id===r));n&&(l.push(n.id),(0,y.default)(t,{secret_info:n}),(0,y.default)(e,{algorithm:n.algorithm,mode:n.mode}))}));return function(e){return t.apply(this,arguments)}}()),t.updateItem(e,n);var o=yield g.default.all((0,v.default)(l).call(l,(e=>t.payloadClient.list(e,{},{headers:{Accept:"text/plain"}}))));return(0,_.default)(a=o||[]).call(a,((e,t)=>{r[t].secret_info.payload=e})),e}))()}create(e){var t=this;return(0,S.default)((function*(){var a={name:e.name,mode:e.mode,payload_content_type:"text/plain",secret_type:"certificate",algorithm:(0,I.default)({domain:e.domain,expiration:e.expiration})},r=j(j({},a),{},{payload:e.certificate}),i=[t.secretStore.create(r)];if("SERVER"===e.mode){var n=j(j({},a),{},{payload:e.private_key});i.push(t.secretStore.create(n))}var[l,o]=yield g.default.all(i),s=[{name:"certificate",secret_ref:l.secret_ref}];o&&s.push({name:"private_key",secret_ref:o.secret_ref});var d={type:"certificate",name:e.name,secret_refs:s};return t.client.create(d)}))()}},(0,P.default)(f.prototype,"create",[D.action],(0,A.default)(f.prototype,"create"),f.prototype),p=(0,P.default)(f.prototype,"delete",[D.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){var e=this;return function(){var t=(0,S.default)((function*(t){var{id:a,secret_refs:r=[]}=t;return yield g.default.all((0,v.default)(r).call(r,(t=>{var{secret_ref:a=""}=t,[,r]=a.split("/secrets/");return e.secretStore.delete({id:r})}))),e.submitting(e.client.delete(a))}));return function(e){return t.apply(this,arguments)}}()}}),f);t.ContainersStore=M;var T=new M;t.default=T},1338:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.SecretsStore=void 0;var f,p=c(a(29)),m=c(a(164)),h=c(a(54)),v=c(a(63)),g=c(a(345)),_=c(a(25)),b=c(a(58)),y=c(a(49)),I=c(a(35)),A=c(a(55)),S=c(a(53)),w=c(a(50)),x=a(36),P=c(a(1306));function C(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function E(e){for(var t=1;t({limit:e,offset:t})))}get client(){return w.default.barbican.secrets}get payloadClient(){return w.default.barbican.secrets.payload}get fetchListByLimit(){return!0}get paramsFunc(){return e=>E({},e)}get mapper(){return e=>{var{secret_ref:t,algorithm:a}=e,[,r]=t.split("/secrets/"),{domain:i,expiration:n}=a?JSON.parse(a):{};return E(E({},e),{},{id:r,domain:i,expiration:n})}}requestListAllByLimit(e,t){var a=this;return(0,y.default)((function*(){for(var r=!0,i=[];r;){var n=i.length||"",l=yield a.requestListByMarker(e,t,n),o=a.getListDataFromResult(l);i=[...i,...o],(t>=l.total||n>=l.total)&&(r=!1)}return i}))()}updateItem(e,t){var{secret_ref:a}=e,r=(0,p.default)(t).call(t,(e=>{var t=[e.default_tls_container_ref,e.client_ca_tls_container_ref,...e.sni_container_refs];return(0,m.default)(t).call(t,a)}));return r.length&&(e.listener=(0,h.default)(r).call(r,(e=>({id:e.id,name:e.name,lb:e.lbIds[0]})))),e}fetchDetail(e){var t=this;return(0,y.default)((function*(){var{id:a,silent:r}=e;r||(t.isLoading=!0);var[i,n,l]=yield v.default.all([t.client.show(a,{},{headers:{Accept:"application/json"}}),t.payloadClient.list(a,{},{headers:{Accept:"text/plain"}}),P.default.fetchList()]);i.payload=n,t.updateItem(i,l);var o=t.mapper(i||{});return t.detail=o,t.isLoading=!1,o}))()}listDidFetch(e){var t=this;return(0,y.default)((function*(){if(0===e.length)return e;var a=yield P.default.fetchList();return(0,h.default)(e).call(e,(e=>(t.updateItem(e,a),E({},e))))}))()}create(e){var t=this;return(0,y.default)((function*(){var{expiration:a,domain:r,algorithm:i}=e,n=E(E({},(0,b.default)(e,["expiration","domain","algorithm"])),{},{algorithm:i||(0,g.default)({domain:r,expiration:a})});return t.client.create(n)}))()}},(0,A.default)(f.prototype,"fetchDetail",[x.action],(0,_.default)(f.prototype,"fetchDetail"),f.prototype),(0,A.default)(f.prototype,"create",[x.action],(0,_.default)(f.prototype,"create"),f.prototype),f);t.SecretsStore=D;var k=new D;t.default=k},1339:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnIKEPolicyStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.ikePolicies}get listResponseKey(){return"ikepolicies"}get listFilterByProject(){return!0}}t.VpnIKEPolicyStore=o;var s=new o;t.default=s},1340:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnIPsecPolicyStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.ipsecPolicies}get listResponseKey(){return"ipsecpolicies"}get listFilterByProject(){return!0}}t.VpnIPsecPolicyStore=o;var s=new o;t.default=s},1341:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallStore=void 0;var f=c(a(28)),p=c(a(91)),m=c(a(86)),h=c(a(49)),v=c(a(35)),g=c(a(50)),_=a(1286),b=c(a(53)),y=c(a(460));function I(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function A(e){for(var t=1;tA(A({},e),{},{name:e.name||e.id,notDefault:!(0,_.isDefault)(e)})}listDidFetch(e){var t=this;return(0,h.default)((function*(){var a=[],r=[];if((0,f.default)(e).call(e,(e=>{var{egress_firewall_policy_id:t,ingress_firewall_policy_id:i}=e;(0,p.default)(a).call(a,t)<0&&a.push(t),(0,p.default)(r).call(r,i)<0&&r.push(i)})),0===a.length&&0===r.length)return e;var i=yield t.policyClient.list();return(0,f.default)(e).call(e,(e=>{var t,a,{egress_firewall_policy_id:r,ingress_firewall_policy_id:n}=e;e.egressPolicy=(0,m.default)(t=i.firewall_policies).call(t,(e=>e.id===r)),e.egressPolicyName=e.egressPolicy?e.egressPolicy.name:"-",e.ingressPolicy=(0,m.default)(a=i.firewall_policies).call(a,(e=>e.id===n)),e.ingressPolicyName=e.ingressPolicy?e.ingressPolicy.name:"-"})),e}))()}detailDidFetch(e){var t=this;return(0,h.default)((function*(){var{egress_firewall_policy_id:a,ingress_firewall_policy_id:r,project_id:i}=e;r&&(e.ingress=(yield t.fetchPolicy(r)).firewall_policy),a&&(e.egress=(yield t.fetchPolicy(a)).firewall_policy);var n=yield y.default.fetchProjectDetail({id:i});return e.project_name=n&&n.name||"-",e}))()}fetchPolicy(e){return this.policyClient.show(e)}}t.FirewallStore=S;var w=new S;t.default=w},1358:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnServicesStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.vpnservices}get listFilterByProject(){return!0}}t.VpnServicesStore=o;var s=new o;t.default=s},1359:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.VpnEndPointGroupStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.neutron.endpointGroups}get listFilterByProject(){return!0}}t.VpnEndPointGroupStore=o;var s=new o;t.default=s},1360:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.DNSZonesStore=void 0;var n,l,o,s=i(a(25)),d=i(a(49)),u=i(a(74)),c=(i(a(35)),i(a(75)),i(a(55))),f=a(36),p=i(a(50)),m=i(a(1647)),h=(n=class extends m.default{constructor(){super(...arguments),(0,u.default)(this,"delete",l,this),(0,u.default)(this,"update",o,this)}get client(){return p.default.designate.zones}create(e){var t=this;return(0,d.default)((function*(){return t.submitting(t.client.create(e))}))()}},(0,c.default)(n.prototype,"create",[f.action],(0,s.default)(n.prototype,"create"),n.prototype),l=(0,c.default)(n.prototype,"delete",[f.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{id:t}=e;return this.submitting(this.client.delete(t))}}}),o=(0,c.default)(n.prototype,"update",[f.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.client.patch(a,t))}}}),n);t.DNSZonesStore=h;var v=new h;t.default=v},1361:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.DNSRecordSetsStore=void 0;var n,l,o,s,d=i(a(58)),u=i(a(74)),c=i(a(35)),f=i(a(55)),p=(i(a(75)),i(a(50))),m=a(36),h=i(a(1647)),v=(n=class extends h.default{constructor(){super(...arguments),(0,c.default)(this,"getFatherResourceId",(e=>e.zoneId||e.id)),(0,u.default)(this,"delete",l,this),(0,u.default)(this,"update",o,this),(0,u.default)(this,"create",s,this)}get client(){return p.default.designate.zones.recordsets}get isSubResource(){return!0}get paramsFuncPage(){return e=>{var{id:t,zoneId:a,all_projects:r,current:i}=e;return(0,d.default)(e,["id","zoneId","all_projects","current"])}}},l=(0,f.default)(n.prototype,"delete",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{zone_id:t,recordset_id:a}=e;return this.submitting(this.client.delete(t,a))}}}),o=(0,f.default)(n.prototype,"update",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t,a)=>this.submitting(this.client.update(e,t,a))}}),s=(0,f.default)(n.prototype,"create",[m.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.client.create(a,t))}}}),n);t.DNSRecordSetsStore=v;var g=new v;t.default=g},1362:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.isMine=a.isDefault=a.tableOptions=a.tableFilter=a.tableColumns=void 0;var l=n(r(54)),o=n(r(0)),s=n(r(133)),d=r(1286),u=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Rules"),dataIndex:"rules",render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},e.name))):"-"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Audited"),dataIndex:"audited",valueRender:"yesNo"}];a.tableColumns=u;var c=[{label:t("Name"),name:"name"},(0,d.getDefaultFilter)(t("Hide Default Policies"))];a.tableFilter=c;var f={filterParams:c,columns:u};a.tableOptions=f;a.isDefault=e=>"default egress"===e.name||"default ingress"===e.name;a.isMine=e=>e.project_id===s.default.projectId},1363:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FirewallRuleStore=void 0;var f,p=c(a(28)),m=c(a(29)),h=c(a(91)),v=c(a(54)),g=c(a(86)),_=c(a(25)),b=c(a(58)),y=c(a(49)),I=c(a(35)),A=c(a(55)),S=c(a(119)),w=a(36),x=c(a(50)),P=a(1307),C=c(a(53));function E(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function D(e){for(var t=1;tD(D({},e),{},{protocol:e.protocol||"any",notDefault:!(0,P.isDefault)(e)})}listDidFetch(e){var t=this;return(0,y.default)((function*(){var a=(yield t.policyClient.list()).firewall_policies;return(0,p.default)(e).call(e,(e=>{e.policies=(0,m.default)(a).call(a,(t=>{var a;return(0,h.default)(a=t.firewall_rules).call(a,e.id)>=0}))})),e}))()}detailDidFetch(e){var t=this;return(0,y.default)((function*(){var a=(yield t.policyClient.list()).firewall_policies;return e.policies=(0,m.default)(a).call(a,(t=>{var a;return(0,h.default)(a=t.firewall_rules).call(a,e.id)>=0})),e}))()}fetchListByPolicy(){var e=arguments,t=this;return(0,y.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{limit:r,page:i,sortKey:n,sortOrder:l,conditions:o}=a,s=(0,b.default)(a,["limit","page","sortKey","sortOrder","conditions"]);t.list.isLoading=!0;var{tab:d,all_projects:u,firewall_rules:c}=s,f=(0,b.default)(s,["tab","all_projects","firewall_rules"]);if(0!==c.length){var p=D({},f);u&&(t.listFilterByProject||(p.all_projects=!0));var m=yield t.client.list(p),h=(0,S.default)(m,t.listResponseKey,[]),_=(0,v.default)(c).call(c,(e=>(0,g.default)(h).call(h,(t=>t.id===e)))),y=(0,v.default)(_).call(_,t.mapper),I=yield t.listDidFetchProject(y,u);return I=yield t.listDidFetch(I,u),t.list.update(D({data:I,total:y.length||0,limit:Number(r)||10,page:Number(i)||1,sortKey:n,sortOrder:l,filters:s,isLoading:!1},t.list.silent?{}:{selectedRowKeys:[]})),I}t.list.isLoading=!1}))()}},(0,A.default)(f.prototype,"fetchListByPolicy",[w.action],(0,_.default)(f.prototype,"fetchListByPolicy"),f.prototype),f);t.FirewallRuleStore=k;var R=new k;t.default=R},1400:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.Algorithm=a.algorithmTip=a.algorithmDict=a.BackendProtocol=void 0;var l,o=n(r(54)),s=n(r(32)),d=[{label:t("TCP"),value:"TCP"},{label:t("PING"),value:"PING"}];a.BackendProtocol=d;var u={LEAST_CONNECTIONS:t("LEAST_CONNECTIONS"),ROUND_ROBIN:t("ROUND_ROBIN"),SOURCE_IP:t("SOURCE_IP")};a.algorithmDict=u;var c={LEAST_CONNECTIONS:t("A dynamic scheduling algorithm that estimates the server load based on the number of currently active connections. The system allocates new connection requests to the server with the least number of current connections. Commonly used for long connection services, such as database connections and other services."),ROUND_ROBIN:t("Each new connection request is assigned to the next server in order, and all requests are finally divided equally among all servers. Commonly used for short connection services, such as HTTP services."),SOURCE_IP:t("Perform a consistent hash operation on the source IP address of the request to obtain a specific value. At the same time, the back-end server is numbered, and the request is distributed to the server with the corresponding number according to the calculation result. This can enable load distribution of visits from different source IPs, and at the same time enable requests from the same client IP to always be dispatched to a specific server. This method is suitable for load balancing TCP protocol without cookie function.")};a.algorithmTip=c;var f=(0,o.default)(l=(0,s.default)(u)).call(l,(e=>({label:u[e],value:e})));a.Algorithm=f},1401:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.PoolStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.octavia.pools}get listFilterByProject(){return!0}}t.PoolStore=o;var s=new o;t.default=s},1402:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.PoolMemberStore=void 0;var n,l,o=i(a(25)),s=i(a(74)),d=(i(a(35)),i(a(75)),i(a(55))),u=a(36),c=i(a(50)),f=i(a(53)),p=(n=class extends f.default{constructor(){super(...arguments),(0,s.default)(this,"delete",l,this)}get client(){return this.poolClient.members}get poolClient(){return c.default.octavia.pools}get responseKey(){return"member"}get listFilterByProject(){return!0}listFetchByClient(e,t){var{pool_id:a}=t;return this.client.list(a)}create(e){var{default_pool_id:t,data:a}=e,r={};return r[this.listResponseKey]=a,this.submitting(this.client.create(t,r))}batchUpdate(e){var{default_pool_id:t,data:a}=e,r={};return r[this.listResponseKey]=a,this.submitting(this.poolClient.batchUpdateMembers(t,r))}update(e){var{default_pool_id:t,member_id:a,data:r}=e,i={};return i[this.responseKey]=r,this.submitting(this.client.update(t,a,i))}},(0,d.default)(n.prototype,"create",[u.action],(0,o.default)(n.prototype,"create"),n.prototype),(0,d.default)(n.prototype,"batchUpdate",[u.action],(0,o.default)(n.prototype,"batchUpdate"),n.prototype),(0,d.default)(n.prototype,"update",[u.action],(0,o.default)(n.prototype,"update"),n.prototype),l=(0,d.default)(n.prototype,"delete",[u.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{id:t,default_pool_id:a}=e;return this.submitting(this.client.delete(a,t))}}}),n);t.PoolMemberStore=p;var m=new p;t.default=m},1403:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.ReverseStore=void 0;var n,l,o,s=i(a(634)),d=i(a(74)),u=(i(a(35)),i(a(55))),c=(i(a(75)),a(36)),f=i(a(50)),p=i(a(53)),m=(n=class extends p.default{constructor(){super(...arguments),(0,d.default)(this,"set",l,this),(0,d.default)(this,"unset",o,this)}get client(){return(0,s.default)(f.default.designate).floatingips}get reverseClient(){return(0,s.default)(f.default.designate)}get isSubResource(){return!0}detailFetchByClient(e){var{id:t}=e;return this.reverseClient.reverseDetail(t)}get paramsFunc(){return()=>{}}},l=(0,u.default)(n.prototype,"set",[c.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.reverseClient.setReverse(a,t))}}}),o=(0,u.default)(n.prototype,"unset",[c.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{id:a}=e;return this.submitting(this.reverseClient.unsetReverse(a,t))}}}),n);t.ReverseStore=m;var h=new m;t.default=h},1404:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.ZONE_STATUS=a.validateZoneName=a.zoneNameMessage=a.zoneNameRegex=a.zoneTypeOptions=a.ZONE_TYPES=a.ZONE_TYPE_ENUM=void 0;var l=n(r(63)),o=n(r(430)),s=r(163),d={primary:"PRIMARY",secondary:"SECONDARY"};a.ZONE_TYPE_ENUM=d;var u={[d.primary]:t("Primary"),[d.secondary]:t("Secondary")};a.ZONE_TYPES=u;var c=(0,s.getOptions)(u);a.zoneTypeOptions=c;var f=/^.+\.$/;a.zoneNameRegex=f;var p=t('The zone name should end with "."');a.zoneNameMessage=p;a.validateZoneName=(e,a)=>a?f.test(a)?(0,o.default)(a).call(a).split(".").length<=1?l.default.reject(new Error(t('More than one label is required, such as: "example.org."'))):l.default.resolve():l.default.reject(p):l.default.resolve();var m={ACTIVE:t("Active"),PENDING:t("Pending"),ERROR:t("Error")};a.ZONE_STATUS=m},1405:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.RECORD_STATUS=a.getRecordSetFormItem=a.validateName=a.nameMessage=a.nameRegex=a.dnsRRTypeList=a.getRecordSetType=a.DNS_RECORD_TYPE=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(596)),d=n(r(32)),u=n(r(63)),c=n(r(164)),f=n(r(28)),p=n(r(134)),m=n(r(0)),h=r(565),v=r(1404),g={A:{name:t("Address Record"),nameExtra:"example.com.",recordsExtra:"192.168.1.1"},AAAA:{name:t("IPv6 Address Record"),nameExtra:"example.com.",recordsExtra:"2001:db8:3333:4444:5555:6666:7777:8888"},CAA:{name:t("Certificate Authority Authorization Record"),nameExtra:"example.com.",recordsExtra:t('0 iodef mailto:security@example.com
  • 0: is flag. An unsigned integer between 0-255.
  • iodef: An ASCII string that represents the identifier of the property represented by the record.
    Available Tags: "issue", "issuewild", "iodef"
  • mailto:security@example.com: The value associated with the tag.
')},CNAME:{name:t("Canonical Name Record"),nameExtra:"first.example.com.",recordsExtra:"other-example.com"},MX:{name:t("Mail Exchange Record"),nameExtra:"example.com.",recordsExtra:t("10 mail.example.com
  • 10: Priority
  • mail.example.com: Value
")},NS:{name:t("Name Server"),nameExtra:"example.com.",recordsExtra:"ns1.example.com"},PTR:{name:t("Pointer Record"),nameExtra:"example.com.",recordsExtra:"1.1.0.192.in-addr.arpa."},SOA:{name:t("Start Of Authority"),nameExtra:"example.com.",recordsExtra:t("ns1.example.com admin.example.com 2013022001 86400 7200 604800 300
  • The primary name server for the domain, which is ns1.example.com or the first name server in the vanity name server list.
  • The responsible party for the domain: admin.example.com.
  • A timestamp that changes whenever you update your domain.
  • The number of seconds before the zone should be refreshed.
  • The number of seconds before a failed refresh should be retried.
  • The upper limit in seconds before a zone is considered no longer authoritative.
  • The negative result TTL (for example, how long a resolver should consider a negative result for a subdomain to be valid before retrying).
")},SPF:{name:t("Sender Policy Framework"),nameExtra:"example.com.",recordsExtra:t('"v=spf1 ipv4=192.1.1.1 include:examplesender.email +all"
  • v=spf1: Tells the server that this contains an SPF record. Every SPF record must begin with this string.
  • Guest List: Then comes the “guest list” portion of the SPF record or the list of authorized IP addresses. In this example, the SPF record is telling the server that ipv4=192.1.1.1 is authorized to send emails on behalf of the domain.
  • include:examplesender.net: is an example of the include tag, which tells the server what third-party organizations are authorized to send emails on behalf of the domain. This tag signals that the content of the SPF record for the included domain (examplesender.net) should be checked and the IP addresses it contains should also be considered authorized. Multiple domains can be included within an SPF record but this tag will only work for valid domains.
  • -all: Tells, the server that addresses not listed in the SPF record are not authorized to send emails and should be rejected.
')},SRV:{name:t("Service Locator"),nameExtra:"_sip._tcp.example.com.
  • _sip: represents the name of the service.
  • _tcp: represents the protocol of the service, this is usually either TCP or UDP.
  • example.com: represents the domain in which this record is for.
",recordsExtra:t('10 0 5060 server1.example.com.
  • "10" is the priority of the record. The lower the value, the higher the priority.
  • 0 is the weight of the record. This is the weight of which this record has a chance to be used when there are multiple matching SRV records of the same priority.
  • 5060 is the port of the record. This specifies the port on which the application or service is running.
  • server1.example.com is the target of the record. This specifies the domain of the application or service the record is for. SRV records must specify a target which is either an A record or AAAA record, and may not use CNAME records.
')},SSHFP:{name:t("SSH Public Key Fingerprint"),nameExtra:"example.com.",recordsExtra:t("4 2 123456789abcdef67890123456789abcdef67890123456789abcdef123456789
  • 4 is Algorithm: Algorithm (0: reserved; 1: RSA; 2: DSA, 3: ECDSA; 4: Ed25519; 6:Ed448)
  • 2 is Type: Algorithm used to hash the public key (0: reserved; 1: SHA-1; 2: SHA-256)
  • Last parameter is Fingerprint: Hexadecimal representation of the hash result, as text
")},TXT:{name:t("Text Record"),nameExtra:"example.com."}};a.DNS_RECORD_TYPE=g;a.getRecordSetType=e=>{var t;return g[e]?(0,l.default)(t="".concat(e," - ")).call(t,g[e].name):e};var _=()=>{var e,t;return(0,o.default)(e=(0,s.default)(t=(0,d.default)(g)).call(t)).call(e,(e=>{var t;return{label:(0,l.default)(t="".concat(e," - ")).call(t,g[e].name),value:e,key:e}}))};a.dnsRRTypeList=_;var b=/^.+\.$/;a.nameRegex=b;var y=t('The name should be end with "."');a.nameMessage=y;var I=(e,t)=>t?b.test(t)?u.default.resolve():u.default.reject(y):u.default.resolve();a.validateName=I;a.getRecordSetFormItem=(e,a)=>[{name:"type",label:t("Type"),type:"select",options:_(),onChange:a=>{var r,i,n;(0,c.default)(r=(0,d.default)(g)).call(r,a)&&e.setState({nameExtra:(0,l.default)(i="".concat(t("Exp: "))).call(i,g[a].nameExtra),recordsExtra:(0,p.default)(g[a].recordsExtra)?(0,l.default)(n="".concat(t("Exp: "))).call(n,g[a].recordsExtra):""})},required:!0},{name:"name",label:t("Name"),type:"input",required:!0,tip:()=>m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.nameExtra}}),extra:m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.nameExtra}}),validator:I},{name:"description",label:t("Description"),type:"textarea"},{name:"ttl",label:t("TTL"),type:"input-number",required:!0},{name:"records",label:t("Records"),type:"add-select",isInput:!0,required:!0,placeholder:t("Please input at least one record"),width:280,tip:()=>m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.recordsExtra}}),extra:m.default.createElement("div",{dangerouslySetInnerHTML:{__html:e.state.recordsExtra}}),validator:(e,r)=>{var{type:i}=a,{isIPv4:n,isIpv6:l}=h.ipValidate;return new u.default((e=>{r&&(0,f.default)(r).call(r,(e=>{if("A"===i&&!n(e.value))throw new Error(t("Please enter a valid IPv4 value."));if("AAAA"===i&&!l(e.value))throw new Error(t("Please enter a valid IPv6 value."))})),e()}))}}];var A=v.ZONE_STATUS;a.RECORD_STATUS=A},1406:function(e,a,r){"use strict";r(20)(a,"__esModule",{value:!0}),a.anyProject=a.objectTypes=void 0;var i={network:t("Network"),qos_policy:t("QoS Policy")};a.objectTypes=i;a.anyProject={id:"*",name:"*"}},1471:function(e,t,a){var r=a(3868);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(65)(r,i);r.locals&&(e.exports=r.locals)},1472:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3974)),l=i(a(3976)),o=i(a(3977)),s={actionConfigsContainer:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsSecret:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[n.default]}};t.default=s},1473:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.tableOptions=a.tableFilter=a.tableColumns=a.routerInterfaceOwners=a.instanceInterfaceOwners=void 0;var l=n(r(164)),o=r(163),s=r(1258);a.instanceInterfaceOwners=["compute:nova"];a.routerInterfaceOwners=["network:router_interface","network:ha_router_replicated_interface","network:router_interface_distributed"];var d=[{title:t("Port"),dataIndex:"id",width:150},{title:t("Network"),dataIndex:"network_name"},{title:t("Subnet"),dataIndex:"subnet_name"},{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Owner"),dataIndex:"owner"},{title:t("Device"),dataIndex:"device_name"},{title:t("Status"),dataIndex:"status",valueMap:s.portStatus}];a.tableColumns=d;var u=[{label:t("Network"),name:"network",filterFunc:(e,t)=>{var a;return(0,l.default)(a=(e||{}).name).call(a,t)}},{label:t("Device"),name:"router",filterFunc:(e,t)=>{var a;return(0,l.default)(a=(e||{}).name).call(a,t)}},{label:t("Status"),name:"status",options:(0,o.getOptions)(s.portStatus)}];a.tableFilter=u;var c={filterParams:u,columns:d};a.tableOptions=c},1474:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var m=p(r(63)),h=p(r(430)),v=p(r(1277)),g=p(r(54)),_=p(r(32)),b=p(r(164)),y=p(r(49)),I=p(r(58)),A=p(r(35)),S=p(r(601)),w=r(412),x=r(1241),P=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=N(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}r.default=e,a&&a.set(e,r);return r}(r(1363)),C=r(1307),E=r(565),D=r(36),k=r(1251),R=r(571);function N(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(N=function(e){return e?a:t})(e)}function j(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function M(e){for(var t=1;t(a,r)=>{var i="source"===e?t("Source IP"):t("Destination IP");if(!r)return m.default.resolve();var n=(0,h.default)(r).call(r);if((0,S.default)(r)||0===n.length)return m.default.resolve();var{ip_version:l=4}=this.state,o=4===l;return!o||F(n)||O(n)?o||L(n)||Q(n)?m.default.resolve():m.default.reject(t("{ name } Format Error (e.g. FE80:0:0:0:0:0:0:1 or FE80:0:0:0:0:0:0:1/10)",{name:i})):m.default.reject(t("{ name } Format Error (e.g. 192.168.1.1 or 192.168.1.1/24)",{name:i}))})),(0,A.default)(this,"checkSourceIp",(()=>this.checkIp("source"))),(0,A.default)(this,"checkDestinationIp",(()=>this.checkIp("destination"))),(0,A.default)(this,"canChangeShared",(()=>{if(!(0,k.checkPolicyRule)("update_firewall_rule:shared"))return!1;if(this.id){var e,t=(0,D.toJS)(this.store.detail);return(0,v.default)(e=t.policies||[]).call(e,(e=>!e.shared))}return!0})),(0,A.default)(this,"onSubmit",(e=>{var{options:{enabled:t,shared:a},protocol:r,destination_ip_address:i,source_ip_address:n,source_port:l,destination_port:o}=e,s=M(M({},(0,I.default)(e,["options","protocol","destination_ip_address","source_ip_address","source_port","destination_port"])),{},{enabled:t,protocol:"any"===r?null:r,destination_ip_address:i||null,source_ip_address:n||null,source_port:l||null,destination_port:o||null});return this.canChangeShared()&&(s.shared=a),this.id?P.default.edit({id:this.id},s):P.default.create(s)}))}init(){this.store=new P.FirewallRuleStore,this.getDetail(),(0,R.fetchNeutronQuota)(this)}get listUrl(){return this.getRoutePath("firewall",null,{tab:"rules"})}get isEdit(){return this.params&&!!this.params.id}get name(){return this.isEdit?t("Edit rule"):t("Create rule")}get id(){return this.params.id}static allowed(){return m.default.resolve(!0)}get disableSubmit(){return!this.isEdit&&(0,R.checkQuotaDisable)(T,B)}get showQuota(){return!this.isEdit}get quotaInfo(){return(0,R.getQuotaInfo)(this,T,B)}get defaultValue(){if(this.id){var e=(0,D.toJS)(this.store.detail);return M(M({},e),{},{options:{enabled:e.enabled,shared:e.shared}})}return{protocol:"tcp",action:"allow",ip_version:4,options:{enabled:!0,shared:!1}}}get protocolList(){var e;return(0,g.default)(e=(0,_.default)(C.protocolInfos)).call(e,(e=>({value:e,label:C.protocolInfos[e]})))}get actionList(){var e;return(0,g.default)(e=(0,_.default)(C.actionInfos)).call(e,(e=>({value:e,label:C.actionInfos[e]})))}get ipVersionList(){return[{value:4,label:t("IPv4")},{value:6,label:t("IPv6")}]}getDetail(){var e=this;return(0,y.default)((function*(){e.params.id&&(yield e.store.fetchDetail(e.params),e.updateDefaultValue(),e.updateState())}))()}get formItems(){var e,a,{protocol:r}=this.state;return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"protocol",label:t("Protocol"),type:"radio",options:this.protocolList,required:!0},{name:"action",label:t("Rule Action"),type:"select",options:this.actionList,required:!0},{name:"ip_version",label:t("IP Version"),type:"radio",options:this.ipVersionList},{name:"source_ip_address",label:t("Source IP Address/Subnet"),type:"input",validator:this.checkSourceIp()},{name:"source_port",label:t("Source Port/Port Range"),type:"port-range",hidden:(0,b.default)(e=["any","icmp"]).call(e,r)},{name:"destination_ip_address",label:t("Destination IP Address/Subnet"),type:"input",validator:this.checkDestinationIp()},{name:"destination_port",label:t("Destination Port/Port Range"),type:"input",help:t("Input destination port or port range (example: 80 or 80:160)"),hidden:(0,b.default)(a=["any","icmp"]).call(a,r)},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Enabled"),value:"enabled"},{label:t("Shared"),value:"shared",disabled:!this.canChangeShared()}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateForm=q,(0,A.default)(q,"id","rule-create"),(0,A.default)(q,"title",t("Create Rule")),(0,A.default)(q,"path","/network/firewall-rule/create"),(0,A.default)(q,"policy","create_firewall_rule");var V=(0,w.inject)("rootStore")((0,w.observer)(q));a.default=V},1626:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Networks=void 0;var p=f(r(573)),m=f(r(29)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(571),b=r(233),y=r(342),I=f(r(1627));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;tthis.isAdminPage||this.isAllTab?S(S({},e),{},{all_projects:!0}):this.isProjectTab?S(S({},e),{},{project_id:this.currentProjectId}):this.isSharedTab?S(S({},e),{},{shared:!0}):this.isExternalTab?S(S({},e),{},{"router:external":!0}):S({},e)))}init(){this.store=new b.NetworkStore,this.downloadStore=new b.NetworkStore}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"status"}get policy(){return"get_network"}get name(){return t("networks")}get actionConfigs(){return I.default}get hasTab(){return!this.isAdminPage}get adminPageHasProjectFilter(){return!0}get tab(){if(this.isAdminPage)return null;var{tab:e="projectNetwork"}=this.props;return e}get isProjectTab(){return"projectNetwork"===this.tab}get isSharedTab(){return"sharedNetwork"===this.tab}get isExternalTab(){return"externalNetwork"===this.tab}get isAllTab(){return"allNetwork"===this.tab}getColumns(){var e=(0,_.networkColumns)(this);return this.isAdminPage||this.isAllTab?((0,p.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,sortKey:"project_id"}),e):this.isProjectTab?(0,m.default)(e).call(e,(e=>"tenant_id"!==e.dataIndex)):this.isSharedTab?(0,m.default)(e).call(e,(e=>"shared"!==e.dataIndex)):this.isExternalTab?(0,m.default)(e).call(e,(e=>"router:external"!==e.dataIndex)):e}get searchFilters(){var e={label:t("Name"),name:"name"},a={label:t("Shared"),name:"shared",options:y.yesNoOptions},r={label:t("External"),name:"router:external",options:y.yesNoOptions},i={label:t("Project Range"),name:"project_id",options:[{label:t("Current Project"),key:this.currentProjectId},{label:t("All"),key:"all"}]};return this.isSharedTab?[e,r,i]:this.isExternalTab?[e,a,i]:[e,a,r]}}a.Networks=w;var x=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=x},1627:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1628)),l=i(a(1630)),o=i(a(3840)),s={rowActions:{firstAction:i(a(3841)).default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=s},1628:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateNetwork=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(91)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=f(r(352)),I=f(r(177)),A=r(412),S=r(1241),w=r(565),x=f(r(233)),P=f(r(340)),C=f(r(1270)),E=r(1251),D=f(r(1629)),k=r(571),R=r(1265),N=r(163),j=r(36),M=f(r(621));function T(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function B(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2],{left:r=0}=e||{},{left:i=0}=t||{};return a?0!==r&&0!==i?1:0:0!==r?1:0};class Y extends S.ModalAction{constructor(){super(...arguments),(0,b.default)(this,"onSubmit",(e=>{var{name:t,project_id:a,provider_network_type:r,provider_physical_network:i,provider_segmentation_id:n,shared:l,external_network:o,availableZone:s,allocation_pools:d,host_routes:u,description:c,mtu:f,port_security_enabled:p}=e,m=(0,_.default)(e,["name","project_id","provider_network_type","provider_physical_network","provider_segmentation_id","shared","external_network","availableZone","allocation_pools","host_routes","description","mtu","port_security_enabled"]),h=K(d),v=G(u),g={name:t,description:c,port_security_enabled:p};s&&(g.availability_zone_hints=[s]),f&&(g.mtu=f);var b={"router:external":o,project_id:a?a.selectedRowKeys[0]:this.currentProjectId,"provider:network_type":r,"provider:physical_network":i,"provider:segmentation_id":n},y={shared:l},I=B({},g);return this.isAdminPage&&(I=B(B({},I),b)),this.isSystemAdmin&&(I=B(B({},I),y)),x.default.createAndMore(I,B(B({},m),{},{allocation_pools:h,host_routes:v}))})),(0,b.default)(this,"onOk",((e,a,r)=>(this.values=e,this.onSubmit(e,a).then((()=>{!this.isModal&&this.routing.push(this.listUrl),C.default.success(this.successText),r&&(0,y.default)(r)&&r(!0,!1)}),(a=>{var{type:i,error:n}=JSON.parse(a);"create_network"===i?C.default.errorWithDetail(n,this.errorText):"create_subnet"===i&&C.default.errorWithDetail(n,t("Unable to {action}, instance: {name}.",{action:t("Create Subnet"),name:e.subnet_name})),r&&(0,y.default)(r)&&r(!1,!0)}))))),(0,b.default)(this,"checkCidr",(e=>{var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!z(e))&&!("ipv6"===t&&!J(e))})),(0,b.default)(this,"checkGateway",(e=>!!(0,I.default)(e)||!!W(e))),(0,b.default)(this,"validateAllocationPools",((e,t)=>Q.call(this,e,t))),(0,b.default)(this,"onProjectChange",(e=>{var{selectedRowKeys:t}=e;this.setState({projectId:t[0]},(()=>{this.getQuota()}))})),(0,b.default)(this,"onCreateSubnetChange",(e=>{this.setState({create_subnet:e}),x.default.updateCreateWithSubnet(e)}))}get name(){return t("create network")}static get modalSize(){var{pathname:e}=window.location;return(0,N.isAdminPage)(e)?"large":"small"}getModalSize(){return this.isAdminPage?"large":"small"}init(){x.default.updateCreateWithSubnet(!1),this.state.networkQuota={},this.state.subnetQuota={},this.state.quotaLoading=!0,this.state.create_subnet=!1,this.state.projectId=this.currentProjectId,this.projectStore=P.default,D.default.fetchAvailableZones(),this.isAdminPage&&this.fetchProjectList(),this.getQuota()}get isSystemAdmin(){return(0,E.checkSystemAdmin)()}static get disableSubmit(){var{neutronQuota:{network:e={},subnet:t={}}}=P.default,{createWithSubnet:a=!1}=x.default;return 0===X(e,t,a)}static get showQuota(){return!0}fetchProjectList(){var e=this;return(0,g.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,j.toJS)(this.projectStore.list.data)||[]}get showQuota(){return!0}getQuota(){var e=this;return(0,g.default)((function*(){var{projectId:t}=e.state;e.setState({quotaLoading:!0});var a=yield e.projectStore.fetchProjectNeutronQuota(t),{network:r={},subnet:i={}}=a||{};e.setState({networkQuota:r,subnetQuota:i,quotaLoading:!1})}))()}get quotaInfo(){var{networkQuota:e={},subnetQuota:a={},quotaLoading:r,create_subnet:i}=this.state;if(r)return[];var n=X(e,a,i);return[B(B({},e),{},{add:n,name:"network",title:t("Network")}),B(B({},a),{},{add:i?n:0,name:"subnet",title:t("Subnet"),type:"line"})]}get defaultValue(){var e={enable_dhcp:!0,provider_network_type:"vxlan",ip_version:"ipv4",disable_gateway:!1,more:!1,port_security_enabled:!0,ipv6_ra_mode:"slaac",ipv6_address_mode:"slaac"};return this.isAdminPage&&(e.project_id={selectedRowKeys:[this.currentProjectId]}),e}get availableZones(){var e,t;return(0,p.default)(e=(0,m.default)(t=D.default.availableZones||[]).call(t,(e=>"available"===e.state&&"network"===e.resource))).call(e,(e=>({value:e.name,label:e.name})))}get SegIDTips(){var{provider_network_type:e="vxlan"}=this.state;switch(e){case"vxlan":return t("For VXLAN networks, valid segmentation IDs are 1 to 16777215");case"vlan":return t("For VLAN networks, valid segmentation IDs are 1 to 4094");case"gre":return t("For GRE networks, valid segmentation IDs are 1 to 4294967295");default:return t("For VXLAN networks, valid segmentation IDs are 1 to 16777215")}}get SegMax(){var{provider_network_type:e="vxlan"}=this.state;switch(e){case"vxlan":return 16777215;case"vlan":return 4094;case"gre":return 4294967295;default:return 16777215}}get formItems(){var{more:e,create_subnet:a=!1,provider_network_type:r="vxlan",ip_version:i="ipv4",disable_gateway:n=!1}=this.state,l=this.isAdminPage&&(0,h.default)(F).call(F,r)>-1,o=this.isAdminPage&&(0,h.default)(F).call(F,r)>-1,s=this.isAdminPage&&(0,h.default)(L).call(L,r)>-1,d=this.isAdminPage&&(0,h.default)(O).call(O,r)>-1,u="ipv4"===i;return[{name:"name",label:t("Network Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),options:this.availableZones},{name:"mtu",label:t("MTU"),type:"input-number",min:68,max:9e3,extra:t("Minimum value is 68 for IPv4, and 1280 for IPv6.")},{name:"create_subnet",label:t("Create Subnet"),type:"check",onChange:this.onCreateSubnetChange},{name:"shared",label:t("Shared"),type:"check",hidden:!this.isSystemAdmin},{name:"port_security_enabled",label:t("Port Security Enabled"),type:"switch",required:!0},{name:"external_network",label:t("External Network"),type:"check",hidden:!this.isAdminPage},B({name:"project_id",label:t("Project"),type:"select-table",hidden:!this.isAdminPage,required:this.isAdminPage,isLoading:this.projectStore.list.isLoading,data:this.projects,onChange:this.onProjectChange},R.projectTableOptions),{name:"provider_network_type",label:t("Provider Network Type"),type:"select",hidden:!this.isAdminPage,required:this.isAdminPage,options:[{label:"vxlan",value:"vxlan"},{label:"flat",value:"flat"},{label:"vlan",value:"vlan"},{label:"gre",value:"gre"}],onChange:e=>{this.setState({provider_network_type:e})}},{name:"provider_physical_network",label:t("Provider Physical Network"),type:"input",hidden:!l,required:o},{name:"provider_segmentation_id",label:t("Segmentation ID"),type:"input-int",hidden:!s,required:d,min:1,max:this.SegMax,extra:this.SegIDTips},{name:"subnet_name",label:t("Subnet Name"),hidden:!a,type:"input",required:a,validator:Z},{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e})},required:!0,hidden:!a},{name:"ipv6_ra_mode",label:t("Router Advertisements Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:k.subnetIpv6Tip,hidden:"ipv6"!==i,dependencies:["ipv6_address_mode"],validator:(e,a)=>{var r=this.formRef.current&&this.formRef.current.getFieldValue("ipv6_address_mode")||void 0;return!a&&r?v.default.resolve():r&&r!==a?v.default.reject(new Error(t("Invalid combination"))):v.default.resolve()}},{name:"ipv6_address_mode",label:t("IP Distribution Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:k.subnetIpv6Tip,hidden:"ipv6"!==i},{name:"cidr",label:t("CIDR"),type:"input",placeholder:u?"192.168.0.0/24":"1001:1001::/64",required:a,validator:(e,r)=>a||r?(0,I.default)(r)||this.checkCidr(r)?v.default.resolve():v.default.reject(new Error(t("Invalid: ")+t("CIDR"))):v.default.resolve(),hidden:!a,tip:u?t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16"):t("e.g. 2001:Db8::/48")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e})},hidden:!(a&&e)},{name:"gateway_ip",label:t("Gateway IP"),type:"ipv6"===i?"input":"ip-input",onChange:e=>{this.setState({gateway_ip:e.target.value})},tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(a&&e&&!n),validator:"ipv6"===i?(e,a)=>this.checkGateway(a)?v.default.resolve():v.default.reject(new Error(t("Invalid: Please input a valid ipv6."))):null},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!(a&&e)},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. {ip})",{ip:u?"192.168.1.2,192.168.1.200":"1001:1001::,1001:1002::"}),hidden:!(a&&e),validator:this.validateAllocationPools,dependencies:["gateway_ip"]},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. {ip})",{ip:u?"114.114.114.114":"1001:1001::/64"}),hidden:!(a&&e),validator:u?q:V},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. {ip})",{ip:u?"192.168.200.0/24,10.56.1.254":"1001:1001::/64,1001:1001"}),hidden:!(a&&e),validator:u?H:U},{name:"more",label:t("Advanced Options"),type:"more",hidden:!a}]}}a.CreateNetwork=Y,(0,b.default)(Y,"id","create-network"),(0,b.default)(Y,"title",t("Create Network")),(0,b.default)(Y,"policy",["create_network","create_subnet"]),(0,b.default)(Y,"allowed",(()=>v.default.resolve(!0)));var $=(0,A.inject)("rootStore")((0,A.observer)(Y));a.default=$},1629:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.NeutronStore=void 0;var n,l,o,s=i(a(25)),d=i(a(49)),u=i(a(74)),c=(i(a(35)),i(a(55))),f=(i(a(75)),a(36)),p=i(a(50)),m=i(a(53)),h=(n=class extends m.default{constructor(){super(...arguments),(0,u.default)(this,"availableZones",l,this),(0,u.default)(this,"zoneLoading",o,this)}get zoneClient(){return p.default.neutron.azones}fetchAvailableZones(){var e=this;return(0,d.default)((function*(){e.zoneLoading=!0;var t=yield e.zoneClient.list(),{availability_zones:a=[]}=t;e.availableZones=a,e.zoneLoading=!1}))()}},l=(0,c.default)(n.prototype,"availableZones",[f.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),o=(0,c.default)(n.prototype,"zoneLoading",[f.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,c.default)(n.prototype,"fetchAvailableZones",[f.action],(0,s.default)(n.prototype,"fetchAvailableZones"),n.prototype),n);t.NeutronStore=h;var v=new h;t.default=v},1630:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSubnet=void 0;var p=f(r(1252)),m=f(r(63)),h=f(r(49)),v=f(r(58)),g=f(r(35)),_=f(r(177)),b=r(412),y=r(1241),I=r(565),A=f(r(233)),S=f(r(340)),w=f(r(133)),x=r(571),P=r(1265),C=r(36),E=f(r(621));function D(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function k(e){for(var t=1;t{var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!L(e))&&!("ipv6"===t&&!O(e))})),(0,g.default)(this,"checkGateway",(e=>!!(0,_.default)(e)||!!Q(e))),(0,g.default)(this,"onSubmit",(e=>{var{allocation_pools:t,host_routes:a,project_id:r}=e,i=(0,v.default)(e,["allocation_pools","host_routes","project_id"]),n=B(t),l=F(a);return A.default.createSubnet(k(k({},i),{},{project_id:r?r.selectedRowKeys[0]:this.currentProjectId,network_id:this.network.id,allocation_pools:n,host_routes:l}))})),(0,g.default)(this,"validateAllocationPools",((e,t)=>R.call(this,e,t))),(0,g.default)(this,"onProjectChange",(e=>{var{selectedRowKeys:t}=e;this.setState({projectId:t[0]},(()=>{this.getQuota()}))}))}get name(){return t("Create Subnet")}static get modalSize(){return w.default.hasAdminRole?"large":"small"}getModalSize(){return this.isSystemAdmin?"large":"small"}get network(){return this.props.containerProps.detail||this.item||{}}get instanceName(){return this.item.name||(0,p.default)(this).subnet_name}get defaultValue(){var e={enable_dhcp:!0,ip_version:"ipv4",disable_gateway:!1,more:!1,ipv6_ra_mode:"slaac",ipv6_address_mode:"slaac"};return this.isSystemAdmin&&(e.project_id={selectedRowKeys:[this.currentProjectId]}),e}init(){this.state.projectId=this.currentProjectId,this.state.quota={},this.state.quotaLoading=!0,this.projectStore=S.default,this.isSystemAdmin&&this.getProjects(),this.getQuota()}getProjects(){var e=this;return(0,h.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,C.toJS)(this.projectStore.list.data)||[]}static get disableSubmit(){var{neutronQuota:{subnet:{left:e=0}={}}}=S.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,h.default)((function*(){var{projectId:t}=e.state;e.setState({quotaLoading:!0});var a=yield e.projectStore.fetchProjectNeutronQuota(t),{subnet:r={}}=a||{};e.setState({quota:r,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e,i=0===r?0:1;return[k(k({},e),{},{add:i,name:"subnet",title:t("Subnet")})]}get isSystemAdmin(){return this.props.rootStore.hasAdminRole}get networkProjectId(){var{project_id:e}=this.item;if(e)return e;var{detail:t={}}=this.containerProps;return t.project_id}get formItems(){var{more:e,ip_version:a="ipv4",disable_gateway:r=!1,projectId:i}=this.state,n="ipv4"===a;return[{name:"subnet_name",label:t("Subnet Name"),type:"input-name",required:!0,withoutChinese:!0},k({name:"project_id",label:t("Project"),type:"select-table",required:!0,hidden:!this.isSystemAdmin,extra:i!==this.networkProjectId&&t("The selected project is different from the project to which the network belongs. That is, the subnet to be created is not under the same project as the network. Please do not continue unless you are quite sure what you are doing."),isLoading:this.projectStore.list.isLoading,data:this.projects,onChange:this.onProjectChange},P.projectTableOptions),{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e})},required:!0},{name:"ipv6_ra_mode",label:t("Router Advertisements Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:x.subnetIpv6Tip,hidden:"ipv6"!==a,dependencies:["ipv6_address_mode"],validator:(e,a)=>{var r=this.formRef.current&&this.formRef.current.getFieldValue("ipv6_address_mode")||void 0;return!a&&r?m.default.resolve():r&&r!==a?m.default.reject(new Error(t("Invalid combination"))):m.default.resolve()}},{name:"ipv6_address_mode",label:t("IP Distribution Mode"),type:"select",options:[{label:"dhcpv6-stateful",value:"dhcpv6-stateful"},{label:"dhcpv6-stateless",value:"dhcpv6-stateless"},{label:"slaac",value:"slaac"}],tip:x.subnetIpv6Tip,hidden:"ipv6"!==a},{name:"cidr",label:t("CIDR"),type:"input",placeholder:n?"192.168.0.0/24":"1001:1001::/64",required:!0,validator:(e,a)=>(0,_.default)(a)||this.checkCidr(a)?m.default.resolve():m.default.reject(new Error(t("Invalid: ")+t("CIDR"))),tip:n?t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16"):t("e.g. 2001:Db8::/48")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e})},hidden:!e},{name:"gateway_ip",label:t("Gateway IP"),type:"ipv6"===a?"input":"ip-input",onChange:e=>{this.setState({gateway_ip:e.target.value})},tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(e&&!r),validator:"ipv6"===a?(e,a)=>this.checkGateway(a)?m.default.resolve():m.default.reject(new Error(t("Invalid: Please input a valid ipv6."))):null},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!e},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. {ip})",{ip:n?"192.168.1.2,192.168.1.200":"1001:1001::,1001:1002::"}),hidden:!e,validator:this.validateAllocationPools},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. {ip})",{ip:n?"114.114.114.114":"1001:1001::"}),hidden:!e,validator:n?N:j},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. {ip})",{ip:n?"192.168.200.0/24,10.56.1.254":"1001:1001::/64,1001:1001"}),hidden:!e,validator:n?M:T},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.CreateSubnet=q,(0,g.default)(q,"id","create-subnet"),(0,g.default)(q,"title",t("Create Subnet")),(0,g.default)(q,"policy","create_subnet"),(0,g.default)(q,"allowed",((e,t)=>{var{project_id:a}=e||{},{detail:{project_id:r}={}}=t||{},i=a||r,n=w.default,{hasAdminRole:l=!1,user:{project:{id:o}={}}={}}=n;return l||i===o?m.default.resolve(!0):m.default.resolve(!1)}));var V=(0,b.inject)("rootStore")((0,b.observer)(q));a.default=V},1631:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1630)),l=i(a(3844)),o={rowActions:{firstAction:i(a(3845)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},1632:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1633)),l=i(a(3850)),o=i(a(3851)),s=i(a(3852)),d=i(a(3853)),u=i(a(3854)),c=i(a(3855)),f=i(a(3856)),p=i(a(3857)),m={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:u.default},{action:c.default},{action:l.default},{action:s.default},{action:d.default},{action:f.default},{action:p.default}]},primaryActions:[n.default],batchActions:[l.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default]}};t.default=m},1633:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(63)),v=f(r(49)),g=f(r(58)),_=f(r(35)),b=f(r(570)),y=r(412),I=r(575),A=r(233),S=f(r(1629)),w=f(r(340)),x=r(1241),P=r(571),C=r(1393);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{(0,b.default)(e,"openExternalNetwork")&&this.setState({openExternalNetwork:e.openExternalNetwork})})),(0,_.default)(this,"onSubmit",(e=>{var{openExternalNetwork:t,externalNetwork:a,hints:r={}}=e,i=(0,g.default)(e,["openExternalNetwork","externalNetwork","hints"]),n=t?{external_gateway_info:{network_id:a.selectedRows[0].id}}:null,l=r.selectedRowKeys||[];return this.store.create(D(D(D({},i),n),{},{availability_zone_hints:l}))}))}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=new I.RouterStore,this.networkStore=new A.NetworkStore,this.projectStore=w.default,this.fetchAzones(),this.getQuota()}get name(){return t("create router")}static get modalSize(){return"large"}getModalSize(){return"large"}fetchAzones(){S.default.fetchAvailableZones()}get aZones(){var e,t;return(0,p.default)(e=(0,m.default)(t=S.default.availableZones||[]).call(t,(e=>"available"===e.state&&"router"===e.resource))).call(e,(e=>D(D({},e),{},{id:e.name})))}static get disableSubmit(){var{neutronQuota:{router:{left:e=0}={}}={}}=w.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,v.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{router:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e,i=0===r?0:1;return[D(D({},e),{},{add:i,name:"router",title:t("Router")})]}get defaultValue(){return{openExternalNetwork:!1}}get formItems(){var{openExternalNetwork:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"hints",label:t("Availability Zone Hints"),type:"select-table",data:this.aZones,isLoading:S.default.zoneLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("State"),dataIndex:"state",valueMap:C.availabilityZoneState},{title:t("Resource Type"),dataIndex:"resource",valueMap:C.availabilityZoneResource}]},{name:"openExternalNetwork",label:t("Options"),type:"check",content:t("Open External Gateway")},{name:"externalNetwork",label:t("External Gateway"),type:"select-table",backendPageStore:this.networkStore,extraParams:{"router:external":!0},required:e,hidden:!e,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:P.networkStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.Create=k,(0,_.default)(k,"id","create"),(0,_.default)(k,"title",t("Create Router")),(0,_.default)(k,"policy","create_router"),(0,_.default)(k,"allowed",(()=>h.default.resolve(!0)));var R=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=R},1634:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(91)),s=n(r(54)),d=n(r(77));r(589);var u=n(r(590));r(1384);var c=n(r(1385));r(231);var f=n(r(341));r(1303);var p=n(r(1290)),m=n(r(35)),h=n(r(0)),v=r(163),g=r(580),_=r(1267),b=(r(161),r(204)),y=n(r(3871)),I=n(r(1471));class A extends h.default.Component{constructor(e){super(e),(0,m.default)(this,"detailButtons",(()=>[{name:t("Clear Gateway"),click:null},{name:t("Associate IP"),click:null},{name:t("Associate Network"),click:null},{name:t("delete"),type:"danger",click:null}])),this.state={}}get statusMap(){return{SHUTOFF:{status:"default",text:t("Shutoff")},ACTIVE:{color:"green",text:t("Active")}}}get detailInfos(){var{data:{subnets:e}}=this.props,a=(0,l.default)(e).call(e,(e=>{var t;return-1===(0,o.default)(t=e.name).call(t,"HA subnet tenant")}));return[{title:t("Name"),dataIndex:"name",render:(e,t)=>e?h.default.createElement(b.Link,{to:"/network/router/detail/".concat(t.id)},e):"-"},{title:t("UUID"),dataIndex:"id"},{title:t("Status"),dataIndex:"status",render:e=>_.routerStatus[e]||e},{title:t("External Fixed IP"),dataIndex:"external_gateway_info",isHideable:!0,render:e=>{var t;return(0,s.default)(t=(e||{}).external_fixed_ips||[]).call(t,(e=>h.default.createElement("span",{key:e.ip_address},e.ip_address,h.default.createElement("br",null))))||"-"}},{title:t("Subnet"),dataIndex:"subnets",render:e=>{if(!a[0])return"-";var t=(0,l.default)(a).call(a,(t=>-1!==(0,o.default)(e).call(e,t.id)));return(0,s.default)(t).call(t,(e=>h.default.createElement("span",{key:e.id},e.name," (",e.cidr,")",h.default.createElement("br",null))))}}]}renderCardInfos(e){var t,a=(0,s.default)(t=this.detailInfos).call(t,(t=>{var a,{title:r,dataIndex:i,render:n}=t;return!this.isLoading&&e&&e.id?(a=n?n(e[i],e):e[i],"create_time"!==i&&"update_time"!==i&&"created_at"!==i||n||(a=(0,g.getLocalTimeStr)(a)),void 0===a&&(a="-")):a="-",{label:r,content:a}}));return h.default.createElement(p.default,{column:1,className:I.default["descriptions-item"]},(0,s.default)(a).call(a,(e=>h.default.createElement(p.default.Item,{label:e.label,key:"label-".concat((0,v.generateId)())},e.content))))}renderButton(){var e=this.detailButtons();return h.default.createElement("div",{className:I.default["card-button"]},(0,s.default)(e).call(e,(e=>h.default.createElement(f.default,{type:e.type?e.type:"primary"},e.name))))}renderCard(e,t){return h.default.createElement("div",{style:{width:e}},this.renderCardInfos(t))}renderTitle(e,t){var a;return h.default.createElement("div",{className:I.default["node-card-title"]},(0,d.default)(a="".concat(e,": ")).call(a,t))}render(){var{x:e,y:a}=this.props,{data:{routers:r},infoIndex:i}=this.props,n=r[i];return h.default.createElement("div",{className:I.default["node-tooltips"],style:{top:"".concat(a,"px"),left:"".concat(e,"px")}},h.default.createElement(u.default,{placement:"rightTop",content:this.renderCard(430,n),title:this.renderTitle(t("Router"),n.name)},h.default.createElement("div",{style:{textAlign:"center",width:"50px",height:"50px",overflow:"hidden"}},h.default.createElement(c.default,{src:y.default,shape:"square",size:30}),h.default.createElement("div",{style:{transform:"scale(0.9,1)"}},n.name))))}}a.default=A},1635:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PortDetail=void 0;var l=r(412),o=r(582),s=n(r(1243)),d=r(1258),u=n(r(3879));class c extends s.default{get name(){return t("port")}get policy(){return"get_port"}get listUrl(){var{routerId:e}=this.params;return this.getRoutePath("routerDetail",{id:e},{tab:"interfaces"})}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:d.portStatus},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default}]}init(){this.store=new o.PortStore}}a.PortDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},1636:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.QoSPolicy=void 0;var p=f(r(35)),m=r(412),h=f(r(1242)),v=r(576),g=r(1357),_=r(66),b=r(342),y=f(r(1637));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t{switch(this.tabKey){case"projectQoSPolicy":return A(A({},e),{},{project_id:this.currentProjectId});case"sharedQoSPolicy":return A(A({},e),{},{shared:!0});default:return e}}))}init(){this.store=new v.QoSPolicyStore,this.downloadStore=new v.QoSPolicyStore}get isProjectTab(){var e=this.tabKey;return!this.isAdminPage&&(!e||"projectQoSPolicy"===e)}get checkEndpoint(){return!0}get endpoint(){return(0,_.qosEndpoint)()}get policy(){return"get_policy"}get aliasPolicy(){return"neutron:get_policy"}get name(){return t("QoS policies")}get actionConfigs(){return this.isAdminPage?y.default.actionConfigs:this.isProjectTab?y.default.consoleActions:b.emptyActionConfig}get hasTab(){return!this.isAdminPage}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"name"}get tabKey(){var{tab:e}=this.props;return e}getColumnParamsFromTabKey(){switch(this.tabKey){case"projectQoSPolicy":return{self:this,all:!1,shared:!1};case"sharedQoSPolicy":return{self:this,all:!1,shared:!0};case"allQoSPolicy":default:return{self:this,all:!0,shared:!1}}}getColumns(){return(0,g.getQosPolicyColumns)(this.getColumnParamsFromTabKey())}get searchFilters(){return(0,g.getQosPolicyFilters)(this.getColumnParamsFromTabKey())}}a.QoSPolicy=S;var w=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=w},1637:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3896)),l=i(a(3897)),o=i(a(3898)),s=i(a(3899)),d=i(a(3900)),u=i(a(3901)),c=i(a(3902)),f=i(a(3903)),p=i(a(3904)),m=i(a(3905)),h=i(a(3906)),v={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:p.default},{action:m.default},{action:c.default},{action:f.default},{action:d.default},{action:h.default},{action:u.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},consoleActions:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:p.default},{action:m.default},{action:c.default},{action:f.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]}};t.default=v},1638:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n,l=(0,i(a(54)).default)(n="0,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,46,48,56".split(",")).call(n,(e=>({label:e,value:e})));t.default=l},1639:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3910)),l=i(a(3911)),o=i(a(3912)),s=i(a(1640)),d=i(a(3918)),u={rowActions:{firstAction:n.default,moreActions:[{action:o.default},{action:d.default},{action:l.default}]},batchActions:[l.default],primaryActions:[s.default]};t.actionConfigs=u;var c={rowActions:{moreActions:[{action:l.default}]}};t.adminActions=c},1640:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(54)),o=n(r(28)),s=n(r(32)),d=n(r(91)),u=n(r(29)),c=n(r(63)),f=n(r(58)),p=n(r(35)),m=r(412),h=r(1241),v=n(r(581)),g=r(1254),_=n(r(3913)),b=n(r(3914)),y=n(r(3915)),I=n(r(3916)),A=n(r(3917));class S extends h.StepAction{constructor(){super(...arguments),(0,p.default)(this,"onSubmit",(e=>{var t,{name:a,description:r,vip_address:i,vip_network_id:n,admin_state_enabled:c,enableHealthMonitor:p,listener_protocol:m,listener_ssl_parsing_method:h,listener_sni_enabled:v,listener_default_tls_container_ref:_,listener_client_ca_tls_container_ref:b,listener_sni_container_refs:y,listener_admin_state_up:I,pool_admin_state_up:A,monitor_admin_state_up:S,insert_headers:w}=e,x=(0,f.default)(e,["name","description","vip_address","vip_network_id","admin_state_enabled","enableHealthMonitor","listener_protocol","listener_ssl_parsing_method","listener_sni_enabled","listener_default_tls_container_ref","listener_client_ca_tls_container_ref","listener_sni_container_refs","listener_admin_state_up","pool_admin_state_up","monitor_admin_state_up","insert_headers"]),P={name:a,description:r,vip_network_id:n.selectedRowKeys[0]},{ip_address:C,subnet:E}=i[0];P.vip_subnet_id=E,C&&C.ip&&(P.vip_address=C.ip),P.admin_state_up=c;var D,k={admin_state_up:I,protocol:m},R=(0,g.getInsertHeadersValueFromForm)(w);(R&&(k.insert_headers=R),"TERMINATED_HTTPS"===m)&&(_&&(k.default_tls_container_ref=_.selectedRows[0].container_ref),"two-way"===h&&b&&(k.client_ca_tls_container_ref=b.selectedRows[0].secret_ref,k.client_authentication="MANDATORY"),v&&y&&(k.sni_container_refs=(0,l.default)(D=y.selectedRows).call(D,(e=>e.container_ref))));var N={admin_state_up:A},j={admin_state_up:S};(0,o.default)(t=(0,s.default)(x)).call(t,(t=>{0===(0,d.default)(t).call(t,"listener")?k[t.replace("listener_","")]=e[t]:0===(0,d.default)(t).call(t,"pool")?N[t.replace("pool_","")]=e[t]:0===(0,d.default)(t).call(t,"health")&&(j[t.replace("health_","")]=e[t])})),p&&(N.healthmonitor=j);var{extMembers:M=[],Member:{selectedRowKeys:T=[],selectedRows:B,memberUpdateValue:F=[]}={}}=x,L=[];return(0,o.default)(T).call(T,(e=>{var t=(0,u.default)(B).call(B,(t=>t.id===e))[0],a=(0,u.default)(F).call(F,(t=>t.id===e))[0],{weight:r=0,protocol_port:i=1}=a||{},{member_ip:n,fixed_ips:l=[]}=t;(0,o.default)(n).call(n,(e=>{var{subnet_id:t}=(0,u.default)(l).call(l,(t=>t.ip_address===e))[0],a={weight:r,protocol_port:i,address:e,subnet_id:t};L.push(a)}))})),(0,o.default)(M).call(M,(e=>{var{ip:t,protocol_port:a,weight:r,name:i=null,subnet_id:n}=e.ip_address,l={weight:r,protocol_port:a,address:t,name:i,subnet_id:n};L.push(l)})),N.members=L,k.default_pool=N,P.listeners=[k],this.store.create(P)}))}init(){this.store=v.default}static allowed(e,t){var{isAdminPage:a=!1}=t;return c.default.resolve(!a)}get name(){return t("Create Loadbalancer")}get listUrl(){return this.getRoutePath("lb")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Base Config"),component:_.default},{title:t("Listener Detail"),component:b.default},{title:t("Pool Detail"),component:y.default},{title:t("Member Detail"),component:I.default},{title:t("Health Monitor Detail"),component:A.default}]}}a.StepCreate=S,(0,p.default)(S,"id","lb-create"),(0,p.default)(S,"title",t("Create Loadbalancer")),(0,p.default)(S,"path","/network/load-balancers/create"),(0,p.default)(S,"policy","os_load-balancer_api:loadbalancer:post");var w=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=w},1641:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3921)),l=i(a(3922)),o=i(a(3923)),s=i(a(3924)),d=i(a(3925)),u=i(a(1642)),c=i(a(3927)),f={rowActions:{firstAction:o.default,moreActions:[{action:l.default},{action:n.default},{action:s.default},{action:c.default},{action:d.default}]},batchActions:[],primaryActions:[u.default]};t.actionConfigs=f;var p={rowActions:{moreActions:[{action:c.default},{action:l.default}]}};t.adminActions=p},1642:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(63)),v=f(r(49)),g=f(r(58)),_=f(r(35)),b=r(412),y=r(1241),I=r(1306),A=r(1337),S=r(1338),w=r(1254);function x(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function P(e){for(var t=1;t"os_load-balancer_api:listener:post")),(0,_.default)(this,"onSubmit",(e=>{var t,{sni_enabled:a,ssl_parsing_method:r,default_tls_container_ref:i,client_ca_tls_container_ref:n,sni_container_refs:l,insert_headers:o}=e,s=P(P({},(0,g.default)(e,["sni_enabled","ssl_parsing_method","default_tls_container_ref","client_ca_tls_container_ref","sni_container_refs","insert_headers"])),{},{loadbalancer_id:this.containerProps.detail.id}),d=(0,w.getInsertHeadersValueFromForm)(o);(d&&(s.insert_headers=d),i&&(s.default_tls_container_ref=i.selectedRows[0].container_ref),n&&(s.client_ca_tls_container_ref=n.selectedRows[0].secret_ref,s.client_authentication="MANDATORY"),l)&&(s.sni_container_refs=(0,p.default)(t=l.selectedRows).call(t,(e=>e.container_ref)));return this.store.create(s)}))}get name(){return t("Create Listener")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.store=new I.ListenerStore,this.containersStore=new A.ContainersStore,this.secretsStore=new S.SecretsStore,this.fetchContainers(),this.fetchSecrets()}fetchContainers(){var e=this;return(0,v.default)((function*(){yield e.containersStore.fetchList(),e.updateDefaultValue()}))()}fetchSecrets(){var e=this;return(0,v.default)((function*(){yield e.secretsStore.fetchList({mode:"CA"}),e.updateDefaultValue()}))()}get ServerCertificate(){return this.containersStore.list.data||[]}get CaCertificate(){return this.secretsStore.list.data||[]}get SNICertificate(){var e;return(0,m.default)(e=this.containersStore.list.data||[]).call(e,(e=>!!e.domain))}get isEdit(){return!1}get nameForStateUpdate(){return["protocol","ssl_parsing_method","sni_enabled"]}get defaultValue(){return{ssl_parsing_method:"one-way",sni_enabled:!1,connection_limit:-1,admin_state_up:!0}}get formItems(){var e,{protocol:a,ssl_parsing_method:r,sni_enabled:i}=this.state,n=(0,w.getListenerInsertHeadersFormItem)();return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"description",label:t("Description"),type:"textarea"},{name:"protocol",label:t("Protocol"),type:"select",options:w.listenerProtocols,required:!0,disabled:this.isEdit},{name:"ssl_parsing_method",label:t("SSL Parsing Method"),type:"select",options:w.sslParseMethod,required:!0,display:"TERMINATED_HTTPS"===a},{name:"default_tls_container_ref",label:t("Server Certificate"),type:"select-table",required:!0,data:this.ServerCertificate,isLoading:this.containersStore.list.isLoading,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,w.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a},{name:"client_ca_tls_container_ref",label:t("CA Certificate"),type:"select-table",required:!0,data:this.CaCertificate,isLoading:this.secretsStore.list.isLoading,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,m.default)(e=(0,w.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex)),display:"TERMINATED_HTTPS"===a&&"two-way"===r},{name:"sni_enabled",label:t("SNI Enabled"),type:"switch",display:"TERMINATED_HTTPS"===a},{name:"sni_container_refs",label:t("SNI Certificate"),type:"select-table",required:!0,data:this.SNICertificate,isLoading:this.containersStore.list.isLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,w.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a&&i},{name:"protocol_port",label:t("Port"),type:"input-number",required:!0,disabled:this.isEdit},{name:"connection_limit",label:t("Connection Limit"),type:"input-number",min:-1,extra:t("-1 means no connection limit"),required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the listener.")},n]}}a.Create=C,(0,_.default)(C,"id","create_listener"),(0,_.default)(C,"title",t("Create Listener")),(0,_.default)(C,"policy","os_load-balancer_api:listener:post"),(0,_.default)(C,"allowed",(e=>h.default.resolve("ACTIVE"===e.provisioning_status)));var E=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=E},1643:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3958)),l=i(a(3960)),o=i(a(3961)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},1644:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3965)),l=i(a(3966)),o=i(a(3967)),s=i(a(1645)),d={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[]}};t.default=d},1645:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(164)),m=f(r(234)),h=f(r(54)),v=f(r(28)),g=f(r(32)),_=f(r(431)),b=f(r(77)),y=f(r(63)),I=f(r(49)),A=f(r(58)),S=f(r(35)),w=f(r(570)),x=r(412),P=r(1241),C=f(r(622)),E=f(r(419)),D=f(r(340)),k=r(354),R=r(565);function N(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function j(e){for(var t=1;t{(0,w.default)(e,"portOrRange")&&this.setState({sourcePort:""},(()=>{this.updateDefaultValue()})),(0,w.default)(e,"remoteType")&&this.setState({remote_ip_prefix:"",remote_group_id:""},(()=>{this.updateDefaultValue()})),this.setState(j({},e))})),(0,S.default)(this,"handleDirectionChange",(e=>{this.setState({direction:e})})),(0,S.default)(this,"onSubmit",((e,t)=>{var a,{match:{params:{id:r}={}}={}}=t,{sourcePort:i,protocol:n,ipProtocol:l,icmpType:o,icmpCode:s,portOrRange:d,remoteType:u}=e,c=(0,A.default)(e,["sourcePort","protocol","ipProtocol","icmpType","icmpCode","portOrRange","remoteType"]),f=(0,p.default)(a=["custom_udp","custom_tcp"]).call(a,n)&&"range"===d,h=i.split(":"),v="custom_protocol"!==n?this.defaultRules[n].ip_protocol:l,g=j({security_group_id:r||this.item.id,port_range_min:"custom_icmp"===n?o:f?(0,m.default)(h[0],10):null,port_range_max:"custom_icmp"===n?s:f?(0,m.default)(h[1]||h[0],10):null,protocol:v},c);return(0,p.default)(n).call(n,"all")&&(delete g.remote_ip_prefix,delete g.remote_group_id),this.store.create(g)})),this.state={protocol:this.protocolList[0].value,portOrRange:"range",remoteType:"cidr",direction:"ingress",ipProtocol:"ah"}}get name(){return t("Create rule")}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=C.default,this.groupStore=E.default,this.projectStore=D.default,this.getAllGroups(),this.getQuota()}get messageHasItemName(){return!1}getAllGroups(){var e=this;return(0,I.default)((function*(){var t=yield E.default.fetchList();e.allGroups=(0,h.default)(t).call(t,(e=>({label:e.name,value:e.id})))}))()}static get disableSubmit(){var{neutronQuota:{security_group_rule:{left:e=0}={}}={}}=D.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,I.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{security_group_rule:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{left:r=0}=e||{},i=0===r?0:1;return[j(j({},e),{},{add:i,name:"security_group_rule",title:t("Security Group Rule")})]}get defaultRules(){return{custom_tcp:{name:t("Custom TCP Rule"),ip_protocol:"tcp"},custom_udp:{name:t("Custom UDP Rule"),ip_protocol:"udp"},custom_icmp:{name:t("Custom ICMP Rule"),ip_protocol:"icmp"},all_proto:{name:t("All Proto"),ip_protocol:null},all_tcp:{name:t("All TCP"),ip_protocol:"tcp",from_port:"1",to_port:"65535"},all_udp:{name:t("All UDP"),ip_protocol:"udp",from_port:"1",to_port:"65535"},all_icmp:{name:t("All ICMP"),ip_protocol:"icmp"},custom_protocol:{name:t("Other Protocol")}}}get protocolList(){var e,t=[];return(0,v.default)(e=(0,g.default)(this.defaultRules)).call(e,(e=>{t.push({value:e,label:this.defaultRules[e].name})})),t}get ruleList(){return(0,_.default)(this.defaultRules,this.settingRules)}get defaultValue(){var e,t=this.state,{protocol:a}=t,r=(0,A.default)(t,["protocol"]),{from_port:i,to_port:n}=this.ruleList[a],{sourcePort:l=""}=this.state;i&&(l=i!==n?(0,b.default)(e="".concat(i,":")).call(e,n):i);return j(j({},r),{},{protocol:a,sourcePort:l})}get formItems(){var e,a,{protocol:r,portOrRange:i,remoteType:n,direction:l}=this.state,o="custom_protocol"===r,s="custom_icmp"===r,d=(0,p.default)(e=["custom_udp","custom_tcp"]).call(e,r),u=(0,p.default)(a=["custom_udp","custom_tcp","custom_icmp"]).call(a,r),c=d&&"range"===i,f=u&&"cidr"===n,m=u&&"sg"===n;return[{name:"protocol",label:t("Protocol"),type:"select",required:!0,options:this.protocolList},{name:"direction",label:t("Direction"),type:"select",required:!0,options:[{value:"ingress",label:t("Ingress")},{value:"egress",label:t("Egress")}],onChange:this.handleDirectionChange},{name:"ethertype",label:t("Ether Type"),type:"select",required:!0,options:[{value:"IPv4",label:t("IPv4")},{value:"IPv6",label:t("IPv6")}]},{name:"portOrRange",label:t("Port Type"),type:"select",required:d,options:[{value:"all",label:t("All Port")},{value:"range",label:t("Custom")}],hidden:!d},{name:"sourcePort",label:"egress"===l?t("Destination Port/Port Range"):t("Source Port/Port Range"),type:"port-range",required:c,hidden:!c,extra:"egress"===l&&t("Input destination port or port range (example: 80 or 80:160)")},{name:"ipProtocol",label:t("IP Protocol"),type:"select-input",options:k.ipProtocols,required:o,hidden:!o,formRef:this.formRef,help:t("Please input protocol number if it absent in select list.")},{name:"icmpType",label:t("ICMP Type"),type:"input-int",min:0,max:255,required:!1,hidden:!s,help:t("Please input ICMP type(0-255)")},{name:"icmpCode",label:t("ICMP Code"),type:"input-int",min:0,max:255,required:!1,hidden:!s,help:t("Please input ICMP code(0-255)")},{name:"remoteType",label:t("Remote Type"),type:"select",required:u,options:[{value:"cidr",label:t("cidr")},{value:"sg",label:t("Security Group")}],hidden:!u},{name:"remote_ip_prefix",label:t("Remote IP Prefix"),type:"input",hidden:!f,required:f,validator:f?R.cidrAllValidate:null,placeholder:t("Please input IPv4 or IPv6 cidr"),extra:t("Please input IPv4 or IPv6 cidr, (e.g. 192.168.0.0/24, 2001:DB8::/48)")},{name:"remote_group_id",label:t("Remote Security Group"),type:"select",required:m,hidden:!m,options:this.allGroups}]}}a.Create=M,(0,S.default)(M,"id","create"),(0,S.default)(M,"title",t("Create Rule")),(0,S.default)(M,"policy","create_security_group_rule"),(0,S.default)(M,"allowed",(()=>y.default.resolve(!0)));var T=(0,x.inject)("rootStore")((0,x.observer)(M));a.default=T},1646:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3983)),l=i(a(3984)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]}};t.default=o},1647:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(49)),l=i(a(58)),o=i(a(35)),s=i(a(53));class d extends s.default{constructor(){super(...arguments),(0,o.default)(this,"updateParamsSortPage",((e,t,a)=>{t&&a&&(e.sort_key=t,e.sort_dir="descend"===a?"desc":"asc")}))}get paramsFuncPage(){return e=>{var{current:t,all_projects:a}=e;return(0,l.default)(e,["current","all_projects"])}}listFetchByClient(e,t){var{all_projects:a=!1}=t,r={headers:{"x-auth-all-projects":a}};if(!this.isSubResource)return this.client.list(e,r);var i=this.getFatherResourceId(t);return this.client.list(i,e,r)}detailFetchByClient(e,t,a){var{id:r}=e,{all_projects:i=!1}=a,n={headers:{"x-auth-all-projects":i}};if(!this.isSubResource)return this.client.show(r,t,n);var l=this.getFatherResourceId(e);return this.client.show(l,r,t,n)}getCountForPage(e,t,a,r){return(0,n.default)((function*(){var{metadata:e={}}=r,{total_count:t=0}=e||{};return{total:t,count:t}}))()}}t.default=d},1648:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(86)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=r(1241),b=r(412),y=r(1404),I=f(r(1360)),A=r(565);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{if(!a||!a.length)return p.default.resolve();if((0,m.default)(a).call(a,(e=>!e.value||!(A.ipValidate.isIPv4(e.value)||!A.ipValidate.isIpv6(e.value)))))return p.default.reject(t("Please input a valid ip!"));var r=(0,m.default)(a).call(a,(e=>!!(0,m.default)(a).call(a,(t=>t.value===e.value&&t.index!==e.index))));return r?p.default.reject(t("The ip address {ip} is duplicated, please modify it.",{ip:r.value})):p.default.resolve()})),(0,g.default)(this,"onSubmit",(e=>{var{masters:t=[],type:a,email:r,ttl:i}=e,n=w(w({},(0,v.default)(e,["masters","type","email","ttl"])),{},{type:a,masters:(0,h.default)(t).call(t,(e=>e.value))});return"PRIMARY"===a&&(n.email=r,n.ttl=i),this.store.create(n)}))}init(){this.store=I.default}static get modalSize(){return"small"}get name(){return t("Create Zone")}static allowed(){return p.default.resolve(!0)}get defaultValue(){return{ttl:3600,type:y.ZONE_TYPE_ENUM.primary}}get nameForStateUpdate(){return["type"]}get formItems(){var{type:e=y.ZONE_TYPE_ENUM.primary}=this.state,a=e===y.ZONE_TYPE_ENUM.primary;return[{name:"name",label:t("Name"),type:"input",required:!0,extra:y.zoneNameMessage,validator:y.validateZoneName},{name:"description",label:t("Description"),type:"textarea"},{name:"type",label:t("Type"),type:"select",options:y.zoneTypeOptions,tip:t("Primary is controlled by Designate, Secondary zones are slaved from another DNS Server.")},{name:"email",label:t("Email Address"),type:"input",required:a,hidden:!a,validator:A.emailValidate,extra:t("Email for the zone. Used in SOA records for the zone.")},{name:"ttl",label:t("TTL"),type:"input-number",min:0,required:a,hidden:!a,extra:t("TTL (Time to Live) for the zone.")},{name:"masters",label:t("Masters"),type:"add-select",isInput:!0,placeholder:t("Please input ip address"),tip:t("Mandatory for secondary zones. The servers to slave from to get DNS information."),minCount:1,hidden:a,required:!a,validator:this.validateMasters}]}}a.Create=x,(0,g.default)(x,"id","create_zone"),(0,g.default)(x,"title",t("Create Zone")),(0,g.default)(x,"policy","create_zone");var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},1649:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(28)),m=f(r(77)),h=f(r(63)),v=f(r(58)),g=f(r(35)),_=r(1241),b=r(412),y=f(r(1361)),I=r(1405);function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t{var{detail:t}=this.containerProps,{id:a}=t||this.item,{records:r}=e,i=(0,v.default)(e,["records"]),n=[];(0,p.default)(r).call(r,(e=>{n.push(e.value)}));var l=S({records:n},i);return this.store.create({id:a},l)}))}init(){var e,a;this.store=y.default,this.state=S(S({},this.state),{},{nameExtra:(0,m.default)(e="".concat(t("Exp: "))).call(e,I.DNS_RECORD_TYPE.A.nameExtra),recordsExtra:(0,m.default)(a="".concat(t("Exp: "))).call(a,I.DNS_RECORD_TYPE.A.recordsExtra)})}get name(){return t("Create Record Set")}static allowed(){return h.default.resolve(!0)}get defaultValue(){return{ttl:3600,type:"A"}}get formItems(){return(0,I.getRecordSetFormItem)(this,this.currentFormValue)}}a.Create=w,(0,g.default)(w,"id","create-record-set"),(0,g.default)(w,"title",t("Create Record Set")),(0,g.default)(w,"policy","create_recordset");var x=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=x},1650:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3994)),l=i(a(3995)),o=i(a(1649)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default}]},primaryActions:[o.default],batchActions:[l.default]};t.default=s},1651:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1652)),l=i(a(4e3)),o=i(a(4001)),s={actionConfigs:{rowActions:{firstAction:i(a(4002)).default,moreActions:[{action:o.default},{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=s},1652:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var p=f(r(63)),m=f(r(28)),h=f(r(29)),v=f(r(164)),g=f(r(86)),_=f(r(54)),b=f(r(49)),y=f(r(58)),I=f(r(35)),A=r(412),S=r(1241),w=f(r(1341)),x=f(r(1294)),P=f(r(575)),C=f(r(233)),E=f(r(582)),D=r(1362),k=r(1473),R=r(1258),N=r(36),j=r(571);function M(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function T(e){for(var t=1;t{var{ingressPolicy:t={},egressPolicy:a={},options:{admin_state_up:r=!0,shared:i=!1}={},ports:n={}}=e,l=(0,y.default)(e,["ingressPolicy","egressPolicy","options","ports"]),o=t.selectedRowKeys&&t.selectedRowKeys[0],s=a.selectedRowKeys&&a.selectedRowKeys[0],d=T({admin_state_up:r,shared:i},l);return o&&(d.ingress_firewall_policy_id=o),s&&(d.egress_firewall_policy_id=s),n.selectedRowKeys&&(d.ports=n.selectedRowKeys),this.store.create(d)}))}init(){this.store=w.default,this.policyStore=x.default,this.routerStore=P.default,this.networkStore=C.default,this.portStore=E.default,this.getNetworks(),this.getRouters(),this.getPolicies(),this.getPorts(),(0,j.fetchNeutronQuota)(this)}get listUrl(){return this.getRoutePath("firewall")}get name(){return t("Create firewall")}static allowed(){return p.default.resolve(!0)}get disableSubmit(){return(0,j.checkQuotaDisable)(B,F)}get showQuota(){return!0}get quotaInfo(){return(0,j.getQuotaInfo)(this,B,F)}getNetworks(){this.networkStore.fetchList({isFirewall:!0})}getRouters(){this.routerStore.fetchList({isFirewall:!0})}getPolicies(){this.policyStore.fetchList()}getPorts(){var e=this;return(0,b.default)((function*(){e.portStore.fetchList({device_owner:"compute:nova",project_id:e.currentProjectId}),e.updateDefaultValue()}))()}get networks(){return(0,N.toJS)(this.networkStore.list.data||[])}get ports(){var e,a=[];return(0,m.default)(e=(0,N.toJS)(this.routerStore.list.data)||[]).call(e,(e=>{var r,i=(0,h.default)(r=e.ports).call(r,(e=>(0,v.default)(k.routerInterfaceOwners).call(k.routerInterfaceOwners,e.device_owner)));(0,m.default)(i).call(i,(a=>{var r,i;a.device_name=e.name,a.owner=t("Router"),a.network=(0,g.default)(r=this.networks).call(r,(e=>e.id===a.network_id)),a.network_name=a.network?a.network.name:"",a.name=a.id,a.ip_address=a.fixed_ips[0].ip_address,a.subnet=a.network?(0,g.default)(i=a.network.subnetDetails).call(i,(e=>e.id===a.fixed_ips[0].subnet_id)):null,a.subnet_name=a.subnet&&a.subnet.name||"-"})),a=[...a,...i]})),a}get policies(){var e,t;return(0,_.default)(e=(0,h.default)(t=this.policyStore.list.data||[]).call(t,(e=>e.firewalls.length<2))).call(e,(e=>T(T({},e),{},{key:e.id})))}get defaultValue(){return{options:{admin_state_up:!0}}}get instancePorts(){var e;return(0,_.default)(e=(0,N.toJS)(this.portStore.list.data||[])).call(e,(e=>T(T({},e),{},{name:e.name||e.id})))}get portTabs(){var e={title:t("Router Port"),key:"router",props:T(T({data:this.ports},k.tableOptions),{},{isLoading:this.routerStore.list.isLoading,isMulti:!0})};return[{title:t("Instance Port"),key:"instance",props:T(T({data:this.instancePorts},(0,R.instancePortOptions)(this)),{},{isLoading:this.portStore.list.isLoading,isMulti:!0})},e]}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},T({name:"ingressPolicy",label:t("Ingress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},D.tableOptions),T({name:"egressPolicy",label:t("Egress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},D.tableOptions),{name:"ports",label:t("Ports"),type:"tab-select-table",tabs:this.portTabs},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Admin State"),value:"admin_state_up"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateForm=L,(0,I.default)(L,"id","firewall-create"),(0,I.default)(L,"title",t("Create Firewall")),(0,I.default)(L,"path","/network/firewall/create"),(0,I.default)(L,"policy","create_firewall_group");var O=(0,A.inject)("rootStore")((0,A.observer)(L));a.default=O},1653:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1654)),l=i(a(4004)),o=i(a(1655)),s=i(a(4005)),d=i(a(4006)),u={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:s.default},{action:d.default},{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=u},1654:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(1294)),u=r(1241),c=r(1251),f=r(571),p=["firewall_policy"],m=[1];class h extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a,options:{shared:r,audited:i}={}}=e,n={name:t,shared:r,audited:i,description:a};return this.store.create(n)}))}get name(){return t("create firewall policy")}init(){this.store=d.default,(0,f.fetchNeutronQuota)(this)}static get disableSubmit(){return(0,f.checkQuotaDisable)(p,m)}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,f.getQuotaInfo)(this,p,m)}get defaultValue(){return{options:{shared:!1,audited:!1}}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Shared"),value:"shared",disabled:!(0,c.checkPolicyRule)("update_firewall_policy:shared")},{label:t("Audited"),value:"audited"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=h,(0,o.default)(h,"id","create-simple"),(0,o.default)(h,"title",t("Create Firewall Policy")),(0,o.default)(h,"buttonText",t("Create Policy")),(0,o.default)(h,"policy","create_firewall_policy"),(0,o.default)(h,"allowed",(()=>l.default.resolve(!0)));var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},1655:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(35)),o=r(412),s=n(r(1294)),d=r(1241),u=r(1362),c=r(1251);class f extends d.ModalAction{constructor(){super(...arguments),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{name:a,options:{shared:r,audited:i}={},description:n}=e,l={name:a,audited:i,description:n};return this.canChangeShared()&&(l.shared=r),this.store.edit({id:t},l)}))}init(){this.store=s.default}get defaultValue(){var{name:e,shared:t,description:a,audited:r}=this.item;return{name:e,description:a,options:{shared:t,audited:r}}}canChangeShared(){return(0,c.checkPolicyRule)("update_firewall_policy:shared")}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Shared"),value:"shared",disabled:!this.canChangeShared()},{label:t("Audited"),value:"audited"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=f,(0,l.default)(f,"id","edit"),(0,l.default)(f,"title",t("Edit")),(0,l.default)(f,"policy","update_firewall_policy"),(0,l.default)(f,"allowed",(e=>!(0,u.isDefault)(e)&&(0,u.isMine)(e)));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},1656:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rule=void 0;var p=f(r(35)),m=f(r(58)),h=f(r(49)),v=f(r(54)),g=f(r(203)),_=f(r(91)),b=f(r(0)),y=r(412),I=f(r(1242)),A=r(1363),S=r(1307),w=r(342),x=f(r(1657));function P(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class C extends I.default{init(){this.store=new A.FirewallRuleStore}get policy(){return"get_firewall_rule"}get name(){return t("firewall rules")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?this.inDetailPage?w.emptyActionConfig:x.default.actionConfigsAdmin:this.inDetailPage?x.default.actionConfigsInDetail:x.default.actionConfigs}get adminPageHasProjectFilter(){return!0}getColumns(){var e={title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallRuleDetail")},a={title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},r={title:t("Related Policy"),dataIndex:"policies",isHideable:!0,render:e=>(0,v.default)(e).call(e,(e=>b.default.createElement("div",{key:e.id},this.getLinkRender("firewallPolicyDetail",e.name,{id:e.id})))),stringify:e=>(0,v.default)(e).call(e,(e=>e.name)).join(",")};return[e,a,...(0,g.default)(S.tableColumns).call(S.tableColumns,1,2),r,...(0,g.default)(S.tableColumns).call(S.tableColumns,2,S.tableColumns.length)]}get searchFilters(){return S.tableFilter}getData(){var e=arguments,t=this;return(0,h.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,m.default)(a,["silent"]),{detail:{firewall_rules:n=[]}={},match:l}=t.props,{path:f}=l,v=function(e){for(var t=1;t=0?(v.firewall_rules=n,yield t.store.fetchListByPolicy(v)):yield t.store.fetchList(v),t.list.silent=!1})))}))()}}a.Rule=C;var E=(0,y.inject)("rootStore")((0,y.observer)(C));a.default=E},1657:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1474)),l=i(a(1658)),o=i(a(4007)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsInDetail:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[],primaryActions:[]},actionConfigsAdmin:{rowActions:{firstAction:o.default,moreActions:[]},batchActions:[o.default],primaryActions:[]}};t.default=s},1658:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1307),u=n(r(1474));class c extends u.default{get listUrl(){return this.getRoutePath("firewall",null,{tab:"rules"})}get name(){return t("Edit rule")}static allowed(e){return l.default.resolve((0,d.isMine)(e))}}a.EditForm=c,(0,o.default)(c,"id","rule-edit"),(0,o.default)(c,"title",t("Edit Rule")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"path",(e=>"/network/firewall-rule/edit/".concat(e.id))),(0,o.default)(c,"policy","update_firewall_rule");var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},1659:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(4016)),l=i(a(4017)),o=i(a(4018)),s={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[o.default]};t.default=s},3837:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(416)),l=i(a(3838)),o=e=>(0,n.default)(l.default,e);t.default=o},3838:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1263)),l=i(a(579)),o=i(a(3839)),s=i(a(1626)),d=i(a(3842)),u=i(a(3847)),c=i(a(3849)),f=i(a(1466)),p=i(a(3858)),m=i(a(3864)),h=i(a(3872)),v=i(a(1635)),g=i(a(1395)),_=i(a(3880)),b=i(a(3895)),y=i(a(1636)),I=i(a(3907)),A=i(a(3909)),S=i(a(1640)),w=i(a(3919)),x=i(a(3928)),P=i(a(3936)),C=i(a(3962)),E=i(a(3964)),D=i(a(3968)),k=i(a(3972)),R=i(a(3978)),N=i(a(3980)),j=i(a(3982)),M=i(a(3985)),T=i(a(3987)),B=i(a(3991)),F=i(a(3996)),L=i(a(3998)),O=i(a(4008)),Q=i(a(4011)),q=i(a(4012)),V=i(a(1474)),H=i(a(1658)),U=i(a(4013)),K=i(a(1654)),G=i(a(1655)),z=i(a(1652)),J=i(a(4015)),W=i(a(4019)),Z="/network",X=[{path:Z,component:n.default,routes:[{path:"".concat(Z,"/networks"),component:o.default,exact:!0},{path:"".concat(Z,"/networks-admin"),component:s.default,exact:!0},{path:"".concat(Z,"/networks/detail/:id"),component:d.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/subnet/:id"),component:u.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/subnet/:id"),component:u.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks/detail/:networkId/subnet/:subnetId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/networks-admin/detail/:networkId/subnet/:subnetId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/instance/detail/:instanceId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/instance-admin/detail/:instanceId/port/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/router"),component:c.default,exact:!0},{path:"".concat(Z,"/router-admin"),component:c.default,exact:!0},{path:"".concat(Z,"/router/detail/:id"),component:h.default,exact:!0},{path:"".concat(Z,"/router-admin/detail/:id"),component:h.default,exact:!0},{path:"".concat(Z,"/router/:routerId/port/:id"),component:v.default,exact:!0},{path:"".concat(Z,"/router-admin/:routerId/port/:id"),component:v.default,exact:!0},{path:"".concat(Z,"/floatingip"),component:f.default,exact:!0},{path:"".concat(Z,"/floatingip-admin"),component:f.default,exact:!0},{path:"".concat(Z,"/floatingip/detail/:id"),component:p.default,exact:!0},{path:"".concat(Z,"/floatingip-admin/detail/:id"),component:p.default,exact:!0},{path:"".concat(Z,"/port"),component:g.default,exact:!0},{path:"".concat(Z,"/port-admin"),component:g.default,exact:!0},{path:"".concat(Z,"/port/detail/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/port-admin/detail/:id"),component:_.default,exact:!0},{path:"".concat(Z,"/qos-policy"),component:b.default,exact:!0},{path:"".concat(Z,"/qos-policy-admin"),component:y.default,exact:!0},{path:"".concat(Z,"/qos-policy/detail/:id"),component:I.default,exact:!0},{path:"".concat(Z,"/qos-policy-admin/detail/:id"),component:I.default,exact:!0},{path:"".concat(Z,"/topo"),component:m.default,exact:!0},{path:"".concat(Z,"/load-balancers"),component:A.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin"),component:A.default,exact:!0},{path:"".concat(Z,"/load-balancers/create"),component:S.default,exact:!0},{path:"".concat(Z,"/load-balancers/detail/:id"),component:w.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin/detail/:id"),component:w.default,exact:!0},{path:"".concat(Z,"/load-balancers/:loadBalancerId/listener/:id"),component:x.default,exact:!0},{path:"".concat(Z,"/load-balancers-admin/:loadBalancerId/listener/:id"),component:x.default,exact:!0},{path:"".concat(Z,"/certificate"),component:k.default,exact:!0},{path:"".concat(Z,"/certificate-container/detail/:id"),component:R.default,exact:!0},{path:"".concat(Z,"/certificate-secret/detail/:id"),component:N.default,exact:!0},{path:"".concat(Z,"/vpn"),component:P.default,exact:!0},{path:"".concat(Z,"/ipsec-site-connection/detail/:id"),component:C.default,exact:!0},{path:"".concat(Z,"/ipsec-site-connection-admin/detail/:id"),component:C.default,exact:!0},{path:"".concat(Z,"/vpn-admin"),component:P.default,exact:!0},{path:"".concat(Z,"/security-group"),component:E.default,exact:!0},{path:"".concat(Z,"/security-group-admin"),component:E.default,exact:!0},{path:"".concat(Z,"/security-group/detail/:id"),component:D.default,exact:!0},{path:"".concat(Z,"/security-group-admin/detail/:id"),component:D.default,exact:!0},{path:"".concat(Z,"/dns/zones"),component:T.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones"),component:T.default,exact:!0},{path:"".concat(Z,"/dns/zones/detail/:id"),component:B.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones/detail/:id"),component:B.default,exact:!0},{path:"".concat(Z,"/dns/zones/detail/:zoneId/recordsets/:id"),component:F.default,exact:!0},{path:"".concat(Z,"/dns-admin/zones/detail/:zoneId/recordsets/:id"),component:F.default,exact:!0},{path:"".concat(Z,"/dns/reverse"),component:j.default,exact:!0},{path:"".concat(Z,"/dns/reverse/detail/:id"),component:M.default,exact:!0},{path:"".concat(Z,"/firewall"),component:L.default,exact:!0},{path:"".concat(Z,"/firewall/:firewallId/port/:id"),component:Q.default,exact:!0},{path:"".concat(Z,"/firewall-admin/:firewallId/port/:id"),component:Q.default,exact:!0},{path:"".concat(Z,"/firewall-admin"),component:L.default,exact:!0},{path:"".concat(Z,"/firewall/detail/:id"),component:O.default,exact:!0},{path:"".concat(Z,"/firewall-admin/detail/:id"),component:O.default,exact:!0},{path:"".concat(Z,"/firewall-policy/detail/:id"),component:q.default,exact:!0},{path:"".concat(Z,"/firewall-policy-admin/detail/:id"),component:q.default,exact:!0},{path:"".concat(Z,"/firewall-rule/create"),component:V.default,exact:!0},{path:"".concat(Z,"/firewall-rule/edit/:id"),component:H.default,exact:!0},{path:"".concat(Z,"/firewall-rule/detail/:id"),component:U.default,exact:!0},{path:"".concat(Z,"/firewall-rule-admin/detail/:id"),component:U.default,exact:!0},{path:"".concat(Z,"/firewall/create"),component:z.default,exact:!0},{path:"".concat(Z,"/firewall-policy/add"),component:K.default,exact:!0},{path:"".concat(Z,"/firewall-policy/edit/:id"),component:G.default,exact:!0},{path:"".concat(Z,"/rbac-policies-admin"),component:J.default,exact:!0},{path:"".concat(Z,"/rbac-policies-admin/detail/:id"),component:W.default,exact:!0},{path:"*",component:l.default}]}];t.default=X},3839:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Network=void 0;var l=r(412),o=n(r(1282)),s=n(r(1626));class d extends o.default{get tabs(){var e=[{title:t("Current Project Networks"),key:"projectNetwork",component:s.default},{title:t("Shared Networks"),key:"sharedNetwork",component:s.default},{title:t("External Networks"),key:"externalNetwork",component:s.default}];return this.hasAdminRole&&e.push({title:t("All Networks"),key:"allNetwork",component:s.default}),e}}a.Network=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3840:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(233)),d=r(1251),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_network"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Network")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete network")}isCurrentProject(e){var t=u.default;return!(!(0,d.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3841:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(233)),b=r(1251),y=f(r(133)),I=r(163);function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{item:{id:t}={}}=this.props,{name:a,description:r,port_security_enabled:i}=e,n=(0,m.default)(e,["name","description","port_security_enabled"]),l={name:a,description:r,port_security_enabled:i};return this.isSystemAdmin&&(l.shared=n.shared),this.isAdminPage&&(l["router:external"]=n["router:external"]),_.default.edit({id:t},l)}))}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;t{var t=y.default;return(0,b.checkSystemAdmin)()||e.project_id===t.user.project.id?p.default.resolve(!0):p.default.resolve(!1)}));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3842:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.NetworkDetail=void 0;var p=f(r(573)),m=f(r(35)),h=r(412),v=f(r(1243)),g=r(233),_=r(571),b=f(r(1395)),y=f(r(3843)),I=f(r(3846)),A=f(r(1627));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{if(this.store.fetchDetail){var t=w(w(w({},this.params),e||{}),{},{all_projects:this.isAdminPage});this.store.fetchDetailWithAvailabilityAndUsage(w(w({},t),{},{isAdminPage:this.isAdminPage,canAddNetworkIPUsageInfo:this.canAddNetworkIPUsageInfo})).catch(this.catch)}}))}get name(){return t("network")}get policy(){return"get_network"}get listUrl(){return this.getRoutePath("network")}get actionConfigs(){return A.default}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get detailInfos(){var e=[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id"},{title:t("Status"),dataIndex:"status",valueMap:_.networkStatus},{title:t("Admin State"),dataIndex:"admin_state_up",valueRender:"yesNo"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Update At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}];return this.isAdminPage&&((0,p.default)(e).call(e,2,0,{title:t("Project Name"),dataIndex:"projectName"}),(0,p.default)(e).call(e,7,0,{title:t("DHCP Agents"),dataIndex:"dhcp_agents"})),this.canAddNetworkIPUsageInfo&&(0,p.default)(e).call(e,4,0,{title:t("Total IPs"),dataIndex:"total_ips"},{title:t("Used IPs"),dataIndex:"used_ips"}),e}get tabs(){return[{title:t("Detail"),key:"detail",component:I.default},{title:t("Subnets"),key:"subnets",component:y.default},{title:t("Ports"),key:"ports",component:b.default}]}init(){this.store=new g.NetworkStore}}a.NetworkDetail=x;var P=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=P},3843:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Subnets=void 0;var l=n(r(573)),o=n(r(35)),s=n(r(0)),d=r(412),u=n(r(1242)),c=r(417),f=n(r(1631));class p extends u.default{constructor(){super(...arguments),(0,o.default)(this,"updateFetchParams",(()=>({network_id:this.id,network:this.props.detail,all_projects:this.isAdminPage}))),(0,o.default)(this,"getColumns",(()=>{var e=[{title:t("Subnet ID/Name"),dataIndex:"name",routeName:this.getRouteName("subnetDetail"),routeParamsFunc:e=>({networkId:e.network_id,id:e.id})},{title:t("CIDR"),dataIndex:"cidr",isHideable:!0},{title:t("Gateway IP"),dataIndex:"gateway_ip",isHideable:!0},{title:t("IP Version"),dataIndex:"ip_version",isHideable:!0},{title:t("Port Count"),dataIndex:"subnetPorts",isHideable:!0,stringify:e=>(e||[]).length,render:(e,t)=>{var a=(e||[]).length;if(!a)return"-";var r=this.getLinkRender("subnetDetail",a,{id:t.id,networkId:t.network_id},{tab:"ports"});return s.default.createElement(s.default.Fragment,null,r)}},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0}];return this.canAddNetworkIPUsageInfo&&(0,l.default)(e).call(e,5,0,{title:t("Total IPs"),dataIndex:"total_ips"},{title:t("Used IPs"),dataIndex:"used_ips",titleTip:this.isAdminPage?"":t("Number of IPs used by all projects")}),e}))}init(){this.store=new c.SubnetStore}get policy(){return"get_subnet"}get name(){return t("subnets")}get id(){return this.params.id}get actionConfigs(){return f.default}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Subnets=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3844:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(133)),d=n(r(417));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_subnet"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Subnet")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete subnet")}isOwnerOrAdmin(e){var{tenant_id:t}=e;return this.isAdminPage||t===s.default.projectId}}a.default=u},3845:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.EditSubnet=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=r(565),b=f(r(417)),y=f(r(133)),I=f(r(621));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t{var{gateway_ip:t,allocation_pools:a,host_routes:r,dns:i,disable_gateway:n}=e,l=(0,m.default)(e,["gateway_ip","allocation_pools","host_routes","dns","disable_gateway"]),o=k(a),s=R(r),d=T(i),u=S(S({},l),{},{network_id:this.subnet.network_id,allocation_pools:o,host_routes:s,dns_nameservers:d});return n?u.gateway_ip=null:t&&t!==this.item.gateway_ip&&(u.gateway_ip=t),b.default.update(this.subnet,u)}))}get name(){return t("Edit Subnet")}get subnet(){return this.props.item}get defaultValue(){return S(S({},this.subnet),{},{subnet_name:this.subnet.name,allocation_pools:N(this.subnet.allocation_pools),host_routes:M(this.subnet.host_routes),dns:j(this.subnet.dns_nameservers),disable_gateway:!this.subnet.gateway_ip,gateway_ip:this.subnet.gateway_ip,more:!1})}get formItems(){var{more:e,disable_gateway:a=!this.item.gateway_ip}=this.state;return[{name:"subnet_name",label:t("Subnet Name"),type:"input-name",required:!0},{name:"cidr",label:t("CIDR"),type:"input",placeholder:"192.168.0.0/24",disabled:!0,required:!0,validator:(e,a)=>(4===this.subnet.ip_version?B(a):F(a))?p.default.resolve(!0):p.default.reject(new Error(t("Invalid CIDR."))),tip:t("It is recommended that you use the private network address 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16")},{name:"disable_gateway",label:t("Disable Gateway"),type:"check",onChange:e=>{this.setState({disable_gateway:e},(()=>{this.formRef.current.validateFields(["gateway_ip"])}))},hidden:!e},{name:"gateway_ip",label:t("Gateway IP"),type:"ip-input",version:this.subnet.ip_version,required:!a,tip:t("If no gateway is specified, the first IP address will be defaulted."),hidden:!(e&&!a)},{name:"enable_dhcp",label:t("DHCP"),type:"radio",optionType:"default",options:[{label:t("Enabled"),value:!0},{label:t("Disabled"),value:!1}],hidden:!e},{name:"allocation_pools",label:t("Allocation Pools"),type:"textarea",extra:t("IP address allocation polls, one enter per line(e.g. 192.168.1.2,192.168.1.200)"),hidden:!e,validator:4===this.subnet.ip_version?w:x},{name:"dns",label:t("DNS"),type:"textarea",extra:t("One entry per line(e.g. 114.114.114.114)"),hidden:!e,validator:4===this.subnet.ip_version?P:C},{name:"host_routes",label:t("Host Routes"),type:"textarea",extra:t("Additional routes announced to the instance, one entry per line(e.g. 192.168.200.0/24,10.56.1.254)"),hidden:!e,validator:4===this.subnet.ip_version?E:D},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.EditSubnet=L,(0,h.default)(L,"id","edit-subnet"),(0,h.default)(L,"title",t("Edit Subnet")),(0,h.default)(L,"buttonText",t("Edit")),(0,h.default)(L,"policy","update_subnet"),(0,h.default)(L,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t||{},{tenant_id:r}=e,i=a||r===y.default.projectId;return p.default.resolve(i)}));var O=(0,v.inject)("rootStore")((0,v.observer)(L));a.default=O},3846:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249)),s=r(66);class d extends o.default{get leftCards(){return[this.baseInfoCard]}get qosEndpoint(){return(0,s.qosEndpoint)()}get baseInfoCard(){var e=[{label:t("Availability Zone"),dataIndex:"availability_zones"},{label:t("Availability Zone Hints"),dataIndex:"availability_zone_hints"},{label:t("MTU"),dataIndex:"mtu"},{label:t("Router External"),dataIndex:"router:external",valueRender:"yesNo"},{label:t("Provider Network Type"),dataIndex:"provider:network_type"},{label:t("Provider Physical Network"),dataIndex:"provider:physical_network",render:e=>e||"-"},{label:t("Segmentation ID"),dataIndex:"provider:segmentation_id"},{label:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"}];return this.qosEndpoint&&e.push({label:t("QoS Policy"),dataIndex:"qos_policy_id",render:e=>e||"-"}),{title:t("Base Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3847:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SubnetDetail=void 0;var p=f(r(35)),m=r(412),h=f(r(1243)),v=r(417),g=f(r(1395)),_=f(r(3848)),b=f(r(1631));function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;tI(I({},e),{},{inDetail:!0,canAddNetworkIPUsageInfo:this.store.hasAdminRole})))}get name(){return t("subnet")}get policy(){return"get_subnet"}get listUrl(){var{networkId:e}=this.params;return this.getRoutePath("networkDetail",{id:e},{tab:"subnets"})}get actionConfigs(){return b.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id"},{title:t("CIDR"),dataIndex:"cidr"},{title:t("IP Version"),dataIndex:"ip_version"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Update At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:_.default},{title:t("Ports"),key:"ports",component:g.default}]}init(){this.store=new v.SubnetStore}}a.SubnetDetail=A;var S=(0,m.inject)("rootStore")((0,m.observer)(A));a.default=S},3848:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(77)),s=n(r(0)),d=r(412),u=n(r(1249));class c extends u.default{get leftCards(){var e=[this.networkCard,this.baseInfoCard];return this.canAddNetworkIPUsageInfo&&e.push(this.ipUsageCard),e}get canAddNetworkIPUsageInfo(){return this.store.hasAdminRole}get networkCard(){var e=[{label:t("Network Name"),dataIndex:"network.name"},{label:t("Network ID"),dataIndex:"network.id",render:e=>this.getLinkRender("networkDetail",e,{id:e})}];return{title:t("Network Info"),options:e}}get baseInfoCard(){var e=[{label:t("Gateway IP"),dataIndex:"gateway_ip"},{label:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t,a=(0,l.default)(t=e||[]).call(t,(e=>{var t,{start:a,end:r}=e;return s.default.createElement("div",{key:(0,o.default)(t="".concat(a,"-")).call(t,r)},a," - ",r)}));return s.default.createElement(s.default.Fragment,null,a)}},{label:t("Enable DHCP"),dataIndex:"enable_dhcp",valueRender:"yesNo"},{label:t("Host Routes"),dataIndex:"host_routes",render:e=>{if(!e.length)return"-";var t=(0,l.default)(e).call(e,(e=>{var t,{destination:a,nexthop:r}=e;return s.default.createElement("div",{key:(0,o.default)(t="".concat(a,",")).call(t,r)},a,",",r)}));return s.default.createElement(s.default.Fragment,null,t)}},{label:t("DNS Nameservers"),dataIndex:"dns_nameservers",render:e=>{if(!e.length)return"-";var t=(0,l.default)(e).call(e,(e=>s.default.createElement("div",{key:e},e)));return s.default.createElement(s.default.Fragment,null,t)}}];return{title:t("Base Info"),options:e}}get ipUsageCard(){if(!this.canAddNetworkIPUsageInfo)return null;var e=[{label:t("Total IPs"),dataIndex:"total_ips"},{label:t("Used IPs"),dataIndex:"used_ips"}];return{title:t("IP Usage"),options:e}}}a.BaseDetail=c;var f=(0,d.inject)("rootStore")((0,d.observer)(c));a.default=f},3849:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Routes=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=r(1267),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=m(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(575)),p=o(r(1632));function m(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(m=function(e){return e?a:t})(e)}class h extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>(0,c.getRouterColumns)(this)))}init(){this.store=this.inDetailPage?new f.RouterStore:f.default,this.downloadStore=new f.RouterStore}get policy(){return"get_router"}get name(){return t("routers")}get actionConfigs(){return this.isAdminPage?p.default.adminConfigs:p.default.actionConfigs}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"status"}get searchFilters(){return c.routerFilters}}a.Routes=h;var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3850:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(232)),s=n(r(91)),d=n(r(49)),u=n(r(35)),c=n(r(92)),f=r(1241),p=n(r(575));class m extends f.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_router"),(0,u.default)(this,"submitErrorMsg",(e=>{var a=this.getName(e);return this.connectSubnets?t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.actionName||this.title,name:a,reason:t("the router has connected subnet")}):t("Unable to {action}, instance: {name}.",{action:this.actionName||this.title,name:a})})),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.notExternalGateway(e))),(0,u.default)(this,"performErrorMsg",(e=>{var a=(0,c.default)(e)?e[0]:e,{name:r}=a,i=t('You are not allowed to delete router "{ name }".',{name:r});return this.notExternalGateway(a)||(i=t('Unable to delete router "{ name }". External gateway is opened, please clear external gateway first.',{name:r})),i})),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a,r,i){if(i)return p.default.delete(a);var n=yield p.default.fetchConnectedSubnets(e.item);return n.connectSubnets.length?(e.connectSubnets=n.connectSubnets,e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:e.item.name,reason:t("the router has connected subnet")}),l.default.reject()):(e.showConfirmErrorBeforeSubmit=!1,p.default.delete(a))}));return function(e,t,r){return a.apply(this,arguments)}}())}get id(){return"delete"}get title(){return t("Delete Router")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete router")}notAssociatedNet(e){if(!e.ports||0===e.ports.length)return!0;var t,a=["network:router_interface_distributed","network:router_interface","network:ha_router_replicated_interface"];return!(e.ports.length>0)||!(0,o.default)(t=e.ports).call(t,(e=>(0,s.default)(a).call(a,e.device_owner)>-1))}notExternalGateway(e){return!e.hasExternalGateway}}a.default=m},3851:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(575)),u=r(1241);class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return d.default.edit({id:t},e)}))}init(){this.store=d.default}get defaultValue(){var{item:e}=this.props;return{name:e.name,description:e.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name"),withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-router"),(0,o.default)(c,"title",t("Edit Router")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_router"),(0,o.default)(c,"allowed",(e=>l.default.resolve("Default Router"!==e.name)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3852:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_router"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.hasGateway(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e;return s.default.edit({id:t},{external_gateway_info:null})}))}get id(){return"clear-gateway"}get title(){return t("Close External Gateway")}get buttonText(){return t("Close External Gateway")}get actionName(){return t("Close external gateway")}hasGateway(e){return e.hasExternalGateway}}a.default=d},3853:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SetGateway=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=f(r(575)),g=r(233),_=r(1241),b=r(571);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{externalNetwork:t}=e,{id:a}=this.item,r={external_gateway_info:{network_id:t.selectedRowKeys[0]}};return this.store.edit({id:a},r)}))}init(){this.store=v.default,this.networkStore=new g.NetworkStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("open external gateway")}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"router"},I({name:"externalNetwork",label:t("External Gateway"),type:"select-table",backendPageStore:this.networkStore,extraParams:{"router:external":!0},required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:b.networkStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime",sorter:!1}]},b.networkSortProps)]}}a.SetGateway=A,(0,m.default)(A,"id","set-gateway"),(0,m.default)(A,"title",t("Open External Gateway")),(0,m.default)(A,"policy","update_router"),(0,m.default)(A,"allowed",(e=>p.default.resolve(!e.external_gateway_info)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3854:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ConnectSubnet=void 0;var l=n(r(91)),o=n(r(28)),s=n(r(77)),d=n(r(63)),u=n(r(35)),c=r(412),f=r(36),p=r(575),m=n(r(417)),h=r(582),v=r(1241);class g extends v.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"getSubnets",(()=>{var{networkId:e}=this.state;e&&this.subnetStore.fetchList({network_id:e})})),(0,u.default)(this,"onNetworkChange",(e=>{var{selectedRowKeys:t=[]}=e;this.setState({networkId:t[0]},(()=>{this.getSubnets()}))})),(0,u.default)(this,"disabledFuncSubnet",(e=>{var t,{allocation_pools:a=[]}=e;return 0===a.length||(0,l.default)(t=this.excludeSubnetIds).call(t,e.id)>=0})),(0,u.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{subnet:a}=e,r=a.selectedRowKeys[0],{networkId:i}=this.state;return this.store.connectSubnet({id:t,subnetId:r,networkId:i})}))}init(){this.store=new p.RouterStore,this.subnetStore=m.default,this.portStore=new h.PortStore,this.getPortList()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("connect subnet")}get subnets(){var{networkId:e}=this.state;return e?(0,f.toJS)(this.subnetStore.list.data||[]):[]}getPortList(){var{id:e}=this.item;this.portStore.fetchList({device_id:e})}get excludeSubnetIds(){var e,t=[];return(0,o.default)(e=(0,f.toJS)(this.portStore.list.data||[])).call(e,(e=>{var a;(0,o.default)(a=e.fixed_ips).call(a,(e=>{t.push(e.subnet_id)}))})),t}get formItems(){var{networkId:e}=this.state;return[{name:"name",label:t("Name"),type:"label",iconType:"router"},{name:"network",label:t("Network"),type:"network-select-table",required:!0,onChange:this.onNetworkChange},{name:"subnet",label:t("Subnet"),type:"select-table",data:this.subnets,isLoading:e&&this.subnetStore.list.isLoading,disabledFunc:this.disabledFuncSubnet,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Cidr"),dataIndex:"cidr"},{title:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t;return e&&0!==e.length?(0,s.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end):"-"}},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.ConnectSubnet=g,(0,u.default)(g,"id","connect-subnet"),(0,u.default)(g,"title",t("Connect Subnet")),(0,u.default)(g,"policy","add_router_interface"),(0,u.default)(g,"allowed",(()=>d.default.resolve(!0)));var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3855:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DisconnectSubnet=void 0;var l=n(r(28)),o=n(r(91)),s=n(r(63)),d=n(r(54)),u=n(r(350)),c=n(r(591)),f=n(r(86)),p=n(r(77)),m=n(r(49)),h=n(r(35)),v=r(412),g=r(36),_=r(575),b=n(r(233)),y=n(r(417)),I=r(582),A=r(1241);class S extends A.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{subnet:a}=e,r=a.selectedRowKeys[0];return this.store.disconnectSubnet({id:t,subnetId:r})}))}init(){this.store=new _.RouterStore,this.networkStore=b.default,this.subnetStore=y.default,this.portStore=new I.PortStore,this.getSubnetList(),this.state.subnetLoading=!0}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("disconnect subnet")}getSubnetList(){var e=this;return(0,m.default)((function*(){var t,a,r,{id:i}=e.item;yield e.portStore.fetchList({device_id:i});var n=[],p=[],m=["network:router_interface_distributed","network:router_interface","network:ha_router_replicated_interface"];(0,l.default)(t=(0,g.toJS)(e.portStore.list.data||[])).call(t,(e=>{var t;(0,o.default)(m).call(m,e.device_owner)>-1&&(p.push(e.network_id),(0,l.default)(t=e.fixed_ips).call(t,(e=>{n.push(e.subnet_id)})))}));var h=yield s.default.all((0,d.default)(a=(0,u.default)(new c.default(n))).call(a,(t=>e.subnetStore.fetchDetail({id:t})))),v=yield s.default.all((0,d.default)(r=(0,u.default)(new c.default(p))).call(r,(t=>e.networkStore.fetchDetail({id:t}))));(0,l.default)(h).call(h,(e=>{var t=(0,f.default)(v).call(v,(t=>t.id===e.network_id));e.network=t})),e.setState({subnets:(0,d.default)(h).call(h,(e=>(0,g.toJS)(e))),subnetLoading:!1})}))()}get formItems(){var{subnets:e=[],subnetLoading:a}=this.state;return[{name:"name",label:t("Name"),type:"label",iconType:"router"},{name:"subnet",label:t("Subnet"),type:"select-table",data:e,isLoading:a,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Network"),dataIndex:"network",render:e=>e&&e.name||"-"},{title:t("Cidr"),dataIndex:"cidr"},{title:t("Allocation Pools"),dataIndex:"allocation_pools",render:e=>{var t;return e&&0!==e.length?(0,p.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end):"-"}},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.DisconnectSubnet=S,(0,h.default)(S,"id","disconnect-subnet"),(0,h.default)(S,"title",t("Disconnect Subnet")),(0,h.default)(S,"policy","remove_router_interface"),(0,h.default)(S,"allowed",(()=>s.default.resolve(!0)));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3856:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["update_router","update_router:external_gateway_info","update_router:external_gateway_info:network_id","update_router:external_gateway_info:enable_snat"]),(0,l.default)(this,"allowedCheckFunc",(e=>(null==e?void 0:e.external_gateway_info)&&!e.external_gateway_info.enable_snat)),(0,l.default)(this,"onSubmit",(e=>{var{id:t,external_gateway_info:{network_id:a}}=e,r={external_gateway_info:{network_id:a,enable_snat:!0}};return s.default.edit({id:t},r)}))}get id(){return"enable-snat"}get title(){return t("Enable SNAT")}get actionName(){return t("Enable SNAT")}}a.default=d},3857:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(575));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["update_router","update_router:external_gateway_info","update_router:external_gateway_info:network_id","update_router:external_gateway_info:enable_snat"]),(0,l.default)(this,"allowedCheckFunc",(e=>{var t;return null==e||null===(t=e.external_gateway_info)||void 0===t?void 0:t.enable_snat})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,external_gateway_info:{network_id:a}}=e,r={external_gateway_info:{network_id:a,enable_snat:!1}};return s.default.edit({id:t},r)}))}get id(){return"disable-snat"}get title(){return t("Disable SNAT")}get actionName(){return t("Disable SNAT")}}a.default=d},3858:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FloatingIpDetail=void 0;var l=n(r(1314)),o=r(412),s=n(r(1243)),d=r(1273),u=r(346),c=r(1393),f=n(r(1606)),p=n(r(3859)),m=n(r(3860));class h extends s.default{get name(){return t("floating ip")}get policy(){return"get_floatingip"}get listUrl(){return this.getRoutePath("fip")}get actionConfigs(){return this.isAdminPage?f.default.adminConfigs:f.default.actionConfigs}get detailInfos(){return[{title:t("Floating IP"),dataIndex:"floating_ip_address"},{title:t("Status"),dataIndex:"status",valueMap:d.floatingIpStatus},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:p.default}];return(0,c.enablePFW)()&&(0,l.default)(this.detailData.fixed_ip_address)&&e.push({title:t("Port Forwardings"),key:"port_forwarding",component:m.default}),e}init(){this.store=new u.FloatingIpStore}}a.FloatingIpDetail=h;var v=(0,o.inject)("rootStore")((0,o.observer)(h));a.default=v},3859:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(77)),m=f(r(35)),h=r(412),v=r(346),g=f(r(1249));function _(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function b(e){for(var t=1;t{var{router_id:e}=this.props.detail;e&&this.store.getAddInfo({router_id:e}).catch(this.catch)}))}init(){this.store=new v.FloatingIpStore}get isLoading(){var{router_id:e}=this.props.detail;return!!e&&this.store.isLoading}get detailData(){return b(b({},this.props.detail),{},{router_name:this.store.addInfo.name,network_name:this.store.addInfo.externalNetworkName})}get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Fixed IP"),dataIndex:"fixed_ip_address"},{label:t("Network Line"),dataIndex:"network_name"},{label:t("Router"),dataIndex:"router_id",render:(e,t)=>{if(e){var a,{router_name:r,network_name:i}=t;if("-"===r&&"-"===i)return e;var n=r?(0,p.default)(a="".concat(e," (")).call(a,r,")"):e;return this.getLinkRender("routerDetail",n,{id:e})}return"-"}}];return{title:t("Base Info"),options:e}}}a.BaseDetail=y;var I=(0,h.inject)("rootStore")((0,h.observer)(y));a.default=I},3860:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.PortForwarding=void 0;var p=f(r(164)),m=f(r(58)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(615),b=r(163),y=r(1273),I=f(r(3861));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.default{constructor(){super(...arguments),(0,h.default)(this,"updateFetchParams",(e=>{var{id:t,all_projects:a}=e,r=(0,m.default)(e,["id","all_projects"]);return function(e){for(var t=1;t[{title:t("ID"),dataIndex:"id"},{title:t("External Port/Port Range"),dataIndex:"external_port",splitColumnForDownload:!1,render:(e,t)=>e||t.external_port_range},{title:t("Internal Ip Address"),dataIndex:"internal_ip_address",isHideable:!0},{title:t("Internal Port/Port Range"),dataIndex:"internal_port",splitColumnForDownload:!1,isHideable:!0,render:(e,t)=>e||t.internal_port_range},{title:t("Protocol"),dataIndex:"protocol",isHideable:!0,valueMap:y.portForwardingProtocols},{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=new _.PortForwardingStore}get policy(){return"get_floatingip_port_forwarding"}get name(){return t("port forwardings")}get isFilterByBackend(){return!1}get actionConfigs(){return this.isAdminPage?I.default.actionConfigsAdmin:I.default.actionConfigs}get searchFilters(){return[{label:t("Protocol"),name:"protocol",options:(0,b.getOptions)(y.portForwardingProtocols)},{label:t("External Port/Port Range"),name:"external_port",filterFunc:(e,t,a)=>{var r,i,{external_port:n,external_port_range:l}=a||{};return(0,p.default)(r="".concat(n||"")).call(r,t)||(0,p.default)(i="".concat(l||"")).call(i,t)}},{label:t("Internal Ip Address"),name:"internal_ip_address",filterFunc:(e,t)=>(0,p.default)(e).call(e,t)},{label:t("Internal Port/Port Range"),name:"internal_port",filterFunc:(e,t,a)=>{var r,i,{internal_port:n,internal_port_range:l}=a||{};return(0,p.default)(r="".concat(n||"")).call(r,t)||(0,p.default)(i="".concat(l||"")).call(i,t)}},{label:t("Description"),name:"description"}]}}a.PortForwarding=S;var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3861:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1467)),l=i(a(3862)),o=i(a(3863)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default},batchActions:[],primaryActions:[]}};t.default=s},3862:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(29)),m=f(r(54)),h=f(r(164)),v=f(r(86)),g=f(r(431)),_=f(r(58)),b=f(r(49)),y=f(r(35)),I=r(412),A=f(r(615)),S=f(r(572)),w=r(1267),x=r(1273),P=r(1258),C=r(1467);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;tA.default.edit({fipId:this.fipId,id:this.item.id},e))),(0,y.default)(this,"checkPortUsedBase",((e,t,a,r)=>{var{external_port:i,internal_port:n,external_port_range:l,internal_port_range:o}=e,s="external"===t?l:o;if(s){var[d,u]=this.getRangeFromString(s);return a>=d&&a<=u&&e.protocol===r}var c="external"===t?i:n;return this.item.id!==e.id&&a===c&&e.protocol===r})),(0,y.default)(this,"checkPortUsedInternal",((e,t)=>{if(!e)return!1;var a=this.formRef.current.getFieldsValue(["virtual_adapter","fixed_ip_address"]),r=a.fixed_ip_address.selectedRows[0].fixed_ip_address,i=a.virtual_adapter.selectedRows[0].id;return this.item.id!==t.id&&t.internal_port_id===i&&t.internal_ip_address===r}))}get name(){return t("Edit Port Forwarding")}get instanceName(){var{floating_ip_address:e}=this.item;return(0,x.getPortForwardingName)(this.item,e)}get tips(){return""}get fipId(){return this.item.fip.id}getExtraInfo(){w.getCanReachSubnetIdsWithRouterIdInComponent.call(this,(e=>{var{item:{fip:t}}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id})).then((()=>{this.getInitialPortFixedIPs()}))}getInitialPortFixedIPs(){var e=this;return(0,b.default)((function*(){e.setState({fixedIpLoading:!0});var{internal_port_id:t,internal_ip_address:a}=e.item,r=yield S.default.fetchDetail({id:t});return e.handlePortSelect({selectedRows:[r]}).then((t=>{var i=(0,p.default)(t).call(t,(e=>e.fixed_ip_address===a)),n={selectedRowKeys:(0,m.default)(i).call(i,(e=>e.id)),selectedRows:i};return e.updateFormValue("virtual_adapter",{selectedRowKeys:[r.id],selectedRows:[r]}),n})).then((t=>{e.setState({fixed_ip_address:t})}))}))()}get defaultValue(){var e=this.item,{floating_ip_address:t,fip:a,internal_port_id:r,internal_ip_address:i}=e;return D({floatingIp:t,virtual_adapter:{selectedRowKeys:[r]},fixed_ip_address:{selectedRowKeys:[i],selectedRows:[{fixed_ip_address:i}]}},(0,_.default)(e,["floating_ip_address","fip","internal_port_id","internal_ip_address"]))}getSubmitData(e){var t,a,{floatingIp:r,virtual_adapter:{selectedRows:i=[]}={},fixed_ip_address:{selectedRows:n=[]}={},external_port:l,internal_port:o}=e,s=D({},(0,_.default)(e,["floatingIp","virtual_adapter","fixed_ip_address","external_port","internal_port"]));return(0,h.default)(t=l.toString()).call(t,":")?s.external_port_range=l:s.external_port=l,(0,h.default)(a=o.toString()).call(a,":")?s.internal_port_range=o:s.internal_port=o,s.internal_ip_address=n[0].fixed_ip_address,s.internal_port_id=i[0].id,s}get formItems(){var e=super.formItems;if(this.supportRange)return e;var a=(0,v.default)(e).call(e,(e=>"external_port"===e.name)),r=(0,v.default)(e).call(e,(e=>"internal_port"===e.name));a.label=t("External Port"),r.label=t("Internal Port");var i={type:"input-int",min:1,max:65535,extra:t("Enter an integer value between 1 and 65535."),hasRequiredCheck:!0};return(0,g.default)(a,i,{placeholder:t("Please input {label}",{label:a.label})}),(0,g.default)(r,i,{placeholder:t("Please input {label}",{label:r.label})}),e}}a.Edit=k,(0,y.default)(k,"id","edit"),(0,y.default)(k,"title",t("Edit")),(0,y.default)(k,"policy","update_floatingip_port_forwarding"),(0,y.default)(k,"allowed",(()=>!0));var R=(0,I.inject)("rootStore")((0,I.observer)(k));a.default=R},3863:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(615)),d=r(1273);class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_floatingip_port_forwarding"),(0,l.default)(this,"getItemName",(e=>(0,d.getPortForwardingName)(e,e.floating_ip_address))),(0,l.default)(this,"onSubmit",(e=>{var{fip:t,id:a}=e,r=t.id;return s.default.delete({floatingipId:r,id:a})}))}get id(){return"delete"}get title(){return t("Delete Port Forwarding")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete port forwarding")}}a.default=u},3864:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Topology=a.errorStrokeColor=a.errorShadowColor=a.activeShadowColor=void 0;var p=f(r(164)),m=f(r(28)),h=f(r(422)),v=f(r(91)),g=f(r(54)),_=f(r(77)),b=f(r(29)),y=f(r(345));r(347);var I=f(r(348));r(1280);var A=f(r(1281));r(584);var S=f(r(420));r(231);var w=f(r(341)),x=f(r(1584)),P=f(r(49)),C=f(r(35)),E=f(r(0)),D=(r(161),f(r(3865))),k=f(r(3866)),R=(r(564),r(412)),N=f(r(233)),j=r(3867),M=f(r(1388)),T=r(565),B=r(36),F=r(571),L=f(r(1471)),O=f(r(1633)),Q=f(r(1628)),q=f(r(1304)),V=f(r(3869)),H=f(r(1634));function U(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function K(e){for(var t=1;t{G.on("node:mouseenter",(e=>{var t,{item:a}=e,{nodeType:r}=a._cfg.model;if((0,p.default)(t=["router","ins","lb"]).call(t,r)){var i,n=G.findAllByState("node","hover");(0,m.default)(n).call(n,(e=>{G.setItemState(e,"hover",!1)})),G.setItemState(a,"hover",!0);var l=G.findAllByState("edge","hover");(0,m.default)(l).call(l,(e=>{G.setItemState(e,"hover",!1),G.updateItem(e,{style:{stroke:e._cfg.target._cfg.model.style.stroke}})}));var o=a._cfg.model.style.stroke;(0,m.default)(i=a._cfg.edges).call(i,(e=>{G.setItemState(e,"hover",!0),G.updateItem(e,{style:{stroke:o}})}))}}))})),(0,C.default)(this,"updateGraph",(()=>{G&&(G.clear(),G.destroy(),G=null),this.setState({firstSubnetY:290,nodeCard:[],lbCard:[],insCard:[],extendWidth:0,loading:!0,withoutServerData:null,allData:null,showAll:!0}),this.initTopo()})),(0,C.default)(this,"renderRouterNode",((e,t)=>{var{routers:a}=this.topoInfo,r=[];if((0,m.default)(a).call(a,((a,i)=>{var{id:n,external_gateway_info:l,subnets:o,name:s}=a,d=(0,h.default)((t/10*i+t/20*3).toFixed(0));if(r.push({nodeCardX:d,nodeCardY:190}),e.nodes.push({id:n,x:d,y:190,type:"rect",nodeType:"router",infoIndex:i,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"ACTIVE"===a.status?globalCSS.successColor:Z,shadowColor:"ACTIVE"===a.status?J:W,shadowBlur:"ACTIVE"===a.status?5:4},anchorPoints:[[.5,0]]}),null!==l&&e.edges.push({id:"edge-".concat(s,"-ext"),target:"extNet",targetAnchor:1,source:n,sourceAnchor:0,type:"arrowLine",style:{stroke:j.subnetsColors[0][0]}}),0!==o.length){var u=0;(0,m.default)(o).call(o,(t=>{var a,r,i=(0,v.default)(a=(0,g.default)(r=e.subnetNodes).call(r,(e=>e.id))).call(a,t);if(-1!==i){var l,{style:{stroke:o}}=e.subnetNodes[i];u+=1,e.edges.push({id:(0,_.default)(l="edge-".concat(s,"-")).call(l,t),target:t,targetAnchor:0,source:n,sourceAnchor:u,type:"arrowLine",style:{stroke:o}})}})),e.nodes[e.nodes.length-1].anchorPoints=this.getAnchorPoints(1,u)}})),r[0]){var i=r[r.length-1].nodeCardX,{extendWidth:n}=this.state;if(i>=t-5){var l=Math.ceil((i-(t-5))/(t/10));this.setState({extendWidth:n+l*(t/10)})}this.setState({nodeCard:r})}})),(0,C.default)(this,"renderNetworkNode",((e,t)=>{var{subnets:a,networks:r}=this.topoInfo,{extendWidth:i}=this.state;e.subnetNodes=[],(0,m.default)(r).call(r,(r=>{if(!(0,F.isExternalNetwork)(r)){var n,l=[],{firstSubnetY:o}=this.state;(0,m.default)(n=r.subnets).call(n,(e=>{(0,m.default)(a).call(a,(t=>{t.id===e&&l.push(t)}))}));var s=o+32*l.length+60;(0,m.default)(l).call(l,((a,n)=>{var l=j.subnetsColors[0],d=l[n%l.length];e.subnetNodes.push({id:a.id,label:a.name,labelCfg:{position:"right",offset:-t/2,style:{fill:"#000000"}},type:"rect",x:t/2,y:o+32*n,cardY:s,anchorPoints:[[.5,0],[.5,1]],comboId:r.id,style:{radius:4,fill:d,stroke:d,width:t+i-50,height:20},pools:a.allocation_pools,networkId:a.network_id})})),0!==l.length&&(this.setState({firstSubnetY:e.subnetNodes[e.subnetNodes.length-1].y+200}),e.combos.push({id:r.id,label:r.name,type:"rect",size:[t-40,30],style:{fill:j.combosBackground[0],stroke:j.combosColors[0],radius:4},labelCfg:{refY:1,position:"top",style:{fontSize:12}}}))}}))})),(0,C.default)(this,"renderInstanceNode",((e,a)=>{var{servers:r,subnets:i,extNetwork:n}=this.topoInfo,l=[];(0,m.default)(r).call(r,((r,o)=>{var s,{fixed_addresses:d,fixed_networks:u}=r,c=(0,h.default)((a/10*2).toFixed(0)),f=null,p=0,g=[];(0,m.default)(n).call(n,(e=>g.push(...(0,B.toJS)(e.subnets))));var y=(0,b.default)(i).call(i,(e=>-1!==(0,v.default)(g).call(g,e.id)));if(!d[0]){var{insCard:I}=this.state;f=e.subnetNodes[0].cardY,(0,m.default)(I).call(I,(e=>{e[0]===c&&e[1]===f&&(c+=(0,h.default)((a/10).toFixed(0))),Math.round(c)>=a+this.state.extendWidth&&this.setState((e=>({extendWidth:e.extendWidth+(0,h.default)((a/10).toFixed(0))})))})),l.push([c,f]),e.nodes.push({id:r.id,x:c,y:f,type:"rect",nodeType:"ins",infoIndex:o,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"active"===r.vm_state?globalCSS.successColor:Z,shadowColor:"active"===r.vm_state?J:W,shadowBlur:"active"===r.vm_state?5:4}})}var A=0;(0,m.default)(d).call(d,(i=>{var n,s=null,d=0;if((0,m.default)(y).call(y,(e=>{var t;(0,m.default)(t=e.allocation_pools).call(t,(e=>{z(i,e.start,e.end)&&(s="extNet",d=0)}))})),(0,m.default)(n=e.subnetNodes).call(n,((e,t)=>{var a;-1!==(0,v.default)(u).call(u,e.networkId)&&(0,m.default)(a=e.pools).call(a,(a=>{z(i,a.start,a.end)&&(s=e.id,d=t)}))})),e.nodes[e.nodes.length-1].id!==r.id&&s){var{insCard:g}=this.state;f=e.subnetNodes[d].cardY,(0,m.default)(g).call(g,(e=>{e[0]===c&&e[1]===f&&(c+=(0,h.default)((a/10).toFixed(0))),c>=a+this.state.extendWidth&&this.setState((e=>({extendWidth:e.extendWidth+a/10})))})),l.push([c,f]),e.nodes.push({id:r.id,x:c,y:f,type:"rect",nodeType:"ins",infoIndex:o,size:[66,56],style:{radius:4,fill:"#FFFFFFFF",stroke:"active"===r.vm_state?globalCSS.successColor:Z,shadowColor:"active"===r.vm_state?J:W,shadowBlur:"active"===r.vm_state?5:4}})}s&&function(){var n,{style:{stroke:o}}=e.subnetNodes[d],u=e.subnetNodes[d].y;ue.source!==r.id&&e.linePath&&e.linePath.source_x===c&&e.topAnchorNum===p&&(e.linePath.source_y>=f&&e.linePath.target_y<=u||e.linePath.source_y<=f&&e.linePath.target_y>=u))),I=(0,b.default)(g=e.nodes).call(g,(e=>e.x===c&&e.y===f&&e.id!==r.id));if(0===y.length&&0===I.length)break;c+=(0,h.default)((a/10).toFixed(0)),e.nodes[e.nodes.length-1].x=c,l[l.length-1]=[c,f],Math.round(c)>=a+t.state.extendWidth&&t.setState((e=>({extendWidth:e.extendWidth+a/10})))}e.edges.push({id:(0,_.default)(n="edge-".concat(r.id,"-")).call(n,i),target:s,targetAnchor:u>f?0:1,source:r.id,sourceAnchor:A,type:"arrowLine",topAnchorNum:p,style:{stroke:o},linePath:{source_x:c,source_y:f,target_y:u}}),A+=1}()}));var S=this.getAnchorPoints(p,A-p),w=(0,b.default)(s=e.edges).call(s,(e=>e.source===r.id));(0,m.default)(w).call(w,((e,t)=>{"extNet"===e.target&&1===S[t][1]&&([S[t],S[p-1]]=[S[p-1],S[t]])})),e.nodes[e.nodes.length-1].anchorPoints=S,this.setState({insCard:l})}))})),(0,C.default)(this,"getAnchorPoints",((e,t)=>{var a=[];return e>0&&a.push(...(0,F.getAnchorData)(e,0)),t>0&&a.push(...(0,F.getAnchorData)(t,1)),a})),(0,C.default)(this,"renderG6",(()=>{D.default.registerEdge("arrowLine",{draw(e,t){var{endPoint:a,startPoint:r}=e,i=e.style.stroke;return t.addShape("path",{attrs:{path:[["M",r.x,r.y],["L",r.x,a.y]],endArrow:{path:D.default.Arrow.vee(4,8,-4),d:1},startArrow:{path:D.default.Arrow.vee(4,8,-4),d:1},stroke:i||"#C8DEFF",lineWidth:2},name:"path-shape"}),t}});var e=document.getElementById("container").scrollWidth,t={nodes:[{id:"networkImage",x:e/2,y:50,img:k.default,type:"image",size:56,clipCfg:{show:!1,type:"circle",r:15}},{id:"extNet",type:"rect",label:"extNetwork",labelCfg:{position:"right",offset:-e/2,style:{fill:"#000000"}},x:e/2,y:100,anchorPoints:[[.5,0],[0,1]],style:{radius:4,fill:"#FFFFFFFF",stroke:j.subnetsColors[0][0],width:e-10,height:20}}],edges:[{id:"edge3",target:"networkImage",source:"extNet",style:{startArrow:{path:D.default.Arrow.vee(4,6,-1),d:2},lineWidth:1,stroke:j.subnetsColors[0][0]}}],combos:[]},{servers:a}=this.topoInfo;if(a){t=G.cfg.data,this.renderRouterNode(t,e),this.extendNetworkWidth(t,e);var r=JSON.parse((0,y.default)(t));this.setState({withoutServerData:r}),this.renderInstanceNode(t,e),this.extendNetworkWidth(t,e);var i=JSON.parse((0,y.default)(t));this.setState({allData:i})}else this.renderNetworkNode(t,e),this.extendNetworkWidth(t,e);G&&(G.clear(),G.destroy());var{firstSubnetY:n,extendWidth:l}=this.state;(G=new D.default.Graph({container:"container",width:e+l,height:n,nodeStateStyles:{hover:{lineWidth:3}}})).data(t),G.render(),this.bindEvents(),this.setState({loading:!1})})),(0,C.default)(this,"extendNetworkWidth",((e,t)=>{var{subnetNodes:a,nodes:r}=e,{extendWidth:i}=this.state;i>0&&((0,m.default)(a).call(a,(e=>{e.style.width=t-50+i,e.x=(t+i)/2,e.labelCfg.offset=-(t+i)/2})),r[1].style.width=t+i-10,r[0].x=(t+i)/2,r[1].labelCfg.offset=-(t+i)/2,r[1].x=(t+i)/2),a&&a[0]&&(e.nodes=(0,_.default)(r).call(r,a))})),(0,C.default)(this,"onCheckChange",(()=>{var{firstSubnetY:e,extendWidth:t,showAll:a,withoutServerData:r,allData:i}=this.state,n=document.getElementById("container").scrollWidth,l=!a;this.setState({showAll:l});var o=n+t;l||(o=n-t),G.clear(),G.destroy(),G=null,(G=new D.default.Graph({container:"container",width:o,height:e,nodeStateStyles:{hover:{lineWidth:3}}})).data(l?i:r),G.render(),this.bindEvents()})),this.init(),this.state={firstSubnetY:290,nodeCard:[],lbCard:[],insCard:[],extendWidth:0,loading:!0,showAll:!0,withoutServerData:null,allData:null}}componentDidMount(){}get topoInfo(){return this.store.topology}initNetwork(){var e=this;return(0,P.default)((function*(){yield e.store.fetchTopoNetwork(K(K({},e.props.match.params),{},{metrics:!0})),e.renderG6()}))()}initAll(){var e=this;return(0,P.default)((function*(){yield e.store.fetchTopo(K(K({},e.props.match.params),{},{metrics:!0})),e.topoInfo.networks&&e.renderG6()}))()}initTopo(){this.initNetwork(),this.initAll()}init(){this.store=N.default,G=null,this.initTopo()}render(){var{nodeCard:e,insCard:a,loading:r,showAll:i}=this.state,{topology:n}=this.store;return E.default.createElement("div",{className:L.default.main},E.default.createElement("div",{style:{marginBottom:16,marginTop:16,marginLeft:16}},E.default.createElement(M.default,{primaryActions:[O.default]},t("create router")),E.default.createElement(M.default,{primaryActions:[Q.default]},t("Create Network")),E.default.createElement(M.default,{primaryActions:[q.default]},t("Create Instance")),E.default.createElement(w.default,{type:"primary",shape:"circle",style:{marginLeft:16},onClick:()=>this.updateGraph(),icon:E.default.createElement(x.default,null)}),E.default.createElement(S.default,{onChange:()=>this.onCheckChange(),checked:i},t("Show Instance"))),E.default.createElement(I.default,{spinning:r},E.default.createElement(A.default,{style:{margin:16},id:"card",className:L.default.container},E.default.createElement("div",{id:"container"},n&&(0,g.default)(e).call(e,((e,t)=>E.default.createElement(H.default,{key:t,x:e.nodeCardX,y:e.nodeCardY,data:this.topoInfo,infoIndex:t}))),i?n&&(0,g.default)(a).call(a,((e,t)=>E.default.createElement(V.default,{key:t,x:e[0],y:e[1],data:this.topoInfo,infoIndex:t}))):null))))}}a.Topology=X;var Y=(0,R.inject)("rootStore")((0,R.observer)(X));a.default=Y},3866:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/cloud.1739201236.png"},3867:function(e,t,a){"use strict";a(20)(t,"__esModule",{value:!0}),t.subnetsColors=t.combosColors=t.combosBackground=void 0;t.combosBackground=["rgba(0,104,255,0.05)","rgba(94,246,255,0.08)","rgba(236,220,255,0.08)","rgba(255,255,240,0.3)"];t.combosColors=["#9AC3FF","#A5FFF0","#ECDCFF","#FFFF00"];t.subnetsColors=[["#9AC3FF","#4C95FF","#0068FF","#0080FF","#0066CC","#0000FF"],["#CCF2EC","#92DACF","#46B1A5","#CCF2EC","#92DACF","#46B1A5"],["#ECDCFF","#D6B3FF","#BA80FF","#ECDCFF","#D6B3FF","#BA80FF"],["#FFFACD","#FFFF00","#FFD700","#FFFACD","#FFFF00","#FFD700"]]},3868:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,".index__node-tooltips--1M7su {\n position: absolute;\n}\n.index__node-tooltips--1M7su .ant-card-body {\n padding: 15px;\n}\n.index__image-icon--2ABo6 {\n width: 15px;\n height: 15px;\n margin-right: 2px;\n}\n.index__descriptions-item--iUKkb .ant-descriptions-item-label {\n width: 80px;\n}\n.index__descriptions-item--iUKkb .ant-descriptions-row > th,\n.index__descriptions-item--iUKkb .ant-descriptions-row > td {\n padding-bottom: 8px;\n}\n.index__node-card-title--3zjAj {\n font-size: 16px;\n}\n.index__card-button--1hPxO .ant-btn-primary {\n margin-right: 6px;\n}\n.index__main--2dSfi {\n height: 100%;\n}\n.index__main--2dSfi .ant-btn-primary {\n margin-right: 16px;\n}\n.index__container--3ea1Q {\n height: calc(100vh - 170px);\n overflow-y: auto;\n}\n",""]),t.locals={"node-tooltips":"index__node-tooltips--1M7su","image-icon":"index__image-icon--2ABo6","descriptions-item":"index__descriptions-item--iUKkb","node-card-title":"index__node-card-title--3zjAj","card-button":"index__card-button--1hPxO",main:"index__main--2dSfi",container:"index__container--3ea1Q"}},3869:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(54));r(589);var o=n(r(590));r(1384);var s=n(r(1385)),d=n(r(35)),u=n(r(0)),c=(r(161),r(1248)),f=n(r(3870)),p=n(r(597)),m=r(204),h=n(r(1471)),v=n(r(1634));class g extends v.default{constructor(e){super(e),(0,d.default)(this,"detailButtons",(()=>{var{data:{servers:e},infoIndex:a}=this.props,{status:r}=e[a];return[..."SHUTOFF"===r?[{name:t("Power On"),click:null}]:[{name:t("Power Off"),click:null}],{name:t("Associate IP"),click:null},{name:t("Add network"),click:null},{name:t("VNC"),click:null},{name:t("Delete"),type:"danger",click:null}]})),this.state={}}get detailInfos(){return[{title:t("Name"),dataIndex:"name",width:100,render:(e,t)=>e?u.default.createElement(m.Link,{to:"/compute/instance/detail/".concat(t.id)},e):"-"},{title:t("UUID"),dataIndex:"id"},{title:t("Status"),dataIndex:"status",isHideable:!0,render:e=>c.instanceStatus[e&&e.toLowerCase()]||"-"},{title:t("Image"),dataIndex:"image_os_distro",isHideable:!0,render:(e,t)=>u.default.createElement(p.default,{type:e,title:t.image_name}),stringify:(e,t)=>t.image_name},{title:t("Fixed IP"),dataIndex:"fixed_addresses",isHideable:!0,width:120,render:e=>e.length?(0,l.default)(e).call(e,(e=>u.default.createElement("span",{key:e},e,u.default.createElement("br",null)))):"-",stringify:e=>e.join(",")||"-"},{title:t("Floating IP"),dataIndex:"floating_addresses",isHideable:!0,width:120,render:e=>e.length?(0,l.default)(e).call(e,(e=>u.default.createElement("span",{key:e},e,u.default.createElement("br",null)))):"-"}]}render(){var{x:e,y:a}=this.props,{data:{servers:r},infoIndex:i}=this.props,n=r[i];return u.default.createElement("div",{className:h.default["node-tooltips"],style:{top:"".concat(a,"px"),left:"".concat(e-8,"px")}},u.default.createElement(o.default,{placement:"rightTop",content:this.renderCard(435,n),title:this.renderTitle(t("Instance"),n.name)},u.default.createElement("div",{style:{textAlign:"center",width:"66px",height:"50px",overflow:"hidden"}},u.default.createElement(s.default,{src:f.default,shape:"square",size:28}),u.default.createElement("div",null,n.name))))}}a.default=g},3870:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,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"},3871:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/router.1739201236.png"},3872:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RouterDetail=void 0;var l=r(412),o=r(575),s=n(r(1243)),d=r(1267),u=n(r(3873)),c=n(r(3874)),f=n(r(3875)),p=n(r(1632));class m extends s.default{get name(){return t("router")}get policy(){return"get_router"}get listUrl(){return this.getRoutePath("router")}get actionConfigs(){return this.isAdminPage?p.default.adminConfigs:p.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:d.routerStatus},{title:t("Admin State"),dataIndex:"admin_state_up",render:e=>(0,d.getRouterState)(e)||"-"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default},{title:t("Ports"),key:"ports",component:c.default},{title:t("Static Routes"),key:"staticRoutes",component:f.default}]}init(){this.store=new o.RouterStore}}a.RouterDetail=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3873:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCards(){return[this.aZoneCard]}get rightCards(){return[this.externalNetInfo]}get externalNetInfo(){var e=[{label:t("Network Name"),dataIndex:"externalNetworkName"},{label:t("Network ID"),dataIndex:"externalNetworkId"},{label:t("SNAT Enabled"),dataIndex:"external_gateway_info.enable_snat",valueRender:"yesNo"},{label:t("External Fixed IPs"),dataIndex:"external_gateway_info.external_fixed_ips",render:e=>e&&0!==e.length?(0,l.default)(e).call(e,((e,a)=>o.default.createElement("div",{key:"ip-".concat(a)},o.default.createElement("div",{key:e.subnet_id},o.default.createElement("b",null,t("Subnet ID")),": ",e.subnet_id),o.default.createElement("div",{key:e.ip_address},o.default.createElement("b",null,t("IP Address")),": ",e.ip_address),o.default.createElement("div",{style:{marginBottom:"8px"}})))):"-"}];return{title:t("External Network Info"),options:e,labelCol:4}}get aZoneCard(){var e=[{label:t("Current Availability Zones"),dataIndex:"availability_zones",render:e=>(e||[]).join(",")||"-"},{label:t("Availability Zone Hints"),dataIndex:"availability_zone_hints",render:e=>(e||[]).join(",")||"-"}];return{title:t("Availability Zone Info"),options:e}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3874:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Ports=void 0;var p=f(r(54)),m=f(r(58)),h=f(r(49)),v=f(r(35)),g=f(r(0)),_=r(412),b=f(r(1242)),y=r(1258),I=r(582),A=r(163);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class w extends b.default{constructor(){super(...arguments),(0,v.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("routerPortDetail"),routeParamsFunc:e=>({routerId:this.id,id:e.id})},{title:t("IP Address"),dataIndex:"fixed_ips",isHideable:!0,render:e=>e&&0!==e.length?(0,p.default)(e).call(e,(e=>g.default.createElement("div",{key:e.ip_address},e.ip_address))):"-",stringify:e=>e&&0!==e.length?(0,p.default)(e).call(e,(e=>e.ip_address)).join(","):"-"},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Associated Resources"),dataIndex:"device_owner",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:y.portStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=new I.PortStore}get policy(){return"get_port"}get name(){return t("ports")}get id(){return this.params.id}getData(){var e=arguments,t=this;return(0,h.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,m.default)(a,["silent"]);r&&(t.list.silent=!0);var{id:n}=t.props.match.params,{tab:l}=i,f=(0,m.default)(i,["tab"]);t.fetchListWithTry((0,h.default)((function*(){yield t.store.fetchList(function(e){for(var t=1;t[{title:t("Destination CIDR"),dataIndex:"destination"},{title:t("Next Hop"),dataIndex:"nexthop",isHideable:!0}]))}init(){this.store=d.default}get policy(){return"get_router"}get name(){return t("static routers")}get actionConfigs(){return this.isAdminPage?u.default.actionConfigsAdmin:u.default.actionConfigs}get searchFilters(){return[]}}a.StaticRouters=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3876:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3877)),l=i(a(3878)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=o},3877:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=n(r(623)),u=r(1241);class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",((e,t)=>{var{match:{params:{id:a}={}}={}}=t,r=[e];return this.store.addStaticRoute({id:a,routes:r})}))}init(){this.store=d.default}get name(){return t("Create static route")}get defaultValue(){return{}}get messageHasItemName(){return!1}get formItems(){return[{name:"destination",label:t("Destination CIDR"),type:"input",required:!0},{name:"nexthop",label:t("Next Hop"),type:"input",required:!0}]}}a.Create=c,(0,o.default)(c,"id","create"),(0,o.default)(c,"title",t("Create Static Route")),(0,o.default)(c,"policy","update_router"),(0,o.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3878:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(35)),s=r(1241),d=n(r(623));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","update_router"),(0,o.default)(this,"getItemName",(e=>{var t,{destination:a,nexthop:r}=e;return(0,l.default)(t="".concat(a,"(")).call(t,r,")")})),(0,o.default)(this,"onSubmit",(e=>{var{destination:t,nexthop:a,router_id:r}=e,i=[{destination:t,nexthop:a}];return d.default.removeStaticRoute({id:r,routes:i})}))}get id(){return"delete"}get title(){return t("Delete Static Route")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete static route")}}a.default=u},3879:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(177)),d=n(r(0)),u=r(412),c=n(r(1249));class f extends c.default{get leftCards(){var e=[this.portInfo],{dns_assignment:t=[],fixed_ips:a=[],deviceOwner:r={}}=this.detailData;return t.length>0&&e.push(this.dnsAssignment),a.length>0&&e.push(this.fixedIps),r&&this.isAdmin&&e.push(this.deviceOwner),e.push(this.binding),e}get portInfo(){var e=[{label:t("Network Name"),dataIndex:"network_name"},{label:t("Network ID"),dataIndex:"network_id"},{label:t("MAC Address"),dataIndex:"mac_address"},{label:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"},{label:t("DNS Name"),dataIndex:"dns_name",hidden:!this.isAdmin}];return this.detailData.mac_state&&e.push({label:t("MAC Learning State"),dataIndex:"mac_state"}),this.detailData.qos_policy_id&&e.push({label:t("QoS Policy ID"),dataIndex:"qos_policy_id"}),{title:t("Port Info"),options:e}}get dnsAssignment(){var e=this.detailData.dns_assignment[0]||{},{hostname:a,ip_address:r}=e,i=[{label:t("Hostname"),dataIndex:"dns_assignment",render:()=>a},{label:t("IP Address"),dataIndex:"ip_address",render:()=>r}];return{title:t("DNS Assignment"),options:i}}get fixedIps(){var e=this.detailData.fixed_ips[0]||{},{ip_address:a,subnet_id:r}=e,i=[{label:t("IP Address"),dataIndex:"ip_address",render:()=>a},{label:t("Subnet ID"),dataIndex:"subnet_id",render:()=>r}];return{title:t("Fixed IPs"),options:i}}get deviceOwner(){var e=[{label:t("Device Owner"),dataIndex:"device_owner"},{label:t("Device ID"),dataIndex:"device_id"}];return{title:t("Attached Device"),options:e}}get binding(){var e=[{label:t("VNIC Type"),dataIndex:"binding__vnic_type"}];if(this.detailData.binding__host_id){var a=[{label:t("Host"),dataIndex:"binding__host_id"},{label:t("Profile"),dataIndex:"binding__profile",render:e=>{var t;return!e||(0,s.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>d.default.createElement("div",{key:t},d.default.createElement("b",null,t),": ",d.default.createElement("b",null,e[t]))))}},{label:t("VIF Type"),dataIndex:"binding__vif_type"},{label:t("VIF Details"),dataIndex:"binding__vif_details",render:e=>{var t;return!e||(0,s.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>d.default.createElement("div",{key:t},d.default.createElement("b",null,t)," ",d.default.createElement("span",null,e[t].toString()))))}}];e=[...e,...a]}return{title:t("Binding"),options:e}}}a.BaseDetail=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3880:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PortDetail=void 0;var l=n(r(164)),o=n(r(29)),s=r(412),d=r(572),u=n(r(1243)),c=r(571),f=n(r(3881)),p=n(r(3886)),m=n(r(3890)),h=n(r(3894)),v=n(r(1607));class g extends u.default{get name(){return t("port")}get policy(){return"get_port"}get listUrl(){var{networkId:e,subnetId:t,instanceId:a}=this.params;return this.isSubnetPortDetail?this.getRoutePath("subnetDetail",{id:t,networkId:e},{tab:"ports"}):this.isNetworkPortDetail?this.getRoutePath("networkDetail",{id:e},{tab:"ports"}):this.isInstancePortDetail?this.getRoutePath("instanceDetail",{id:a},{tab:"interface"}):this.getRoutePath("port")}get isSubnetPortDetail(){var e;return(0,l.default)(e=this.path).call(e,"subnet")}get isNetworkPortDetail(){var e;return(0,l.default)(e=this.path).call(e,"networks")&&!this.isSubnetPortDetail}get isInstancePortDetail(){var e;return(0,l.default)(e=this.path).call(e,"instance")}get actionConfigs(){return this.isAdminPage?v.default.adminActions:v.default.actionConfigs}getActionData(){return this.detailData.itemInList||{}}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Status"),dataIndex:"status",valueMap:c.networkStatus},{title:t("Owned Network"),dataIndex:"itemInList.network_name"},{title:t("Network ID"),dataIndex:"network_id"},{title:t("Port Security Enabled"),dataIndex:"port_security_enabled",valueRender:"yesNo"},{title:t("Mac Address"),dataIndex:"mac_address"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:h.default},{title:t("Fixed IPs"),key:"fixed_ips",component:f.default},{title:t("Security Groups"),key:"security_groups",component:p.default},{title:t("Allowed Address Pairs"),key:"allowed_address_pair",component:m.default}],{port_security_enabled:a}=this.detailData;return a?e:(0,o.default)(e).call(e,(e=>"security_groups"!==e.key))}init(){this.store=new d.PortStore}}a.PortDetail=g;var _=(0,s.inject)("rootStore")((0,s.observer)(g));a.default=_},3881:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FixedIP=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(3882),u=n(r(3883));class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Floating IP"),dataIndex:"fip",render:e=>0===e.length?"-":e[0].floating_ip_address},{title:t("Owned Subnet"),dataIndex:"subnet",render:e=>e&&e.name||"-"}]))}init(){this.store=new d.FixedIpStore,this.downloadStore=new d.FixedIpStore}get rowKey(){return"ip_address"}get policy(){return"get_port"}get name(){return t("Fixed IP")}get actionConfigs(){return this.isAdminPage?u.default.adminConfigs:u.default.actionConfigs}get hideCustom(){return!0}get searchFilters(){return[{label:t("IP Address"),name:"ip_address"},{label:t("Owned Subnet"),name:"subnet",filterFunc:(e,t)=>e.name===t}]}}a.FixedIP=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3882:function(e,t,a){"use strict";var r=a(32),i=a(42),n=a(29),l=a(25),o=a(28),s=a(44),d=a(45),u=a(20),c=a(21);u(t,"__esModule",{value:!0}),t.default=t.FixedIpStore=void 0;var f=c(a(350)),p=c(a(591)),m=c(a(54)),h=c(a(63)),v=c(a(28)),g=c(a(35)),_=c(a(49)),b=c(a(58)),y=c(a(233)),I=c(a(346)),A=c(a(50)),S=c(a(53));function w(e,t){var a=r(e);if(i){var o=i(e);t&&(o=n(o).call(o,(function(t){return l(e,t).enumerable}))),a.push.apply(a,o)}return a}function x(e){for(var t=1;t{var{all_projects:t}=e;return(0,b.default)(e,["all_projects"])}}getItemFloatingIPs(e,t){return(0,_.default)((function*(){return I.default.pureFetchList({fixed_ip_address:e,port_id:t})}))()}listDidFetch(e){var t=this;return(0,_.default)((function*(){if(0===e.length)return[];var a=e[0],{fixed_ips:r=[],id:i}=a,n=(0,f.default)(new p.default((0,m.default)(r).call(r,(e=>e.subnet_id)))),l=yield h.default.all((0,m.default)(n).call(n,(e=>y.default.fetchSubnetDetail({id:e})))),o={};(0,v.default)(l).call(l,(e=>{o[e.id]=e}));var s=yield h.default.all((0,m.default)(r).call(r,(e=>t.getItemFloatingIPs(e.ip_address,i))));return(0,m.default)(r).call(r,((e,t)=>x(x({},e),{},{subnet:o[e.subnet_id],fip:s[t],port:a})))}))()}}t.FixedIpStore=P;var C=new P;t.default=C},3883:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3884)),l=i(a(3885)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3884:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AllocateIP=void 0;var l=n(r(54)),o=n(r(63)),s=n(r(49)),d=n(r(35)),u=r(412),c=r(1241),f=n(r(572)),p=r(233),m=r(417);class h extends c.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{fixed_ips:t}=e,a=(0,l.default)(t).call(t,(e=>{var t={subnet_id:e.subnet};return e.ip_address&&"manual"===e.ip_address.type&&(t.ip_address=e.ip_address.ip),t}));return f.default.update(this.item,{fixed_ips:[...a,...this.item.fixed_ips]})}))}get name(){return t("Allocate IP")}init(){this.networkStore=new p.NetworkStore,this.subnetStore=new m.SubnetStore,this.getNetworkDetail(this.item.network_id),this.getSubnets(this.item.network_id)}getSubnets(e){var t=this;return(0,s.default)((function*(){var a=yield t.subnetStore.fetchList({network_id:e});t.setState({subnetDetails:a||[]})}))()}getNetworkDetail(e){var t=this;return(0,s.default)((function*(){var a=yield t.networkStore.fetchDetail({id:e});t.updateFormValue("network_name",a.name)}))()}get defaultValue(){return{network_id:this.item.network_id}}get isAllowed(){return!0}static get modalSize(){return"large"}get messageHasItemName(){return!1}get formItems(){var{subnetDetails:e=[]}=this.state;return[{name:"network_id",label:t("Owned Network ID"),type:"label"},{name:"network_name",label:t("Owned Network"),type:"label"},{name:"fixed_ips",label:t("Owned Subnet"),type:"ip-distributor",subnets:e,required:!0}]}}a.AllocateIP=h,(0,d.default)(h,"id","allocate-ip"),(0,d.default)(h,"title",t("Allocate IP")),(0,d.default)(h,"policy","update_port:fixed_ips:ip_address"),(0,d.default)(h,"allowed",(()=>o.default.resolve(!0)));var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},3885:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(28)),o=n(r(29)),s=n(r(63)),d=n(r(35)),u=r(1241),c=n(r(572));class f extends u.ConfirmAction{constructor(){super(...arguments),(0,d.default)(this,"getItemName",(e=>e.ip_address)),(0,d.default)(this,"policy","update_port"),(0,d.default)(this,"onSubmit",((e,t,a,r,i)=>{var{port:{id:n,fixed_ips:d=[]}={}}=e,u=d;if(a){if(0!==r)return s.default.resolve();(0,l.default)(i).call(i,(e=>{var{subnet_id:t,ip_address:a}=e;u=(0,o.default)(u).call(u,(e=>e.ip_address!==a||e.subnet_id!==t))}))}else{var{subnet_id:f,ip_address:p}=e;u=(0,o.default)(d).call(d,(e=>e.ip_address!==p||e.subnet_id!==f))}return c.default.update({id:n},{fixed_ips:u})}))}get id(){return"delete"}get title(){return t("Release Fixed IP")}get buttonText(){return t("Release")}get isDanger(){return!0}get actionName(){return t("release fixed ip")}get passiveAction(){return t("be released")}}a.default=f},3886:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SecurityGroup=void 0;var l=n(r(54));r(347);var o=n(r(348));r(426);var s=n(r(429)),d=n(r(1458));r(585);var u=n(r(587)),c=n(r(343));r(1246);var f=n(r(1247));r(1244);var p=n(r(1245));r(231);var m=n(r(341));r(1300);var h=n(r(1301)),v=n(r(35));r(1468);var g=n(r(1469)),_=n(r(0)),b=r(412),y=r(572),I=(r(161),n(r(1608))),A=r(204),S=n(r(4)),w=r(36),x=(r(564),n(r(1388))),P=n(r(1302)),C=r(354),E=r(163),D=r(567),k=n(r(3887)),R=n(r(3888)),{Panel:N}=g.default;class j extends _.default.Component{constructor(e){super(e),(0,v.default)(this,"refreshSecurityGroup",(()=>{this.store.fetchSecurityGroupsDetail(this.portId)})),this.store=new y.PortStore}componentDidMount(){this.refreshSecurityGroup()}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,D.getPath)({key:t,params:{id:e}})}get portId(){var{detail:{id:e}}=this.props;return e}get isAdminPage(){var{pathname:e}=this.props.location;return(0,E.isAdminPage)(e)}renderPanelTitle(e){var{security_groups:{data:a}}=this.store,r=this.getDetailUrl(e.id);return _.default.createElement(f.default,null,_.default.createElement(p.default,{span:18},_.default.createElement("span",null,t("Security Group")),_.default.createElement(h.default,{type:"vertical",className:R.default["header-divider"]}),_.default.createElement(m.default,{type:"link"},e.name)),_.default.createElement(p.default,{span:6},!this.isAdminPage&&_.default.createElement(_.default.Fragment,null,_.default.createElement(A.Link,{style:{fontSize:12,marginRight:16},to:r},t("Edit Rule"))),!this.isAdminPage&&1!==a.length&&_.default.createElement(_.default.Fragment,null,_.default.createElement(P.default,{actions:{firstAction:k.default},onFinishAction:this.refreshSecurityGroup,item:e,containerProps:this.props},t("Detach")))))}renderPanel(e,t){return _.default.createElement(N,{header:this.renderPanelTitle(e,t),key:t,className:R.default.panel},_.default.createElement(u.default,(0,c.default)({size:"middle",pagination:!1,bordered:!1,rowKey:"id"},this.state,{columns:(0,C.getSelfColumns)(this),dataSource:e.security_group_rules?(0,w.toJS)(e.security_group_rules):null})))}render(){var e,{security_groups:t}=this.store;return _.default.createElement("div",{className:(0,S.default)(R.default.wrapper,this.className)},this.isAdminPage?null:_.default.createElement("div",{style:{marginBottom:20}},_.default.createElement(x.default,{containerProps:this.props,primaryActions:[I.default],onFinishAction:this.refreshSecurityGroup})),_.default.createElement(o.default,{spinning:t.isLoading},t.data&&0!==t.data.length?_.default.createElement(g.default,{className:R.default.collapse,accordion:!0,bordered:!1,expandIcon:e=>{var{isActive:t}=e;return _.default.createElement(d.default,{rotate:t?90:0})}},(0,l.default)(e=t.data).call(e,((e,t)=>this.renderPanel(e,t)))):_.default.createElement(s.default,{image:s.default.PRESENTED_IMAGE_SIMPLE,style:{backgroundColor:"white",padding:"32px 0"}})))}}a.SecurityGroup=j;var M=(0,b.inject)("rootStore")((0,b.observer)(j));a.default=M},3887:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(35)),s=r(1241),d=n(r(572));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","update_port"),(0,o.default)(this,"allowedCheckFunc",(()=>!0)),(0,o.default)(this,"onSubmit",(e=>{var{port:{id:t,security_groups:a=[]}={}}=e,r={security_groups:(0,l.default)(a).call(a,(t=>t!==e.id))};return d.default.update({id:t},r)}))}get id(){return"detach"}get title(){return t("Detach Security Group")}get isDanger(){return!0}get buttonText(){return t("Detach")}get actionName(){return t("detach security group")}}a.default=u},3888:function(e,t,a){var r=a(3889);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(65)(r,i);r.locals&&(e.exports=r.locals)},3889:function(e,t,a){(t=e.exports=a(64)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n/* login */\n.index__wrapper--3LuNN {\n min-height: calc(100vh - 108px);\n padding: 0 16px;\n}\n.index__collapse--3_l12 {\n margin-bottom: 24px;\n overflow: hidden;\n}\n.index__panel--3V7V- {\n margin-bottom: 24px;\n padding-top: 12px;\n padding-bottom: 12px;\n font-size: larger;\n background: #fff;\n}\n.index__header-divider--EyyRf {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__image--XS90m {\n width: 100px;\n padding: 10px;\n}\n.index__radio-button--2oJLs .ant-radio-button-wrapper {\n width: 250px;\n height: 100px;\n margin-right: 40px;\n padding: 15px;\n}\n.index__security-group-text--1Hv_J {\n font-size: 14px;\n}\n",""]),t.locals={primaryColor:"#0068ff",successColor:"#57e39b",warnColor:"#fedf40",warnDarkColor:"#fa8c16",warnLightColor:"#f6b23d",errorColor:"#eb354d",dangerColor:"#c4233e",moneyColor:"#f50",infoColor:"rgba(0, 104, 255, 0.65)",headerHeight:"40px",productsColumnWidth:"230px",wrapper:"index__wrapper--3LuNN",collapse:"index__collapse--3_l12",panel:"index__panel--3V7V-","header-divider":"index__header-divider--EyyRf",image:"index__image--XS90m","radio-button":"index__radio-button--2oJLs","security-group-text":"index__security-group-text--1Hv_J"}},3890:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.AllowedAddressPair=void 0;var p=f(r(54)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=f(r(572)),b=f(r(432)),y=f(r(3891));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;tthis.props.detail.allowed_address_pairs)),(0,h.default)(this,"getColumns",(()=>[{title:t("IP Address"),dataIndex:"ip_address"},{title:t("Mac Address"),dataIndex:"mac_address"}]))}init(){this.store=_.default,this.store.setDetail(this.props.detail)}get list(){var e,t=new b.default;this.props.detail.allowed_address_pairs&&t.update({data:(0,p.default)(e=this.props.detail.allowed_address_pairs||[]).call(e,((e,t)=>A(A({},e),{},{id:"port_detail_allowed_address_pair_".concat(t)})))});return t}get isLoading(){return!1}getData(){return(0,m.default)((function*(){}))()}get policy(){return"get_port"}get name(){return t("Allowed Address Pairs")}get actionConfigs(){return this.isAdminPage?y.default.adminConfigs:y.default.actionConfigs}get hideCustom(){return!0}get searchFilters(){return[{label:t("IP Address"),name:"ip_address"},{label:t("Mac Address"),name:"mac_address"}]}}a.AllowedAddressPair=S;var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3891:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3892)),l=i(a(3893)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3892:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAllowedAddressPair=void 0;var l=n(r(1252)),o=n(r(63)),s=n(r(35)),d=n(r(177)),u=r(412),c=r(1241),f=n(r(572)),p=r(565),{isIpCidr:m,isIPv6Cidr:h}=p.ipValidate;class v extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{allowed_address_pairs:t=[]}=this.item,{ip_address:a,mac_address:r}=e,i={ip_address:a};return"manual"===r.type&&(i.mac_address=r.mac),f.default.update(this.item,{allowed_address_pairs:[i,...t]}).then((e=>{f.default.setDetail(e.port)}))})),(0,s.default)(this,"checkCidr",(e=>{if((0,d.default)(e))return!1;var{ip_version:t="ipv4"}=this.state;return!("ipv4"===t&&!m(e))&&!("ipv6"===t&&!h(e))}))}init(){this.store=f.default}get name(){return t("create allowed address pair")}get instanceName(){return(0,l.default)(this).ip_address}get isAllowed(){return!0}static get modalSize(){return"middle"}get defaultValue(){return{ip_version:"ipv4"}}get formItems(){return[{name:"ip_version",label:t("IP Version"),type:"select",options:[{label:"ipv4",value:"ipv4"},{label:"ipv6",value:"ipv6"}],onChange:e=>{this.setState({ip_version:e},(()=>{this.formRef.current.validateFields()}))},required:!0},{name:"ip_address",label:t("CIDR"),type:"input",required:!0,validator:(e,a)=>this.checkCidr(a)?o.default.resolve():o.default.reject(new Error(t("Invalid CIDR.")))},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},required:!0,type:"mac-address",options:[{label:t("From port"),value:"auto"},{label:t("Manual input"),value:"manual"}]}]}}a.CreateAllowedAddressPair=v,(0,s.default)(v,"id","create-ip"),(0,s.default)(v,"title",t("Create Allowed Address Pair")),(0,s.default)(v,"policy","update_port"),(0,s.default)(v,"allowed",(()=>o.default.resolve(!0)));var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3893:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(29)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(572));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"getItemName",(e=>e.ip_address)),(0,s.default)(this,"policy","update_port"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,s.default)(this,"onSubmit",function(){var e=(0,o.default)((function*(e,t){var{allowed_address_pairs:a=[],id:r}=t.detail,i=(0,l.default)(a).call(a,(t=>t.ip_address!==e.ip_address));return u.default.update({id:r},{allowed_address_pairs:i}).then((e=>{u.default.setDetail(e.port)}))}));return function(t,a){return e.apply(this,arguments)}}())}get id(){return"delete"}get title(){return t("Delete Allowed Address Pair")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete allowed address pair")}isOwnerOrAdmin(){return!0}}a.default=c},3894:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(77)),o=r(412),s=n(r(1249)),d=r(66);class u extends s.default{get leftCards(){return[this.baseInfoCard]}get qosEndpoint(){return(0,d.qosEndpoint)()}get baseInfoCard(){var e=[{label:t("Bind Device Type"),dataIndex:"device_owner"},{label:t("Bind Device"),dataIndex:"device_id",render:(e,t)=>{var{itemInList:{device_id:a,device_owner:r,server_name:i}={}}=t;if(a&&"compute:nova"===r){var n,o=i?(0,l.default)(n="".concat(a," (")).call(n,i,")"):a;return this.getLinkRender("instanceDetail",o,{id:a},{tab:"interface"})}return e||"-"}},{label:t("VNIC Type"),dataIndex:"binding:vnic_type"}];return this.qosEndpoint&&e.push({label:t("QoS Policy"),dataIndex:"qos_policy_id",copyable:!1,render:e=>{var t;if(!e)return"-";var{qosPolicy:a}=this.detailData,{name:r}=a||{},i=r?(0,l.default)(t="".concat(e,"(")).call(t,r,")"):e;return this.getLinkRender("networkQosDetail",i,{id:e})}}),{title:t("Base Info"),options:e}}}a.BaseDetail=u;var c=(0,o.inject)("rootStore")((0,o.observer)(u));a.default=c},3895:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.QoSPolicy=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(1636));class u extends o.default{get checkEndpoint(){return!0}get endpoint(){return(0,s.qosEndpoint)()}get tabs(){var e=[{title:t("Current Project QoS Policies"),key:"projectQoSPolicy",component:d.default},{title:t("Shared QoS Policies"),key:"sharedQoSPolicy",component:d.default}];return this.hasAdminRole&&e.push({title:t("All QoS Policies"),key:"allQoSPolicy",component:d.default}),e}}a.QoSPolicy=u;var c=(0,l.inject)("rootStore")((0,l.observer)(u));a.default=c},3896:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(49)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(340)),b=r(576),y=r(1265),I=r(163),A=r(36);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{name:t,description:a,shared:r,is_default:i,project_id:n}=e;return this.store.create({name:t,description:a,shared:r,is_default:i,project_id:n?n.selectedRowKeys[0]:this.props.rootStore.user.project.id})}))}get name(){return t("Create QoS Policy")}static get modalSize(){var{pathname:e}=window.location;return(0,I.isAdminPage)(e)?"large":"small"}getModalSize(){return this.isAdminPage?"large":"small"}init(){this.store=new b.QoSPolicyStore,this.projectStore=_.default,this.isAdminPage&&this.fetchProjectList()}fetchProjectList(){var e=this;return(0,m.default)((function*(){yield e.projectStore.fetchProjectsWithDomain(),e.updateDefaultValue()}))()}get projects(){return(0,A.toJS)(this.projectStore.list.data)||[]}get defaultValue(){return this.isAdminPage?{project_id:{selectedRowKeys:[this.props.rootStore.user.project.id]}}:{}}get formItems(){return[{name:"name",label:t("Policy Name"),type:"input-name",required:!0,withoutChinese:!0},w({name:"project_id",label:t("Project"),type:"select-table",required:this.isAdminPage,isLoading:_.default.list.isLoading,data:this.projects,hidden:!this.isAdminPage},y.projectTableOptions),{name:"description",label:t("Description"),type:"textarea"},{name:"shared",label:t("Shared"),type:"switch",hidden:!this.isAdminPage},{name:"is_default",label:t("Default Policy"),type:"switch",hidden:!this.isAdminPage}]}}a.Create=x,(0,h.default)(x,"id","create_qos_policy"),(0,h.default)(x,"title",t("Create QoS Policy")),(0,h.default)(x,"policy","create_policy"),(0,h.default)(x,"aliasPolicy","neutron:create_policy"),(0,h.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,v.inject)("rootStore")((0,v.observer)(x));a.default=P},3897:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=r(1241),g=r(576);function _(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class b extends v.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"policy",(()=>({rules:[["network","edit_qos_policy"]]}))),(0,m.default)(this,"onSubmit",(e=>this.store.update(this.props.item,e)))}get name(){return t("Edit QoS Policy")}init(){this.store=new g.QoSPolicyStore}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;tp.default.resolve(!0)));var y=(0,h.inject)("rootStore")((0,h.observer)(b));a.default=y},3898:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(576));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_policy"),(0,l.default)(this,"aliasPolicy","neutron:delete_policy"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete QoS Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete qos policy")}isOwnerOrAdmin(){return!0}}a.default=d},3899:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateBandwidthLimitRule=void 0;var p=f(r(232)),m=f(r(63)),h=f(r(58)),v=f(r(35)),g=f(r(0)),_=r(412),b=r(1241),y=f(r(576));function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t{var{max_kbps:t,max_burst_kbps:a}=e,r=A(A({},(0,h.default)(e,["max_kbps","max_burst_kbps"])),{},{max_kbps:1024*t,max_burst_kbps:1024*a});return y.default.createBandwidthLimitRule(this.props.item,r)}))}get name(){return t("create bandwidth limit rule")}get defaultValue(){return{max_kbps:1,max_burst_kbps:1,direction:"egress"}}get formItems(){return[{label:t("Type"),type:"label",component:g.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"direction",label:t("Direction"),type:"select",options:[{label:t("egress"),value:"egress"},{label:t("ingress"),value:"ingress"}]}]}}a.CreateBandwidthLimitRule=S,(0,v.default)(S,"id","create_bandwidth_limit_rule"),(0,v.default)(S,"title",t("Create Bandwidth Limit Rule")),(0,v.default)(S,"policy","create_policy_bandwidth_limit_rule"),(0,v.default)(S,"allowed",(e=>{var{rules:t=[]}=e,a=(0,p.default)(t).call(t,(e=>"ingress"===e.direction)),r=(0,p.default)(t).call(t,(e=>"egress"===e.direction));return m.default.resolve(!(a&&r))}));var w=(0,_.inject)("rootStore")((0,_.observer)(S));a.default=w},3900:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateDSCPMarkingRules=void 0;var l=n(r(232)),o=n(r(63)),s=n(r(35)),d=n(r(0)),u=r(412),c=r(1241),f=n(r(576)),p=n(r(1638));class m extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>f.default.createDSCPMarkingRule(this.props.item,e)))}get name(){return t("create DSCP marking rule")}get defaultValue(){return{dscp_mark:0}}get formItems(){return[{label:t("Type"),type:"label",component:d.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("DSCP Marking"))},{name:"dscp_mark",label:t("Value"),type:"select",options:p.default}]}}a.CreateDSCPMarkingRules=m,(0,s.default)(m,"id","create_DSCP_marking_rule"),(0,s.default)(m,"title",t("Create DSCP Marking Rule")),(0,s.default)(m,"policy","create_policy_dscp_marking_rule"),(0,s.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,l.default)(t).call(t,(e=>"dscp_marking"===e.type));return o.default.resolve(!a)}));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3901:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_dscp_marking_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasDSCPMarkingRule(e))),(0,s.default)(this,"hasDSCPMarkingRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"dscp_marking"===e.type))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"dscp_marking"===e.type));return u.default.deleteDSCPMarkingRules(e,a)}))}get id(){return"delete"}get title(){return t("Delete DSCP Marking Rules")}get isDanger(){return!0}get buttonText(){return t("Delete DSCP Marking Rules")}get actionName(){return t("delete dscp marking rules")}isOwnerOrAdmin(){return!0}}a.default=c},3902:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_bandwidth_limit_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasEgressRule(e))),(0,s.default)(this,"hasEgressRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"egress"===e.direction))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction));return u.default.deleteBandwidthLimitRules(e,a)}))}get id(){return"delete-egress"}get title(){return t("Delete Bandwidth Egress Rules")}get isDanger(){return!0}get buttonText(){return t("Delete Bandwidth Egress Rules")}get actionName(){return t("delete bandwidth egress rules")}isOwnerOrAdmin(){return!0}}a.default=c},3903:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(232)),o=n(r(86)),s=n(r(35)),d=r(1241),u=n(r(576));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_policy_bandwidth_limit_rule"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&this.hasIngressRule(e))),(0,s.default)(this,"hasIngressRule",(e=>{var{rules:t=[]}=e;return(0,l.default)(t).call(t,(e=>"ingress"===e.direction))})),(0,s.default)(this,"onSubmit",(e=>{var t,{id:a}=(0,o.default)(t=e.rules).call(t,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction));return u.default.deleteBandwidthLimitRules(e,a)}))}get id(){return"delete-ingress"}get title(){return t("Delete Bandwidth Ingress Rules")}get isDanger(){return!0}get buttonText(){return t("Delete Bandwidth Ingress Rules")}get actionName(){return t("delete bandwidth ingress rules")}isOwnerOrAdmin(){return!0}}a.default=c},3904:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditBandwidthEgressRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576));class m extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{max_kbps:t,max_burst_kbps:a}=e,r={max_kbps:1024*t,max_burst_kbps:1024*a};return p.default.updateBandwidthLimitRule(this.props.item,this.egressRule.id,r)}))}get name(){return t("Edit Bandwidth Egress Limit Rule")}get defaultValue(){var{max_kbps:e,max_burst_kbps:t}=this.egressRule;return{max_kbps:e/1024,max_burst_kbps:t/1024}}init(){var{rules:e=[]}=this.item||{};this.egressRule=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Egress Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"}]}}a.EditBandwidthEgressRule=m,(0,d.default)(m,"id","edit_bandwidth_egress_limit_rule"),(0,d.default)(m,"title",t("Edit Bandwidth Egress Limit Rule")),(0,d.default)(m,"policy","update_policy_bandwidth_limit_rule"),(0,d.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"egress"===e.direction));return s.default.resolve(a)}));var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3905:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditBandwidthIngressRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576));class m extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>p.default.updateBandwidthLimitRule(this.props.item,this.ingressRule.id,{max_kbps:1024*e.max_kbps,max_burst_kbps:1024*e.max_burst_kbps})))}get name(){return t("Edit Bandwidth Ingress Limit Rule")}get defaultValue(){var{max_kbps:e,max_burst_kbps:t}=this.ingressRule;return{max_kbps:e/1024,max_burst_kbps:t/1024}}init(){var{rules:e=[]}=this.item||{};this.ingressRule=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("QoS Bandwidth Ingress Limit"))},{name:"max_kbps",label:t("Bandwidth limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"},{name:"max_burst_kbps",label:t("Burst limit"),type:"slider-input",max:1e4,min:1,inputMin:1,inputMax:1e4,description:"1Mbps-10000Mbps"}]}}a.EditBandwidthIngressRule=m,(0,d.default)(m,"id","edit_bandwidth_ingress_limit_rule"),(0,d.default)(m,"title",t("Edit Bandwidth Ingress Limit Rule")),(0,d.default)(m,"policy","update_policy_bandwidth_limit_rule"),(0,d.default)(m,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"ingress"===e.direction));return s.default.resolve(a)}));var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3906:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditDSCPMarkingRule=void 0;var l=n(r(86)),o=n(r(232)),s=n(r(63)),d=n(r(35)),u=n(r(0)),c=r(412),f=r(1241),p=n(r(576)),m=n(r(1638));class h extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>p.default.updateDSCPMarkingRule(this.props.item,this.dscpMarkingRule.id,e)))}get name(){return t("Edit DSCP Marking Rule")}get defaultValue(){return{dscp_mark:this.dscpMarkingRule.dscp_mark||0}}init(){var{rules:e=[]}=this.item;this.dscpMarkingRule=(0,l.default)(e).call(e,(e=>"dscp_marking"===e.type))||{}}get formItems(){return[{label:t("Type"),type:"label",component:u.default.createElement("div",{style:{lineHeight:"32px",marginBottom:24}},t("DSCP Marking"))},{name:"dscp_mark",label:t("Value"),type:"select",options:m.default}]}}a.EditDSCPMarkingRule=h,(0,d.default)(h,"id","edit_DSCP_marking_rule"),(0,d.default)(h,"title",t("Edit DSCP Marking Rule")),(0,d.default)(h,"policy","update_policy_dscp_marking_rule"),(0,d.default)(h,"allowed",(e=>{var{rules:t=[]}=e,a=(0,o.default)(t).call(t,(e=>"dscp_marking"===e.type));return s.default.resolve(a)}));var v=(0,c.inject)("rootStore")((0,c.observer)(h));a.default=v},3907:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.QoSPolicyDetail=void 0;var l=n(r(573)),o=r(412),s=n(r(1243)),d=r(576),u=n(r(1466)),c=n(r(3908)),f=n(r(1637));class p extends s.default{get name(){return t("qoS policy")}get policy(){return"get_policy"}get aliasPolicy(){return"neutron:get_policy"}get listUrl(){return this.getRoutePath("networkQos")}get actionConfigs(){return this.isAdminPage?f.default.actionConfigs:f.default.consoleActions}get detailInfos(){var e=[{title:t("Policy Name"),dataIndex:"name"},{title:t("Rule Numbers"),dataIndex:"rules",render:e=>e.length},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo"},{title:t("Default Policy"),dataIndex:"is_default",valueRender:"yesNo"},{title:t("Description"),dataIndex:"description"}];return this.isAdminPage&&(0,l.default)(e).call(e,3,0,{title:t("Owned Project"),dataIndex:"project_name"}),e}get tabs(){return[{title:t("Detail"),key:"detail",component:c.default},{title:t("Floating IPs"),key:"fip",component:u.default}]}init(){this.store=new d.QoSPolicyStore}}a.QoSPolicyDetail=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3908:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(86)),o=r(412),s=n(r(1249));class d extends s.default{get leftCards(){return[...this.BandwidthCard,this.DSCPMarkingCard]}getOptions(e){var{max_kbps:a="-",max_burst_kbps:r="-"}=e||{};return[{label:t("Max BandWidth"),content:"".concat("-"===a?a:a/1024," Mbps")},{label:t("Max Burst"),content:"".concat("-"===r?r:r/1024," Mbps")}]}get BandwidthCard(){var{rules:e=[]}=this.detailData,a=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"egress"===e.direction)),r=(0,l.default)(e).call(e,(e=>"bandwidth_limit"===e.type&&"ingress"===e.direction));return[{title:t("BandWidth Limit Egress"),options:this.getOptions(a)},{title:t("BandWidth Limit Ingress"),options:this.getOptions(r)}]}get DSCPMarkingCard(){var{rules:e=[]}=this.detailData,a=(0,l.default)(e).call(e,(e=>"dscp_marking"===e.type))||{},r=[{label:t("Value"),content:0===a.dscp_mark?"0":a.dscp_mark||"-"}];return{title:t("DSCP Marking"),options:r}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3909:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.LoadBalancerInstance=void 0,r(1246);var l=n(r(1247));r(1244);var o=n(r(1245)),s=n(r(49)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=(r(161),r(581)),m=r(1254),h=r(66),v=r(1639);class g extends f.default{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"fetchDataByPage",function(){var t=(0,s.default)((function*(t){yield e.store.fetchListByPageWithFip(t),e.list.silent=!1}));return function(e){return t.apply(this,arguments)}}()),(0,d.default)(this,"fetchDownloadData",function(){var t=(0,s.default)((function*(t){return e.isFilterByBackend?yield e.downloadStore.fetchListByPageWithFip(e.updateFetchParamsByPage(t)):yield e.downloadStore.fetchList(e.updateFetchParams(t))}));return function(e){return t.apply(this,arguments)}}()),(0,d.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("lbDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Network ID"),dataIndex:"vip_network_id"},{title:t("IP"),dataIndex:"vip_address"},{title:t("Floating IP"),dataIndex:"fip",render:e=>e||"-"},{title:t("Port ID"),dataIndex:"vip_port_id"},{title:t("Operating Status"),dataIndex:"operating_status",valueMap:m.operatingStatusCodes,titleTip:u.default.createElement(l.default,null,u.default.createElement(o.default,null,t("DRAINING: The member is not accepting new connections")),u.default.createElement(o.default,null,t("DEGRADED: One or more of the entity’s components are in ERROR")))},{title:t("Provisioning Status"),dataIndex:"provisioning_status",valueMap:m.provisioningStatusCodes},{title:t("Listener Number"),dataIndex:"listeners",render:e=>e.length},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0}]))}init(){this.store=new p.LbaasStore,this.downloadStore=new p.LbaasStore}get fetchDataByCurrentProject(){return!0}get policy(){return"os_load-balancer_api:loadbalancer:get_all"}get checkEndpoint(){return!0}get endpoint(){return(0,h.lbEndpoint)()}get name(){return t("Load Balancers")}get isFilterByBackend(){return!0}get actionConfigs(){return this.isAdminPage?v.adminActions:v.actionConfigs}get adminPageHasProjectFilter(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.LoadBalancerInstance=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3910:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(581));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"policy",(()=>"edit_load_balancer")),(0,o.default)(this,"onSubmit",(e=>u.default.update({id:this.item.id},e)))}get name(){return t("Edit Load Balancer")}get defaultValue(){var{item:e}=this;return{name:e.name,description:e.description}}get formItems(){return[{name:"name",label:t("Load Balancer Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=c,(0,o.default)(c,"id","edit_load_balancer"),(0,o.default)(c,"title",t("Edit")),(0,o.default)(c,"policy","os_load-balancer_api:loadbalancer:put"),(0,o.default)(c,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&"ACTIVE"===e.provisioning_status)}));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3911:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=r(1251),d=n(r(581)),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_load-balancer_api:loadbalancer:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})+t("This will delete all child objects of the load balancer.")})),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(this.isCurrentProject(e)&&"ACTIVE"===e.provisioning_status||"ERROR"===e.provisioning_status))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Load Balancer")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete load balancer")}isCurrentProject(e){var t=u.default;return!(!(0,s.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3912:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(412),u=n(r(346)),c=r(1241),f=r(1258),p=r(1273),m=r(1267);class h extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"handleFixedIPChange",(e=>p.handleFixedIPChange.call(this,e))),(0,s.default)(this,"onSubmit",(e=>{var{fixed_ip:t,fip:a}=e,r=t.selectedRows[0],i=a.selectedRowKeys[0];return u.default.associateFip({id:i,port_id:this.item.vip_port_id,fixed_ip_address:r.ip_address})}))}init(){this.getInterfaces(),m.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={interfaces:[],fixed_ip:null,portFixedIPs:[],canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],portLoading:!0}}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Associate Floating IP")}getInterfaces(){var e=this;return(0,o.default)((function*(){var t=[{port_id:e.item.vip_port_id,network_id:e.item.vip_network_id,fixed_ips:[{ip_address:e.item.vip_address,subnet_id:e.item.vip_subnet_id}]}],a=yield(0,p.getInterfaceWithReason)(t);e.setState({interfaces:a,portLoading:!1})}))()}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return f.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{lb:e}}getFIPFormItemExtra(){return(0,p.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,p.disableFIPAssociate)(e)}get formItems(){var e=(0,p.getFixedIPFormItemForAssociate)(t("Fixed IP"),this),a=(0,p.getFIPFormItemForAssociate)(this);return[{name:"lb",label:t("Load Balancer"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=h,(0,s.default)(h,"id","AssociateFip"),(0,s.default)(h,"title",t("Associate Floating IP")),(0,s.default)(h,"policy","update_floatingip"),(0,s.default)(h,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&"ACTIVE"===e.provisioning_status&&function(e){return null===e.fip||void 0===e.fip}(e))}));var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3913:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=n(r(1250)),u=r(412),c=r(233),f=r(417),p=r(581);class m extends d.default{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"allowed",(()=>l.default.resolve())),(0,s.default)(this,"handleOwnedNetworkChange",(e=>{var{network_id:t}=this.state,a=e.selectedRowKeys[0];this.setState({network_id:a},(()=>{var{network_id:e}=this.state;t&&t!==e&&this.formRef.current.setFieldsValue({vip_address:void 0})})),this.getSubnets(a)})),(0,s.default)(this,"fetchSubnetDetails",function(){var t=(0,o.default)((function*(t){var a=yield e.subnetStore.fetchList({network_id:t});e.setState({subnetDetails:a||[]})}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new p.LbaasStore,this.networkStore=new c.NetworkStore,this.subnetStore=new f.SubnetStore}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){return{project_id:this.props.rootStore.user.project.id,admin_state_enabled:!0}}getSubnets(e){var t=this;return(0,o.default)((function*(){yield t.networkStore.fetchDetail({id:e}),yield t.fetchSubnetDetails(e)}))()}get formItems(){var{network_id:e,subnetDetails:a=[]}=this.state;return[{name:"name",label:t("Load Balancer Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"},{name:"vip_network_id",label:t("Owned Network"),type:"network-select-table",onChange:this.handleOwnedNetworkChange,required:!0},{name:"vip_address",label:t("Owned Subnet"),type:"ip-distributor",subnets:a,formRef:this.formRef,maxNumber:1,hidden:!e,required:!0},{name:"admin_state_enabled",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the port.")}]}}a.BaseStep=m;var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3914:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ListenerStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(35)),d=r(412),u=n(r(1250)),c=r(1254),f=r(1337),p=r(1338);class m extends u.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>l.default.resolve()))}init(){this.containersStore=new f.ContainersStore,this.secretsStore=new p.SecretsStore,this.fetchContainers(),this.fetchSecrets()}get title(){return"Listener Detail"}get name(){return"Listener Detail"}get isStep(){return!0}fetchContainers(){this.containersStore.fetchList()}fetchSecrets(){this.secretsStore.fetchList({mode:"CA"})}get SERVERSecrets(){return this.containersStore.list.data||[]}get CASecrets(){return this.secretsStore.list.data||[]}get SNISecrets(){var e;return(0,o.default)(e=this.containersStore.list.data||[]).call(e,(e=>!!e.domain))}get defaultValue(){return{listener_ssl_parsing_method:"one-way",listener_sni_enabled:!1,listener_connection_limit:-1,listener_admin_state_up:!0}}get nameForStateUpdate(){return["listener_protocol","listener_ssl_parsing_method","listener_sni_enabled"]}get formItems(){var e,{listener_protocol:a,listener_ssl_parsing_method:r,listener_sni_enabled:i}=this.state,n=(0,c.getListenerInsertHeadersFormItem)();return[{name:"listener_name",label:t("Listener Name"),type:"input-name",required:!0},{name:"listener_description",label:t("Listener Description"),type:"textarea"},{name:"listener_protocol",label:t("Listener Protocol"),type:"select",options:c.listenerProtocols,onChange:()=>{this.updateContext({pool_protocol:"",health_type:""})},required:!0},{name:"listener_ssl_parsing_method",label:t("SSL Parsing Method"),type:"select",options:c.sslParseMethod,required:!0,display:"TERMINATED_HTTPS"===a},{name:"listener_default_tls_container_ref",label:t("Server Certificate"),type:"select-table",required:!0,data:this.SERVERSecrets,isLoading:!1,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a},{name:"listener_client_ca_tls_container_ref",label:t("CA Certificate"),type:"select-table",required:!0,data:this.CASecrets,isLoading:!1,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,o.default)(e=(0,c.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex)),display:"TERMINATED_HTTPS"===a&&"two-way"===r},{name:"listener_sni_enabled",label:t("SNI Enabled"),type:"switch",display:"TERMINATED_HTTPS"===a},{name:"listener_sni_container_refs",label:t("SNI Certificate"),type:"select-table",required:!0,data:this.SNISecrets,isLoading:!1,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getCertificateColumns)(this),display:"TERMINATED_HTTPS"===a&&i},{name:"listener_protocol_port",label:t("Listener Protocol Port"),type:"input-number",required:!0},{name:"listener_connection_limit",label:t("Listener Connection Limit"),type:"input-number",min:-1,extra:t("-1 means no connection limit"),required:!0},{name:"listener_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the listener.")},n]}}a.ListenerStep=m;var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3915:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.PoolStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(164)),d=n(r(35)),u=r(412),c=n(r(1250)),f=r(1400),p=r(1254);class m extends c.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve())),(0,d.default)(this,"handleAlgorithmChange",(e=>{this.setState({pool_lb_algorithm:e})}))}get title(){return"Pool Detail"}get name(){return"Pool Detail"}get isStep(){return!0}get filterOptions(){var{context:{listener_protocol:e=""}={}}=this.props;return(0,o.default)(p.poolProtocols).call(p.poolProtocols,(t=>(0,s.default)(e).call(e,t.label)))}init(){this.state={pool_lb_algorithm:void 0}}get defaultValue(){return{pool_admin_state_up:!0}}get formItems(){var{pool_lb_algorithm:e}=this.state;return[{name:"pool_name",label:t("Pool Name"),type:"input-name",required:!0},{name:"pool_description",label:t("Pool Description"),type:"textarea"},{name:"pool_lb_algorithm",label:t("Pool Algorithm"),type:"select",options:f.Algorithm,onChange:this.handleAlgorithmChange,extra:e&&f.algorithmTip[e],required:!0},{name:"pool_protocol",label:t("Pool Protocol"),type:"select",options:this.filterOptions,onChange:()=>{this.updateContext({health_type:""})},required:!0},{name:"pool_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.PoolStep=m;var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3916:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.MemberStep=void 0;var n=i(a(63)),l=i(a(29)),o=i(a(35)),s=i(a(119)),d=a(412),u=i(a(1250)),c=a(572);class f extends u.default{constructor(){super(...arguments),(0,o.default)(this,"allowed",(()=>n.default.resolve()))}init(){this.store=new c.PortStore,this.state={ports:[]},this.store.fetchList().then((e=>{this.setState({ports:(0,l.default)(e).call(e,(e=>"network:dhcp"!==e.device_owner&&"network:router_gateway"!==e.device_owner))})}))}get title(){return"Member Detail"}get name(){return"Member Detail"}get isStep(){return!0}get wrapperCol(){return{xs:{span:16},sm:{span:12}}}get formItems(){return[{name:"extMembers",type:"member-allocator",lbSubnetId:(0,s.default)(this.props.context,"vip_address[0].subnet",""),isLoading:this.store.list.isLoading,ports:this.state.ports}]}}t.MemberStep=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));t.default=p},3917:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HealthMonitorStep=void 0;var l=n(r(63)),o=n(r(29)),s=n(r(164)),d=n(r(35)),u=r(412),c=n(r(1250)),f=r(1254);class p extends c.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}get title(){return"Health Monitor Detail"}get name(){return"Health Monitor Detail"}get isStep(){return!0}get filteredProtocolOptions(){var{context:{listener_protocol:e=""}={}}=this.props;return(0,o.default)(f.healthProtocols).call(f.healthProtocols,(t=>(0,s.default)(e).call(e,t.label)))}get defaultValue(){return{enableHealthMonitor:!0,health_delay:5,health_timeout:3,health_max_retries:3,health_type:"",monitor_admin_state_up:!0}}get formItems(){var{health_delay:e,enableHealthMonitor:a}=this.state;return[{name:"enableHealthMonitor",label:t("Enable Health Monitor"),type:"radio",options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"health_name",label:t("Health Monitor Name"),type:"input-name",required:!0,hidden:!a},{name:"health_delay",label:t("Health Monitor Delay"),type:"input-number",onChange:e=>{this.setState({health_delay:e})},min:0,extra:t("Maximum interval time for each health check response"),required:!0,hidden:!a},{name:"health_max_retries",label:t("Health Monitor Max Retries"),type:"input-number",min:1,max:10,extra:t("That is, after how many consecutive failures of the health check, the health check status of the back-end cloud server is changed from normal to abnormal"),required:!0,hidden:!a},{name:"health_timeout",label:t("Health Monitor Timeout"),type:"input-number",min:e||0,extra:t("The timeout period of waiting for the return of the health check request, the check timeout will be judged as a check failure"),required:!0,hidden:!a},{name:"health_type",label:t("Health Monitor Type"),type:"select",options:this.filteredProtocolOptions,required:!0,hidden:!a},{name:"monitor_admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the health monitor."),hidden:!a}]}}a.HealthMonitorStep=p;var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3918:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(346));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_floatingip"),(0,l.default)(this,"allowedCheckFunc",(e=>"ACTIVE"===e.provisioning_status&&!!e.fip_id)),(0,l.default)(this,"onSubmit",(()=>s.default.disassociateFip({id:this.item.fip_id})))}get id(){return"disassociate-fip-from-lb"}get title(){return t("Disassociate Floating IP")}get buttonText(){return t("Disassociate Floating IP")}get actionName(){return t("disassociate floating ip")}}a.default=d},3919:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LoadBalancerDetail=void 0;var p=f(r(35)),m=r(412),h=f(r(1243)),v=r(581),g=r(1254),_=f(r(3920)),b=r(1639);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{if(this.store.fetchDetailWithFip){var t=I(I(I({},this.params),e||{}),{},{silent:!0,all_projects:this.isAdminPage});this.store.fetchDetailWithFip(t).catch(this.catch)}}))}get name(){return t("load balancer")}get policy(){return"os_load-balancer_api:loadbalancer:get_one"}get listUrl(){return this.getRoutePath("lb")}get actionConfigs(){return this.isAdminPage?b.adminActions:b.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"provisioning_status",valueMap:g.provisioningStatusCodes},{title:t("Network"),dataIndex:"vip_network_id"},{title:t("Subnet"),dataIndex:"vip_subnet_id"},{title:t("IP"),dataIndex:"vip_address"},{title:t("Floating IP"),dataIndex:"fip"},{title:t("Provider"),dataIndex:"provider"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Listeners"),key:"listener",component:_.default}]}init(){this.store=new v.LbaasStore}}a.LoadBalancerDetail=A;var S=(0,m.inject)("rootStore")((0,m.observer)(A));a.default=S},3920:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Listeners=void 0;var p=f(r(58)),m=f(r(35)),h=r(412),v=f(r(1242)),g=r(1254),_=r(1306),b=r(342),y=r(1641);function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class A extends v.default{constructor(){super(...arguments),(0,m.default)(this,"updateFetchParamsByPage",(e=>{var{id:t}=e;return function(e){for(var t=1;t[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("lbListenerDetail"),routeParamsFunc:e=>({loadBalancerId:this.id,id:e.id})},{title:t("Status"),dataIndex:"provisioning_status",valueMap:g.provisioningStatusCodes,isHideable:!0},{title:t("Protocol"),dataIndex:"protocol",isHideable:!0,render:e=>("TERMINATED_HTTPS"===e?"HTTPS":e)||"-"},{title:t("Port"),dataIndex:"protocol_port",isHideable:!0},{title:t("Max connect"),dataIndex:"connection_limit"},{title:t("Admin State Up"),dataIndex:"admin_state_up",render:e=>e?t("On"):t("Off")}]))}init(){this.store=new _.ListenerStore,this.downloadStore=new _.ListenerStore}get policy(){return"os_load-balancer_api:listener:get_all"}get name(){return t("listeners")}get id(){return this.params.id}get isFilterByBackend(){return!0}get forceRefreshTopDetailWhenListRefresh(){return!0}get actionConfigs(){var{provisioning_status:e}=this.props.detail;return"ACTIVE"!==e?b.emptyActionConfig:this.isAdminPage?y.adminActions:y.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Listeners=A;var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3921:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreatePool=void 0;var l=n(r(29)),o=n(r(164)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(412),f=r(1241),p=n(r(1401)),m=n(r(581)),h=r(1400),v=r(1254);class g extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"handleAlgorithmChange",(e=>{this.setState({algorithm:e})})),(0,u.default)(this,"onSubmit",(e=>(e.listener_id=this.item.id,p.default.create(e))))}get name(){return t("create default pool")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filterOptions(){var{protocol:e=""}=this.item;return(0,l.default)(v.poolProtocols).call(v.poolProtocols,(t=>(0,o.default)(e).call(e,t.label)))}init(){this.state={algorithm:void 0}}get defaultValue(){return{admin_state_up:!0}}get formItems(){var{algorithm:e}=this.state;return[{name:"name",label:t("Pool Name"),type:"input-name",required:!0},{name:"description",label:t("Pool Description"),type:"textarea"},{name:"lb_algorithm",label:t("Pool Algorithm"),type:"select",options:h.Algorithm,onChange:this.handleAlgorithmChange,extra:e&&h.algorithmTip[e],required:!0},{name:"protocol",label:t("Pool Protocol"),type:"select",options:this.filterOptions,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.CreatePool=g,(0,u.default)(g,"id","pool-create"),(0,u.default)(g,"title",t("Create Default Pool")),(0,u.default)(g,"buttonText",t("Create Default Pool")),(0,u.default)(g,"policy","os_load-balancer_api:pool:post"),(0,u.default)(g,"allowed",function(){var e=(0,d.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield m.default.pureFetchDetail(e.loadbalancers[0])),s.default.resolve(!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3922:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(1306)),c=n(r(581));class f extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_load-balancer_api:listener:delete"),(0,s.default)(this,"allowed",function(){var e=(0,o.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield c.default.pureFetchDetail(e.loadbalancers[0])),l.default.resolve(!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}()),(0,s.default)(this,"onSubmit",(e=>u.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Listener")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete listener")}}a.default=f},3923:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(164)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=f(r(1306)),A=f(r(581)),S=r(1254),w=r(1642);function x(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class P extends w.Create{constructor(){super(...arguments),(0,b.default)(this,"onSubmit",(e=>{var t,{id:a}=this.item,{protocol:r,protocol_port:i,sni_enabled:n,ssl_parsing_method:l,default_tls_container_ref:f,client_ca_tls_container_ref:m,sni_container_refs:h,insert_headers:v}=e,g=function(e){for(var t=1;te.container_ref)):[]);return I.default.edit({id:a},g)}))}get name(){return t("Edit Listener")}get isEdit(){return!0}get defaultValue(){var{item:e}=this.props,{name:t,description:a,protocol:r,protocol_port:i,connection_limit:n,admin_state_up:l}=e||{},o={name:t,description:a,protocol:r,protocol_port:i,connection_limit:n,insert_headers:(0,S.getInsertHeadersFormValueFromListener)(e),admin_state_up:l};if("TERMINATED_HTTPS"===e.protocol){if(e.default_tls_container_ref){var s,[,d]=e.default_tls_container_ref.split("/containers/");o.default_tls_container_ref={selectedRowKeys:[d],selectedRows:(0,m.default)(s=this.ServerCertificate).call(s,(e=>e.id===d))}}if(e.client_ca_tls_container_ref){var u,[,c]=e.client_ca_tls_container_ref.split("/secrets/");o.ssl_parsing_method="two-way",o.client_ca_tls_container_ref={selectedRowKeys:[c],selectedRows:(0,m.default)(u=this.CaCertificate).call(u,(e=>e.id===c))}}else o.ssl_parsing_method="one-way";if(e.sni_container_refs&&e.sni_container_refs.length){var f,v;o.sni_enabled=!0;var g=(0,p.default)(f=e.sni_container_refs).call(f,(e=>{var[,t]=e.split("/containers/");return t}));o.sni_container_refs={selectedRowKeys:g,selectedRows:(0,m.default)(v=this.SNICertificate).call(v,(e=>(0,h.default)(g).call(g,e.id)))}}else o.sni_enabled=!1}return o}get formItems(){var e=super.formItems;return(0,p.default)(e).call(e,(e=>("sni_enabled"===e.name&&(e.disabled=this.item.sni_container_refs&&this.item.sni_container_refs.length,e.tip=t("If the listener has an SNI certificate installed, it cannot be removed. Please delete the listener or replace the SNI certificate")),e)))}}a.Edit=P,(0,b.default)(P,"id","edit-listener"),(0,b.default)(P,"title",t("Edit Listener")),(0,b.default)(P,"buttonText",t("Edit")),(0,b.default)(P,"policy","os_load-balancer_api:listener:put"),(0,b.default)(P,"allowed",function(){var e=(0,g.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield A.default.pureFetchDetail(e.loadbalancers[0])),v.default.resolve("ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var C=(0,y.inject)("rootStore")((0,y.observer)(P));a.default=C},3924:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditPoolInfo=void 0;var l=n(r(29)),o=n(r(164)),s=n(r(63)),d=n(r(49)),u=n(r(58)),c=n(r(35)),f=r(412),p=r(1241),m=n(r(1401)),h=r(1400),v=r(1254),g=n(r(581));class _ extends p.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.item,{protocol:a}=e,r=(0,u.default)(e,["protocol"]);return this.store.edit({id:t},r)}))}init(){this.state.pool={},this.store=m.default,this.getPoolDetail()}get name(){return t("edit default pool")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filteredProtocolOptions(){var{pool:{protocol:e=""}={}}=this.state;return(0,l.default)(v.poolProtocols).call(v.poolProtocols,(t=>(0,o.default)(e).call(e,t.label)))}get defaultValue(){var{pool:e}=this.state,{name:t,description:a,protocol:r,lb_algorithm:i,admin_state_up:n}=e;return{name:t,description:a,protocol:r,lb_algorithm:i,admin_state_up:n}}getPoolDetail(){var e=this;return(0,d.default)((function*(){var{default_pool_id:t}=e.item,a=yield e.store.fetchDetail({id:t});e.setState({pool:a},(()=>{e.updateDefaultValue()}))}))()}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"protocol",label:t("Protocol"),type:"select",options:this.filteredProtocolOptions,required:!0},{name:"lb_algorithm",label:t("LB Algorithm"),type:"select",options:h.Algorithm,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the pool.")}]}}a.EditPoolInfo=_,(0,c.default)(_,"id","pool-edit"),(0,c.default)(_,"title",t("Edit Default Pool")),(0,c.default)(_,"buttonText",t("Edit Default Pool")),(0,c.default)(_,"policy","os_load-balancer_api:pool:put"),(0,c.default)(_,"allowed",function(){var e=(0,d.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield g.default.pureFetchDetail(e.loadbalancers[0])),s.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var b=(0,f.inject)("rootStore")((0,f.observer)(_));a.default=b},3925:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.EditHealthMonitor=void 0;var m=p(r(63)),h=p(r(29)),v=p(r(164)),g=p(r(49)),_=p(r(58)),b=p(r(35)),y=r(412),I=r(1241),A=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=C(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}r.default=e,a&&a.set(e,r);return r}(r(3926)),S=r(1254),w=r(1401),x=p(r(581)),P=r(1306);function C(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(C=function(e){return e?a:t})(e)}function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{var{default_pool_id:t}=this.item,{healthMonitor:a}=this.state,{id:r}=a||{},{enableHealthMonitor:i,type:n}=e,l=(0,_.default)(e,["enableHealthMonitor","type"]);if(r)return i?A.default.edit({id:r},l):A.default.delete({id:r});if(!i)return m.default.resolve();var o=D(D({type:n},l),{},{pool_id:t});return A.default.create(o)}))}init(){this.store=new A.HealthMonitorStore,this.listenerStore=new P.ListenerStore,this.poolStore=new w.PoolStore,this.state={enableHealthMonitor:!1,dataLoading:!0,healthMonitor:null}}componentDidMount(){this.getHealthMonitor()}get name(){return t("edit health monitor")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get filteredProtocolOptions(){var{protocol:e=""}=this.item;return(0,h.default)(S.healthProtocols).call(S.healthProtocols,(t=>(0,v.default)(e).call(e,t.label)))}get defaultValue(){var{healthMonitor:e}=this.state;if(!e)return{delay:5,timeout:3,max_retries:3,enableHealthMonitor:!1,admin_state_up:!0};var{admin_state_up:t,operating_status:a,type:r,delay:i,timeout:n,max_retries:l}=e;return{enableHealthMonitor:!0,admin_state_up:t,operating_status:a,type:r,delay:i,timeout:n,max_retries:l}}getHealthMonitor(){var e=this;return(0,g.default)((function*(){var t=yield e.listenerStore.fetchDetail(e.item),{healthMonitor:a}=t;e.setState({healthMonitor:a,enableHealthMonitor:!!a,dataLoading:!1},(()=>{e.updateDefaultValue()}))}))()}get formItems(){var{enableHealthMonitor:e,dataLoading:a,healthMonitor:r}=this.state;return a?[{name:"loading",type:"loading"}]:[{name:"enableHealthMonitor",label:t("Enable Health Monitor"),type:"radio",required:!0,options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"type",label:t("HealthMonitor Type"),type:"select",options:this.filteredProtocolOptions,hidden:!e,required:!0,disabled:!!r},{name:"delay",label:t("Delay Interval(s)"),type:"input-int",min:0,extra:t("Maximum interval time for each health check response"),hidden:!e,required:!0},{name:"timeout",label:t("Timeout(s)"),type:"input-int",min:0,extra:t("The timeout period of waiting for the return of the health check request, the check timeout will be judged as a check failure"),hidden:!e,required:!0},{name:"max_retries",label:t("Max Retries"),type:"input-int",min:0,extra:t("That is, after how many consecutive failures of the health check, the health check status of the back-end cloud server is changed from normal to abnormal"),hidden:!e,required:!0},{name:"admin_state_up",label:t("Admin State Up"),type:"switch",tip:t("Defines the admin state of the health monitor."),hidden:!e}]}}a.EditHealthMonitor=k,(0,b.default)(k,"id","health-monitor-edit"),(0,b.default)(k,"title",t("Edit Health Monitor")),(0,b.default)(k,"buttonText",t("Edit Health Monitor")),(0,b.default)(k,"policy","os_load-balancer_api:healthmonitor:put"),(0,b.default)(k,"allowed",function(){var e=(0,g.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield x.default.pureFetchDetail(e.loadbalancers[0])),m.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}());var R=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=R},3926:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.HealthMonitorStore=void 0;var n=i(a(50)),l=i(a(53));class o extends l.default{get client(){return n.default.octavia.healthMonitors}get listFilterByProject(){return!0}}t.HealthMonitorStore=o;var s=new o;t.default=s},3927:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(63)),o=n(r(49)),s=n(r(35)),d=r(1241),u=n(r(1401)),c=n(r(581));class f extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_load-balancer_api:pool:delete"),(0,s.default)(this,"allowedCheckFunc",function(){var e=(0,o.default)((function*(e,t){var{detail:a}=t||{},r=e.loadBalancer||a;return r||(r=yield c.default.pureFetchDetail(e.loadbalancers[0])),l.default.resolve(!!e.default_pool_id&&"ACTIVE"===e.provisioning_status&&"ACTIVE"===r.provisioning_status)}));return function(t,a){return e.apply(this,arguments)}}()),(0,s.default)(this,"onSubmit",(()=>u.default.delete({id:this.item.default_pool_id})))}get id(){return"delete"}get title(){return t("Delete Default Pool")}get isDanger(){return!0}get buttonText(){return t("Delete Default Pool")}get actionName(){return t("delete default pool")}isOwnerOrAdmin(){return!0}}a.default=f},3928:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ListenerDetail=void 0;var l=r(412),o=r(1306),s=r(1254),d=n(r(1243)),u=n(r(3929)),c=n(r(3930)),f=r(1641);class p extends d.default{get name(){return t("listener")}get policy(){return"os_load-balancer_api:listener:get_one"}get listUrl(){var{loadBalancerId:e}=this.params;return this.getRoutePath("lbDetail",{id:e})}get actionConfigs(){return this.isAdminPage?f.adminActions:f.actionConfigs}get detailInfos(){return[{title:t("Listener Name"),dataIndex:"name"},{title:t("Protocol Type"),dataIndex:"protocol",render:e=>("TERMINATED_HTTPS"===e?"HTTPS":e)||"-"},{title:t("Port"),dataIndex:"protocol_port"},{title:t("Status"),dataIndex:"provisioning_status",valueMap:s.provisioningStatusCodes},{title:t("Max connect"),dataIndex:"connection_limit"},{title:t("Admin State Up"),dataIndex:"admin_state_up",render:e=>e?t("On"):t("Off")},{title:t("Description"),dataIndex:"description"}]}get forceLoadingTabs(){return["detail"]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default},{title:t("Members"),key:"members",component:c.default}]}init(){this.store=new o.ListenerStore}}a.ListenerDetail=p;var m=(0,l.inject)("rootStore")((0,l.observer)(p));a.default=m},3929:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(77)),s=n(r(177)),d=r(412),u=n(r(1249)),c=r(1254),f=r(1400);class p extends u.default{get leftCards(){var e=[this.poolCard],{insert_headers:t={},default_pool_id:a}=this.detailData;return a&&e.push(this.healthMonitor),(0,s.default)(t)||e.push(this.customHeaders),e}get rightCards(){var{protocol:e}=this.detailData||{};return"TERMINATED_HTTPS"!==e||this.isAdminPage?[]:[this.certificateInfo]}get poolCard(){var{default_pool:e={},default_pool_id:a}=this.detailData||{},{name:r,protocol:i,lb_algorithm:n,description:l,admin_state_up:o}=e,s=a?[{label:t("Name"),content:r||"-"},{label:t("Protocol"),content:i||"-"},{label:t("LB Algorithm"),content:f.algorithmDict[n]||n||"-"},{label:t("Admin State Up"),content:o?t("On"):t("Off")},{label:t("Description"),content:l||"-"}]:[{label:"",content:t("No default pool set")}];return{title:t("Pool Info"),options:s}}get customHeaders(){var{insert_headers:e={}}=this.detailData||{};return(0,c.getInsertHeaderCard)(e||{})}get healthMonitor(){var e=this.detailData.healthMonitor||{},{type:a,delay:r,timeout:i,max_retries:n,admin_state_up:l}=e,o=[{label:t("Enable Health Monitor"),content:(0,s.default)(e)?t("No"):t("Yes")}];return(0,s.default)(e)||o.push({label:t("Health Monitor Type"),content:a},{label:t("Delay Interval(s)"),content:r},{label:t("Timeout(s)"),content:i},{label:t("Max Retries"),content:n},{label:t("Admin State Up"),content:l?t("On"):t("Off")}),{title:t("Health Monitor"),options:o}}get certificateInfo(){var e=[{label:t("Server Certificate"),dataIndex:"serverCertificateId",render:e=>e?this.getLinkRender("certificateContainerDetail",e,{id:e},null):"-"},{label:t("CA Certificate"),dataIndex:"caCertificateId",render:e=>e?this.getLinkRender("certificateSecretDetail",e,{id:e},null):"-"},{label:t("SNI Certificate"),dataIndex:"sniCertificateId",render:e=>e.length?(0,l.default)(e).call(e,((t,a)=>{var r;return this.getLinkRender("certificateContainerDetail",(0,o.default)(r="".concat(t)).call(r,a===e.length-1?"":" , "),{id:t})}),null):"-"}];return{title:t("certificate"),options:e,labelCol:4}}}a.BaseDetail=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3930:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Members=void 0;var l=n(r(49)),o=n(r(35)),s=r(412),d=n(r(1242)),u=r(1254),c=n(r(1402)),f=r(418),p=r(3931);class m extends d.default{constructor(){var e;super(...arguments),e=this,(0,o.default)(this,"fetchData",(0,l.default)((function*(){var{default_pool_id:t}=e.props.detail;t?e.fetchListWithTry((0,l.default)((function*(){yield e.store.fetchList({pool_id:t}),e.list.silent=!1}))):(e.list.data=[],e.list.isLoading=!1)}))),(0,o.default)(this,"getColumns",(()=>[f.idNameColumn,{title:t("Status"),dataIndex:"provisioning_status",valueMap:u.provisioningStatusCodes,isHideable:!0},{title:t("Ip Address"),dataIndex:"address",isHideable:!0},{title:t("Port"),dataIndex:"protocol_port",isHideable:!0},{title:t("Weight"),dataIndex:"weight"}]))}init(){this.store=c.default}get policy(){return"os_load-balancer_api:member:get_all"}get name(){return t("Members")}get id(){return this.params.id}get forceRefreshTopDetailWhenListRefresh(){return!0}get actionConfigs(){return this.isAdminPage?p.adminActions:p.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Members=m;var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},3931:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminActions=t.actionConfigs=void 0;var n=i(a(3932)),l=i(a(3933)),o={rowActions:{firstAction:i(a(3935)).default,moreActions:[{action:n.default}]},batchActions:[],primaryActions:[l.default]};t.actionConfigs=o;var s={rowActions:{moreActions:[{action:n.default}]},batchActions:[],primaryActions:[]};t.adminActions=s},3932:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1402));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_load-balancer_api:member:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e)&&"ACTIVE"===e.provisioning_status)),(0,l.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.containerProps.detail;return s.default.delete({id:e.id,default_pool_id:t})}))}get id(){return"delete"}get title(){return t("Delete Member")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete member")}isOwnerOrAdmin(){return!0}}a.default=d},3933:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var l=n(r(54)),o=n(r(28)),s=n(r(29)),d=n(r(63)),u=n(r(49)),c=n(r(35)),f=n(r(119)),p=n(r(3934)),m=n(r(0)),h=r(412),v=r(1241),g=r(1402),_=r(572),b=r(36),y=n(r(581)),I=n(r(1459));class A extends v.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var t,{default_pool_id:a}=this.item,{extMembers:r=[]}=e,i=(0,l.default)(t=(0,b.toJS)(this.memberStore.list.data)).call(t,(e=>{var{weight:t,protocol_port:a,address:r,name:i,subnet_id:n}=e;return{weight:t,protocol_port:a,address:r,name:i,subnet_id:n}}));return(0,o.default)(r).call(r,(e=>{var{ip:t,protocol_port:a,weight:r,name:n=null,subnet_id:l}=e.ip_address,o={weight:r,protocol_port:a,address:t,name:n,subnet_id:l};i.push(o)})),this.memberStore.batchUpdate({default_pool_id:a,data:(0,p.default)(i,I.default)})}))}get name(){return t("Add Member")}init(){this.store=new _.PortStore,this.memberStore=new g.PoolMemberStore,this.lbDetail={},this.state={ports:[]}}componentDidMount(){this.getMember(),y.default.fetchDetail({id:this.props.containerProps.match.params.loadBalancerId}).then((e=>(this.lbDetail=e,this.store.fetchList()))).then((e=>{this.setState({ports:(0,s.default)(e).call(e,(e=>"network:dhcp"!==e.device_owner&&"network:router_gateway"!==e.device_owner))})}))}static get modalSize(){return"large"}getMember(){var e=this;return(0,u.default)((function*(){var{default_pool_id:t}=e.item;yield e.memberStore.fetchList({pool_id:t})}))()}getModalSize(){return"large"}get item(){var{item:e}=this.props;return e||this.containerProps.detail}get defaultValue(){return{}}get tips(){return m.default.createElement("div",{style:{display:"inline-table"}},m.default.createElement("p",{style:{color:globalCSS.primaryColor}},t("The amphora instance is required for load balancing service setup and is not recommended")))}get formItems(){return[{name:"extMembers",type:"member-allocator",lbSubnetId:(0,f.default)(this.lbDetail,"vip_subnet_id",""),isLoading:this.store.list.isLoading,ports:this.state.ports,members:this.memberStore.list.data}]}}a.CreateAction=A,(0,c.default)(A,"id","manage-member"),(0,c.default)(A,"title",t("Add Member")),(0,c.default)(A,"policy","os_load-balancer_api:member:post"),(0,c.default)(A,"allowed",(e=>d.default.resolve("ACTIVE"===e.provisioning_status&&!!e.default_pool_id)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3935:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(86)),o=n(r(63)),s=n(r(54)),d=n(r(35)),u=r(412),c=r(1241),f=n(r(1402)),p=r(36);class m extends c.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"protocolValidator",((e,a)=>{var r,{address:i,protocol_port:n}=this.item;return(0,l.default)(r=f.default.list.data||[]).call(r,(e=>e.address===i&&a===e.protocol_port&&a!==n))?o.default.reject(new Error(t("Invalid IP Address and Port"))):o.default.resolve()})),(0,d.default)(this,"onSubmit",(e=>{var{default_pool_id:t}=this.containerProps.detail,{id:a}=this.item,r=(0,p.toJS)(this.store.list.data),i=(0,s.default)(r).call(r,(t=>{if(t.id===a){var{weight:r,protocol_port:i}=e;t.weight=r,t.protocol_port=i}var{weight:n,protocol_port:l,address:o,name:s,subnet_id:d}=t;return{weight:n,protocol_port:l,address:o,name:s,subnet_id:d}}));return this.store.batchUpdate({default_pool_id:t,data:i})}))}init(){this.state={},this.store=f.default}get name(){return t("edit member")}get defaultValue(){var{weight:e,protocol_port:t}=this.item;return e&&t&&this.formRef.current&&this.formRef.current.setFieldsValue({weight:e,protocol_port:t}),{weight:e,protocol_port:t}}get formItems(){return[{name:"weight",label:t("Weight"),type:"input-number",required:!0},{name:"protocol_port",label:t("Port"),type:"input-number",required:!0,validator:this.protocolValidator}]}}a.Edit=m,(0,d.default)(m,"id","member-edit"),(0,d.default)(m,"title",t("Edit Member")),(0,d.default)(m,"buttonText",t("Edit Member")),(0,d.default)(m,"policy","os_load-balancer_api:member:put"),(0,d.default)(m,"allowed",(e=>o.default.resolve("ACTIVE"===e.provisioning_status)));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3936:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.VPN=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(3937)),u=n(r(3942)),c=n(r(3947)),f=n(r(3952)),p=n(r(3957));class m extends o.default{get name(){return t("VPN")}get checkEndpoint(){return!0}get endpoint(){return(0,s.vpnEndpoint)()}get tabs(){return[{title:t("VPN Gateways"),key:"vpn_gateway",component:d.default},{title:t("VPN EndPoint Groups"),key:"vpn_endpoint_groups",component:u.default},{title:t("IKE Policies"),key:"ike_policy",component:c.default},{title:t("IPsec Policies"),key:"ipsec_policy",component:f.default},{title:t("IPsec Site Connections"),key:"ipsec_site_connections",component:p.default}]}}a.VPN=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3937:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.VPNGateway=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(1358),u=r(1321),c=r(418),f=r(3938);class p extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[c.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("External IP"),dataIndex:"null",render:(e,t)=>t.external_v4_ip||t.external_v6_ip},{title:t("Router ID"),dataIndex:"router_id",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:u.vpnStatus}]))}init(){this.store=new d.VpnServicesStore,this.downloadStore=new d.VpnServicesStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_vpnservice"}get name(){return t("vpn services")}get hasTab(){return!0}get adminPageHasProjectFilter(){return!0}get actionConfigs(){return this.isAdminPage?f.adminConfigs:f.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:u.vpnStatusOptions},{label:t("Router ID"),name:"router_id"},{label:t("External IP(V4)"),name:"external_v4_ip"},{label:t("External IP(V6)"),name:"external_v6_ip"}]}}a.VPNGateway=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3938:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3939)),l=i(a(3940)),o=i(a(3941)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3939:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=r(1241),g=r(575),_=f(r(1358)),b=r(1267);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{name:t,description:a,router_id:r}=e;return _.default.create({name:t,description:a,router_id:r.selectedRowKeys[0]})}))}get name(){return t("create vpn")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.routerStore=new g.RouterStore}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},I(I({name:"router_id",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,extraParams:{project_id:this.currentProjectId}},(0,b.getRouterSelectTablePropsBackend)(this)),{},{disabledFunc:e=>!e.external_gateway_info,required:!0})]}}a.Create=A,(0,m.default)(A,"id","create-vpn"),(0,m.default)(A,"title",t("Create VPN")),(0,m.default)(A,"buttonText",t("Create")),(0,m.default)(A,"policy","create_vpnservice"),(0,m.default)(A,"allowed",(()=>p.default.resolve(!0)));var S=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=S},3940:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(1358));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return u.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-vpn"),(0,o.default)(c,"title",t("Edit VPN")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_vpnservice"),(0,o.default)(c,"allowed",(e=>"ACTIVE"!==e.status?l.default.resolve(!1):l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3941:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1358)),m=n(r(133)),h=n(r(1275));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_vpnservice"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield h.default.fetchList({vpnservice_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the vpn gateway is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpnservice"}get title(){return t("Delete VPN")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn")}isCurrentProject(e){var t=m.default;return!(!f.checkSystemAdmin&&e.project_id!==t.user.project.id)}}a.default=v},3942:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.EndpointGroup=void 0;var s=o(r(77)),d=o(r(54)),u=o(r(63));r(347);var c=o(r(348));r(1246);var f=o(r(1247));r(1244);var p=o(r(1245)),m=o(r(49));r(589);var h=o(r(590)),v=o(r(610)),g=o(r(35)),_=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=x(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(0)),b=r(412),y=o(r(1242)),I=r(1359),A=(r(161),r(564),r(417)),S=r(418),w=r(3943);function x(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(x=function(e){return e?a:t})(e)}class P extends y.default{constructor(){super(...arguments),(0,g.default)(this,"getColumns",(()=>[S.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Type"),dataIndex:"type",isHideable:!0,render:e=>{switch(e){case"subnet":return t("Local");case"cidr":return t("Peer");default:return""}}},{title:t("Endpoint Counts"),dataIndex:"endpoints",render:(e,a)=>{var r=_.default.createElement(C,{record:a});return _.default.createElement(_.default.Fragment,null,e.length," ",_.default.createElement(h.default,{content:r,title:"cidr"===a.type?t("Peer Network"):t("Local Network"),destroyTooltipOnHide:!0},_.default.createElement(v.default,null)))},stringify:e=>{var t;return(0,s.default)(t="".concat(e.length,"(")).call(t,e.join(","),")")}}]))}init(){this.store=new I.VpnEndPointGroupStore,this.downloadStore=new I.VpnEndPointGroupStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_endpoint_group"}get aliasPolicy(){return"neutron:get_endpoint_group"}get name(){return t("vpn endpoint groups")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?w.adminConfigs:w.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}function C(e){var{record:t}=e,{type:a,endpoints:r}=t,[i,n]=(0,_.useState)([]);return(0,_.useEffect)((()=>{"subnet"===a&&0===i.length&&(0,m.default)((function*(){var e=(0,d.default)(r).call(r,(e=>(new A.SubnetStore).fetchDetail({id:e}))),t=yield u.default.all(e);n(t)}))()})),"cidr"===a?_.default.createElement(f.default,null,(0,d.default)(r).call(r,(e=>{var a;return _.default.createElement(p.default,{span:24,key:(0,s.default)(a="".concat(e,"_")).call(a,t.id)},e)}))):0===i.length?_.default.createElement(c.default,null):_.default.createElement(f.default,{style:{maxWidth:550}},(0,d.default)(i).call(i,(e=>{var a;return _.default.createElement(p.default,{span:24,key:(0,s.default)(a="".concat(e,"_")).call(a,t.id)},_.default.createElement(f.default,{gutter:24},_.default.createElement(p.default,{span:6},e.name),_.default.createElement(p.default,{span:6},e.cidr),_.default.createElement(p.default,{span:12},e.id)))})))}a.EndpointGroup=P;var E=(0,b.inject)("rootStore")((0,b.observer)(P));a.default=E},3943:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3944)),l=i(a(3945)),o=i(a(3946)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3944:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(29)),m=f(r(1390)),h=f(r(232)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=r(1241),A=r(565),S=r(575),w=r(417),x=f(r(1359)),P=r(1267),C=r(1273);function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;t{var{type:t}=this.state,{name:a,description:r}=e,i=(0,_.default)(e,["name","description"]),n={name:a,description:r,type:t};if("subnet"===t){var{subnet_id:l}=i;n.endpoints=l.selectedRowKeys}else if("cidr"===t){var{endpoints:o}=i;n.endpoints=o.split("\n")}return x.default.create(n)})),(0,b.default)(this,"handleRouterChange",function(){var t=(0,g.default)((function*(t){var a;e.setState({subnetLoading:!0});var r=yield(0,C.getPortsWithFixedIPs)(),i=(0,C.getSubnetToRouter)(r,t.selectedRows,!1);e.setState({subnets:(0,p.default)(a=e.allSubnets).call(a,(e=>(0,m.default)(i).call(i,(t=>t.subnet_id===e.id))>-1)),subnetLoading:!1}),e.formRef.current.resetFields(["subnet_id"])}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("create vpn endpoint group")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.routerStore=new S.RouterStore,this.subnetStore=new w.SubnetStore,this.state={subnets:[],type:"subnet",subnetLoading:!0},this.getAllSubnets()}getAllSubnets(){var e=this;return(0,g.default)((function*(){e.allSubnets=yield e.subnetStore.pureFetchList(),e.setState({subnetLoading:!1})}))()}get defaultValue(){return{type:"subnet"}}get formItems(){var{subnets:e,type:a,subnetLoading:r}=this.state,i="subnet"===a;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"type",label:t("Type"),type:"select",required:!0,options:[{label:t("Peer"),value:"cidr"},{label:t("Local"),value:"subnet"}],onChange:e=>{this.setState({type:e})}},D(D({name:"router_id",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,extraParams:{project_id:this.currentProjectId}},(0,P.getRouterSelectTablePropsBackend)(this)),{},{required:!0,onChange:this.handleRouterChange,hidden:!i}),{name:"subnet_id",label:t("Subnet"),type:"select-table",data:e,isLoading:r,isMulti:!0,columns:[{title:t("Name"),dataIndex:"name",isLink:!0},{title:t("CIDR"),dataIndex:"cidr"}],required:!0,hidden:!i},{name:"endpoints",label:t("Peer Network Segment"),type:"textarea",validator:(e,a)=>{var r;return(0,h.default)(r=a.split("\n")).call(r,(e=>!k(e)&&!R(e)))?v.default.reject(new Error(t("Invalid: CIDR Format Error(e.g. 10.10.10.0/24)"))):v.default.resolve(!0)},extra:t("Please fill in the peer network segment and subnet mask of CIDR format, the written subnets should be under the same router, one per line."),hidden:i,required:!0}]}}a.Create=N,(0,b.default)(N,"id","create-vpn-endpoint-group"),(0,b.default)(N,"title",t("Create VPN Endpoint Group")),(0,b.default)(N,"buttonText",t("Create")),(0,b.default)(N,"policy","create_endpoint_group"),(0,b.default)(N,"aliasPolicy","neutron:create_endpoint_group"),(0,b.default)(N,"allowed",(()=>v.default.resolve(!0)));var j=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=j},3945:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(1359));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return u.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=c,(0,o.default)(c,"id","edit-vpn-endpoint-groups"),(0,o.default)(c,"title",t("Edit VPN EndPoint Groups")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","update_endpoint_group"),(0,o.default)(c,"aliasPolicy","neutron:update_endpoint_group"),(0,o.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3946:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1359)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_endpoint_group"),(0,u.default)(this,"aliasPolicy","neutron:delete_endpoint_group"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r;switch(a.type){case"cidr":r={peer_ep_group_id:a.id};break;case"subnet":r={local_ep_group_id:a.id}}var i,n=yield m.default.fetchList(r);return n.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(i="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(i,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(n).call(n,(e=>e.name)).join(", "),ids:(0,o.default)(n).call(n,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-endpoint-group"}get title(){return t("Delete VPN EndPoint Groups")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn endpoint groups")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3947:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IKEPolicy=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(77)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=r(1339),m=r(1321),h=r(418),v=r(3948);class g extends f.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[h.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Auth Algorithm"),dataIndex:"auth_algorithm",isHideable:!0},{title:t("Encryption Algorithm"),dataIndex:"encryption_algorithm",isHideable:!0},{title:t("IKE Version"),dataIndex:"ike_version",isHideable:!0},{title:t("Lifetime"),dataIndex:"lifetime",isHideable:!0,render:e=>{var t;return u.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,l.default)(t=(0,o.default)(e)).call(t,((t,a)=>{var r,i;return u.default.createElement("li",{key:(0,s.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,s.default)(i="".concat(t,": ")).call(i,e[t]))})))},stringify:e=>{var t;return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{var a;return(0,s.default)(a="".concat(t,": ")).call(a,e[t])})).join(" | ")}},{title:t("PFS"),dataIndex:"pfs",isHideable:!0}]))}init(){this.store=new p.VpnIKEPolicyStore,this.downloadStore=new p.VpnIKEPolicyStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ikepolicy"}get name(){return t("vpn IKE policy")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?v.adminConfigs:v.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Auth Algorithm"),name:"auth_algorithm",options:m.authAlgorithmOptions},{label:t("Encryption Algorithm"),name:"encryption_algorithm",options:m.encryptionAlgorithmOptions},{label:t("IKE Version"),name:"ike_version",options:m.ikePolicyIKEVersionOptions},{label:t("PFS"),name:"pfs",options:m.pfsOptions}]}}a.IKEPolicy=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3948:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3949)),l=i(a(3950)),o=i(a(3951)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3949:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(1339)),b=r(1321);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{lifetimeValue:t}=e,a=function(e){for(var t=1;tp.default.resolve(!0)));var A=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=A},3950:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(77)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=f(r(0)),b=r(412),y=r(1241),I=f(r(1339)),A=f(r(1275));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{lifetimeValue:t,canSubmit:a}=e,r=w({lifetime:{units:"seconds",value:t}},(0,v.default)(e,["lifetimeValue","canSubmit"]));return I.default.update({id:this.item.id},r)}))}init(){this.state={canSubmit:!0,connections:[]},A.default.fetchList({ikepolicy_id:this.item.id}).then((e=>{e.length>0&&this.setState({canSubmit:!1,connections:e})}))}get defaultValue(){var e=this.item,{lifetime:t}=e;return w(w({},(0,v.default)(e,["lifetime"])),{},{lifetimeValue:t.value})}get formItems(){var e,a,r,i,{canSubmit:n}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"canSubmit",label:t("Status"),component:_.default.createElement(_.default.Fragment,null,t("In Use")),validator:()=>{var e,{connections:a}=this.state;return n?p.default.resolve(!0):p.default.reject(new Error((0,m.default)(e="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.name,name:this.item.name,reason:t("the policy is in use")}),"\n\n ")).call(e,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,h.default)(a).call(a,(e=>e.name)).join(", "),ids:(0,h.default)(a).call(a,(e=>e.id)).join(", ")}))))},hidden:n},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"auth_algorithm",label:t("Auth Algorithm"),type:"select",options:(0,h.default)(e=["sha1","sha256","sha384","sha512"]).call(e,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"encryption_algorithm",label:t("Encryption Algorithm"),type:"select",options:(0,h.default)(a=["3des","aes-128","aes-192","aes-256"]).call(a,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"pfs",label:t("PFS"),type:"select",options:(0,h.default)(r=["group2","group5","group14"]).call(r,(e=>({label:e,value:e}))),required:!0},{name:"lifetimeValue",label:t("Lifetime Value"),type:"input-number",min:0,required:!0},{name:"ike_version",label:t("IKE Version"),type:"select",options:(0,h.default)(i=["v1","v2"]).call(i,(e=>({label:e,value:e}))),required:!0}]}}a.Edit=x,(0,g.default)(x,"id","edit-vpn-ike-policy"),(0,g.default)(x,"title",t("Edit VPN IKE Policy")),(0,g.default)(x,"buttonText",t("Edit")),(0,g.default)(x,"policy","update_ikepolicy"),(0,g.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},3951:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1339)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_ikepolicy"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield m.default.fetchList({ikepolicy_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-ike-policy"}get title(){return t("Delete VPN IKE Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn IKE policy")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3952:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecPolicy=void 0;var l=n(r(54)),o=n(r(32)),s=n(r(77)),d=n(r(35)),u=n(r(0)),c=r(412),f=n(r(1242)),p=r(1340),m=r(1321),h=r(418),v=r(3953);class g extends f.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[h.idNameColumn,{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Auth Algorithm"),dataIndex:"auth_algorithm",isHideable:!0},{title:t("Encapsulation Mode"),dataIndex:"encapsulation_mode",isHideable:!0},{title:t("Encryption Algorithm"),dataIndex:"encryption_algorithm",isHideable:!0},{title:t("Transform Protocol"),dataIndex:"transform_protocol",idHideable:!0},{title:t("Lifetime"),dataIndex:"lifetime",isHideable:!0,render:e=>{var t;return u.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,l.default)(t=(0,o.default)(e)).call(t,((t,a)=>{var r,i;return u.default.createElement("li",{key:(0,s.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,s.default)(i="".concat(t,": ")).call(i,e[t]))})))},stringify:e=>{var t;return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{var a;return(0,s.default)(a="".concat(t,": ")).call(a,e[t])})).join(" | ")}},{title:t("PFS"),dataIndex:"pfs",isHideable:!0}]))}init(){this.store=new p.VpnIPsecPolicyStore,this.downloadStore=new p.VpnIPsecPolicyStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ipsecpolicy"}get name(){return t("vpn IPsec policy")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?v.adminConfigs:v.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Auth Algorithm"),name:"auth_algorithm",options:m.authAlgorithmOptions},{label:t("Encapsulation Mode"),name:"encapsulation_mode",options:m.ipsecPolicyEncapsulationModeOptions},{label:t("Encryption Algorithm"),name:"encryption_algorithm",options:m.encryptionAlgorithmOptions},{label:t("Transform Protocol"),name:"transform_protocol",options:m.ipsecPolicyTransformProtocolOptions},{label:t("PFS"),name:"pfs",options:m.pfsOptions}]}}a.IPsecPolicy=g;var _=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=_},3953:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.adminConfigs=t.actionConfigs=void 0;var n=i(a(3954)),l=i(a(3955)),o=i(a(3956)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.actionConfigs=s;var d={rowActions:{moreActions:[{action:o.default}]},batchActions:[o.default]};t.adminConfigs=d},3954:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(58)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(1340)),b=r(1321);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{lifetimeValue:t}=e,a=function(e){for(var t=1;tp.default.resolve(!0)));var A=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=A},3955:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(77)),h=f(r(54)),v=f(r(58)),g=f(r(35)),_=f(r(0)),b=r(412),y=r(1241),I=f(r(1340)),A=f(r(1275));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{lifetimeValue:t}=e,a=w({lifetime:{units:"seconds",value:t}},(0,v.default)(e,["lifetimeValue"]));return I.default.update({id:this.item.id},a)}))}init(){this.state={canSubmit:!0,connections:[]},A.default.fetchList({ipsecpolicy_id:this.item.id}).then((e=>{e.length>0&&this.setState({canSubmit:!1,connections:e})}))}get defaultValue(){var e=this.item,{lifetime:t,canSubmit:a}=e;return w(w({},(0,v.default)(e,["lifetime","canSubmit"])),{},{lifetimeValue:t.value})}get formItems(){var e,a,r,i,n,{canSubmit:l}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"canSubmit",label:t("Status"),component:_.default.createElement(_.default.Fragment,null,t("In Use")),validator:()=>{var e,{connections:a}=this.state;return l?p.default.resolve(!0):p.default.reject(new Error((0,m.default)(e="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:this.name,name:this.item.name,reason:t("the policy is in use")}),"\n\n ")).call(e,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,h.default)(a).call(a,(e=>e.name)).join(", "),ids:(0,h.default)(a).call(a,(e=>e.id)).join(", ")}))))},hidden:l},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"auth_algorithm",label:t("Auth Algorithm"),type:"select",options:(0,h.default)(e=["sha1","sha256","sha384","sha512"]).call(e,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"encapsulation_mode",label:t("Encapsulation Mode"),type:"select",options:(0,h.default)(a=["tunnel","transport"]).call(a,(e=>({label:e,value:e}))),required:!0},{name:"encryption_algorithm",label:t("Encryption Algorithm"),type:"select",options:(0,h.default)(r=["3des","aes-128","aes-192","aes-256"]).call(r,(e=>({label:e.toUpperCase(),value:e}))),required:!0},{name:"pfs",label:t("PFS"),type:"select",options:(0,h.default)(i=["group2","group5","group14"]).call(i,(e=>({label:e,value:e}))),required:!0},{name:"lifetimeValue",label:t("Lifetime Value"),type:"input-number",min:0,required:!0},{name:"transform_protocol",label:t("Transform Protocol"),type:"select",options:(0,h.default)(n=["esp","ah","ah-esp"]).call(n,(e=>({label:e,value:e}))),required:!0}]}}a.Edit=x,(0,g.default)(x,"id","edit-vpn-ipsec-policy"),(0,g.default)(x,"title",t("Edit VPN IPsec Policy")),(0,g.default)(x,"buttonText",t("Edit")),(0,g.default)(x,"policy","update_ipsecpolicy"),(0,g.default)(x,"allowed",(()=>p.default.resolve(!0)));var P=(0,b.inject)("rootStore")((0,b.observer)(x));a.default=P},3956:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(77)),o=n(r(54)),s=n(r(63)),d=n(r(49)),u=n(r(35)),c=r(1241),f=r(1251),p=n(r(1340)),m=n(r(1275)),h=n(r(133));class v extends c.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"policy","delete_ipsecpolicy"),(0,u.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,u.default)(this,"onSubmit",function(){var a=(0,d.default)((function*(a){var r,i=yield m.default.fetchList({ipsecpolicy_id:a.id});return i.length>0?(e.showConfirmErrorBeforeSubmit=!0,e.confirmErrorMessageBeforeSubmit=(0,l.default)(r="".concat(t("Unable to {action}, because : {reason}, instance: {name}.",{action:e.actionName||e.title,name:a.name,reason:t("the policy is in use")}),"\n\n ")).call(r,t("Used by tunnel(s): {names}. ID(s): {ids}",{names:(0,o.default)(i).call(i,(e=>e.name)).join(", "),ids:(0,o.default)(i).call(i,(e=>e.id)).join(", ")})),s.default.reject({errorMsg:e.confirmErrorMessageBeforeSubmit})):p.default.delete(a)}));return function(e){return a.apply(this,arguments)}}())}get id(){return"delete-vpn-ipsec-policy"}get title(){return t("Delete VPN IPsec Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete vpn IPsec policy")}isCurrentProject(e){var t=h.default;return!(!(0,f.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=v},3957:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecSiteConnection=void 0;var l=n(r(35)),o=r(412),s=n(r(1242)),d=r(1275),u=r(1321),c=r(1643);class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("ipsecDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0},{title:t("Local Endpoint Group ID"),dataIndex:"local_ep_group_id",isHideable:!0},{title:t("Peer Endpoint Group ID"),dataIndex:"peer_ep_group_id",isHideable:!0},{title:t("Peer Address"),dataIndex:"peer_address",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:u.vpnStatus}]))}init(){this.store=new d.VpnIPsecConnectionStore,this.downloadStore=new d.VpnIPsecConnectionStore}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get policy(){return"get_ipsec_site_connection"}get name(){return t("ipsec site connection")}get adminPageHasProjectFilter(){return!0}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?c.adminConfigs:c.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Local Endpoint Group ID"),name:"local_ep_group_id"},{label:t("Peer Endpoint Group ID"),name:"peer_ep_group_id"},{label:t("Peer Address"),name:"peer_address"},{label:t("Status"),name:"status",options:u.vpnStatusOptions}]}}a.IPsecSiteConnection=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3958:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(54)),h=f(r(29)),v=f(r(77)),g=f(r(86));r(1246);var _=f(r(1247));r(1244);var b=f(r(1245));r(426);var y=f(r(429)),I=f(r(49)),A=f(r(58)),S=f(r(35)),w=f(r(607)),x=f(r(0)),P=r(412),C=r(1241),E=r(565),D=f(r(1358)),k=f(r(1339)),R=f(r(1340)),N=f(r(1359)),j=(r(161),f(r(1275))),M=f(r(3959));function T(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function B(e){for(var t=1;t{var t=(0,w.default)({},this.defaultValue,e),{interval:a,timeout:r,action:i,password:n,confirmPassword:l,more:o}=t,s=(0,A.default)(t,["interval","timeout","action","password","confirmPassword","more"]),d=B(B({},s),{},{psk:n,peer_id:s.peer_address,dpd:{interval:a,timeout:r,action:i}});return j.default.create(d)}))}get name(){return t("create ipsec site connection")}init(){this.vpnServiceStore=D.default,this.ikePolicyStore=k.default,this.ipsecPolicyStore=R.default,this.endpointGroupStore=N.default,this.fetchData()}fetchData(){var e=this;return(0,I.default)((function*(){yield p.default.all([e.vpnServiceStore.fetchList(),e.ikePolicyStore.fetchList(),e.ipsecPolicyStore.fetchList(),e.endpointGroupStore.fetchList()])}))()}get defaultValue(){return{mtu:1500,initiator:"bi-directional",action:"hold",interval:30,timeout:120}}get formItems(){var e,a,r,i,n,l,o,s,d,u,c,{local_ep_group_id:f,peer_ep_group_id:I,more:A}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"vpnservice_id",label:t("VPN Service"),type:"select",options:(0,m.default)(e=this.vpnServiceStore.list.data).call(e,(e=>({label:e.name,value:e.id}))),required:!0},{name:"ikepolicy_id",label:t("IKE Policy"),type:"select",options:(0,m.default)(a=this.ikePolicyStore.list.data).call(a,(e=>({label:e.name,value:e.id}))),required:!0},{name:"ipsecpolicy_id",label:t("IPsec Policy"),type:"select",options:(0,m.default)(r=this.ipsecPolicyStore.list.data).call(r,(e=>({label:e.name,value:e.id}))),required:!0},{name:"local_ep_group_id",label:t("Local Endpoint Group"),type:"select",options:(0,m.default)(i=(0,h.default)(n=this.endpointGroupStore.list.data).call(n,(e=>"subnet"===e.type))).call(i,(e=>({label:e.name,value:e.id}))),onChange:e=>{this.setState({local_ep_group_id:e})},required:!0},{name:"local_subnet",type:"label",label:t("Local Subnet"),component:x.default.createElement(M.default,{data:this.endpointGroupStore.list.data,local_ep_group_id:f})},{name:"peer_address",type:"input",label:t("Peer Gateway Public Address"),extra:t("Peer gateway public address for the IPsec site connection"),validator:(e,a)=>{var r;return F(a)||L(a)?p.default.resolve():p.default.reject(new Error((0,v.default)(r="".concat(t("Invalid")," ")).call(r,t("Peer Gateway Public Address"))))},required:!0},{name:"peer_ep_group_id",label:t("Peer Endpoint Group"),type:"select",options:(0,m.default)(l=(0,h.default)(o=this.endpointGroupStore.list.data).call(o,(e=>"cidr"===e.type))).call(l,(e=>({label:e.name,value:e.id}))),onChange:e=>{this.setState({peer_ep_group_id:e})},required:!0},{name:"peer_cidrs",type:"label",label:t("Peer Cidrs"),component:x.default.createElement(_.default,null,I?(0,m.default)(s=(0,g.default)(d=this.endpointGroupStore.list.data).call(d,(e=>e.id===I)).endpoints).call(s,(e=>x.default.createElement(b.default,{span:24},e))):x.default.createElement(b.default,{span:24},x.default.createElement(y.default,null)))},{name:"password",type:"input-password",label:t("Pre-Shared Key(PSK) String"),otherRule:(0,E.getPasswordOtherRule)("password","instance"),required:!0},{name:"confirmPassword",type:"input-password",label:t("Confirm Shared Key"),otherRule:(0,E.getPasswordOtherRule)("confirmPassword","instance",void 0,t("Pre-Shared Key must be the same with Confirm Shared Key.")),required:!0},{name:"mtu",type:"input-number",label:t("MTU"),min:68,tip:t("The maximum transmission unit (MTU) value to address fragmentation. Minimum value is 68 for IPv4, and 1280 for IPv6."),required:!0,hidden:!A},{name:"initiator",label:t("Initiator Mode"),type:"select",options:(0,m.default)(u=["bi-directional","response-only"]).call(u,(e=>({label:e,value:e}))),tip:t("Indicates whether this VPN can only respond to connections or both respond to and initiate connections."),required:!0,hidden:!A},{name:"action",label:t("DPD Action"),type:"select",options:(0,m.default)(c=["clear","hold","restart","disabled","restart-by-peer"]).call(c,(e=>({label:e,value:e}))),tip:t("DPD actions controls the use of Dead Peer Detection Protocol."),required:!0,hidden:!A},{name:"interval",type:"input-number",label:t("DPD Interval (sec)"),min:0,tip:t("Sec for DPD delay, > 0"),required:!0,hidden:!A},{name:"timeout",type:"input-number",label:t("DPD timeout (sec)"),min:0,tip:t("Sec for DPD timeout, > 0 & > DPD Interval"),required:!0,hidden:!A},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.Create=O,(0,S.default)(O,"id","create-ipsec-site-connection"),(0,S.default)(O,"title",t("Create IPsec Site Connection")),(0,S.default)(O,"buttonText",t("Create")),(0,S.default)(O,"policy","create_ipsec_site_connection"),(0,S.default)(O,"allowed",(()=>p.default.resolve(!0)));var Q=(0,P.inject)("rootStore")((0,P.observer)(O));a.default=Q},3959:function(e,t,a){"use strict";var r=a(162),i=a(20),n=a(25),l=a(21);i(t,"__esModule",{value:!0}),t.default=void 0;var o=l(a(86)),s=l(a(54)),d=l(a(63));a(347);var u=l(a(348));a(1244);var c=l(a(1245));a(426);var f=l(a(429)),p=l(a(49)),m=l(a(119)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=_(t);if(a&&a.has(e))return a.get(e);var r={},l=i&&n;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=l?n(e,o):null;s&&(s.get||s.set)?i(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(a(0)),v=l(a(16)),g=(a(161),a(417));function _(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(_=function(e){return e?a:t})(e)}class b extends h.Component{constructor(e){super(e),this.state={subnets:[],isLoading:!0}}componentDidUpdate(e){var{local_ep_group_id:t}=this.props,{local_ep_group_id:a}=e;t!==a&&this.getSubnets()}get currentEndpoints(){var{data:e,local_ep_group_id:t}=this.props;return(0,m.default)((0,o.default)(e).call(e,(e=>e.id===t)),"endpoints",[])}getSubnets(){var e=this;return(0,p.default)((function*(){var t;e.setState({isLoading:!0});var a=(0,s.default)(t=e.currentEndpoints).call(t,(e=>(new g.SubnetStore).fetchDetail({id:e}))),r=yield d.default.all(a);e.setState({subnets:r,isLoading:!1})}))()}render(){var e,{local_ep_group_id:t}=this.props,{subnets:a,isLoading:r}=this.state;return t?r?h.default.createElement(c.default,null,h.default.createElement(u.default,null)):h.default.createElement(h.default.Fragment,null,(0,s.default)(e=this.currentEndpoints).call(e,((e,t)=>h.default.createElement(c.default,{span:24,key:"cep_".concat(t)},(0,m.default)(a[t],"cidr"))))):h.default.createElement(c.default,null,h.default.createElement(f.default,null))}}b.propTypes={data:v.default.array,local_ep_group_id:v.default.string},b.defaultProps={data:[],local_ep_group_id:void 0};var y=b;t.default=y},3960:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(63)),o=n(r(91)),s=n(r(35)),d=r(412),u=r(1241),c=n(r(1275)),f=["ACTIVE","DOWN"];class p extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{name:t,description:a}=e;return c.default.update({id:this.item.id},{name:t,description:a})}))}get defaultValue(){return{name:this.item.name,description:this.item.description}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Edit=p,(0,s.default)(p,"id","edit-ipsec-site-connection"),(0,s.default)(p,"title",t("Edit IPsec Site Connection")),(0,s.default)(p,"buttonText",t("Edit")),(0,s.default)(p,"policy","update_ipsec_site_connection"),(0,s.default)(p,"allowed",(e=>l.default.resolve((0,o.default)(f).call(f,e.status)>-1)));var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3961:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=r(1251),d=n(r(1275)),u=n(r(133));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_ipsec_site_connection"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isCurrentProject(e))),(0,l.default)(this,"onSubmit",(e=>d.default.delete(e)))}get id(){return"delete-ipsec-site-connection"}get title(){return t("Delete IPsec Site Connection")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete ipsec site connection")}isCurrentProject(e){var t=u.default;return!(!(0,s.checkSystemAdmin)()&&e.project_id!==t.user.project.id)}}a.default=c},3962:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.IPsecSiteConnection=void 0;var l=r(412),o=n(r(1243)),s=r(1275),d=r(1321),u=n(r(3963)),c=r(1643);class f extends o.default{init(){this.store=new s.VpnIPsecConnectionStore}get name(){return t("IPsec Site Connection")}get policy(){return"get_ipsec_site_connection"}get listUrl(){return this.getRoutePath("vpn",null,{tab:"ipsec_site_connections"})}get actionConfigs(){return this.isAdminPage?c.adminConfigs:c.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id",hidden:!this.isAdminPage},{title:t("VPN Service ID"),dataIndex:"vpnservice_id"},{title:t("Status"),dataIndex:"status",valueMap:d.vpnStatus},{title:t("Local Endpoint Group ID"),dataIndex:"local_ep_group_id"},{title:t("Peer Endpoint Group ID"),dataIndex:"peer_ep_group_id"},{title:t("Peer Address"),dataIndex:"peer_address"},{title:t("Peer ID"),dataIndex:"peer_id"},{title:t("Admin State"),dataIndex:"admin_state_up",valueRender:"yesNo"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default}]}}a.IPsecSiteConnection=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3963:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(54)),m=f(r(32)),h=f(r(77)),v=f(r(49)),g=f(r(35)),_=r(412),b=f(r(1249)),y=r(1275),I=f(r(0)),A=r(36);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class w extends b.default{constructor(){var e;super(...arguments),e=this,(0,g.default)(this,"fetchData",function(){var t=(0,v.default)((function*(t){e.store.fetchDetailWithPolicyDetail(function(e){for(var t=1;te||"-"},{label:t("Auth Algorithm"),dataIndex:"auth_algorithm"},{label:t("Encryption Algorithm"),dataIndex:"encryption_algorithm"},{label:t("IKE Version"),dataIndex:"ike_version"},{label:t("Lifetime"),dataIndex:"lifetime",render:e=>{var t;return e&&I.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,p.default)(t=(0,m.default)(e)).call(t,((t,a)=>{var r,i;return I.default.createElement("li",{key:(0,h.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,h.default)(i="".concat(t,": ")).call(i,e[t]))})))}},{label:t("PFS"),dataIndex:"pfs"}];return{title:t("IKE Policy"),options:e,sourceData:this.detailData.ikeDetail}}get ipsecInfoCard(){var e=[{label:t("Name"),dataIndex:"name"},{label:t("Description"),dataIndex:"description"},{label:t("Auth Algorithm"),dataIndex:"auth_algorithm"},{label:t("Encapsulation Mode"),dataIndex:"encapsulation_mode"},{label:t("Encryption Algorithm"),dataIndex:"encryption_algorithm"},{label:t("Transform Protocol"),dataIndex:"transform_protocol"},{label:t("Lifetime"),dataIndex:"lifetime",render:e=>{var t;return e&&I.default.createElement("ul",{style:{listStyle:"none",paddingLeft:0}},(0,p.default)(t=(0,m.default)(e)).call(t,((t,a)=>{var r,i;return I.default.createElement("li",{key:(0,h.default)(r="".concat(a,"_")).call(r,e[t],"_lifeTime")},(0,h.default)(i="".concat(t,": ")).call(i,e[t]))})))}},{label:t("PFS"),dataIndex:"pfs"}];return{title:t("IPsec Policy"),options:e,sourceData:this.detailData.ipsecDetail}}get advancedInfo(){var e=[{label:t("MTU"),dataIndex:"mtu"},{label:t("Initiator Mode"),dataIndex:"initiator"},{label:t("DPD Action"),dataIndex:"dpd",render:e=>e&&e.action},{label:t("DPD Interval (sec)"),dataIndex:"dpd",render:e=>e&&e.interval},{label:t("DPD timeout (sec)"),dataIndex:"dpd",render:e=>e&&e.timeout}];return{title:t("Advanced Params"),options:e}}}a.BaseDetail=w;var x=(0,_.inject)("rootStore")((0,_.observer)(w));a.default=x},3964:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.SecurityGroups=void 0;var s=o(r(164)),d=o(r(35)),u=r(412),c=o(r(1242)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(419)),p=r(342),m=o(r(1644));function h(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(h=function(e){return e?a:t})(e)}class v extends c.default{constructor(){super(...arguments),(0,d.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("securityGroupDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=f.default,this.downloadStore=new f.SecurityGroupStore}get policy(){return"get_security_group"}get name(){return t("security groups")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,s.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?p.emptyActionConfig:this.isAdminPage?m.default.actionConfigsAdmin:m.default.actionConfigs}get isFilterByBackend(){return!0}get fetchDataByCurrentProject(){return!0}get adminPageHasProjectFilter(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.SecurityGroups=v;var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3965:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var p=f(r(63)),m=f(r(49)),h=f(r(35)),v=r(412),g=r(1241),_=f(r(419)),b=f(r(340));function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{left:a=0}=e||{},{left:r=0}=t||{};return 0!==a&&(r>=2||-1===r)?1:0};class S extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>_.default.create(e)))}get name(){return t("Create security group")}init(){this.state.groupQuota={},this.state.ruleQuota={},this.state.quotaLoading=!0,this.projectStore=b.default,this.getQuota()}static get disableSubmit(){var{neutronQuota:{security_group:e={},security_group_rule:t={}}={}}=b.default;return 0===A(e,t)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,m.default)((function*(){var t=yield e.projectStore.fetchProjectNeutronQuota(),{security_group:a={},security_group_rule:r={}}=t||{};e.setState({groupQuota:a,ruleQuota:r,quotaLoading:!1})}))()}get tips(){return t("This operation creates a security group with default security group rules for the IPv4 and IPv6 ether types.")}get quotaInfo(){var{groupQuota:e={},ruleQuota:a={},quotaLoading:r}=this.state;if(r)return[];var i=A(e,a);return[I(I({},e),{},{add:i,name:"security_group",title:t("Security Group")}),I(I({},a),{},{add:2*i,name:"security_group_rule",title:t("Security Group Rule"),type:"line"})]}get defaultValue(){return{}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.CreateAction=S,(0,h.default)(S,"id","create"),(0,h.default)(S,"title",t("Create Security Group")),(0,h.default)(S,"policy","create_security_group"),(0,h.default)(S,"allowed",(()=>p.default.resolve(!0)));var w=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=w},3966:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=n(r(63)),o=n(r(35)),s=r(412),d=r(1241),u=n(r(419));class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return u.default.edit({id:t},e)}))}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditAction=c,(0,o.default)(c,"id","edit"),(0,o.default)(c,"title",t("Edit")),(0,o.default)(c,"policy","update_security_group"),(0,o.default)(c,"allowed",(e=>l.default.resolve("default"!==e.name)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3967:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(419));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_security_group"),(0,l.default)(this,"hasNoProject",(e=>!e.project_name||"-"===e.project_name)),(0,l.default)(this,"allowedCheckFunc",(e=>this.isAdminPage&&this.hasNoProject(e)||"default"!==e.name)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Security Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Security Group")}}a.default=d},3968:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SecurityGroupDetail=void 0;var l=n(r(205)),o=r(412),s=r(419),d=n(r(1243)),u=n(r(3969)),c=n(r(1644));class f extends d.default{get name(){return t("security group")}get policy(){return"get_security_group"}get listUrl(){return this.getRoutePath("securityGroup")}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Rules"),key:"rules",component:u.default}]}init(){this.store=new s.SecurityGroupStore}componentDidUpdate(e){(0,l.default)(this.props.match.params,e.match.params)||this.fetchDataWithPolicy()}}a.SecurityGroupDetail=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3969:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rule=void 0;var p=f(r(58)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=f(r(622)),b=r(354),y=r(567),I=f(r(3970));function A(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function S(e){for(var t=1;t(0,b.getSelfColumns)(this)))}init(){this.store=_.default}get policy(){return"get_security_group_rule"}get name(){return t("security group rules")}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,y.getPath)({key:t,params:{id:e}})}get actionConfigs(){return this.isAdminPage?I.default.actionConfigsAdmin:I.default.actionConfigs}get searchFilters(){return b.filterParams}getData(){var e=arguments,t=this;return(0,m.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,p.default)(a,["silent"]),{detail:n={}}=t.props,{id:l}=n;r&&(t.list.silent=!0),l&&(yield t.store.fetchList(S(S({},i),{},{security_group_id:l}))),t.list.silent=!1}))()}}a.Rule=w;var x=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=x},3970:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1645)),l=i(a(3971)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=o},3971:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(234)),o=n(r(77)),s=n(r(35)),d=r(1241),u=n(r(622));class c extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","delete_security_group_rule"),(0,s.default)(this,"getItemName",(e=>{var a,r,i;if(e.name)return e.name;var n,s,d,u,{ethertype:c,port_range_min:f,port_range_max:p,protocol:m,remote_group_id:h,remote_ip_prefix:v}=e,g="",_=(0,l.default)(f,10),b=(0,l.default)(p,10),y=m.toLowerCase();_&&(g=_===b?(0,o.default)(s="".concat(_," / ")).call(s,y):(0,o.default)(d=(0,o.default)(u="".concat(_," - ")).call(u,b," / ")).call(d,y));var I="egress"===e.direction?"to":"from";return n=h||(v||t("ANY")),(0,o.default)(a=(0,o.default)(r=(0,o.default)(i="ALLOW ".concat(c," ")).call(i,g," ")).call(r,I," ")).call(a,n)})),(0,s.default)(this,"onSubmit",(e=>u.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Rule")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Rule")}}a.default=c},3972:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Certificate=void 0;var l=r(412),o=n(r(1282)),s=n(r(3973));class d extends o.default{get tabs(){return[{title:t("Server Certificates"),key:"SERVER",component:s.default},{title:t("CA Certificates"),key:"CA",component:s.default}]}}a.Certificate=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},3973:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(162),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Certificate=void 0;var m=p(r(54)),h=p(r(203)),v=p(r(35)),g=p(r(0)),_=r(412),b=p(r(1242)),y=C(r(1337)),I=r(1251),A=C(r(1338)),S=r(1254),w=r(349),x=p(r(1472));function P(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(P=function(e){return e?a:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=P(t);if(a&&a.has(e))return a.get(e);var r={},i=c&&o;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var l=i?o(e,n):null;l&&(l.get||l.set)?c(r,n,l):r[n]=e[n]}return r.default=e,a&&a.set(e,r),r}function E(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function D(e){for(var t=1;tD(D({},e),{},{mode:this.currentMode}))),(0,v.default)(this,"getColumns",(()=>[{title:this.showDetail?t("ID/Name"):t("Name"),dataIndex:"name",routeName:this.showDetail?this.getRouteName(this.routeLinkPath):null},{title:t("Certificate Type"),dataIndex:"mode",valueMap:S.certificateMode,isHideable:!0},{title:t("Expires At"),dataIndex:"expiration",valueRender:"toLocalTime",isHideable:!0},{title:t("Domain Name"),dataIndex:"domain",render:e=>e||"-",hidden:"CA"===this.currentMode,isHideable:!0},{title:t("Listener"),dataIndex:"listener",render:e=>e?(0,m.default)(e).call(e,(e=>g.default.createElement("div",{key:e.id},this.getLinkRender("lbListenerDetail",e.name,{loadBalancerId:e.lb,id:e.id},null)))):"-",isHideable:!0,stringify:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,m.default)(e).call(e,(e=>e.name)).join(",")||"-"}},{title:t("Status"),dataIndex:"status",valueMap:S.certificateStatus},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime",isHideable:!0}]))}init(){"SERVER"===this.currentMode?(this.store=y.default,this.downloadStore=new y.ContainersStore):(this.store=A.default,this.downloadStore=new A.SecretsStore)}get policy(){return["containers:get","secrets:get"]}get aliasPolicy(){return["barbican:containers:get","barbican:secrets:get"]}get showDetail(){return(0,I.checkPolicyRule)("barbican:secret:decrypt")}get name(){return t("certificate")}get hasTab(){return!0}get actionConfigs(){return"SERVER"===this.currentMode?x.default.actionConfigsContainer:x.default.actionConfigsSecret}get currentMode(){var e,t=(0,w.parse)((0,h.default)(e=this.props.location.search).call(e,1)),{tab:a="SERVER"}=t;return a}get routeLinkPath(){return"SERVER"===this.currentMode?"certificateContainerDetail":"certificateSecretDetail"}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Certificate=k;var R=(0,_.inject)("rootStore")((0,_.observer)(k));a.default=R},3974:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var l=n(r(164)),o=n(r(63)),s=n(r(1277)),d=n(r(203)),u=n(r(29)),c=n(r(35)),f=r(412),p=r(1241),m=r(163),h=r(565),v=r(1254),g=r(3975),_=n(r(1337)),b=n(r(112)),y=r(349);class I extends p.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"validateDomain",((e,a)=>{var r;if((0,l.default)(r=[void 0,null,""]).call(r,a))return o.default.resolve();var i=a.split(","),n=(0,s.default)(i).call(i,(e=>e.length<=100&&(0,h.isDomain)(e)));return i.length>30||!n?o.default.reject(t("Please enter a correct domain, format is refer to the left tip!")):o.default.resolve()})),(0,c.default)(this,"validateCertificateContent",((e,a)=>{if(!a)return o.default.reject();var r=a.split(/\n/g),i=r[0],n=r[r.length-1]||r[r.length-2];return"-----BEGIN CERTIFICATE-----"===i&&"-----END CERTIFICATE-----"===n?o.default.resolve():o.default.reject(t("Please enter a correct certificate content, format is refer to the left tip!"))})),(0,c.default)(this,"validateCertificateKeyPair",((e,a)=>{if(!a)return o.default.reject();var r=a.split(/\n/g),i=r[0],n=r[r.length-1]||r[r.length-2];return"-----BEGIN RSA PRIVATE KEY-----"===i&&"-----END RSA PRIVATE KEY-----"===n?o.default.resolve():o.default.reject(t("Please enter a correct private key, format is refer to the left tip!"))})),(0,c.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=_.default}get name(){return t("Create Certificate")}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){return{mode:this.typeTab}}get typeTab(){var{location:{search:e=""}={}}=this.containerProps;return(0,y.parse)((0,d.default)(e).call(e,1)).tab||"SERVER"}get certificateModeOptions(){var e;return(0,u.default)(e=(0,m.getOptions)(v.certificateMode)).call(e,(e=>e.value===this.typeTab))}get certificateContentTip(){return g.certificateContentTip}get certificateKeyPairTip(){return g.certificateKeyPairTip}get formItems(){var{mode:e}=this.state;return[{name:"name",label:t("Certificate Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"mode",label:t("Certificate Type"),type:"radio",options:this.certificateModeOptions},{name:"certificate",label:t("Certificate Content"),type:"textarea-from-file",placeholder:t("PEM encoding"),accept:".crt,.pem",tip:this.certificateContentTip,required:!0,rows:6},{name:"private_key",label:t("Private Key"),type:"textarea-from-file",placeholder:t("PEM encoding"),accept:".key,.pem",tip:this.certificateKeyPairTip,required:!0,display:"SERVER"===e,rows:6},{name:"domain",label:t("Domain Name"),type:"textarea",placeholder:t("Please input"),maxLength:1024,hidden:"CA"===e,validator:this.validateDomain,tip:t("The domain name can only be composed of letters, numbers, dashes, in A dash cannot be at the beginning or end, and a single string cannot exceed more than 63 characters, separated by dots; At most can support 30 domain names, separated by commas;The length of a single domain name does not exceed 100 characters, and the total length degree does not exceed 1024 characters."),extra:t("If it is an SNI type certificate, a domain name needs to be specified")},{name:"expiration",label:t("Expires At"),type:"date-picker",showToday:!1,disabledDate:e=>e&&e<=(0,b.default)().endOf("d")}]}}a.CreateAction=I,(0,c.default)(I,"id","create-certificate"),(0,c.default)(I,"title",t("Create Certificate")),(0,c.default)(I,"policy",["secrets:post","containers:post"]),(0,c.default)(I,"allowed",(()=>o.default.resolve(!0)));var A=(0,f.inject)("rootStore")((0,f.observer)(I));a.default=A},3975:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.certificateKeyPairTip=a.certificateContentTip=void 0;var l=n(r(0)),o=l.default.createElement("div",null,l.default.createElement("p",null,t('The certificate contains information such as the public key and signature of the certificate. The extension of the certificate is "pem" or "crt", you can directly enter certificate content or upload certificate file.')),l.default.createElement("p",null,t("It is recommended to refer to the following description format, otherwise it may not be effective")),l.default.createElement("p",null,t('The format of the certificate content is: by "----BEGIN CERTIFICATE-----" as the beginning,"-----END CERTIFICATE----" as the end, 64 characters per line, the last line does not exceed 64 characters, and there cannot be blank lines.')));a.certificateContentTip=o;var s=l.default.createElement("div",null,l.default.createElement("p",null,t('The private key of the certificate, the extension of the private key is "key", you can directly enter the content of the private key file or upload a private key that conforms to the format document.')),l.default.createElement("p",null,t("It is recommended to refer to the following description format, otherwise it may not be effective")),l.default.createElement("p",null,t('The private key content format is: with "-----BEGIN RSA PRIVATE KEY-----" as the beginning,"-----END RSA PRIVATE KEY-----" as the end, 64 characters per line, the last line does not exceed 64 characters, and there cannot be blank lines.')));a.certificateKeyPairTip=s},3976:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1337));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy",["secret:delete","container:delete"]),(0,l.default)(this,"aliasPolicy",["barbican:secret:delete","barbican:container:delete"]),(0,l.default)(this,"allowedCheckFunc",(e=>!e.listener)),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Certificate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete certificate")}}a.default=d},3977:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1338));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","secret:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.listener)),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Certificate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete certificate")}}a.default=d},3978:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(412),o=n(r(1243)),s=r(1337),d=r(1254),u=n(r(3979)),c=n(r(1472));class f extends o.default{init(){this.store=new s.ContainersStore}get policy(){return"container:get"}get aliasPolicy(){return"barbican:container:get"}get name(){return"Certificate Detail"}get listUrl(){return this.getRoutePath("certificate",null,{tab:"SERVER"})}get actionConfigs(){return c.default.actionConfigsContainer}get detailInfos(){return(0,d.getCertificateColumns)(this)}get tabs(){return[{title:t("Detail Info"),key:"detail_info",component:u.default}]}}a.Detail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3979:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(86)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCardsStyle(){return{flex:1}}get leftCards(){return[this.contentCard]}get rightCards(){return[this.keyPairCard]}get contentCard(){var{secret_refs:e=[]}=this.props.detail,{secret_info:a={}}=(0,l.default)(e).call(e,(e=>"certificate"===e.name))||{},r=[{content:o.default.createElement("pre",null,a.payload),copyable:{text:a.payload}}];return{title:t("Certificate Content"),labelCol:0,contentCol:24,options:r}}get keyPairCard(){var{secret_refs:e=[]}=this.props.detail,{secret_info:a={}}=(0,l.default)(e).call(e,(e=>"private_key"===e.name))||{},r=[{content:o.default.createElement("pre",null,a.payload),copyable:{text:a.payload}}];return{title:t("Private Key"),labelCol:0,contentCol:24,options:r}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3980:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=n(r(29)),o=r(412),s=n(r(1243)),d=r(1338),u=r(1254),c=n(r(3981)),f=n(r(1472));class p extends s.default{init(){this.store=new d.SecretsStore}get policy(){return"secret:get"}get name(){return"Certificate Detail"}get listUrl(){return this.getRoutePath("certificate",null,{tab:"CA"})}get actionConfigs(){return f.default.actionConfigsSecret}get detailInfos(){var e;return(0,l.default)(e=(0,u.getCertificateColumns)(this)).call(e,(e=>"domain"!==e.dataIndex))}get tabs(){return[{title:t("Detail Info"),key:"detail_info",component:c.default}]}}a.Detail=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3981:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(0)),o=r(412),s=n(r(1249));class d extends s.default{get leftCardsStyle(){return{flex:1}}get leftCards(){return[this.contentCard]}get contentCard(){var{payload:e}=this.props.detail,a=[{content:l.default.createElement("pre",null,e),copyable:{text:e}}];return{title:t("Certificate Content"),labelCol:0,contentCol:24,options:a}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3982:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Reverse=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=p(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(1403)),f=o(r(1646));function p(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(p=function(e){return e?a:t})(e)}class m extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Address"),dataIndex:"address",isLink:!0,routeName:"dnsReverseDetail",routeParamsFunc:e=>({id:e.id})},{title:t("PTR Domain Name"),dataIndex:"ptrdname",isHideable:!0},{title:t("Status"),dataIndex:"status",isHideable:!0}]))}init(){this.store=c.default,this.downloadStore=new c.ReverseStore}get policy(){return"get_images"}get name(){return t("Reverse Dns")}get actionConfigs(){return f.default}}a.Reverse=m;var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3983:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Set=void 0;var l=n(r(63)),o=n(r(35)),s=r(1241),d=r(412),u=n(r(1403));class c extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.set({id:t},e)}))}init(){this.store=u.default}static get modalSize(){return"small"}get name(){return t("Set Domain Name PTR")}static allowed(){return l.default.resolve(!0)}get formItems(){return[{name:"ptrdname",label:t("Domain Name"),type:"input",required:!0,placeholder:t("smtp.example.com"),tip:t("Domain name ending in.")},{name:"description",label:t("Description"),type:"textarea",tip:t("Details about the PTR record.")},{name:"ttl",label:t("TTL"),type:"input-number",min:0,tip:t("Time To Live in seconds."),placeholder:t("3600")}]}}a.Set=c,(0,o.default)(c,"id","set-reverse"),(0,o.default)(c,"title",t("Set")),(0,o.default)(c,"policy","get_images");var f=(0,d.inject)("rootStore")((0,d.observer)(c));a.default=f},3984:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1403));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunc",(e=>null!==e.ptrdname&&"ACTIVE"===e.status)),(0,l.default)(this,"policy","instance:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action}? (Zone: {name})",{action:this.actionNameDisplay||this.title,name:a})})),(0,l.default)(this,"onSubmit",(e=>s.default.unset({id:e.id},{ptrdname:null})))}get id(){return"usnet"}get title(){return t("Unset")}get actionName(){return t("Unset")}get buttonText(){return t("Unset")}}a.default=d},3985:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ReverseDetail=void 0;var l=r(412),o=n(r(1243)),s=n(r(1403)),d=n(r(3986)),u=n(r(1646));class c extends o.default{init(){this.store=s.default}get name(){return t("Reverse Detail")}get policy(){return"get_image"}get listUrl(){return this.getRoutePath("dns-reverse")}get actionConfigs(){return u.default}get tabs(){return[{title:t("Detail"),key:"detail",component:d.default}]}}a.ReverseDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},3986:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249));class s extends o.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Address"),dataIndex:"address"},{label:t("PTR Domain Name"),dataIndex:"ptrdname"},{label:t("Description"),dataIndex:"description"},{label:t("ID"),dataIndex:"id"},{label:t("Time To Live"),dataIndex:"ttl"},{label:t("Status"),dataIndex:"status"},{label:t("Action"),dataIndex:"action"}];return{title:t("Base Info"),options:e}}}a.BaseDetail=s;var d=(0,l.inject)("rootStore")((0,l.observer)(s));a.default=d},3987:function(e,a,r){"use strict";var i=r(162),n=r(20),l=r(25),o=r(21);n(a,"__esModule",{value:!0}),a.default=a.Zones=void 0;var s=o(r(35)),d=r(412),u=o(r(1242)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=h(t);if(a&&a.has(e))return a.get(e);var r={},i=n&&l;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=i?l(e,o):null;s&&(s.get||s.set)?n(r,o,s):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(1360)),f=r(1404),p=r(163),m=o(r(3988));function h(e){if("function"!=typeof i)return null;var t=new i,a=new i;return(h=function(e){return e?a:t})(e)}class v extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Zone ID/Name"),dataIndex:"name",isHideable:!0,isLink:!0,routeName:this.getRouteName("dnsZonesDetail"),sortKey:"id"},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sortKey:"tenant_id"},{title:t("Type"),dataIndex:"type",isHideable:!0,sorter:!1,valueMap:f.ZONE_TYPES},{title:t("Status"),dataIndex:"status",isHideable:!0,valueMap:f.ZONE_STATUS},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]))}init(){this.store=c.default,this.downloadStore=new c.DNSZonesStore}get policy(){return"get_zones"}get name(){return t("dns zones")}get actionConfigs(){return m.default}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Type"),name:"type",options:(0,p.getOptions)(f.ZONE_TYPES)},{label:t("Status"),name:"status",options:(0,p.getOptions)(f.ZONE_STATUS)}]}}a.Zones=v;var g=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=g},3988:function(e,t,a){"use strict";var r=a(20),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1648)),l=i(a(3989)),o=i(a(3990)),s=i(a(1649)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},primaryActions:[n.default],batchActions:[o.default]};t.default=d},3989:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Update=void 0;var p=f(r(54)),m=f(r(63)),h=f(r(58)),v=f(r(35)),g=r(412),_=f(r(1360)),b=r(1648);function y(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{id:t}=this.item,{type:a}=this.item,{masters:r=[],email:i,ttl:n,description:l}=e,o={description:l,masters:(0,p.default)(r).call(r,(e=>e.value))};return"PRIMARY"===a&&(o.email=i,o.ttl=n),this.store.update({id:t},o)}))}init(){this.store=_.default}get name(){return t("Edit")}static allowed(){return m.default.resolve(!0)}get defaultValue(){var e=this.item,{masters:t=[]}=e,a=(0,h.default)(e,["masters"]),r=(0,p.default)(t).call(t,((e,t)=>({index:t,value:e})));return I(I({},a),{},{masters:r})}get formItems(){var e=super.formItems;return(0,p.default)(e).call(e,(e=>"name"===e.name||"type"===e.name?I(I({},e),{},{disabled:!0}):e))}}a.Update=A,(0,v.default)(A,"id","update-dns-zone"),(0,v.default)(A,"title",t("Edit")),(0,v.default)(A,"policy","update_zone");var S=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=S},3990:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1360));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunction",(()=>!0)),(0,l.default)(this,"policy","delete_zone"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("Are you sure to {action}? (Zone: {name})",{action:this.actionNameDisplay||this.title,name:a})})),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Zone")}get actionName(){return t("Delete Zone")}get buttonText(){return t("Delete")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3991:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ZonesDetail=void 0;var l=r(412),o=r(1360),s=n(r(1243)),d=r(1404),u=n(r(3992)),c=n(r(3993));class f extends s.default{init(){this.store=new o.DNSZonesStore}get name(){return t("DNS Zones Detail")}get listUrl(){return this.getRoutePath("dnsZones")}get policy(){return"get_zone"}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Type"),dataIndex:"type",valueMap:d.ZONE_TYPES},{title:t("Status"),dataIndex:"status",valueMap:d.ZONE_STATUS},{title:t("Email"),dataIndex:"email"}]}get tabs(){return[{title:t("Overview"),key:"overview",component:u.default},{title:t("Record Sets"),key:"record_sets",component:c.default}]}}a.ZonesDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3992:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(345)),o=r(412),s=n(r(1249));class d extends s.default{get leftCards(){return[this.baseInfoCard,this.modificationTimesCard]}get rightCards(){return[this.attributesCard,this.associationsCard]}get baseInfoCard(){var e=[{label:t("Action"),dataIndex:"action"},{label:t("Serial"),dataIndex:"serial"},{label:t("TTL"),dataIndex:"ttl"},{label:t("Version"),dataIndex:"version"}];return{title:t("Base Info"),options:e}}get modificationTimesCard(){var e=[{label:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{label:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"},{label:t("Transferred"),dataIndex:"transferred_at",valueRender:"toLocalTime"}];return{title:t("Modification Times"),options:e}}get attributesCard(){var e=[{label:t("Attributes"),dataIndex:"attributes",render:e=>(0,l.default)(e)}];return{title:t("Attributes"),options:e}}get associationsCard(){var e=[{label:t("Pool ID"),dataIndex:"pool_id"},{label:t("Project ID"),dataIndex:"project_id"},{label:t("Masters"),dataIndex:"masters",render:e=>(0,l.default)(e)}];return{title:t("Associations"),options:e}}}a.BaseDetail=d;var u=(0,o.inject)("rootStore")((0,o.observer)(d));a.default=u},3993:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RecordSets=void 0,r(1311);var l=n(r(1312)),o=n(r(54)),s=n(r(0)),d=n(r(1242)),u=r(412),c=(r(161),r(1361)),f=r(1405),p=r(163),m=n(r(1650));class h extends d.default{init(){this.store=new c.DNSRecordSetsStore,this.downloadStore=new c.DNSRecordSetsStore}get name(){return t("recordsets")}get policy(){return"get_recordsets"}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get actionConfigs(){return m.default}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("dnsRecordSetDetail"),routeParamsFunc:e=>({zoneId:e.zone_id,id:e.id}),isLink:!0,sortKey:"id"},{title:t("Type"),dataIndex:"type",render:e=>(0,f.getRecordSetType)(e)},{title:t("Records"),dataIndex:"records",render:e=>(0,o.default)(e).call(e,(e=>s.default.createElement(l.default,{key:e},e))),stringify:e=>e.join("\n"),sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:f.RECORD_STATUS,sorter:!1},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Type"),name:"type",options:(0,f.dnsRRTypeList)()},{label:t("Status"),name:"status",options:(0,p.getOptions)(f.RECORD_STATUS)}]}}a.RecordSets=h;var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},3994:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Update=void 0;var p=f(r(28)),m=f(r(77)),h=f(r(63)),v=f(r(54)),g=f(r(58)),_=f(r(35)),b=r(1241),y=r(412),I=r(1405),A=f(r(1361));function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{zone_id:t}=this.item,a=this.item.id,{records:r}=e,i=(0,g.default)(e,["records"]),n=[];(0,p.default)(r).call(r,(e=>{n.push(e.value)}));var l=w({records:n},i);return this.store.update(t,a,l)}))}init(){var e,a;this.store=A.default,this.state=w(w({},this.state),{},{nameExtra:(0,m.default)(e="".concat(t("Exp: "))).call(e,I.DNS_RECORD_TYPE[this.item.type].nameExtra),recordsExtra:(0,m.default)(a="".concat(t("Exp: "))).call(a,I.DNS_RECORD_TYPE[this.item.type].recordsExtra)})}get name(){return t("Update Record Set")}static allowed(){return h.default.resolve(!0)}get defaultValue(){var{records:e,type:t,name:a,description:r,ttl:i}=this.item;return{type:t,name:a,description:r,ttl:i,records:(0,v.default)(e).call(e,((e,t)=>({index:t,value:e})))}}get formItems(){var e=(0,I.getRecordSetFormItem)(this,this.currentFormValue);return(0,v.default)(e).call(e,(e=>"name"===e.name||"type"===e.name?w(w({},e),{},{disabled:!0}):e))}}a.Update=x,(0,_.default)(x,"id","create-record-set"),(0,_.default)(x,"title",t("Update Record Set")),(0,_.default)(x,"buttonText",t("Update")),(0,_.default)(x,"policy","update_recordset");var P=(0,y.inject)("rootStore")((0,y.observer)(x));a.default=P},3995:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1361));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"allowedCheckFunction",(()=>!0)),(0,l.default)(this,"policy","delete_recordset"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e),r=this.getItemId(e);return t("Are you sure to {action}? (Record Set: {name} - {id})",{action:this.actionNameDisplay||this.title,name:a,id:r})})),(0,l.default)(this,"onSubmit",(e=>{var{zone_id:t}=e,a=e.id;return s.default.delete({zone_id:t,recordset_id:a})}))}get id(){return"delete"}get title(){return t("Delete Record Set")}get actionName(){return t("Delete Record Set")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=d},3996:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RecordSetsDetail=void 0;var l=r(412),o=n(r(1243)),s=r(1361),d=r(1405),u=n(r(3997)),c=n(r(1650));class f extends o.default{init(){this.store=new s.DNSRecordSetsStore}get titleValue(){return this.detailData.id}get name(){return t("Recordset Detail")}get listUrl(){return this.getRoutePath("dnsZonesDetail",{id:this.detailData.zone_id},{tab:"record_sets"})}get actionConfigs(){return c.default}get policy(){return"get_recordset"}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Type"),dataIndex:"type",render:e=>(0,d.getRecordSetType)(e)},{title:t("Status"),dataIndex:"status",valueMap:d.RECORD_STATUS}]}get tabs(){return[{title:t("Overview"),key:"overview",component:u.default}]}}a.RecordSetsDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3997:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1249));class u extends d.default{get leftCards(){return[this.baseInfoCard,this.modificationTimesCard]}get rightCards(){return[this.associationsCard]}get baseInfoCard(){var e=[{label:t("Action"),dataIndex:"action"},{label:t("Records"),dataIndex:"records",render:e=>(0,l.default)(e).call(e,(e=>o.default.createElement("div",null,e)))},{label:t("TTL"),dataIndex:"ttl"},{label:t("Version"),dataIndex:"version"}];return{title:t("Base Info"),labelCol:6,contentCol:18,options:e}}get modificationTimesCard(){var e=[{label:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{label:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}];return{title:t("Modification Times"),labelCol:6,contentCol:18,options:e}}get associationsCard(){var e=[{label:t("Zone ID"),dataIndex:"zone_id",copyable:!0},{label:t("Zone Name"),dataIndex:"zone_name"},{label:t("Project ID"),dataIndex:"project_id",copyable:!0}];return{title:t("Associations"),options:e}}}a.BaseDetail=u;var c=(0,s.inject)("rootStore")((0,s.observer)(u));a.default=c},3998:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(412),o=n(r(1282)),s=r(66),d=n(r(3999)),u=n(r(4003)),c=n(r(1656));class f extends o.default{get name(){return t("firewalls")}get checkEndpoint(){return!0}get endpoint(){return(0,s.firewallEndpoint)()}get tabs(){return[{title:t("Firewalls"),key:"firewalls",component:d.default},{title:t("Firewall Policies"),key:"policies",component:u.default},{title:t("Firewall Rules"),key:"rules",component:c.default}]}}a.Detail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3999:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Firewall=void 0;var l=r(412),o=n(r(1242)),s=n(r(1341)),d=r(1286),u=r(163),c=n(r(1651));class f extends o.default{init(){this.store=s.default}get policy(){return"get_firewall_group"}get name(){return t("firewalls")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get transitionStatusList(){return d.transitionStatus}get adminPageHasProjectFilter(){return!0}get initFilter(){return{notDefault:!0}}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Ingress Policy"),dataIndex:"ingressPolicyName",isLink:!0,routeName:this.getRouteName("firewallPolicyDetail"),idKey:"ingress_firewall_policy_id",isHideable:!0},{title:t("Egress Policy"),dataIndex:"egressPolicyName",isLink:!0,routeName:this.getRouteName("firewallPolicyDetail"),idKey:"egress_firewall_policy_id",isHideable:!0},{title:t("Associated Ports"),dataIndex:"ports",render:e=>e.length,isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:d.firewallStatus},{title:t("Admin State"),dataIndex:"admin_state_up",valueMap:d.adminState}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:(0,u.getOptions)(d.firewallStatus),include:!1},{label:t("Admin State"),name:"admin_state_up",options:(0,u.getOptions)(d.adminState)},(0,d.getDefaultFilter)(t("Hide Default Firewalls"))]}}a.Firewall=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},4e3:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(1341)),d=r(1286);class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_firewall_group"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(!(!this.isAdminPage||!(0,d.hasNoProject)(e))||!(0,d.isDefault)(e)&&this.isNotActive(e)&&((0,d.isMine)(e)||this.isAdminPage)))),(0,l.default)(this,"isNotActive",(e=>"ACTIVE"!==e.status)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Firewall")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete firewall")}}a.default=u},4001:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManagePort=void 0;var p=f(r(28)),m=f(r(29)),h=f(r(164)),v=f(r(86)),g=f(r(54)),_=f(r(63)),b=f(r(49)),y=f(r(35)),I=r(412),A=f(r(575)),S=f(r(233)),w=f(r(1341)),x=f(r(582)),P=r(1241),C=r(1473),E=r(1258),D=r(36),k=r(1286);function R(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function N(e){for(var t=1;t{var{id:t}=this.item,{ports:a}=e,r={ports:a.selectedRowKeys||null};return this.store.edit({id:t},r)}))}init(){this.store=w.default,this.routerStore=A.default,this.networkStore=S.default,this.portStore=x.default,this.getNetworks(),this.getRouters(),this.getPorts()}get name(){return t("manage ports")}static get modalSize(){return"large"}getModalSize(){return"large"}getNetworks(){var e=this;return(0,b.default)((function*(){e.networkStore.fetchList({isFirewall:!0}),e.updateDefaultValue()}))()}getRouters(){var e=this;return(0,b.default)((function*(){e.routerStore.fetchList({isFirewall:!0}),e.updateDefaultValue()}))()}getPorts(){var e=this;return(0,b.default)((function*(){e.portStore.fetchList({device_owner:"compute:nova",project_id:e.currentProjectId}),e.updateDefaultValue()}))()}get networks(){return(0,D.toJS)(this.networkStore.list.data||[])}get ports(){var e,a=[];return(0,p.default)(e=(0,D.toJS)(this.routerStore.list.data)||[]).call(e,(e=>{var r,i=(0,m.default)(r=e.ports).call(r,(e=>(0,h.default)(C.routerInterfaceOwners).call(C.routerInterfaceOwners,e.device_owner)));(0,p.default)(i).call(i,(a=>{var r,i;a.device_name=e.name,a.owner=t("Router"),a.network=(0,v.default)(r=this.networks).call(r,(e=>e.id===a.network_id)),a.router=e,a.network_name=a.network?a.network.name:"-",a.name=a.id,a.ip_address=a.fixed_ips[0].ip_address,a.subnet=a.network?(0,v.default)(i=a.network.subnetDetails).call(i,(e=>e.id===a.fixed_ips[0].subnet_id)):null,a.subnet_name=a.subnet&&a.subnet.name||"-"})),a=[...a,...i]})),a}get instancePorts(){var e;return(0,g.default)(e=(0,D.toJS)(this.portStore.list.data||[])).call(e,(e=>N(N({},e),{},{name:e.name||e.id})))}get portTabs(){var e={title:t("Router Port"),key:"router",props:N(N({data:this.ports},C.tableOptions),{},{isLoading:this.routerStore.list.isLoading,isMulti:!0})};return[{title:t("Instance Port"),key:"instance",props:N(N({data:this.instancePorts},(0,E.instancePortOptions)(this)),{},{isLoading:this.portStore.list.isLoading,isMulti:!0})},e]}get defaultValue(){var e;return{name:this.item.name,ports:{selectedRows:(0,g.default)(e=this.item.ports).call(e,(e=>({id:e,name:e}))),selectedRowKeys:this.item.ports}}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"firewall"},{name:"ports",label:t("Ports"),type:"tab-select-table",tabs:this.portTabs}]}}a.ManagePort=j,(0,y.default)(j,"id","manage-port"),(0,y.default)(j,"title",t("Manage Ports")),(0,y.default)(j,"policy","update_firewall_group"),(0,y.default)(j,"allowed",(e=>_.default.resolve((0,k.isMine)(e))));var M=(0,I.inject)("rootStore")((0,I.observer)(j));a.default=M},4002:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(86)),v=f(r(63)),g=f(r(49)),_=f(r(58)),b=f(r(35)),y=r(412),I=f(r(1294)),A=f(r(1341)),S=r(1241),w=r(1362),x=r(1286);function P(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;t{var{id:t}=this.item,{ingressPolicy:a,egressPolicy:r,options:{admin_state_up:i=!0}={}}=e,n=(0,_.default)(e,["ingressPolicy","egressPolicy","options"]),l=C({admin_state_up:i,ingress_firewall_policy_id:a.selectedRowKeys[0]||null,egress_firewall_policy_id:r.selectedRowKeys[0]||null},n);return this.store.edit({id:t},l)}))}init(){this.store=A.default,this.policyStore=I.default,this.getPolicies()}static get modalSize(){return"large"}getModalSize(){return"large"}getPolicies(){var e=this;return(0,g.default)((function*(){yield e.policyStore.fetchList(),e.updateDefaultValue()}))()}get policies(){var e,t,{id:a}=this.item;return(0,p.default)(e=(0,m.default)(t=this.policyStore.list.data||[]).call(t,(e=>{var t;return e.firewalls.length<2||!!(0,h.default)(t=e.firewalls).call(t,(e=>e.id===a))}))).call(e,(e=>C(C({},e),{},{key:e.id})))}get defaultValue(){if(0===this.policies.length)return{};var{ingress_firewall_policy_id:e,egress_firewall_policy_id:t,admin_state_up:a,description:r}=this.item;return{name:this.item.name,ingressPolicy:{selectedRowKeys:e?[e]:[]},egressPolicy:{selectedRowKeys:t?[t]:[]},options:{admin_state_up:a},description:r}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},C({name:"ingressPolicy",label:t("Ingress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},w.tableOptions),C({name:"egressPolicy",label:t("Egress Policy"),type:"select-table",data:this.policies,isLoading:this.policyStore.list.isLoading,isMulti:!1},w.tableOptions),{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Admin State"),value:"admin_state_up"}]},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=E,(0,b.default)(E,"id","edit"),(0,b.default)(E,"title",t("Edit")),(0,b.default)(E,"policy","update_firewall_group"),(0,b.default)(E,"allowed",(e=>v.default.resolve(!(0,x.isDefault)(e)&&(0,x.isMine)(e))));var D=(0,y.inject)("rootStore")((0,y.observer)(E));a.default=D},4003:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Policy=void 0;var l=n(r(54)),o=n(r(0)),s=r(412),d=n(r(1242)),u=n(r(1294)),c=r(342),f=r(1286),p=n(r(1653));class m extends d.default{init(){this.store=u.default}get policy(){return"get_firewall_policy"}get name(){return t("firewall policies")}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?p.default.actionConfigsAdmin:p.default.actionConfigs}get adminPageHasProjectFilter(){return!0}getColumns(){return[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("firewallPolicyDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Rules"),dataIndex:"rules",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},this.getLinkRender("firewallRuleDetail",e.name,{id:e.id})))):"-",stringify:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>e.name)).join(", "):"-"},{title:t("Firewalls"),dataIndex:"firewalls",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:e.id},this.getLinkRender("firewallDetail",e.name,{id:e.id})))):"-",stringify:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>e.name)).join(", "):"-"},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo",width:80},{title:t("Audited"),dataIndex:"audited",valueRender:"yesNo",width:100}]}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Shared"),name:"shared",options:c.yesNoOptions},{label:t("Audited"),name:"audited",options:c.yesNoOptions},(0,f.getDefaultFilter)(t("Hide Default Policies"))]}}a.Policy=m;var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},4004:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(54)),o=n(r(35)),s=n(r(92)),d=r(1241),u=n(r(1294)),c=r(1362);class f extends d.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","delete_firewall_policy"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isNotUse(e)&&((0,c.isMine)(e)||this.isAdminPage))),(0,o.default)(this,"performErrorMsg",(e=>{var a,r=(0,s.default)(e)?e[0]:e,i=t('You are not allowed to delete policy "{ name }".',{name:r.name});this.isNotUse(r)||(i=t('You are not allowed to delete policy "{ name }" used by firewalls: { firewalls }.',{name:r.name,firewalls:(0,l.default)(a=r.firewalls).call(a,(e=>e.name)).join(", ")}));return i})),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete policy")}isNotUse(e){return 0===e.firewalls.length}}a.default=f},4005:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(54)),m=f(r(29)),h=f(r(1277)),v=f(r(63)),g=f(r(35)),_=r(412),b=f(r(1294)),y=f(r(1363)),I=r(1241),A=r(1307);function S(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{id:t}=this.item,{rule:a,insert:r,current:{selectedRowKeys:i=[]}={}}=e,n=a.selectedRowKeys[0],l="",o="";i.length>0&&("before"===r?o=i[0]:l=i[0]);var s={firewall_policy_id:t,firewall_rule_id:n,insert_before:o,insert_after:l};return this.store.insertRule({id:t},s)}))}init(){this.store=b.default,this.ruleStore=y.default,this.getRules()}get name(){return t("insert rule")}static get modalSize(){return"large"}getModalSize(){return"large"}getRules(){this.ruleStore.fetchList()}get rules(){var e,t,a;return(0,p.default)(e=(0,m.default)(t=(0,m.default)(a=this.ruleStore.list.data||[]).call(a,(e=>{var t;return(0,h.default)(t=this.currentRules).call(t,(t=>t.id!==e.id))}))).call(t,(e=>!this.item.shared||e.shared))).call(e,(e=>w(w({},e),{},{key:e.id})))}get currentRules(){var{rules:e}=this.item;return e}get defaultValue(){var{name:e}=this.item;return{name:e,insert:"before"}}get insertTypes(){return[{label:t("Insert Before"),value:"before"},{label:t("Insert After"),value:"after"}]}get tips(){var e=t("A rule specified before insertion or after insertion a rule. If both are not specified, the new rule is inserted as the first rule of the policy.");return this.item.shared?e+t("Shared policy only can insert shared rules."):e}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"policy"},w({name:"rule",label:t("Rule"),type:"select-table",required:!0,data:this.rules,isLoading:this.ruleStore.list.isLoading,isMulti:!1},A.tableOptions),{name:"insert",label:t("Insert"),type:"radio",options:this.insertTypes,required:!0},w({name:"current",label:t("Current Rules"),type:"select-table",data:this.currentRules,isMulti:!1},A.tableOptions)]}}a.Edit=x,(0,g.default)(x,"id","edit"),(0,g.default)(x,"title",t("Insert Rule")),(0,g.default)(x,"policy","update_firewall_policy"),(0,g.default)(x,"allowed",(e=>v.default.resolve((0,A.isMine)(e))));var P=(0,_.inject)("rootStore")((0,_.observer)(x));a.default=P},4006:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(63)),m=f(r(35)),h=r(412),v=f(r(1294)),g=r(1241),_=r(1307);function b(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function y(e){for(var t=1;t{var{id:t}=this.item,{rule:a}=e,r={firewall_rule_id:a.selectedRowKeys[0]};return v.default.removeRule({id:t},r)}))}get name(){return t("remove rule")}static get modalSize(){return"large"}getModalSize(){return"large"}get rules(){var{rules:e}=this.item;return e}get defaultValue(){return{name:this.item.name}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"policy"},y({name:"rule",label:t("Rules"),type:"select-table",required:!0,data:this.rules,isMulti:!1},_.tableOptions)]}}a.Edit=I,(0,m.default)(I,"id","edit"),(0,m.default)(I,"title",t("Remove Rule")),(0,m.default)(I,"policy","update_firewall_policy"),(0,m.default)(I,"allowed",(e=>p.default.resolve((0,_.isMine)(e))));var A=(0,h.inject)("rootStore")((0,h.observer)(I));a.default=A},4007:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=n(r(92)),s=r(1241),d=n(r(1363)),u=r(1307);class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_firewall_rule"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isNotUse(e)&&((0,u.isMine)(e)||this.isAdminPage))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to delete rule "{ name }".',{name:a.name});return this.isNotUse(a)||(r=t('You are not allowed to delete rule "{ name }" in use.',{name:a.name})),r})),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return d.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Rule")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete rule")}isNotUse(e){return 0===e.policies.length}}a.default=c},4008:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.FirewallDetail=void 0;var l=r(412),o=r(1341),s=n(r(1243)),d=r(1286),u=n(r(4009)),c=n(r(4010)),f=n(r(1651));class p extends s.default{get name(){return t("firewall")}get policy(){return"get_firewall_group"}get listUrl(){return this.getRoutePath("firewall")}get actionConfigs(){return this.isAdminPage?f.default.actionConfigsAdmin:f.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Status"),dataIndex:"status",valueMap:d.firewallStatus},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:u.default},{title:t("Ports"),key:"ports",component:c.default}]}init(){this.store=new o.FirewallStore}}a.FirewallDetail=p;var m=(0,l.inject)("rootStore")((0,l.observer)(p));a.default=m},4009:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=r(1286),s=n(r(1249));class d extends s.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Ingress Policy ID"),dataIndex:"ingress_firewall_policy_id"},{label:t("Ingress Policy Name"),dataIndex:"ingress",render:e=>e?e.name:"-"},{label:t("Egress Policy ID"),dataIndex:"egress_firewall_policy_id"},{label:t("Egress Policy Name"),dataIndex:"egress",render:e=>e?e.name:"-"},{label:t("Admin State"),dataIndex:"admin_state_up",valueMap:o.adminState}];return{title:t("Base Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u},4010:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Ports=void 0;var p=f(r(58)),m=f(r(49)),h=f(r(35)),v=r(412),g=f(r(1242)),_=r(1473),b=r(582),y=r(1258);function I(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class A extends g.default{constructor(){super(...arguments),(0,h.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",width:150,isLink:!0,routeName:this.getRouteName("firewallPortDetail"),routeParamsFunc:e=>({firewallId:this.id,portId:e.id})},{title:t("Network ID/Name"),dataIndex:"network.name",isLink:!0,routeName:this.getRouteName("networkDetail"),idKey:"network.id"},{title:t("Owner"),dataIndex:"owner",isHideable:!0},{title:t("Device ID/Name"),dataIndex:"router.name",isLink:!0,routeName:this.getRouteName("routerDetail"),idKey:"router.id"},{title:t("Status"),dataIndex:"status",valueMap:y.portStatus}]))}init(){this.store=new b.PortStore}get policy(){return"get_port"}get name(){return t("ports")}get id(){return this.params.id}getData(){var e=arguments,t=this;return(0,m.default)((function*(){var a=e.length>0&&void 0!==e[0]?e[0]:{},{silent:r}=a,i=(0,p.default)(a,["silent"]);r&&(t.list.silent=!0);var{tab:n}=i,l=(0,p.default)(i,["tab"]),{detail:{ports:f=[]}={}}=t.props,v=function(e){for(var t=1;tI(I({},e),{},{label:e.title}))),r=[{label:t("Related Policy"),dataIndex:"policies",render:e=>{var t;return(0,m.default)(t=e||[]).call(t,(e=>v.default.createElement("div",{key:e.id},this.getLinkRender("firewallPolicyDetail",e.name,{id:e.id}))))}},...a];return{title:t("Base Info"),options:r}}}a.BaseDetail=A;var S=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=S},4015:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RbacPolicies=void 0;var l=r(412),o=n(r(1242)),s=r(604),d=r(1406),u=r(163),c=n(r(1659));class f extends o.default{init(){this.store=new s.RbacPoliciesStore,this.downloadStore=new s.RbacPoliciesStore}get policy(){return"get_rbac_policy"}get name(){return t("RBAC Policies")}get actionConfigs(){return c.default}getColumns(){return[{title:t("ID"),dataIndex:"id",routeName:this.getRouteName("rbacPolicyDetail"),isLink:!0,withoutName:!0},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0},{title:t("Object Type"),dataIndex:"object_type",isHideable:!0,valueMap:d.objectTypes},{title:t("Object ID/Name"),dataIndex:"object_name",isHideable:!0,idKey:"object_id",isLink:!0,getRouteName:(e,t)=>{var{object_type:a}=t||{};return"network"===a?this.getRouteName("networkDetail"):"qos_policy"===a?this.getRouteName("networkQosDetail"):""}},{title:t("Target Project ID/Name"),dataIndex:"target_tenant_name",isHideable:!0,idKey:"target_tenant_id",routeName:this.getRouteName("projectDetail"),isLink:!0,emptyRender:()=>"*"}]}get objectTypes(){return(0,u.getOptions)(d.objectTypes)}get searchFilters(){return[{label:t("Id"),name:"id"},{label:t("Target Project ID"),name:"target_tenant"},{label:t("Target Project Name"),name:"target_tenant_name"},{label:t("Object Type"),name:"object_type",options:this.objectTypes},{label:t("Object"),name:"object_name"},{label:t("Project ID"),name:"project_id"},{label:t("Project Name"),name:"project_name"}]}}a.RbacPolicies=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},4016:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(35)),o=r(1241),s=n(r(604));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_rbac_policy"),(0,l.default)(this,"onSubmit",(e=>s.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete RBAC Policy")}get isDanger(){return!0}get buttonText(){return t("Delete")}get messageHasItemName(){return!1}get actionName(){return t("delete")}}a.default=d},4017:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(54)),o=n(r(63)),s=n(r(49)),d=n(r(35)),u=r(412),c=r(1241),f=r(604),p=r(340),m=r(1406);class h extends c.ModalAction{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"onSubmit",function(){var t=(0,s.default)((function*(t){var{id:a}=e.item;return e.store.update({id:a},t)}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Edit")}get messageHasItemName(){return!1}init(){this.store=new f.RbacPoliciesStore,this.projectStore=new p.ProjectStore,this.state.projects=[],this.state.isReady=!1,this.getProjects()}get tips(){return t("You may update the editable properties of the RBAC policy here.")}getProjects(){var e=this;return(0,s.default)((function*(){var t=yield e.projectStore.pureFetchList();t.unshift(m.anyProject),e.setState({projects:t,isReady:!0})}))()}get projects(){var e,{projects:t}=this.state;return(0,l.default)(e=t||[]).call(e,(e=>({value:e.id,label:e.name})))}get defaultValue(){var{target_tenant:e}=this.item;return{target_tenant:e}}get formItems(){return[{name:"target_tenant",label:t("Target Project"),placeholder:t("Select a project"),type:"select",options:this.projects,loading:!this.state.isReady,required:!0}]}}a.Edit=h,(0,d.default)(h,"id","edit-policy"),(0,d.default)(h,"title",t("Edit")),(0,d.default)(h,"policy","update_rbac_policy"),(0,d.default)(h,"allowed",(()=>o.default.resolve(!0)));var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},4018:function(e,a,r){"use strict";var i=r(32),n=r(42),l=r(29),o=r(25),s=r(28),d=r(44),u=r(45),c=r(20),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(63)),m=f(r(54)),h=f(r(29)),v=f(r(58)),g=f(r(49)),_=f(r(35)),b=r(412),y=r(1241),I=r(604),A=r(340),S=r(233),w=r(576),x=r(66),P=r(1406);function C(e,t){var a=i(e);if(n){var r=n(e);t&&(r=l(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function E(e){for(var t=1;t{e.updateFormValue("object_id",void 0)}))}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Create")}get messageHasItemName(){return!1}init(){this.state=E(E({},this.state),{},{isReady:!1,allNetworks:[],qosPolices:[]}),this.store=new I.RbacPoliciesStore,this.projectStore=new A.ProjectStore,this.qosPolicyStore=new w.QoSPolicyStore,this.networkStore=new S.NetworkStore,this.getAllData()}getAllData(){var e=this;return(0,g.default)((function*(){yield p.default.all([e.getProjects(),e.getQoSPolicy(),e.getNetworks()]),e.setState({isReady:!0})}))()}get enableQosPolicy(){return(0,x.qosEndpoint)()}getProjects(){var e=this;return(0,g.default)((function*(){var t=yield e.projectStore.pureFetchList();t.unshift(P.anyProject),e.setState({allProjects:t})}))()}getQoSPolicy(){var e=this;return(0,g.default)((function*(){e.enableQosPolicy&&(yield e.qosPolicyStore.fetchList())}))()}getNetworks(){var e=this;return(0,g.default)((function*(){var t=yield e.networkStore.pureFetchList();e.setState({allNetworks:t})}))()}get projects(){var e,{allProjects:t}=this.state;return(0,m.default)(e=t||[]).call(e,(e=>({value:e.id,label:e.name})))}get qosPolicy(){var e;return(0,m.default)(e=this.qosPolicyStore.list.data||[]).call(e,(e=>({value:e.id,label:e.name})))}get sharedNetworks(){var e,t,{allNetworks:a}=this.state;return(0,m.default)(e=(0,h.default)(t=a||[]).call(t,(e=>!0===e.shared))).call(e,(e=>({value:e.id,label:e.name})))}get externalNetworks(){var e,t,{allNetworks:a}=this.state;return(0,m.default)(e=(0,h.default)(t=a||[]).call(t,(e=>!0===e["router:external"]))).call(e,(e=>({value:e.id,label:e.name})))}get createObjectList(){var e=[{value:"network",label:t("Shared Network")},{value:"external-network",label:t("External Network")}];return this.enableQosPolicy&&e.push({value:"qos_policy",label:t("Shared QoS Policy")}),e}get formItems(){var{object_type:e}=this.state,a="network"===e,r="external-network"===e,i="qos_policy"===e;return[{name:"target_tenant",label:t("Target Project"),placeholder:t("Select a project"),type:"select",options:this.projects,isLoading:!this.state.isReady,required:!0},{name:"object_type",label:t("Object Type"),placeholder:t("Select an object type"),type:"select",onChange:this.onChangeHandler,options:this.createObjectList,required:!0},{name:"object_id",label:t("Shared Network"),placeholder:t("Select a network"),type:"select",options:this.sharedNetworks,hidden:!a,isLoading:!this.state.isReady,required:!0},{name:"object_id",label:t("External Network"),placeholder:t("Select a network"),type:"select",options:this.externalNetworks,hidden:!r,isLoading:!this.state.isReady,required:!0},{name:"object_id",label:t("QoS Policy"),placeholder:t("Select a QoS Policy"),type:"select",options:this.qosPolicy,hidden:!i,isLoading:!this.state.isReady,required:!0}]}}a.Create=D,(0,_.default)(D,"id","create-policy"),(0,_.default)(D,"title",t("Create RBAC Policy")),(0,_.default)(D,"policy","create_rbac_policy"),(0,_.default)(D,"allowed",(()=>p.default.resolve(!0)));var k=(0,b.inject)("rootStore")((0,b.observer)(D));a.default=k},4019:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.RbacPolicyDetail=void 0;var l=r(412),o=n(r(1243)),s=n(r(1659)),d=r(604),u=n(r(4020));class c extends o.default{get name(){return t("Rbac Policy")}get listUrl(){return this.getRoutePath("rbacPolicy")}get actionConfigs(){return s.default}get detailInfos(){return[{title:t("Project ID"),dataIndex:"project_id"}]}get tabs(){return[{title:t("Detail"),key:"rbacPolicyDetailAdmin",component:u.default}]}init(){this.store=new d.RbacPoliciesStore}}a.RbacPolicyDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},4020:function(e,a,r){"use strict";var i=r(20),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(412),o=n(r(1249)),s=r(1406);class d extends o.default{get leftCards(){return[this.baseInfoCard]}get baseInfoCard(){var e=[{label:t("Object Type"),dataIndex:"object_type",valueMap:s.objectTypes},{label:t("Object ID"),dataIndex:"object_id",render:e=>{var{object_type:t}=this.detailData;return"network"===t?this.getLinkRender("networkDetail",e,{id:e}):"qos_policy"===t?this.getLinkRender("networkQosDetail",e,{id:e}):e}},{label:t("Object Name"),dataIndex:"object.name"},{label:t("Action"),dataIndex:"action"},{label:t("Target Tenant"),dataIndex:"target_tenant",render:e=>{if("*"===e)return e;var{targetProject:t}=this.detailData;return this.getLinkRender("projectDetail",(null==t?void 0:t.name)||e,{id:e})}}];return{title:t("Detail Info"),options:e}}}a.BaseDetail=d;var u=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=u}}]); \ No newline at end of file diff --git a/skyline_console/static/network.bundle.1739201236.js.gz b/skyline_console/static/network.bundle.1739201236.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..372a6d77a9fc5bf7e947029ab6c6d4bf65e147bc GIT binary patch literal 86796 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
ksI=+&d_nC6@J~7?Ae=WIrA6L40pI5ng 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≫2{0Vz`bD1m69ABVC3&h!W< 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 z z?>x6dk-xIINAcx)mx1Uqg5;I`pc~3=&4;x`$j*&mAWro&6q7t1NWUYWIoV-mMwahU zl=G=n*VaDdtRa6}cDj~-T_jV6E@gVYGtrvDLV1^ObfzZU@s}eqLyq(I82nuzKfMyh z^VJZIr5v_hQI9F>vjs7!rz-Ura-RI~nypr8&WbW>l_}4^qL#Fr|9p82s)6_vVq9s& z=fDNu)CF67PQyF6aGUyCi;4R~63-?I`za>tmM&}EOkCX@lig9wmvX| zChVr(<46HY{U_&INy?wKFa$?o)0SRzv_$4p5N5%~l?x8&Y2bjl!IE#08+XcEPHzqI zp@ZT>V};@aZiM#vl5R~D2R4;cbARiNoth=I!g9&LBLjk7Z)u1cka__wQIi?Nb%2gd zye>Jr%PN`{Vl>1A%^ZkVu%&2aCb&wGa4v=b(Y=0RFv=$^iU{{?9x7b8{a7k@O%UBH>R&Oy1CA`-q6d zwp;LAn;LI}qH#=3;Dwj;C(sy)k-XP2k_pF1Msy)2&?I0aLHCI{b&s7G$zd6cWUOH% z+(LemEqPMKDDVTHTnxOqm z*r7cmJLu#9&G-;x*+RA#lJIAVH+vGYlC)rkKFT1V9L_ny3KZ4TsE1F%KA}BgV)*jj z&lXK*L{))7Ipp9zsOR^j{3{9gS0X6O*a{ehU>)~W$G|0|{AE>N*1*FE5>+7pRRoF< z;BKI3HfwA4Fy=jsu?JbGo4|ROn(Dkx$}M&rx7bEEk#a-c&yd`ZF_c>CUAN!?UZQC6 zSj?}%^2eFw*Kn|Y1cOnF;qHm^frs@6EI~{4W@(<9FiJUP;P9F>;TYpyVB)6)+s!Sq zdXArTf(-mz1Ff7OSJ-+>M9}`Wh6viLgUiU-P#({hR3sDSV0n}Zq&e{jZkBC&1?`&*mj=FL+eR0$7|z~ zhXM=+I(Y;GZ~z8ic~`lkt`+PcBl(KuCE-_>(xn+gh~bmkXYCR%tc6pc+Kg(K>WVMS zZ=ZD&pc;QoSuU!wEj^#QTg|lwIqW7agp5mcwHl>{v3^po0x}MTL{+VLjn1dd03wd& z3TJG7;fsc*&pVCHWG;tdBm5jEBZ82bu6TBQsq~KoLA&v0+Q+&kd(MrF+=QX4D;yqz za5XrYm(hQyek((E6giq@IWQX>N^_b+#`N`S;fE&PO|yLYmhxj5%LuTBEh-wsO`kLO z<9W|&cBDL|i-Y7Q8(0`Ex|y-{tZ@51$Wj^HoJME|76}`0>|DT`Y($evHQPo3=!{eC zXlcW@keMrDqN$aRhfOS9T!5v!EALPm7^>qPvbCMJ!_sZ;+b$%@)GSU$46LgdSO!=$ zdk(^`w-7XEhBrB%aV=|QAwMJu%ukrC$T=f!2aJ2s08TwTi-2hg*+ld}i3>=I|IlhB zTzpsNFu5J7hbCW*lny31v0|!I9U~HeA~dsnurvPnEHf!=7>q1y(ki>a^*NytYH#Z6 zZ<@H?)Z=gJx!yFf-_);4?YV1nYziUL+4bx>NWcqrH(&?AvR385{dnsISiu||V8UO8 zBldvYa2+;Hqq~qcw(-DC=<#QICSZ`PK)b7qT;YanwAAMoh~3)W(+k9IL4DUl2)5nT z>%(quD&e)Uy|d42%kEGcG6e7J@2ONQ;88wAs<12Y!`z0vCvNZpv=eb-2XAa{HRw9` zH8ZM01#9aRcINTQvRidkS$2yaZEWxEQ=3~p(A@*HJP82gjgYt>g#)}TYuj@7^?tQV zLAhAP_L4rHUAhOW_iojHfCqMVxA_BX3E_crF(we)PoOEAUH^>7_WGyrI!IdcRanen zrY^(}ps`Qq!I<&O&-0eF=x_r1cS%5{#efk~?h7fZnVX5nO~O7qr2}JMh|;+l=AYDe zy-})5s0fPeRka$jLdbp893j$Ma~kzN#j~*#pIw6>ag1I9{(VDEG%U-~JA=>B6L`1M zbls{bA@dZ3XmE8`*9n2*Yq1dFd|p+EPagdLM9w48Kr5vwH5(xcit+IW!IO*vQK&zK z1+(F(t3jRV9|xW&Uhfk(168jKx%_8(rJ7XsGnh*$5cGw$d2U-Bo|Ew#g7B61;J_++TVZk#ld1!7Ys#Xe7pf@fAPm@yF>&%P zV*gf{_L1B5$nJU=jlWhP+?uLpmj3YFxu3}{w6>P_w7ULt65PV2;%PqS^^tkf3n)hq znnbg)=~DuX3#>WXV56AEQ1KN~UG$=%Hi2;1=T1_h@#KHJ#Nc}{#27@Qld$cPLaKoK+BE*xOGa;;Evi%{ zTurRN9rzh4G}Xz^A|jKiEX+o7sisHG?|l+X7#pKcm(8nuE_8MP18sJePaU&apXaaN zgWA)%doW{uY%8;8*^NFgAULs3aH285;i2kx`Y{dwvp5ICE?a5J0zrQZ$8}zpx7uep zHZ|K@!(fs!DYV;Vdl9!~-Po4l1Kaq$Hk%WH8+~GH!9MaX)O|C#>)%rYNMhK~&FRrW zy~)H@wip>i7JieFLkTOJTjv!oLxzmb;wsCS@35&9vGa?w%d^j4&Q3e+Pse{a>s+=! zoqs$NMXhgw?pN65;~qOqW^b8(f@?n!QLAx`Uk~9bGk~u>YzELo@bhJ8_UTc?0yB8As1i4v{E+0O)BwI z-zH~)rphO+47D@&XrO$uQ?@Y?CIrs2c{cn_Q+F97Omb9QWN5j;ZgAJLrKsnHyAkIs z4tK-Xi3#v-`RnX}xBdN$ze)lZ_V*8}hZV|NQ(;7k30!gCOE7iO6}b2yII(hlUFG}u zX)sEFPKC#3j{%2 z^@v2OpOS9KOX(o!#rN_j$aCVy|NI~S?SK8B|NVdcxBvTp{=fg1Y!HkYsX~x}?14!R z+7Io0!OD3o-StMjemC$oyheS0 z@=!g5HiEEub+55Id0^M(s#C!oSg)O7W0UuaEOq0Cc&fL#jZb-A%m`YaoztdAfnjD> zC_S-$e%#ArjZ@|26pp50AsXf7~YCW3Xf9m)9=3q?aVPoU$ z@$sThqq>iJ(*YX|@0|t-v$MmmsGc`)M>M_U_9kFN!sGu}+uo^~uR|8JvGKoO9@Iz1 zTiAM-p9h!hMMxO$k2mO8Z)|MF|N1fYY61Ib;|5=U^CNad_hJ{Q7xLLp==yec96RO0B_PdQ;y8aQfVTv2OH=A3%iXSFPoQR9z z&DPE~yVyhGDXw<6H@CJJ+Z@H?P>!v?!`=oNA^8Qd&W-xE&*pXq)|yeHicj0=k2J>> zm`f%wB#aYxrzr{Qf58Q*Y;NH_zE*(Fcbr|oywb6g4Xkqr;s}_HDvqmd6%L^!naJ5H?*dp1}=bmg<;hBL>ibVMx}# zu`1)cq_JU&Hf0I(J1jXbYimm0MjNS>8nIQfA4;8Ssh`K|#~KohiSraHLj81H{d8nz zj%k%ZVKNMj3-4T|w*UY}Jdg=cGcXbg%&;W1J0}8TDV+DC8|VG_-Z*b_=TcL1(+XgL zMbj^loZq+5dy=QM-)UO=rJ=RoBmZi=C5G={Q^W8bY`qSK@BN{B2b(L;-c`)fc?j+1 z&ZY~>hfKYvC0Qwf<=bHrBBL2;dvX%>lIF-~f1cm%;*Y_+HK|3DUxQ%;l#AP0?p}iQ zOG}tSoP-Y(xNy5Jq3Mil4ca*p`5KG{!u+A({1O4~i)z}_>@xdR^^0(P?g3s!2 zS8LNjI9|u^QQasu6QZ*cxp>t*DP1rm!4mLUVbX(%3JI%KL6#}$>7>IBeu{?O7Nb9R z+Z6{8>%%(Tg4mI@wGSichW(3Icg0mehUa8Z>lbHGBNL~`XUF5S<6)c}w+Zp+Rl~BA z4YR81S%;qqYvcZm0zjQMXMDyMJRz6#dXnMF>| zUZS$g7pI`}dGAdBv4>|6L8dX>yE4 z(&rq`%GFiKpU)k_yT%9ek6~SH$gb?Qf+({j9(mm8%hx5CO=F9t12yqzUSu;)V;Dcz zQtY`1yLI^QjHG)KHfXlUtrO~j==mY0f4CJxgQ z?5a!^O)VFD;Op;cCO%PV1lL2z9;QM>$ne@)1u%27Y1kaccLB=H^ig9r_mNdyXl$nZ z^iI}!=m-{eRGMnZ%-y}PyR z02;(*crmcu44vSVI&{#F)I~q?QmTkDPomPG+>eo}b;m=EYNqWw_DT9E?#Lm7_ zytSY!^8gJ3vcg@&LoJJ@o?XTHCbnG{yaqC#&h_Qfc3QdOd#;_f`yG08vMJoji-T64 zg#cH@yIiAAWA#Di)Q3=qCz!XTA?EyKk2LM&+YVRTqBc7*tnTtu50XkCN=&nmCeeFl;z5?&b9L_Mm9G7o(T%^y#p8DwsG-CJbIE*%Mn{d$`cGLxHcMF%IK3 zDU?k*jYk3K4SvWqvs1$cr}>BYLponP=0M=g_fqX3gkWMsZ?17KJLON>j(f7UTl1>S zX1kuxn@@{ugjRSe&+E+7-f2d(4PI1Evr65wX^UsmlR-2NQ>s38&(Bmv4PNh@E?RcS zjVX{@t!sNKeCgcN;HfyV@&?McO?~>)g7U?WqR|(4vna0Qt11^VYn)N#LQ677;|I(I zqZNS)+$GwfJx211`eHU`-9ce#Wp3J(w8t0&UQtqg$xijU84ni0eK1UT9i<#ps@awq zQ=U$(9POngi1(h~b1;m8R7g}6p53Nd;xXOwHz~0EotJk;J{Y3cIf`C;-=XLQu_}dv z7fM?LA#L4BY3r6tSW1lQymPV48!0~AEiXQd@(hr;Db}Ab8l!o2C6q_D!9q55`d+`j zo^#vcs8|-!gb3ZuMwA$xZD6Eyb9js`GWffjjow;p)WtP~sl*J8%h>-`Dw%dlN~WXd zOQxNd74rj#$?NjJ49{~qrv5=$2ojtd>y+GZ24WwnYPOwXADN@zXq|N<wra-i_;4?OTI7u|hTJn+r(BH&#K3(_cf=zP6_ z@KYcDyqP8Glr97msK!yLwk_?dBA#S4%Y3qOT_p&s?7LCl-2Ru$3-D^7FsqMNlx6k+ zWW>rO-*UuZOgEwvZwS432}ZFO;EB|rGvoDpOr#+IVkNvKuxG9yC4~#_!qQV(Y1Z-E zQt`z@CRmBU4+ssd_-4fM_8jBZf!@kl^KjZK2I@wvnDR%O)1yS6AqH=7q!4?s*$B6N zD6QJ?@!}`#PkvW77*-me*o!tAb@o5-SH&2FwpX;Fz{NKkhFnTr43yUvVZc~pz5yg! zNNfnrgBgvjHsXQ_DRL0{OY8Vvn)V2}sXI7b9op2{XEK%vYjcR44%sK&Hj2_ORzjqp zGo)@3`je-9oaCi_l=FmX9OX)}aVEvjh3>}$ff;3mS#XUfgc6b9>~f{Tv*7H5dVS@% z;?v8M^G`wYmCX>Woug(ri3CNU;(9TpcvsftY3y$8OA&drLcDO_B7)XeE@4gJR3AEk z*hA=HG0E?x-AM;pH|sB^=e^gY=lB_XB6LD72doh<{H9#OrRrp8geS9^M%G%5OtJ&* zJA78Pqi;Ttp*i|T=mf`nEQjF8FD-gyDQc6OWVWKegJ=iLp&}a&=wu)%#-KcQa%519 z0aA>{8)7Fl!hrR*3c-`RD+5oub>k8%{XCtQd(Z|!YEzY5;AFOK-qvzgOfI**=GC&H z6i~I9YN}gVC|F;VRA;IEJhK#hn+zZV{MjXwGsiuBiSD1@U9mX;=D=V8=`v`@gZk!= zbGcCDd&Q%9hJxF|Q>mK0UUO-d) z3J15a%i_bUbaop2a}My^hcY?KcFFC?_3gWw*;k?1T;vtrXgOaD1PxGrD zV^^PL&oLkWa}M$<;}XE(CO=Rym+TS8V;yU!Jug+c(675fzwS!{Fv$=ArBe4-Q*2|Q zakr$2R_x@76{l0eLW{pcIkmN@S7fwB4`_yS=(egnx4-<5(EbLIMp6yp&^Gmkzk?6W zJcw840*{~wRcOXA1E&AbdWEHNT2&yQArZ*ZtS_)l%vNV>)>rC>$=Mu+Ln=Nr**m<=l$=Sb5dlo<-Ldd3cKG+Fg0NmMsr=P~UrtxbD1M5j%TZ&SVi=+|r5x zvNKVhX;&4DI)Ktk9O1x7*q$U|lboay8EWzGOgx$BP*!(FL~KB&F@@??jRd&YZVYi- zP*2AUd}DVm;@LEW!a{nG|B{Im`|ga1O$~LyPFg(V6~$-HZs(@+e?H zfF7F;=g0dz8{LG7mFbg=fm(V6QI%SMoInIU?|5oHOhl^J38p;V7Ue={R;KYs$N~K& zvc@3;2DDB@RDsdKW0-!9jYl)#0eX5q~B0)I5ma0JT3vIlZOM-{@_jqOr#WA|BR0N_Xw%0zFnF0FI#K~zGNq5Kk z^z2xld6qa#cpbOWSt=$5H5(x{+kdB|H(WS#B)!Q5BrHsJBgzj;*&ObZJfv|-nFWUj zc8bzpQfm!bm5qw6v?g$oF(gz$@q5-Ra^)$_y5X_OPqRjxCEEftcI zU>Rb8gX-MRf4n_j^n4;_*xE%epW`AimQAL%!-Q-ownZIwlajNKD)mY;(B*E}u7ZMU zl*|xEn&_JcHB>oz#%h15ja&~T-c3zhg) zkWjARBaBq-OMQk+WEZ8B-}^aI0i+k8&2>mK=@>IX-sT51-*ZXSDgLf;`sFJwCVja z4!xKOr|gJ$ai2-@p~oJHrjP&M|MCB%o|J@BkEtJCH1^IeE`GV-33Bxvco#up;JoRb zXboI5tl!rrS$_u{-Ehoif)q5f{~^D*S{==g(mzJMkdp1yb1FW-x=d;xZ-OAza_AVe zDAR@vVv0lX%xnB$+b9@YosZKFbiHxIxoszyL`}FNE}#xCvIQ-lG;UBE-q<hOAA^)n9KC$$`U;$gYUu^Ypy!lmZc$e0 zl($sf8gf_%}xU>;HE==-47Esu<9kFXGrAiq( z^YKccPu3x%cFNy{MUxFb7?VBJuO$;W8N+#Y9;X-Nu~3;Jy4L)6 zb!)Y?R@tVer8>KsUCl1Nn1oTf^Gpv~3J5(1ts))G0L0+dRETy%M}!PhZjVpCw0}J# z4bQ=>q)EC@@@?KhPql;IH4b_o4|?Mr6G@=rqw1KVI>ZgoTU(AZ{>tek7B4Z6*>LyM zrLmlVcKx7(V*^?19cAQD)fHN=95b2aF`jwpjQuf{AJ!#^&CZu%+zoWqs_g5q3KW#=Rl?jEAt-KBuB2!rkt;#eI(OWQigJ z(v{hVJ~~W^oBB-K6j0--o*fiYgF<~ON5;@BYCh1WA0?5<=enpSlV}>MF9x7W3F(z+ zGF5S)nuAD5&Ljzc1XoUi@kJPP2kh&ZD&Fp4I!v@0B<)_C3CUcCQ*%`HRi&QRlT31s zMXBVJpsonxPcRNj0}FzLMs=h z7|=fq=R6G3cnqHS!%#2Zqn0@^*P=1k)1yKmXd&~eN5Tc`J9Sil^7=3~u+pT*;~otw z)lVvu*z&|}ks4QFP`J!Jyn!_E?5UsI=Rb3y`s`tv7*zssQtSrsg}o>R^_|_4+e8`p zC}Bgk1$YHALcFX_Lhqt8BHqXT)t&|;7u+Wc7ahQ$*7&JUIm4)F=o~mHOWg#rbhFL3Vxf1NcBjK!5?aUF$Lgkr+j>4eG_tX6WMfRyj27@j#SAv$_op zqBvb!n?hY7kto}$nwA0;fr4p72A?#J(4_T4GVKdNfaq{acq!)`phc0Ik>4P7`)lGn ze+}tZ()olv+1?a$8cmjy>hEp_m_hpmewNbKRz4(UZ0*)QYnQn6qdo`Q^lO*uibHd$ zh|}bdJFI(A3V+)=j2oz_WeG2n6P&7!BH;=<;TTvIW-gs;J3?wQ<%Anr->ETcw7|SX z6|c|Yi-y^K1q@P35Ehp-4uo%Q3FVX51&8m|G$x+4yk6>Y0yOcxCOhCwH_UYDveY6E zOm@>NXL{N@XW>M8IjxJDn8^l{Xc#kL8g!gg`22$i$mvg0Cq@9OA^%FVA)STpF*x?2 zHWuX2=n4wGKTk4gYNw!bAzBUA1&t%vpNIVkdkKi5HAK(MHC{G)g=993Rfg&cPt`)s zyIHJ*a~9l{kOfr2x3)O%Wq<8wneS}5TI|o^w+0yoxJwX$>rJPmC+1a7aKkP;-l^^a zyVNfEs(gfce7&k&=B-89B9l5x{~&jfJBYNiNtRY;hT!~CjRo=w7jk${na|bvCDV1; zNjN!%l43A`%d?AL&o0!%x)02Lr>sUHi&2~$yPq`Po_*}{b6Y(}f|-j?@G9|z!!Q6- zA3gx?0xEG-i=q>RzqXU6!_Fi~QV_;RA*0p3W+fhn8}|WI5>%^kqMzYRVf&&aaWD8a_!a@{ijU-j1Cvg zMdF@=$Pib@2upV<5z7FaM|^OHyEpwS}%I`u9d7XXQArv zvt`%TqI_ydHJJ-YqIXV3n+@7c$f;uDW%E?mOHO1P5%uhR4+IV~jvRvV6`tQ{c%v{F z1CmXHuE`kW!eN=*{IxX=@fy%J{4t?@bSYlbIm%i3Tsp@plQ*0*mbHw&(b(O#q14jQ zr|BN3actM?!tKYj5J!&Pr8JJ-Gc9~Qw}tO`cpE27$sZZ!J%%Ze7J{=B9F| z!WyPEJUZ2kISqY**_q;|$07?BJd-1B+qNLrO61#ruyv-u4_knx1XJwAEtK-rEF+L+ zMs9Z_cVezQ*RRPoPV0}gmpS1K*Vg(q`PMJdC^F_E)w&L_+CMeU9 zqELbjSVAU^f;D(}BfR;|tTB+gA~@Ufb*uAL{hIqvDt?6>StU4YYiL#Yq}5U@U&9M< zVvTdq=QV>$i&}klX4RRR;F(=z=>H#)=6#CUCXbU<$y}PGHF--(%eBAhgFXJm1^c|9 zVUd&+_5^c!eR-*0BNk;#OquItWu|;Fh}2(WcYyB5S!6E+O>ak&s=NCwG(#MV`mYXzlN&149W&d zi;mTe2BQZ;Y~Y_^$$!=+E9C_go~*#`8>cA0^HaR-R&J$mbN zXfzvn2(V(G?!kV5b@TvX<jtBC zUUwMJdL9vZh<@whZ1=o=5|6ww+wm}Ku@~IX-(_cqAH4jT`NA9I&r101n=vDy$2;{H z8IIx}e9CLP& z%Kv0N+fspEkRj9yUhXDauPyrX$>c9%N`N*JR0pyQTT94MPA_mIHiQBZ_vuevB` z4ot6P$iiaa9rz3TOsyASTvA{WD z9y;{Q!6t~tH!@d)EWP>o{?$L*tF8X|ShD)(7}x(hlTH>40r4* z4GaHd^N|;0YR4TtKY}|RhvieSF?zOK>a`m)#QMe&Vr?c`%cT7&kzsB5+yJ*_asw#9 zUAfd05+i3dmoXNvpU5JUE}>`VFqnv|&q%~pm>lh+Opd^loC$qe&ve#VnCa|JPgpQ_ z()wd0^Or5G)Sf3-jWoIH*pRC(fv;`Wzem0%rZCISuz>YQakhcrYPtto;Z;ciZQsEnB*0XCez1bt=o)H zdh}?DXO9l??D>gpBzMyo_#l^o4;C=+#>z`egM-&m-0nbnUC7mvNh6P;ZZl<4$;~6* z*seEZB6&)cF_2K0JIg_H`;y%9vlqZxY&eUvKQromJ(P%8##35)q8!Cqc=|9*?ND62 znm>T4d+#4Lk^De0dn2Yz`m z?&ZahmzSYk2G2#i49cNhUJ>ZBD86aMcomJP-CAe(md9d4`wcpDm1?$4wvxHb0}eCc zctV*imwK!?oezwX{U@Ee#wfkdRtRd?GJVxrY@*PCo``v(*OF)6WpqpvFu#2Zg!;h# zW@-_IDoTNvsXGbjAUvdz9v6cLJOl8HZ1i|2E_D#Z6!pqPlWQ%K+-y>|wu8tbnIJVk z2=*27&27G6$>;?sXY^Eas1*w^gr0YTiDGd z67|epG2@gle62j$lzP$J$^o~z^&Q%`>?D!gw6!fwTPRy|Uk%FEWZlBkeT#qM>Fy|# z*o`uYJqj_qO&!oVKjv*gxW1I;v3s(GZECi#hj+GxolEj_&slXjx^uHkX=f?q`bzvw ze8X(ejC?%^aO^t*28VuboL95&7sNa@M}9WKraAB<3?=LgD3-8!2N|;1g1?E4?xCcO z?&kS6x`&t9=+GqBF->w>=%{7&sTfgG6=ytYL6}~pFl4Rb3XrOp%LleXb{g53FDYx3 z7AA_S%+E;-Nr*;Ft*Rcb-`32>TaU=Doc6G!%8p>4{r_z(_Y+!uJF!~LxL@`4D6`?( z+USUNSMb%XQKmzRdxo37d^DH=gm?-eSZq;Sl~2c?PmjO+a`D$nwYlI0m;^1iqtCy5 zK4bF1Z7ncDIBadX&&BM3DIhyGphIrM zZ%quQ3a;ref4dXeOZ_Xqcik#zS4$^Dwl0<5sWAKBRjP+^!9jYm(i1hWde^?bwVI|o zAf>gW_+Bj_k?+8i@4%?XKClNg4!^A6V9>YC*td1z+X`CBuj3gB=+m;auO-hu6Q7HY zWcJ&;h2K7-Z$AmL-#yd6y9?iqEW%tYQ6P2*ilM9XI9@s4bZU>a5$KfibD z!~9nD$<@EVA=qi0lVJ~qtD3xisHf_42Ysv?d=`%^&=eZ?e2Yr&}WJuw{i&rP@vXkEbIxEvbfzp(I2N zvL;2u=^V6KmsU_K(tZ*K1F6#Ac*a6J{qQY`Yoef()j|Jyq|xD1Nl zv8ZH6cX5R%MPyspWv{b-Dzm*qI9dEq8Ryo_IlOo9ZQZ`uxAna`w{Bq4`njS@UlUzA zhUjvGqRYpKGH4&1|0RKc;=nnrRS?Cu3=BD`Gm-&oY(aL81_A-w$Cw;`~o>QQ$+@yGtK z+Dxv-OrvK1nJ049*e-&>r!ZKyo#bJhQ(($&)_(!QrvJbf2;|Ol0s2*5jT5k)!>46u zvtQM6kROt59rJ23u8aQ)=6%v~WKa%|0^q)ol2^X$?ERx;PFL$II9t81;Oym5GGC=; z(OzD&xOuT=G02YrM?X|DZw1JMoWbl72?8LXGK!gXd^qFAD;RoujTIQSVbc8|(FAjQ$Gs zI5UuTC7RqqV4r3{yv#}6aG967;qG}VoH?N;A`dp5#@i@`gUa1tCT+-Bzbq*55J7gg_U%K?r5AJLx&_av+AN* zhF)pib}zz*z&u5bXX>G_Zmt)EM)!erMiWS;cH?nN@5W z;&{SkSSj&Xv1x@y%LnW91buxMPte11HkQ$E$HsC|-aYiyu(4dAjb)WN5wo&(Ha8+B zN~7F}JF0eVEVV1?1$e@W=ZGdy0Qh36B)T2wL)Pr7 znL&V%Ba#ke=*b84@ny*3)pe7mK*JaU1-#}opXS8@5n+e2)Xb2N0aa>+?QTXUo@H#{ zUWT?2GX^(A+5$V84F$o(!R+`Xf_em>&1PiY;M^J=&J_ARCZ`?Mgxs(4jkE_~K%Dfh45(6AxO&8xRCjc}sLxYX_( zW_M>*V^x`H6Wb`}+sGsoijqDR*A~;ba%#sWw0jn>=hENDX#Dj8udi3SdTk{R(iQ?? z$VEaQd}P(8bxt#dy>w9}c>XY`lvKGfWUE%`^D&O{N5LKDN4d2RPzU5OhKVgdmz_aV zn@(Dl3dAU}ri@KVlt6&WD~)HPaa5@^E1vJMZ{a9FwvW`uXK9lGW0%`1^o8HCxjh%v zU$X*DxdH(Wfo7||LVYxz%E*He`&QBR>WN<0 z9BW#ze*@`uWs_^BJw&4*d6ZWqNx7aM+5;BWd1FK`e*sij7Zy(q(VR#s@SlUDw!MA00zq*;T zR~(_+7C%6kuop_HQNG??z*wuSfNg%#b`Io8(^KcJB6D>(1c5Fb zwXBoTLjU?S{?|)h>}$kJa2fU8t44|fJUS!{G^bWfe&BPdgemFB7w7p7*?R zb6HA>LMzL3!V^d5{H?t2G39koFBoE6lT7OkTuVNYH_j>V%jo7XB3l5$N&U>kA}irl z=d+7QMTyPO=E#@1AG8W|8DWXZiHdUMWpK6X?`Z?W2DgYy0AfI$zx|}Ha*Qi?v1s9f zX5GF*_$hU_&Q6V_o|#ZFv(}tOe@8G~Leeu`M02e!;JP`^FsG0pptcv+5=`H&mLN=I z)b(INM?fepqyNyVsSO!rAZ8)v&5()XKXow#4nwvgEa8SY9 zoou!sujZVy%!wwZk1PcD*)Rk$3N=*j7@J9_k4&L?k|nmI@sPccR|22U{oKbV>S1>1 zW2U7HVsqK3mb#UUHUyY;nJ1 z4rChzW2S>`2yrFbNiD-PAq zN@M%GQW`_KD^)U@ySk+is`|P?YeM3bqn`NEQd6eVrQq3&jzm2=3+pgD(j@9X2{s;C z41T;Q;c(KD2TASdZ{M!24N)Yl@fWZy5v{ESM&=-V6T1k}Y}M*ftnDYnnE^LGOA_|U zUV`1hwCDUK331ySjC6u^ElOt10f+W#1b&70LUfzci z@B~#|z|16l0vU2zqr0udpPIATisstGW9#9el-gpF+EPtw>p@I`DV;9)yavM3=Acm6 zo06~>&D{watlSKJ!^Y+g-x=wOqa)6Re_CjL+BCc0A;@#eli&aYx(NHV?kq{zd2?R{ zIqGMSC@72Edj7kre*V1$43AqO73Nx+DqV#di&92&8>p5yIw{eOeyjRnUxn3>tq1;Z|AUXJ(8oP#o0U%WKy6I||PRoJ(7SIFglJ^!2o zup_t3{w8}ETdu&a(P`uSa4GP>xU zNbH)`Rm$#my4qc>(}`w7p3^4Nto-G$Sgw<>x7w4y_dtP-8P7(lyDSk>zO}Q@otIne zoxHZjJ~=Mgu=le#taQ23Qp3gmx^AAojwARzXVoKK3XoTt7BM%Ox`4}K3w4J*0(tVi zZf9&pl5sH1l#T;CmFx&n?5*EVYawsmx!dkU6Q)#aS9aMIy=w%^ChWt_j=7BjxKi$@ zTux4hUy~hgYFSV|s8{=ywIaM!emghJl zSp%WC3yRk$L{ z_)-rvU+Q)pi7)@rKzStBu{tdFr^fltO?fNpQ}g3~tF^DW+JB|_jX2>*t}7~t{vlo*^>u+wH*CKyy zkf~j62^bDn%DNhebZOcaKa;j;^h|}B&bYzU2s4d(b9Y`|U{e_ua>Y7m3?o=++I?S2Xw^$2NPEq3~`xQo2|DNIww_Kilik5P-Y zSg-t-zQwKd6yhqR zx6Os?!k$-#T!H%xoLLuC2F{=$=RyuBbi=kl<>Et?KVWs>P!jtcN06s)lfo3Agb(W< z`ZaVAs%w&KIQ~@Tv~wQ zJ_+^dY0j+k3=tx_EVKdmk?|`n)R`QA`H%J#k~Z$_)hk z#txF~m{a;gfRr8xUm3pippNN(@vV(IrvHrvGw8f)R^Nx^vih>UFqBz+V`o<1xO7(E zm}m7(ThS5yrmVi{+S+dQEwANwg}^^GB`Z(KI3Z=D-rP;Pz{>$O?sX_dEj z4j`>EW@TnPn61?AHvF^Q*yFi?(eZJQj*smvvy@?8(%&d2>2Ji7{zd|f@~|N3uU)k8 zaXBx`?P4#>lFhq8SqzN_wEmtbeH%=3H(=b4ARm>cqL&}zE@X{6#M|Adm*_Xo zLs0$?#o^)fzA~R1o*zzwyb}POVFmV%{0LJ=KIP^|9*}1$qyKB*8{j zsX{T=d=FO}{8qvNjvS@X&6U&q4SZduC!VB@U>F7Ixz%_a&e&Rvn|Tj8on)e+$Nl`( z<-B4!PPLN0vU}54cK>>jdS=>oFlg`t29Ro*r9hrn%=zkHMgI7j5@j?C+py-c5`TEcRwGI?Ivm%e zl+_yAPVKo^Hz}M^HnZH!ynf6?(A!>thjAk(s?gFzyXQa=M;ie({VY zdYYf2S{y^8r~!SlD*7=O))bV>SYIbpo-vuGkWJ<1=ppR2&r>Ft(PH3j67;^rG_oq} zLZkY)|DjQJyfw7~P=i(o;ve;vs)IxYe@9M*`vd3+UYV znY|;+c^=DEBq+H4d#M^8`i4+tAk{!sj${hF^$YfPLyIuY@!=ZZH+L505VH~bToW_j zVpQN@M?}}L4!>)JiM!f{v%bcH5+7uZ;-x%@JQ_(4$&w}Ri`l;RnWTqAt?3Aw#sNUm z-MNo-m%b+`%=vOq7-ROtCsV%841Jfz%Lw9`IBHgf&njRoO``jwG5jmk;%pQ4_b0ad zBN#%LEUry0KqDu^F!T_OzgniwllJL_mDCPb{My(i>N|W{YDQWdjh!P*blzo%CPK%) zRpC*Fkx(f`$d zw+X0YruE;s&;xT-orITR??b7SXiUXSVFq|~zn9VsU=Sv)x;F~auTaDT2hqntP>quN zBw~v6n72#4l+g)BEpI|^2IgFBld_5TXtVoXJchR=9t5jv1wbMLfu#emK3g)$=L`UA zL#*irXKUFfTzD)`TBiR%k2#(zf@hg6ZFrVtPjoz?nIzd`!WOy2<2u6Yt^hIe_wuDM zJ{!h@zoTZl^Iapn4t^lK{+SS7)>%)>A-=M4d#{K9a~)M11?D>GOFXWh^c7;mc7Lnb zumgn+Lp+!Ohiz@W4>ruTrVf0VYga7S!*_r%JLEoOa)NS4GWQg>osLlFi|g&PTQlvdA{foMeOBs_WHf;oDXjyxsoO8PUta{E1te zlAmyZo0hRhBt+~Ak+QFcc~21hv~>X7M1*+{1lsA2&`vVU`&M$4{&E1M-eLgK;5Q0D zI-X4jMr{c_sWZE$s$UevijTX=BfdJXt5CKm)gh!>_%%$@%vVCbg*$#D|M8CzV>FRH z*+X$PA6=y*b2Rn9%EvYvs)THiRp=7`tc;&4)fex<3iCU}^;xQp>jB|mp+ zVGQyy1LjBq8p&L;DDNBaC?nVS&zIIY>t|Av=fkEZfP<2hs}M5fX!-_lDRv0B{F)DX zf)m6Wy(!-5&cr+2y?$z}a`2upNm#{v%2$$+y-7k8DNzbTf zgOsTb*=5>I>>2)uqeI%^Jcm?2)jME6#RI6ND;|7{?6=dxRDyXbXIE1>Zw-~RgW|&b zXCc_uvk>g)SqOIiDYFo4|3801CfUS6HnX-3GaKzLqHN`TS}C- z%Udu9B`laiWoy9T{E3Zq5Hu>ji@h*j7N#4G&3z_J_SsjVj<{3t&AqU- zTd(^X4{28J8kOIc5m}b7w^(;Rt2f=tg6G{hS-dmfqMMyB5(V;Jo6r2+$sYTL4-;8< zUe}6?JG(MBvFcQ4J|5k0XOLtJq*-@%Yse%y(o5cm^97e&Phs04gYB%RkoCGDPFJ?I z(@QAx^gVKKfcZ?3htO?Py#+f5R~dV0XC!*qtVTwG9F67`XjT{X69LwpTF2 z>(Q=5ydDidcS-`dRT2QPdn?pU$O3I$7C5FK6iY6}fy?&?k>0PCDPNXk%D2yF%9k%s zOZ1>c`YkOM-7YT{`Q3oGLH{nB)%()Y!CjGbz>dD?S(g;riyg;FUJ_+BRK(QCJe^Rs z!asJ!{7bUavEQN>j|in3g(pN-m?-U)4dazzt|wb7hDrro?<$A}+}LbBc^cgCz-jUx>kq za$y3;_j=1899IuZSKu*v^|54$!o;LrSw^5VIT9K0eO4TdC?HTt8mT`_Ag$gwRP z&37l^n;#vqkG_Mwb*FYwRPqxQc<8}m_zyOC$QJ+2whr7-M))_M$cGG>?QF=9CHk9< z%ZvW!<)Z)}4AK7_MgQMwDyXgR4enzt=Xah7YP3)){O3vpwS*+`BL~#W5j7eOUW}&E z>F*l=X$&{#yJ2W{Hdl$Efuav@fuh;27occ%wtk>!R*#|yCh2S#ps38YMVP_RsQaA} z+ zo%hdKv!my%+0k>>?EF*atl8QAherx+*MA^|ejtUuQ>4%&!|Ydu70U8M##qq&;lvST zc@ATA>Es8Vs05xUBX<_Cj3q@8QyW4656IKl8~%VieNT|5;Sb2uE6e>^xRcP*NOGOT$utk%^p3c!WI0?`@-Dcns1zEqg(KlejHY?EQh<`hnb99db*j#wD;@1|@zA^p@%Uen0%y-m39imrO-Ck=jm{ zaBq=wl3RgN9h^leG@-1*OoFqJZ0~MMOjci#;dD7n)^IT1~=igh@-EptSB$m|CNx<*q zcObQV?NKUo%q>Wtf=P2$V@H)*7GQFE5@w^ec_A(*_kp*<=5$haCOgUmk%Q79ryaEQ zw6<>w)#;j0o$l*Hb@F#QS9&s=+yI&6ZELQ-**iM(tlGoc6Jq=7t>uR08P54$70Qpc zRkP3*iv;(%zBPDd}3de7Bcl_Gz_273<$8pl3Y63)eyA;Qd{5YUtn1opOLZCL(QMRW{iLFyQ+ImC*X zp3J)eM}*liy8<0Up`%{wr}dv;=qWiUCh1o;5TvwB4NYr0&GmbeUbFaX=1OV(yN!nF zEkwiQF;!i*08&on$4O{7m5@AQkRsg(-Ti9aotS{%)`fXL)JybHi_c~YDPXKu=i1-S zsx4xHuR{CFH0uD=r7=IuzG;1zbvyf6dV}kQb!|q|S+lVNiG|ogMCh-n z+(a9_D4`{S9msb;We^WRI2D^@t1fp*W3xVA;OH7c6>Puf&-||M$RgeMGij*XbVQEd z%q{j>E)KTZDXq3yiUl-oz72}3xrQ^#buelW;ZOq!KF70xb{KBkMQc-zWm}IZv|@vW zO`y~;gO=lfW=0u2ca(fMBTlmT7Fn0R!GM0@Z4YK4}7+Pl`E`1ha zIt!vIqjeI7FFXku{*`+WuqBKl%{vA-J15wp%pvHQC9c~?=8UCQ<;Py>8S6=tIGe9_ zwW=ys@&+k3$Q##9rdBkRy{=Z9%RG?R_R*|~UDeL8l!bLkKwVYSoP-;f1IEaE-k-w9 z_4CU=RlQ4$qhr$^v-6o;FvT18-x=1r`0G#h#75+6k=WF_$c;O4EfN2(s4LU3D2^2u>Wh_|SDpP29p&r`c7^>+7> z!h$a8V~w=N=6+pV+O3%@BrVOyO5_m2ur6(gYYXum+R>Y}t}^0ug?$1$&}q04kB5)a zH$N-z&GWfxk9!d#)nV%04?c)*ryGnt=+2|gdoWuX*vezWzG0h3zYX)kKUC*F z>Eh`TdZ?0-&riMM?sP#i8Esy=Y+kyr*4Tgb!7m&TS{*brSMLt! zP0!+8>3FmVG;g+ag61=h z1;>Ns!6*OL!pfm}7V2}&Lj8+jq5e0tP#=^F!ffnr@+eGnaRz9b9`dNns5mOqfkug2 zOu<7dvY+CgXmRf0pJ0bR4A!@{_viy>cy()gA1^D*au=_2%W|MB%YD2~mgNckP3eWO zdE7(O^8Ld4HNibn4pL_)yq+V*o~kRVWwE z`(*$vK_6?=f z>QTf*`PfgZ&EzV+ZiVbW^F%Hs(=uT2DGb(ErMi+io8me;3~;h{(P4mpHL5;ah{m37 zMDKtF8$KmFdx@A4932^1K`lxAfc_Q6wNA@{hX{|DN;QXU1ss8YBTc}A+KCX54Fhl} zEWlwkuV}TZd&@TVT*}#}QSZ+LhbK6KL&+6Y=_gRi*JaN_Jo%KZWWX`(vKTrqeC_dy z!9oWTRit@I-UY8zmPn1M+KC->;}DnOr)>T7`np%wIGExR+>;z*CncHC>uMVlT0NBT zsZ`HD5!UQaR~aaPsl#r#)oYGdxoH;h1Q?>g5sMsk)icbkfxDo5qOZ0r_)X9NX{=nl z(xSUSFPiKEvQLkaqd|`9(lzz9yk;{?!)fL<9OMA<&6(%M#GJ`z+XP8x>-URCEtE4K zQk_(~Y`T;cp=!s~2AJUlm2R*U=9M2-#n{%({&7oq5kHCR<>+e~O_n;wBpy+As37_gr`c%6*!n4mL z@#B*(?O)HBP;>grUp`l^xtDDsN$hNSFI)QZV!hoT#d=>}taoB9#ze<&7l_v8BNm9e zNU$~^%tvyY?VLz%w^(gHsKn~fRd?59iG5D%`hHj=BuVx68x0|Mj|k|SCwKQWxqD*B z-6K5pZiVr9m+~>2{$^Z>U3rkK2aBhu&z9Y>F2nzG(wxnD@b#L8|Ow6Kyp$y zXxCLVx7bX}kF^;4In3qo!(!~`?$&pR{ro9NLz%GAyi)*8BRvHt ztPotJ|-mY zp&Ks#!lZqIoNz9wQlrCO(}7C92HtVBG{8c0cpn=P zTZHwH{#_7wH7yFfa!Ut~h0+0yi$e*eN$t2cjsNwMb{XF))R36;FzioHf~2RBLxHdY zb_=&O)T6jWR5Xch2hN8B?vjD#)Ku$En*Op81P%tCqmq^lz$wfbnx9CyM8?iV*^cu| z^yZWtH)19ha^R$}TqlPxKH6Xa7G#iJ8%Lv4UWvOgPMVG`(GS|BXYdxVV~Du+r(y`k zf?fo=!|un%QY`3(H+L+Bgh!kQNia(F)tG}0qlxwRDA7N_uI=QiE*(vExi?go2UJ~3 zrU6D!z?kbIL$0<qhZq)k!YH?u=29M^tHzG|g!%#)vG!2E?jb1=l;ebf3bY`|s-0 zA1ve3k6Pokwc!eU`q9y_(5F9so=+d9`+%1L*#bRvBo<~{cjpiC-T6_DJ3r#?d_gF8-snE@l|9Zv9}LOX0|5^O_n%} zZT=oo+sh%e|G5*)^EAfSgm^-2LE+<#y&l z*pEa64Wlt*zSZjj1k`JRnI^-a8$$R76B|Ja9)#R?jDRlJiPLcrPXr9}ZR zjX;7-PWwwo$bh{{j%Vx$0Bgk^Pn3uL->uW+X&azx zEkRcU6;`U*nT1`FLbm}VbB6T@Mj-=Vfur%ys!wn|cU(x}Tg8^{hp zpSM}>7_)iloBWW}Q@}JCGfsdK6G&D!x zUsdQnq&$2gZrB`?ZA%1gvgsSnTjRro(S#`_xuIuTAHdJeu9B5)s-reBgWe_kU-0je ziN@MO*ezz9F#BwfVQkJxq~^dcr`kIl_`N#WotHHFY#)o+G_EeG0ycHMsjU#ZA;S$0<*2iP2G5cEYe{-d4}Sb zE~oerv2;Jl=m1zYP|j2dR59x#@H4K23BG~9Xs_{XkWXmJMT999PrXeEL;94EO;{8tHwNn4FYL%Mkwani$>*)>k^vu68 zyX&#;$bivqRl-{g?LehkCKo!YOk>7m`bj(zT!kI!!MAVgcT8|yuN;5=Yu5G>SVKyz z-%+b_{PE*2fAQo%yLxuG$iFp{#kKXHfj`Fj8H)pgXG_HGEzq;c8opxfn!m&ji`!de zSlkIaCs7|WKoy3=?QbeVaclT8`Xy zXERaqmi&xx074QYH$7cH)%?>C6VTLizX0%h&g1Ft$^$4-+aARC9OR}0Dho`FHndXj zAp^Ck|A6V z$YEvxB|%1H>yJ>${BBRo3F(ot{hlw3%!LRBs zI^KgJ2j1>AC&jO_1EMSsgbsJ;*!Rt`z;z12Wr`7=vEH z)96~AG%bIU8q&&O_nJFRkUOeZfl)fnr2P|ntMIl9CRnMo$)FslORb$l%xk) zTr|2wAddlN+9lJVJSJcn!kiO9OALSBlF+$;!clc%Ug~T0iIktniAhtxNuS5>ybPwS zi{W2U(7PxfaP!qrIxbM@*j}X`n1eMQ3g@UaDeZ1mRc%4EFZH5`uAc zVj}HNBUEp;Ko{ZFnC_(J0I+5Dy*r?XjFrZ5Lq8guJb?fx7hDZ(OX+8_Jn*M$iz_@+ zet62c>AIOPpUHA|Nz^Nz0vl7NRJ4-SffV`UY*Kx`WK6K03>l3De!y1FG;G+FM2RW= zmsX=*$GC$*ElO#e7jrAJ{}1XJ|c_)FnD-L z*av82jHpQfAp<(|Lxr(c$5(OVOzy0nm`4%J>}rNVLknC}Mxh46D9vZ=cYhoI?iQ@m z31h*q>8}$0*&B`PZ{M_^n}R)8HsF7LI{QQWvv+cK@umH9`{ek`8D0g_5iunXf1G_j zbv7`kQj|wnVtO@dgGrFlrWxy@_z z;`yB<(H+b!lPO;`uck3k%c`K`+!uKb^Dyuy24mM?;3J@3m(hQyrz%56uE;?7spw{2 zH72R4fw_Rm4g??MKh{+?T6BLr5xZjoeWgP1b>gLhXP%pxVjne5-*ZX5jGfmQH)mq5 zVCE<}nEDgX=WPXAnH9A|3bAHS^VZe%J6jK{TEaH+Iw21559Su&ZiWbbi6&~HZfnj4 z_M`lqe(lD(z|hwDrp4WZaA4XE9@{%{n{iPRVe+uH9WO+#CVhpqwF@hW@<2YC*?a>RJUjc6o>wulpvjFuA znf!x?k4V{@jr!)cWi|-48bVY=%n+3H@*6ZLB!8-o#0@aK(Ikd?>~WtF;VH<}zDG3% z*dM(h9fT7nrG(BW0Gi#nsanMX&1ZSbQRoB1AevW<8 zC`b>#AX|Z{gKv`q(kG%9hpDHHi^*`taNtYe8>jI!7>dq%;FohfySc4BT+^#WwfkO# zJdb_D<>xlidYx>sHyPs^vkp^Wjcl6JN!Vr0!d^ucztOE#DhY^g+M-PcTVZ1ob-#jT z2z25vj9)!AKQw$%e&dw25UC9QOAGNhlEPyppkKh?&0d|2#AsVgx^0$pFf`?C(@a!` z!GIkP2=Dckv>dQ~JEh{7!Y+VUt{o4X(HU_;bjEQDOVH=3gndmVY#S=!F{*?+udWh0 zX;Le26VOl(oP^qig?RW>Wo8B6bJl~xt>iIiINW(R!YNCqkF>2#H$&$A1#5r zu>KXs8*~@=By)q)(E11<6J2uC<2y>^0{5UxGa+~f^o)Y6;Mr)bXD0&RJ6Pd%b|>^E z3W(+PVyU}nVfJI0uAA@NSx!`>%q)xJXkdz70~ ziKKRzSeZ7%*44FMW{W4F^hG0BTFlxpxA58~V#C8=-dST$RJ4Q%GrUk2uqW=7KiF@e zUp~X0RE4f|0ek8hI2hT0hHAg@PQ0n^+}W;F73u02QkKndDkL3u2IUMiYByX=?ZOO| z3ty231U8k^f*;Cl2S@P3{^naI{=EnxZGM=|_-j`p)Uy0`-!;qc zcUKSUn7l%E-$|+Lz9X%Y|^qBP z0SPeDnPoSPQi_XVOzDWxsGL2)CQaY?9yVculp}HU`nmRp&I0?c*7#Iu- zFp-X?lUn!?j3&d7NefW;g5w@eHJ3VDHE?A_`$WwW#i|<=ef-vLy)L}- zu+j6fwy|xqkWB>p;%tg7)?NAvlu;k1dh~uvXmM!o4W&>4Ts8^OftiAg~RR25)Z> zrMIU!Ndxk9@*DOBvml**#Z@t=P;NKs9F>x|UsR*Z&Vff&Q5BEYn6H&AZ)z63Dv<7t znqZEyMggz?o3$*!>Iw5wZoQxsm$X-Y52nT*BucgSmSzLs8|iPzXz&kS8mPepM;-^p z_`^021cUG|suIMu$Nqa)30kEc0k)%8P%6lbPIlQ993_Mpm%?o>*-IKH(?0==v5Pvt zb}1qCCY8`re_=L+9u_YXgv~l(YQ=|!ifiuI{_8KF&pKcJdVY5KEW<{otIIFPU;cc# z+Tuke%qFLwFLAAk?I!;LO>$IZw%Q)uFO*0|hD5TktWT6)vQ@~v{hZ)eoww0G;HoKZ z0l{N1<(?kRqc45c$@X{^1HSBwI--T=x+-S}s!~un1=3L|Xn+4rv*ztrJ z$Xm~w9Uxm z&7^g8?S~`CDjNAr%5RR10uMvTFc`O}<(^-(KOJBE6%0L4 zAu6unYg>^Y*Vv0&^*6d9Yv%+Xd z%g$ANRpD&_b(>gOU8h<}UaGOhJ`_3sl-PX}Pm`?AYZTIvD>tvY0y)`0aqHCNb%hw1 zvIrgC=4?;uz(+g&HsMNOg&O6sVH9U?u+}S+f+#^l}eAyFTc#3=?(1E znWd)^hNTa>4R8jC4#jf1oHvh#UBu0!K~3Ryc@2YnA3RI%*;#sOou$`sCLHa2IMWxl z?5_mI66}wf0c?@El4Y2$_J0s*WjQd&6uK-c`Cm9nIU;Pbf_eDKA#StKgvQf;>r@4f z(l=dn_GpvL8K(OMfHyh8J)|(y!4*^aXxBt*IXc?&FqP*~!3G}vCUr1~BKQHuHe8z% zkNp=@eL|{JaZTAP@2HnQ^}ax&KJ zUF}7(Tb6JQ?3%4QT7!icjuJ}MSOyL(%K#aT4~&T3^?0E8B@#qjP496yGtpV6tY3to z!w%27uq46?tp$V41N2J6gYU4o)_8}yXo)PhP5vs}lJMdXD-y8cgJ+F{VJ zv9PGusa##0{d#pSg*|^us~umrn+Ntg6_`9%PzVC|LgJd0@O*1b%8DeRccw0GM$hDq z5!ywc*e=?&cF||tMfblWczW05L&E@^U4v9V8~pm-fYwa|THk31WU98~hTeNm6_8!! z#@OqRhp%5Y3twO7gs+>+!`IiV!`H72zFwFP+{}St%l+F1vSahN*wdpoxv4_xtb|f$ z-P;(f+I4SXrQF;eX93o4ef;<(1zgX{O0sw<=_mCeS(b;JEaB>jSgsEotENcA@o_k) zG=|y}k9Yxm)m$N<6}F`d45j6S@@9#3DE?IqveM`yqyb_?Q|?uu>ED=vgDvv5qFaW< z%J^=+=fs)MiE})MH(s6vLQB);QZOog258@10JPViEg|CZMB;;%iDQIjkDe#t_1rpY z=xUBR$sFZb@ct|S-($FLE@b>7i^%1|BTB<9eBrV|`Jb0Y`Q-g15+q< z@d|0UtxYsXqA$1jvc`y%z2WeyU;>M>(u&qr(9+I(%ZOx0#B+NO+Wh+K!*ej)F{L z16c+j#VBZ}0YKr`J85(6i?C{N5K`iaNJy(^_X%n%O z!nGPa9Q|^gW{XcBWVSfiUtg4$&DbwCX{%TO914aw8O#s+h+(z9mhD6P{vUGR|LRZQ zyHO;k86)rO=P@Wqa<<)Dxl540>*UfnWU#f^?RP-Ubk>XiRY#59)HY@A+wf~ZVg94c&>b=J~t(o4v_radAUfouY&8PaT189 zM;XuqH)#%o)wu^(Nf^Vt_4+yOihG}WrJnn@cq}(OvM;3UU1Ic{J8%8LVBNOzB3Fm9fBT9#>H~N^GyC4J6+TMh8k8XXDK0LYHhtz0LRc+$ywaH9J z?V4#za~hATaJtKIKaMRv9%H?1*8M{mZxWp4%N&~}kVON;OqB@z**N9W7 z0M`@OWmVj0A~@X?n+9(UZ()`7nDpkG<(@3FocliFlk{5;Pwj-PmCO~FzZ*5~zE;LV z%xj9}s`N*>RnWVZ0VRhoQ;?Sn?5Hi{L8cFg)sM3MWbeZPN&ECl>1}HcR4ide=lohM zVDbBVX{(glFyG&|@QaF5?#n=Kz?j8O-ROH30s1vPCwQ?WOMdS45lWDN zB701^96%CTQ`Auv7GrB}Sd5?tNTQz4;^}xP&yyAKMm3)|9)r1K9yGIfM?wa#euEbC z&v9RTaM;x|t>zdrldR^H+LFxX7^~vmSkRlsu6~DqqMzN=7}Fa{$Rxx0!6&$QO^?`v zYA@2Djw|+68stF`z0`~P4586aLioI(Ae~}7&SBhyT>7V8MWULY}TO{o)2ubA7JG48S?ReF;AD9R?*FjP9pq}4@L=?yr4v~$uPrN|2BmbqMf z1bRz71PeZ%eV`SdE{A);XX~%bpWIHKd#$87c!BWpMF18=2W$PoGbEnVU{@_srgVAe zH`?=iS?HUOq`P-snGF7ZO{>WM7+|r%D7)|PH@Awc$=(wJwch%@^y+TIe3*5+Wo(#3 z#Iy$!C+3l72d2RqTg(^RckxUX3+7wtD;xr1ZVJ(Op$ z8muizLl7H3Hc|(;93KX`3)PU;ZH9w16RQv6xS;mh;B2byiqDP53cUfCXZ0O?y#9Hj z|EiFZuw8_*RHoM!fA@w>8Nx?g>GWQccC$Ae-|XD7JEGY5=}t7n8n!#%Gk0WB8C%au zv@Bo4dJdJxSE|Wi0}*$7vWyj+@mhHJE{ZS!0a~<%M-k zYn~Lp+t*=d$OGMtlG~tHvqJa#8uCE$7Oq1&*WcK&j%u+r2}~6Ms1aB0zOT@?CU;8G zvq_|LB!rq%dp4UBIn#-nX@$$gtHr1%q@LgLf>szza#g}pnEM7nE;7(%e78*<+{T$w zi~v730}a!Wz-T7g|KZ3`e@G$}i3Zz4nhvQlh5|)xDfGuv)a5k!lwZ4sN%<%~LNmpe z6XpM8N~%i#_?d`jAta)~kcdAlB;qrwV7uR-3I=ZEnGrRZ@`Vc5v(d8djh59k?BzS7 za52s@DptEk(C#VMvaYpe^+NQMUC_Kzder5|>rrQ$)uS$R>QQ&g>rt1h>roe4kGfu5 zkGfk%kFpT+S{!j?x;D~SFI9*gs{nz>0pTpOsRr zM`6G{t>p<>gcQ9fh=12c!Ai5JU!J2NJ_HoRQ&-c2r;)DLNa=dYT3K3?mS)=Xsw(#Z zRb|>s9@>S3cb2Iv^YxCQ^H?#T-;ghuA}@RN2&M;2>h731GMkQ1qI8Lg`bvq$+SSJJ zpS$nxTU)jgF{!h1R%=R{#U*Ho3umP>CK{r96PE}b=|$`YJE9%)9%5Kzhg4)k3~2b4 zF`1K$IXj7*W#KTuJ$!MW3}vtIH&*~kPHvLh+Rg3EUiztWlM~ofp+*x5`XV5KC*MNYii#$ zy^1q-62Eg$5a1Y8uHE}UcSLW;Ht2IooN^oH-Ti{z1I z?HZOW`<(Xu5EWis+l;*C3b^O_$^RFYfP0Pt?k0VkX<9D9mE1KEtx5g_S$PkH>yBoW z3>A^Ygj0FU<-GiqpGYDlnk>NCBqCxNnUcu23a3Af#7@Lekj5gXRZ=$ z%Z_`>_zFM#u!9CnI+#zEXSEu6K+AMM*&yDg8Cd9|BE3sAk;il@Ba~-*OE1txl}k`M zSVx5-Ht1uwIpf3#cHhicedst{cjHumkuhDf8M)JB{AEy#UV80GxAv1wo_P}IjN3>o zFJ`n--Pu_aPer|iU5~83Oq1}ZDL57L^hG<3QJU! zkBOT~R3y&7ub8cb9eXlG5&VgLm&Ca z*lV3dQC-w%=nUdRB%ZMusY>mjd$6nXa|%ue zw}*r89RIEEV*H8}0*o6_QwiR89P6E`5EXlpe?uG7Degr(pZ-5=g$Loi|3<=AG!{pA z@0US%K|lsK;=VXqC$&)|$p&eJr-z}06{hQhS;cxO3JF2{bKH|(?5{gw))eoO4xHj* zp^i=l^&af+5BOhMrW<+l;#>M6^bs!gWjCADU~Qm&#~q0L^xsJ|}GjeOpl-7${LlE-yY&s)<@WYM##&Q$bt=ORraOZ_q6HnW|{4Of?auN}hIzXre$h{Hc6-dqalw z3-KMNLSZ~iTD?vWBo}N}_6c^|f!IT#1$HUMN|i#RQ@9&Ux>`Katwfkh5!}hK_1;)k z7VXDlyoY%d=GKkx9^~bI<2e=jG zPdymzC0R2=I%+d3K#LGU55F5B6lKOoBVl%xg!#-R%zG_VHq%1o-Ny@+)6EK%cR7X1 z$K{2}yVZrth88OC7Z)lYmlrA}`#L4Y`D8~ey786xICxIDGPqC%p}))1q(G(~VZ%f{t!}l<_GK z%J{GV%2;6u#e{xd~Vt)?1hC_cXT&6#Lg?I{clZ!B?RF+&shE$NDI*xRxj{Th~B>_#vSQrL! zCIqe88R55maTfA~?{b>XYZ32cS;RXT7V*^sbcLeIn4FwJbM;!i*YgDm%Z|{+LmMHF zA3{IP4Qryffx#m7^mtv7$DdB-)RNw{?-(p(Iy-F6MM6$=#d913wI`zz@r% z^JZx$@=fYg+6maozd^Mh_XCgd$#{P68{-p7pU-Nc+)D@m*gw(ysjD++SCZLru(Nn9m(iS@5~^fF#?b7w(KD){=ra5iklwq2 z{MyW?Fn7!uS;-AHquO#(SfDqi{Z#a&EM}3yzyZ_WV{(XFtix2t?XPUf>29v`ek$GE z@T~V|y@mty4wqbZQfqX_@*^C|iQAFWNy-}Hl#r2HA$qDlVDxN`CXNrlW55T1)@Z^k zc(h4?wMM8-q&tDNW!!rJ(P1>J$K=S%j7)KKQ>6RFTcIO~r9C0wn=aP3c2EJw(60Si zy(jiN#~)WTAZ~&W$Qy}&HR;FS(T2!L1^pHQl4RNIHwX7Ma>9Mx<>9`@DsW#(jSx7c z98b6qD?Y$;1y5-bgvam&qKPpf{#S3({e3hoWlRim4w*>9s;>F-RLOy*XK2#;%vChS zY5x#EpRFJvCb~|%FgTn}P2SY!;Mx0}l{ZzKz18d-q~uzL{$_<= zR<&uP5y!@iq+>D0qu}U|*y#7mWtPeO0Y`t6xd)X`^IVbsXg{TTn{b$lr^o5%t-Lz+ zkn^8%6VMk@u_<1z`ZSV0Ia^Hee#%n3pFTwKwiC-OA4q#ap6*KY+&Ox=)N!)IhPD?_ zv@eY}4{VCgd~e}Y@8s7^TGsA}thnmlSAfP0=RGU;?w)sziZ1T+HTr4sHLATkMh2|R zT&h@ZwS`Kb{rg{~1|IwBAl4!a*<$Q9N)5)?BXlpJoHjTSMjR8pN*-kF*>sd#6VTgWhb|$}qB$lh z&++GVxG7n_a$aYp*$l!M#rY7(k&8ewE$BYDdEL*^f(|yB?B*_RDaW2XVZ}$K!<~Jd z=f)dS{Aj5hH@qX6S!_K;!?|Ka$!z!0tDjHLm}gV&)HIp?n+|B-p5wSVQt!i}K5IDa zMdCL8wjOQCtP1ckO% z!@x(ZCKKPGF3viNp(@_r-xME7;g~>Pk5A^qpS9w@2V*r|=G6IZFgDeSGb=q1u#hH& z%+E8yGEFI>WekR0aPCx+pWQQ$lE>j>DpevtzKcI9DUW?b9&*qPP|b>!^Z7S6j1Qt? zSV|3%$+64dH>-~2Jn0!uUe%uEGF}3o;1>JVp43hwZvE^OC^9mbKM%Y2O{{e*Gc@rn zdJTcScdCaU9N8O=kWFP8Ol1vZM?fAHPAZ0VQeK*1qtBLgc-cKB<1xh*0P>;5x7n)B zXX4nAt=l*cHkqZ%WhSSbZx8ph^DP=H+h)EzDdD4~Cr(F69z%>lu>;zX6hY)f>gtKq z%3#V;TteSuqA*JodOtWr^mtKA6UPIVLGGk($pA`;%{sO7`cfHjqA{0IZWB>oQtDUO zCDZTOtQ6waQlyj|lgBTUbwVPPZ;|#0X zq^{#@v3C`U?h`lAbNj*ip-0F2rhF98R=ze5;{~9;6G;R(j%DUNwdk-E~%fmyx2k`59uD@x~^y zi==V~yQh*}+z_HcR2%rRQcDu_bDc=H0ZHJANdjF<5_rZF;HPg87o!AynO-d%6Fbt7 z7}8%-p*8VDxl<>~RG%mfb)uZA69pn_LOKHssCn?|km6}Va<)r-*6^T~9}THpY!*^G z%L%D9mxt8OR)^Hi^|3!)@z`%JcI@A09s90UDhA)uM&I94x@IwMwSbcskDJm4R%4go zB}e@jJV@$A^<&#oaPJjHu<5N@YrSjY0nqBlH z%z$Fol`rg)miJB{9*FBS<3E-Nc*>%&iS6Siv4zP9f9sB_3nmf9tu34R1u`MAh>iI- zH3l3ed4-{Ia%0XBGw;_aW?lxxOn|qI*l6B{4aP#5Jiz_qlYGxI+)2efa>z zIo{e05s{ANyG1TN-dGRwd#Vn#ui4id$;7JZGhR^DROZY>YC)bdPFh*Yn@C5}{A#HL`NDzT5GR5@3wN%&`oVoSUM z=RB{F0+GQS!6!NXP$khsdYGps>Oi|3I1WI}fxh)6)?S!UF{gu42$CqYEfU$?cjsJI zM?u61PQ2hK_H~JjQM5M~?SvICKdM$|(-VHR?z%gS?(k?$9p;ND*j1}gMsM{Ypu5>y zpqmJ4NKN|Ok-5($tUbQ8EGv&*#cl1P}&@FJtm?=TtSnzcQQftlySt%GT{yYrDgkjC?oVhk|zNINi> z*5?D6k4vE019J?msR_h3T$?lG==>y>&@2U|(nAKAocK6FHX9(4JfK;M7LZxn@B&x^ z$;|V9A!Ah62WaMT@TA(Cck!IvmXH4z`BLYMS~vy(?rL}; literal 0 HcmV?d00001 diff --git a/skyline_console/static/runtime.1739198880.js b/skyline_console/static/runtime.1739201236.js similarity index 97% rename from skyline_console/static/runtime.1739198880.js rename to skyline_console/static/runtime.1739201236.js index be007559..3d5ab0a3 100644 --- a/skyline_console/static/runtime.1739198880.js +++ b/skyline_console/static/runtime.1739201236.js @@ -1 +1 @@ -!function(e){function t(t){for(var n,u,i=t[0],c=t[1],l=t[2],p=0,s=[];p -
tag : 5e5d471516
+
tag : 3e19b4894b
diff --git a/src/pages/auth/containers/Login/index.jsx b/src/pages/auth/containers/Login/index.jsx index b7888d73..acb7c525 100644 --- a/src/pages/auth/containers/Login/index.jsx +++ b/src/pages/auth/containers/Login/index.jsx @@ -330,8 +330,7 @@ export class Login extends Component { if (popup) { setTimeout(() => { popup.close(); - - window.location.reload(); + window.location.href = '/base/overview'; }, 7000); } else { alert('Popup was blocked! Please allow popups for this website.');