From df3d88e9b4d1b5473bd326706399894f8058d48b Mon Sep 17 00:00:00 2001 From: baha Date: Tue, 25 Feb 2025 14:06:58 +0000 Subject: [PATCH] [change] last tag version on skyline login page --- ...5905.js => Container.bundle.1740491958.js} | 0 ...s.gz => Container.bundle.1740491958.js.gz} | Bin ...05.js => Inctance-HA.bundle.1740491958.js} | 0 ...gz => Inctance-HA.bundle.1740491958.js.gz} | Bin ...lCloud_website_white-07-01.1740491958.png} | Bin ...ud.1740005905.png => cloud.1740491958.png} | Bin ...40005905.svg => empty-card.1740491958.svg} | 0 ...05905.png => load-balancer.1740491958.png} | Bin ...40005905.png => login-full.1740491958.png} | Bin ...r.1740005905.png => router.1740491958.png} | Bin .../static/auth.bundle.1740005905.js | 1 - .../static/auth.bundle.1740005905.js.gz | Bin 7504 -> 0 bytes .../static/auth.bundle.1740491958.js | 1 + .../static/auth.bundle.1740491958.js.gz | Bin 0 -> 7505 bytes ...740005905.js => base.bundle.1740491958.js} | 0 ...905.js.gz => base.bundle.1740491958.js.gz} | Bin ...40005905.js => basic.bundle.1740491958.js} | 2 +- ...05.js.gz => basic.bundle.1740491958.js.gz} | Bin 80559 -> 80559 bytes ...0005905.js => common.bundle.1740491958.js} | 0 ...5.js.gz => common.bundle.1740491958.js.gz} | Bin ...005905.js => compute.bundle.1740491958.js} | 0 ....js.gz => compute.bundle.1740491958.js.gz} | Bin ....js => configuration.bundle.1740491958.js} | 0 ... => configuration.bundle.1740491958.js.gz} | Bin ...s => container-infra.bundle.1740491958.js} | 0 ...> container-infra.bundle.1740491958.js.gz} | Bin ...740005905.js => heat.bundle.1740491958.js} | 0 ...905.js.gz => heat.bundle.1740491958.js.gz} | Bin ...05905.js => identity.bundle.1740491958.js} | 0 ...js.gz => identity.bundle.1740491958.js.gz} | Bin skyline_console/static/index.html | 2 +- ...740005905.js => main.bundle.1740491958.js} | 0 ...905.js.gz => main.bundle.1740491958.js.gz} | Bin ...905.js => management.bundle.1740491958.js} | 0 ...js => monitor-center.bundle.1740491958.js} | 0 ...=> monitor-center.bundle.1740491958.js.gz} | Bin .../static/network.bundle.1740005905.js.gz | Bin 86798 -> 0 bytes ...005905.js => network.bundle.1740491958.js} | 2 +- .../static/network.bundle.1740491958.js.gz | Bin 0 -> 86798 bytes ...me.1740005905.js => runtime.1740491958.js} | 2 +- ...40005905.js => share.bundle.1740491958.js} | 0 ...05.js.gz => share.bundle.1740491958.js.gz} | Bin ...005905.js => storage.bundle.1740491958.js} | 0 ....js.gz => storage.bundle.1740491958.js.gz} | Bin ...05.js => user-center.bundle.1740491958.js} | 0 ...gz => user-center.bundle.1740491958.js.gz} | Bin ...0005905.js => vendor.bundle.1740491958.js} | 0 ...5.js.gz => vendor.bundle.1740491958.js.gz} | Bin 48 files changed, 5 insertions(+), 5 deletions(-) rename skyline_console/static/{Container.bundle.1740005905.js => Container.bundle.1740491958.js} (100%) rename skyline_console/static/{Container.bundle.1740005905.js.gz => Container.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{Inctance-HA.bundle.1740005905.js => Inctance-HA.bundle.1740491958.js} (100%) rename skyline_console/static/{Inctance-HA.bundle.1740005905.js.gz => Inctance-HA.bundle.1740491958.js.gz} (100%) rename skyline_console/static/asset/image/{FelCloud_website_white-07-01.1740005905.png => FelCloud_website_white-07-01.1740491958.png} (100%) rename skyline_console/static/asset/image/{cloud.1740005905.png => cloud.1740491958.png} (100%) rename skyline_console/static/asset/image/{empty-card.1740005905.svg => empty-card.1740491958.svg} (100%) rename skyline_console/static/asset/image/{load-balancer.1740005905.png => load-balancer.1740491958.png} (100%) rename skyline_console/static/asset/image/{login-full.1740005905.png => login-full.1740491958.png} (100%) rename skyline_console/static/asset/image/{router.1740005905.png => router.1740491958.png} (100%) delete mode 100644 skyline_console/static/auth.bundle.1740005905.js delete mode 100644 skyline_console/static/auth.bundle.1740005905.js.gz create mode 100644 skyline_console/static/auth.bundle.1740491958.js create mode 100644 skyline_console/static/auth.bundle.1740491958.js.gz rename skyline_console/static/{base.bundle.1740005905.js => base.bundle.1740491958.js} (100%) rename skyline_console/static/{base.bundle.1740005905.js.gz => base.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{basic.bundle.1740005905.js => basic.bundle.1740491958.js} (99%) rename skyline_console/static/{basic.bundle.1740005905.js.gz => basic.bundle.1740491958.js.gz} (54%) rename skyline_console/static/{common.bundle.1740005905.js => common.bundle.1740491958.js} (100%) rename skyline_console/static/{common.bundle.1740005905.js.gz => common.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{compute.bundle.1740005905.js => compute.bundle.1740491958.js} (100%) rename skyline_console/static/{compute.bundle.1740005905.js.gz => compute.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{configuration.bundle.1740005905.js => configuration.bundle.1740491958.js} (100%) rename skyline_console/static/{configuration.bundle.1740005905.js.gz => configuration.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{container-infra.bundle.1740005905.js => container-infra.bundle.1740491958.js} (100%) rename skyline_console/static/{container-infra.bundle.1740005905.js.gz => container-infra.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{heat.bundle.1740005905.js => heat.bundle.1740491958.js} (100%) rename skyline_console/static/{heat.bundle.1740005905.js.gz => heat.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{identity.bundle.1740005905.js => identity.bundle.1740491958.js} (100%) rename skyline_console/static/{identity.bundle.1740005905.js.gz => identity.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{main.bundle.1740005905.js => main.bundle.1740491958.js} (100%) rename skyline_console/static/{main.bundle.1740005905.js.gz => main.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{management.bundle.1740005905.js => management.bundle.1740491958.js} (100%) rename skyline_console/static/{monitor-center.bundle.1740005905.js => monitor-center.bundle.1740491958.js} (100%) rename skyline_console/static/{monitor-center.bundle.1740005905.js.gz => monitor-center.bundle.1740491958.js.gz} (100%) delete mode 100644 skyline_console/static/network.bundle.1740005905.js.gz rename skyline_console/static/{network.bundle.1740005905.js => network.bundle.1740491958.js} (99%) create mode 100644 skyline_console/static/network.bundle.1740491958.js.gz rename skyline_console/static/{runtime.1740005905.js => runtime.1740491958.js} (97%) rename skyline_console/static/{share.bundle.1740005905.js => share.bundle.1740491958.js} (100%) rename skyline_console/static/{share.bundle.1740005905.js.gz => share.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{storage.bundle.1740005905.js => storage.bundle.1740491958.js} (100%) rename skyline_console/static/{storage.bundle.1740005905.js.gz => storage.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{user-center.bundle.1740005905.js => user-center.bundle.1740491958.js} (100%) rename skyline_console/static/{user-center.bundle.1740005905.js.gz => user-center.bundle.1740491958.js.gz} (100%) rename skyline_console/static/{vendor.bundle.1740005905.js => vendor.bundle.1740491958.js} (100%) rename skyline_console/static/{vendor.bundle.1740005905.js.gz => vendor.bundle.1740491958.js.gz} (100%) diff --git a/skyline_console/static/Container.bundle.1740005905.js b/skyline_console/static/Container.bundle.1740491958.js similarity index 100% rename from skyline_console/static/Container.bundle.1740005905.js rename to skyline_console/static/Container.bundle.1740491958.js diff --git a/skyline_console/static/Container.bundle.1740005905.js.gz b/skyline_console/static/Container.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/Container.bundle.1740005905.js.gz rename to skyline_console/static/Container.bundle.1740491958.js.gz diff --git a/skyline_console/static/Inctance-HA.bundle.1740005905.js b/skyline_console/static/Inctance-HA.bundle.1740491958.js similarity index 100% rename from skyline_console/static/Inctance-HA.bundle.1740005905.js rename to skyline_console/static/Inctance-HA.bundle.1740491958.js diff --git a/skyline_console/static/Inctance-HA.bundle.1740005905.js.gz b/skyline_console/static/Inctance-HA.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/Inctance-HA.bundle.1740005905.js.gz rename to skyline_console/static/Inctance-HA.bundle.1740491958.js.gz diff --git a/skyline_console/static/asset/image/FelCloud_website_white-07-01.1740005905.png b/skyline_console/static/asset/image/FelCloud_website_white-07-01.1740491958.png similarity index 100% rename from skyline_console/static/asset/image/FelCloud_website_white-07-01.1740005905.png rename to skyline_console/static/asset/image/FelCloud_website_white-07-01.1740491958.png diff --git a/skyline_console/static/asset/image/cloud.1740005905.png b/skyline_console/static/asset/image/cloud.1740491958.png similarity index 100% rename from skyline_console/static/asset/image/cloud.1740005905.png rename to skyline_console/static/asset/image/cloud.1740491958.png diff --git a/skyline_console/static/asset/image/empty-card.1740005905.svg b/skyline_console/static/asset/image/empty-card.1740491958.svg similarity index 100% rename from skyline_console/static/asset/image/empty-card.1740005905.svg rename to skyline_console/static/asset/image/empty-card.1740491958.svg diff --git a/skyline_console/static/asset/image/load-balancer.1740005905.png b/skyline_console/static/asset/image/load-balancer.1740491958.png similarity index 100% rename from skyline_console/static/asset/image/load-balancer.1740005905.png rename to skyline_console/static/asset/image/load-balancer.1740491958.png diff --git a/skyline_console/static/asset/image/login-full.1740005905.png b/skyline_console/static/asset/image/login-full.1740491958.png similarity index 100% rename from skyline_console/static/asset/image/login-full.1740005905.png rename to skyline_console/static/asset/image/login-full.1740491958.png diff --git a/skyline_console/static/asset/image/router.1740005905.png b/skyline_console/static/asset/image/router.1740491958.png similarity index 100% rename from skyline_console/static/asset/image/router.1740005905.png rename to skyline_console/static/asset/image/router.1740491958.png diff --git a/skyline_console/static/auth.bundle.1740005905.js b/skyline_console/static/auth.bundle.1740005905.js deleted file mode 100644 index 737f1969..00000000 --- a/skyline_console/static/auth.bundle.1740005905.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(1709)),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=>{}})},1709: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(1710)),i=a(n(1721)),l=a(n(1748)),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},1710: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(1711)),f=i(n(1717)),c=i(n(1718)),m=i(n(1719));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 : 7a48e70dd3"),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},1711: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(1715))),{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},1715:function(e,t,n){var r=n(1716);"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)},1716: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"}},1717:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/FelCloud_website_white-07-01.1740005905.png"},1718:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/login-full.1740005905.png"},1719:function(e,t,n){var r=n(1720);"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)},1720: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"}},1721: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(63)),_=m(r(54));r(231);var x=m(r(341));r(1246);var v=m(r(1247));r(1244);var w=m(r(1245));r(569);var b=m(r(1253));r(568);var y=m(r(415)),S=m(r(617)),E=m(r(49)),P=m(r(35)),L=m(r(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 n=N(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)),C=(r(161),r(412)),k=r(204),I=(r(564),m(r(1492))),T=m(r(1745)),j=m(r(237)),R=m(r(1746));function N(e){if("function"!=typeof c)return null;var t=new c,n=new c;return(N=function(e){return e?n:t})(e)}function D(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 M(e){for(var t=1;t{this.setState({loginTypeOption:t})})),(0,P.default)(this,"getUserId",(e=>{var t;return(0,p.default)(t=e.split(":")[1]).call(t).split(".")[0]})),(0,P.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,P.default)(this,"onLoginSuccess",(()=>{this.setState({loading:!1,error:!1}),this.rootStore.user&&!(0,L.default)(this.rootStore.user)&&this.rootStore.routing.push(this.nextPage)})),(0,P.default)(this,"onFinish",(e=>{if("sso"!==this.currentLoginType){this.setState({loading:!0,message:"",error:!1});var{password:t,region:n,domain:r}=e,a=M({password:t,region:n},this.getUsernameAndDomain({usernameDomain:r}));this.rootStore.login(a).then((()=>{this.onLoginSuccess()}),(t=>{this.onLoginFailed(t,e)}))}else document.location.href=this.currentSSOLink})),(0,P.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,P.default)(this,"usernameDomainValidator",((e,n)=>{if(!n||!(0,p.default)(n).call(n))return g.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 g.default.reject(new Error(a));var{username:o,domain:i}=this.getUsernameAndDomain({usernameDomain:n});return o&&i?g.default.resolve():g.default.reject(new Error(a))})),(0,P.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,P.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,E.default)((function*(){yield e.store.fetchRegionList(),e.updateDefaultValue()}))()}getSSO(){var e=this;return(0,E.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}=j.default,r=e[n()]||t("Cloud Platform")||"Cloud Platform";return t("Welcome, {name}",{name:r})}get regions(){var e;return(0,_.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,_.default)(e).call(e,(e=>{var{protocol:t,url:n}=e;return M({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:()=>O.default.createElement(v.default,{gutter:8},O.default.createElement(w.default,{span:12},O.default.createElement(x.default,{loading:n,type:"primary",htmlType:"submit",className:"login-form-button"},t("Log in"))))},o=[{name:"error",hidden:!e,render:()=>O.default.createElement("div",{className:R.default["login-error"]},O.default.createElement(S.default,null),this.getErrorMessage())},{name:"region",required:!0,message:t("Please select your Region!"),render:()=>O.default.createElement(y.default,{placeholder:t("Select a region"),options:this.regions})},{name:"domain",required:!0,render:()=>O.default.createElement(b.default,{placeholder:t(" or @")}),extra:O.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:()=>O.default.createElement(b.default,{placeholder:t("Username")}),hidden:!0},{name:"password",required:!0,message:t("Please input your Password!"),render:()=>O.default.createElement(b.default.Password,{placeholder:t("Password")})},{name:"extra",hidden:!0,render:()=>O.default.createElement(v.default,{gutter:8},O.default.createElement(w.default,{span:12},O.default.createElement(k.Link,{to:"password"},t("Forgot your password?"))),O.default.createElement(w.default,{span:12},O.default.createElement(k.Link,{to:"register",className:R.default.register},t("Sign up"))))}],i={name:"loginType",required:!0,message:t("Please select login type!"),extra:O.default.createElement("span",{style:{color:"white"}},t("If you are not sure which authentication method to use, please contact your administrator.")),render:()=>O.default.createElement(y.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=T.default,this.formRef=O.default.createRef()}renderExtra(){return null}render(){return O.default.createElement(O.default.Fragment,null,O.default.createElement("h1",{style:{color:"white"},className:R.default.welcome},this.productName," "),O.default.createElement(I.default,{formItems:this.formItems,name:"normal_login",className:R.default["login-form"],initialValues:this.defaultValue,onFinish:this.onFinish,formref:this.formRef,size:"large"}),this.renderExtra())}}n.Login=F;var U=(0,C.inject)("rootStore")((0,C.observer)(F));n.default=U},1745: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=_},1746:function(e,t,n){var r=n(1747);"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)},1747: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"}},1748: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=S(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(1778));function S(e){if("function"!=typeof a)return null;var t=new a,n=new a;return(S=function(e){return e?n:t})(e)}class E 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=E;var P=(0,_.inject)("rootStore")((0,_.observer)(E));n.default=P},1778:function(e,t,n){var r=n(1779);"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)},1779: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.1740005905.js.gz b/skyline_console/static/auth.bundle.1740005905.js.gz deleted file mode 100644 index 9efd8062196170aafb644db8158706821cff2736..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7504 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 aU7&8%+BGa(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=>{}})},1709: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(1710)),i=a(n(1721)),l=a(n(1748)),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},1710: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(1711)),f=i(n(1717)),c=i(n(1718)),m=i(n(1719));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 : 89edd83823 "),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},1711: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(1715))),{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},1715:function(e,t,n){var r=n(1716);"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)},1716: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"}},1717:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/FelCloud_website_white-07-01.1740491958.png"},1718:function(e,t,n){"use strict";n.r(t),t.default=n.p+"asset/image/login-full.1740491958.png"},1719:function(e,t,n){var r=n(1720);"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)},1720: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"}},1721: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(63)),_=m(r(54));r(231);var x=m(r(341));r(1246);var v=m(r(1247));r(1244);var w=m(r(1245));r(569);var b=m(r(1253));r(568);var y=m(r(415)),S=m(r(617)),E=m(r(49)),P=m(r(35)),L=m(r(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 n=N(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)),C=(r(161),r(412)),k=r(204),I=(r(564),m(r(1492))),T=m(r(1745)),j=m(r(237)),R=m(r(1746));function N(e){if("function"!=typeof c)return null;var t=new c,n=new c;return(N=function(e){return e?n:t})(e)}function D(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 M(e){for(var t=1;t{this.setState({loginTypeOption:t})})),(0,P.default)(this,"getUserId",(e=>{var t;return(0,p.default)(t=e.split(":")[1]).call(t).split(".")[0]})),(0,P.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,P.default)(this,"onLoginSuccess",(()=>{this.setState({loading:!1,error:!1}),this.rootStore.user&&!(0,L.default)(this.rootStore.user)&&this.rootStore.routing.push(this.nextPage)})),(0,P.default)(this,"onFinish",(e=>{if("sso"!==this.currentLoginType){this.setState({loading:!0,message:"",error:!1});var{password:t,region:n,domain:r}=e,a=M({password:t,region:n},this.getUsernameAndDomain({usernameDomain:r}));this.rootStore.login(a).then((()=>{this.onLoginSuccess()}),(t=>{this.onLoginFailed(t,e)}))}else document.location.href=this.currentSSOLink})),(0,P.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,P.default)(this,"usernameDomainValidator",((e,n)=>{if(!n||!(0,p.default)(n).call(n))return g.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 g.default.reject(new Error(a));var{username:o,domain:i}=this.getUsernameAndDomain({usernameDomain:n});return o&&i?g.default.resolve():g.default.reject(new Error(a))})),(0,P.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,P.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,E.default)((function*(){yield e.store.fetchRegionList(),e.updateDefaultValue()}))()}getSSO(){var e=this;return(0,E.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}=j.default,r=e[n()]||t("Cloud Platform")||"Cloud Platform";return t("Welcome, {name}",{name:r})}get regions(){var e;return(0,_.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,_.default)(e).call(e,(e=>{var{protocol:t,url:n}=e;return M({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:()=>O.default.createElement(v.default,{gutter:8},O.default.createElement(w.default,{span:12},O.default.createElement(x.default,{loading:n,type:"primary",htmlType:"submit",className:"login-form-button"},t("Log in"))))},o=[{name:"error",hidden:!e,render:()=>O.default.createElement("div",{className:R.default["login-error"]},O.default.createElement(S.default,null),this.getErrorMessage())},{name:"region",required:!0,message:t("Please select your Region!"),render:()=>O.default.createElement(y.default,{placeholder:t("Select a region"),options:this.regions})},{name:"domain",required:!0,render:()=>O.default.createElement(b.default,{placeholder:t(" or @")}),extra:O.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:()=>O.default.createElement(b.default,{placeholder:t("Username")}),hidden:!0},{name:"password",required:!0,message:t("Please input your Password!"),render:()=>O.default.createElement(b.default.Password,{placeholder:t("Password")})},{name:"extra",hidden:!0,render:()=>O.default.createElement(v.default,{gutter:8},O.default.createElement(w.default,{span:12},O.default.createElement(k.Link,{to:"password"},t("Forgot your password?"))),O.default.createElement(w.default,{span:12},O.default.createElement(k.Link,{to:"register",className:R.default.register},t("Sign up"))))}],i={name:"loginType",required:!0,message:t("Please select login type!"),extra:O.default.createElement("span",{style:{color:"white"}},t("If you are not sure which authentication method to use, please contact your administrator.")),render:()=>O.default.createElement(y.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=T.default,this.formRef=O.default.createRef()}renderExtra(){return null}render(){return O.default.createElement(O.default.Fragment,null,O.default.createElement("h1",{style:{color:"white"},className:R.default.welcome},this.productName," "),O.default.createElement(I.default,{formItems:this.formItems,name:"normal_login",className:R.default["login-form"],initialValues:this.defaultValue,onFinish:this.onFinish,formref:this.formRef,size:"large"}),this.renderExtra())}}n.Login=F;var U=(0,C.inject)("rootStore")((0,C.observer)(F));n.default=U},1745: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=_},1746:function(e,t,n){var r=n(1747);"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)},1747: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"}},1748: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=S(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(1778));function S(e){if("function"!=typeof a)return null;var t=new a,n=new a;return(S=function(e){return e?n:t})(e)}class E 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=E;var P=(0,_.inject)("rootStore")((0,_.observer)(E));n.default=P},1778:function(e,t,n){var r=n(1779);"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)},1779: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.1740491958.js.gz b/skyline_console/static/auth.bundle.1740491958.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..7c367c24911341030c308c4cf80d944c0a8a3825 GIT binary patch literal 7505 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 b7IlHTQEOMQh`m~^U|0WN{&fWHzGnac3ZRJP literal 0 HcmV?d00001 diff --git a/skyline_console/static/base.bundle.1740005905.js b/skyline_console/static/base.bundle.1740491958.js similarity index 100% rename from skyline_console/static/base.bundle.1740005905.js rename to skyline_console/static/base.bundle.1740491958.js diff --git a/skyline_console/static/base.bundle.1740005905.js.gz b/skyline_console/static/base.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/base.bundle.1740005905.js.gz rename to skyline_console/static/base.bundle.1740491958.js.gz diff --git a/skyline_console/static/basic.bundle.1740005905.js b/skyline_console/static/basic.bundle.1740491958.js similarity index 99% rename from skyline_console/static/basic.bundle.1740005905.js rename to skyline_console/static/basic.bundle.1740491958.js index bdfbcd88..54495fb1 100644 --- a/skyline_console/static/basic.bundle.1740005905.js +++ b/skyline_console/static/basic.bundle.1740491958.js @@ -1 +1 @@ -(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(1780)),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(1820)),i=r(a(2021)),o=r(a(2047)),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(1831)),V=n(662),K=n(567),Q=f(n(1563)),Y=f(n(1566)),G=f(n(2019));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(1816));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(1818);"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(2042)),s=n(163),u=n(204),d=l(n(2043));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(1868));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(584)),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(1814));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(1923)),{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(2075);"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(1813);"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(583);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(1862));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(1864));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(1866));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(583);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(1873)));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(583);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(1897));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(1961));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(584)),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(2017)),d=r(a(2018))},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},1780: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(1781)),o=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(5)]).then(a.t.bind(null,2079,7)))),s=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(7)]).then(a.t.bind(null,3502,7)))),u=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(18)]).then(a.t.bind(null,3771,7)))),d=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(15)]).then(a.t.bind(null,3836,7)))),c=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(11)]).then(a.t.bind(null,4020,7)))),f=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(8)]).then(a.t.bind(null,4089,7)))),p=(0,l.lazy)((()=>Promise.all([a.e(0),a.e(13)]).then(a.t.bind(null,4131,7)))),h=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(10)]).then(a.t.bind(null,4133,7)))),m=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(19)]).then(a.t.bind(null,4148,7)))),g=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4154,7)))),v=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4198,7)))),y=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(17)]).then(a.t.bind(null,4241,7)))),b=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(9)]).then(a.t.bind(null,4304,7)))),x=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(2)]).then(a.t.bind(null,4327,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,4367,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},1781: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(1792))),A=n(567),j=p(n(2055)),P=p(n(2065)),D=p(n(2066)),L=p(n(2067)),O=p(n(2076)),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);if(window.opener){var a=JSON.parse(localStorage.getItem("keystone_token")).value,n=["https://baha-dev.felcloud.io","https://demo.felcloud.io"];return(0,m.default)(n).call(n,(e=>{var t={status:"popupCompleted",token:a};window.opener.postMessage(t,e)})),_.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... "))}return _.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},1792: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(1793)),o=r(a(1807)),s=r(a(2048)),u=r(a(1346))},1793: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(1794);var h=f(n(1797)),m=f(n(35)),g=f(n(0)),v=n(412),y=(n(564),f(n(16))),b=(n(161),f(n(1798))),x=n(1433),w=f(n(1799)),k=f(n(1802)),C=f(n(1805));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},1798: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"},1799: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(1800));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:[]})},1800:function(e,t,a){var n=a(1801);"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)},1801: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"}},1802: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(1803));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:[]})},1803:function(e,t,a){var n=a(1804);"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)},1804: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"}},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__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"}},1807: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(1819));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},1813: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"}},1814: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)},1815: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"}},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__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"}},1818: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"}},1819: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},1820: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","")},1831: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(1846);var C=f(n(1849));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(1857)),P=f(n(1872)),D=f(n(1519)),L=f(n(1875)),O=f(n(1376)),R=f(n(1534)),z=f(n(1899)),U=f(n(1902)),F=f(n(1917)),B=f(n(1922)),V=f(n(1444)),K=f(n(1925)),Q=f(n(1928)),Y=f(n(1937)),G=f(n(1938)),H=f(n(1939)),W=f(n(1944)),q=f(n(1947)),$=f(n(1950)),Z=f(n(1951)),J=f(n(1552)),X=f(n(1963)),ee=f(n(1964)),te=f(n(1965)),ae=f(n(1968)),ne=f(n(1447)),re=f(n(1969)),le=f(n(1989)),ie=f(n(1993)),oe=f(n(1448)),se=f(n(1994)),ue=f(n(1999)),de=f(n(2e3));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:[]})},1857: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(1870));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},1862:function(e,t,a){var n=a(1863);"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)},1863: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"}},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__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"}},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,".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_"}},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,"/* 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"}},1870: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(1871));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},1871: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})}})))}},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,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)},1873:function(e,t,a){var n=a(1874);"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)},1874: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"}},1875: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(1892)),A=i(a(1893)),j=i(a(1894)),P=(a(564),i(a(1895)));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})},1892:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjIwMHB4IiBoZWlnaHQ9IjIwMC4wMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiAxMDA3LjE2MWMtMjc2LjcwNyAwLTQ5NS4xNjEtMjI1LjczNS00OTUuMTYxLTQ5NS4xNjEgMC0yNzYuNzA3IDIyNS43MzUtNDk1LjE2MSA0OTUuMTYxLTQ5NS4xNjEgMjc2LjcwNyAwIDQ5NS4xNjEgMjI1LjczNSA0OTUuMTYxIDQ5NS4xNjEgMCAyNzYuNzA3LTIxOC40NTMgNDk1LjE2MS00OTUuMTYxIDQ5NS4xNjF6TTUxMiA3NS4wOTNjLTI0MC4yOTkgMC00MzYuOTA3IDE5Ni42MDgtNDM2LjkwNyA0MzYuOTA3czE5Ni42MDggNDM2LjkwNyA0MzYuOTA3IDQzNi45MDcgNDM2LjkwNy0xOTYuNjA4IDQzNi45MDctNDM2LjkwNy0xOTYuNjA4LTQzNi45MDctNDM2LjkwNy00MzYuOTA3eiIgIC8+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiA2MjguNTA5Yy02NS41MzYgMC0xMTYuNTA5LTUwLjk3My0xMTYuNTA5LTExNi41MDlzNTAuOTczLTExNi41MDkgMTE2LjUwOS0xMTYuNTA5IDExNi41MDkgNTAuOTczIDExNi41MDkgMTE2LjUwOWMwIDY1LjUzNi01MC45NzMgMTE2LjUwOS0xMTYuNTA5IDExNi41MDl6TTUxMiA0NjEuMDI3Yy0yOS4xMjcgMC01MC45NzMgMjEuODQ1LTUwLjk3MyA1MC45NzNzMjEuODQ1IDUwLjk3MyA1MC45NzMgNTAuOTczYzI5LjEyNyAwIDUwLjk3My0yMS44NDUgNTAuOTczLTUwLjk3M3MtMjEuODQ1LTUwLjk3My01MC45NzMtNTAuOTczek0xNTUuMTkzIDU0OC40MDljLTcuMjgyIDAtMTQuNTYzLTcuMjgyLTE0LjU2My0xNC41NjN2LTIxLjg0NWMwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzdjE0LjU2M2MwIDE0LjU2My03LjI4MiAyMS44NDUtMTQuNTYzIDIxLjg0NXpNMzM3LjIzNyA4MzkuNjhoLTcuMjgyYy0xMDEuOTQ1LTU4LjI1NC0xNjcuNDgxLTE1Mi45MTctMTgyLjA0NS0yNjIuMTQ0IDAtNy4yODIgNy4yODItMTQuNTYzIDE0LjU2My0xNC41NjNzMTQuNTYzIDcuMjgyIDE0LjU2MyAxNC41NjNjMTQuNTYzIDEwMS45NDUgODAuMDk5IDE4OS4zMjYgMTY3LjQ4MSAyNDAuMjk5IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyA3LjI4MiAyMS44NDVoLTE0LjU2M3pNMzE1LjM5MiA3MTUuODljLTcuMjgyIDAtNy4yODIgMC0xNC41NjMtNy4yODItNDMuNjkxLTQzLjY5MS03Mi44MTgtMTA5LjIyNy03Mi44MTgtMTc0Ljc2MyAwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzYzAgNTguMjU0IDIxLjg0NSAxMDkuMjI3IDY1LjUzNiAxNTIuOTE3IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyAwIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTcuMjgyIDcuMjgyek0zNjYuMzY1IDc1Mi4yOTloLTcuMjgyYy03LjI4MiAwLTcuMjgyLTcuMjgyLTE0LjU2My03LjI4Mi03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMtNy4yODItMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUtNy4yODIgNy4yODIgMCA3LjI4MiA3LjI4MiAxNC41NjMgNy4yODIgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NS03LjI4MiA3LjI4Mi0xNC41NjMgNy4yODItMTQuNTYzIDcuMjgyek0zODAuOTI4IDY2NC45MTdoLTcuMjgyYy0zNi40MDktMjEuODQ1LTY1LjUzNi02NS41MzYtNjUuNTM2LTEwOS4yMjcgMC03LjI4MiA3LjI4Mi0xNC41NjMgMTQuNTYzLTE0LjU2M3MxNC41NjMgNy4yODIgMTQuNTYzIDE0LjU2M2MwIDM2LjQwOSAxNC41NjMgNjUuNTM2IDUwLjk3MyA4MC4wOTkgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTE0LjU2MyA3LjI4MnpNODYxLjUyNSA1NTUuNjkxYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDE0LjU2My0xMjMuNzktMzYuNDA5LTI0Ny41ODEtMTM4LjM1NC0zMjAuMzk4LTcuMjgyLTcuMjgyLTcuMjgyLTE0LjU2MyAwLTIxLjg0NSA3LjI4Mi03LjI4MiAxNC41NjMtNy4yODIgMjEuODQ1IDAgMTA5LjIyNyA4MC4wOTkgMTY3LjQ4MSAyMTEuMTcxIDE1Mi45MTcgMzQ5LjUyNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6IiAgLz48cGF0aCBmaWxsPSIjMzMzMzMzIiBkPSJNNzc0LjE0NCA1MjYuNTYzYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDcuMjgyLTgwLjA5OS0yMS44NDUtMTUyLjkxNy04Ny4zODEtMTk2LjYwOC03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMgMC0yMS44NDVzMTQuNTYzLTcuMjgyIDIxLjg0NSAwYzcyLjgxOCA1MC45NzMgMTA5LjIyNyAxMzguMzU0IDEwMS45NDUgMjI1LjczNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6TTY5NC4wNDUgNDkwLjE1NWMtNy4yODIgMC0xNC41NjMtNy4yODItMTQuNTYzLTE0LjU2MyA3LjI4Mi0zNi40MDktNy4yODItNjUuNTM2LTM2LjQwOS04Ny4zODEtNy4yODItNy4yODItNy4yODItMTQuNTYzIDAtMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUgMCAzNi40MDkgMjkuMTI3IDU4LjI1NCA3Mi44MTggNTAuOTczIDExNi41MDktNy4yODIgMC0xNC41NjMgNy4yODItMjEuODQ1IDcuMjgyeiIgIC8+PC9zdmc+"},1893: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+"},1894:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/load-balancer.1740005905.png"},1895:function(e,t,a){var n=a(1896);"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)},1896: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_"}},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__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"}},1899: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(1900)));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},1900:function(e,t,a){var n=a(1901);"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)},1901: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"}},1902: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=_},1917: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(1920));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})},1920:function(e,t,a){var n=a(1921);"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)},1921: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"}},1922: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)},1923:function(e,t,a){var n=a(1924);"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)},1924: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"}},1925: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(1926));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})},1926:function(e,t,a){var n=a(1927);"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)},1927: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"}},1928: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(1935)));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},1935:function(e,t,a){var n=a(1936);"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)},1936: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"}},1937: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)},1938: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})},1944: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(1945));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:""})},1945:function(e,t,a){var n=a(1946);"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)},1946: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"}},1947: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})},1950: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(583);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:""})},1951: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(1958))),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})},1961:function(e,t,a){var n=a(1962);"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)},1962: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"}},1963: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(583);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})},1964: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=>{}})},1965: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(1966))),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},1966: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(1967)));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},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(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})))}},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(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},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;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(1970);var I=p(n(1973)),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(1988));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},1988: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},1989: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},1993: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},1994: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(1995);var s=o(n(1998)),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}},1999: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},2e3: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(2001));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}},2001: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},2017: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))},2018: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))},2019:function(e,t,a){var n=a(2020);"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)},2020: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"}},2021: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(2022));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","")},2022: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(2023);var x=f(n(2026));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(2045));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},2042:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/empty-card.1740005905.svg"},2043:function(e,t,a){var n=a(2044);"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)},2044: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"}},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--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"}},2047: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")},2048: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(2049))),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},2049: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(2050)),b=l(n(2051)),x=l(n(2052)),w=l(n(2054)),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;if(!this.user)return h.default.createElement(u.default,{size:"small",style:{marginLeft:8,marginRight:8}});var{name:n}=this.user.user,r=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,n))),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:r},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},2050: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},2051: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},2052: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(2053),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},2053: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}"}},2054: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},2055: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},2065: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},2066: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},2067: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(2068);var c=o(n(2071)),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},2075: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"}},2076: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=T(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=i(a(1454));function T(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(T=function(e){return e?a:t})(e)}var{SubMenu:A}=x.default,{getLocaleShortName:j}=N.default;class P 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,collapsed:a,isSubMenu:n}=e;return t.icon})),(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:E.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:E.default["menu-item"],onClick:this.onClickMenuItem},C.default.createElement("span",{className:E.default["menu-item-title-wrapper"]},this.renderMenuItemIcon({item:e,isSubMenu:t}),C.default.createElement("span",{className:0===e.level||1===e.level&&!l?E.default["menu-item-title"]:E.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:E.default["sub-menu-title"]},this.renderMenuItemIcon({item:e}),C.default.createElement("span",{className:E.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(A,{key:e.key,title:i,className:E.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?E.default["menu-collapsed"]:E.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=j();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:E.default["trigger-icon"]}):C.default.createElement(g.default,{className:E.default["trigger-icon"]});return C.default.createElement("div",{className:E.default["trigger-wrapper"]},C.default.createElement("div",{className:E.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)(E.default["base-layout-sider"],n?E.default["base-layout-sider-collapsed"]:"",a?E.default["base-layout-sider-hover"]:""),onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},this.renderMenu(t),r)}}t.LayoutMenu=P;var D=(0,_.inject)("rootStore")((0,_.observer)(P));t.default=D}}]); \ 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(1780)),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(1820)),i=r(a(2021)),o=r(a(2047)),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(1831)),V=n(662),K=n(567),Q=f(n(1563)),Y=f(n(1566)),G=f(n(2019));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(1816));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(1818);"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(2042)),s=n(163),u=n(204),d=l(n(2043));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(1868));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(584)),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(1814));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(1923)),{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(2075);"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(1813);"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(583);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(1862));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(1864));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(1866));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(583);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(1873)));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(583);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(1897));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(1961));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(584)),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(2017)),d=r(a(2018))},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},1780: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(1781)),o=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(5)]).then(a.t.bind(null,2079,7)))),s=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(7)]).then(a.t.bind(null,3502,7)))),u=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(18)]).then(a.t.bind(null,3771,7)))),d=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(15)]).then(a.t.bind(null,3836,7)))),c=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(11)]).then(a.t.bind(null,4020,7)))),f=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(8)]).then(a.t.bind(null,4089,7)))),p=(0,l.lazy)((()=>Promise.all([a.e(0),a.e(13)]).then(a.t.bind(null,4131,7)))),h=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(10)]).then(a.t.bind(null,4133,7)))),m=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(19)]).then(a.t.bind(null,4148,7)))),g=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4154,7)))),v=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(14)]).then(a.t.bind(null,4198,7)))),y=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(17)]).then(a.t.bind(null,4241,7)))),b=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(9)]).then(a.t.bind(null,4304,7)))),x=(0,l.lazy)((()=>Promise.all([a.e(1),a.e(0),a.e(2)]).then(a.t.bind(null,4327,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,4367,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},1781: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(1792))),A=n(567),j=p(n(2055)),P=p(n(2065)),D=p(n(2066)),L=p(n(2067)),O=p(n(2076)),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);if(window.opener){var a=JSON.parse(localStorage.getItem("keystone_token")).value,n=["https://baha-dev.felcloud.io","https://demo.felcloud.io"];return(0,m.default)(n).call(n,(e=>{var t={status:"popupCompleted",token:a};window.opener.postMessage(t,e)})),_.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... "))}return _.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},1792: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(1793)),o=r(a(1807)),s=r(a(2048)),u=r(a(1346))},1793: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(1794);var h=f(n(1797)),m=f(n(35)),g=f(n(0)),v=n(412),y=(n(564),f(n(16))),b=(n(161),f(n(1798))),x=n(1433),w=f(n(1799)),k=f(n(1802)),C=f(n(1805));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},1798: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"},1799: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(1800));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:[]})},1800:function(e,t,a){var n=a(1801);"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)},1801: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"}},1802: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(1803));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:[]})},1803:function(e,t,a){var n=a(1804);"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)},1804: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"}},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__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"}},1807: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(1819));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},1813: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"}},1814: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)},1815: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"}},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__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"}},1818: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"}},1819: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},1820: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","")},1831: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(1846);var C=f(n(1849));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(1857)),P=f(n(1872)),D=f(n(1519)),L=f(n(1875)),O=f(n(1376)),R=f(n(1534)),z=f(n(1899)),U=f(n(1902)),F=f(n(1917)),B=f(n(1922)),V=f(n(1444)),K=f(n(1925)),Q=f(n(1928)),Y=f(n(1937)),G=f(n(1938)),H=f(n(1939)),W=f(n(1944)),q=f(n(1947)),$=f(n(1950)),Z=f(n(1951)),J=f(n(1552)),X=f(n(1963)),ee=f(n(1964)),te=f(n(1965)),ae=f(n(1968)),ne=f(n(1447)),re=f(n(1969)),le=f(n(1989)),ie=f(n(1993)),oe=f(n(1448)),se=f(n(1994)),ue=f(n(1999)),de=f(n(2e3));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:[]})},1857: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(1870));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},1862:function(e,t,a){var n=a(1863);"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)},1863: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"}},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__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"}},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,".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_"}},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,"/* 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"}},1870: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(1871));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},1871: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})}})))}},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,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)},1873:function(e,t,a){var n=a(1874);"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)},1874: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"}},1875: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(1892)),A=i(a(1893)),j=i(a(1894)),P=(a(564),i(a(1895)));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})},1892:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjIwMHB4IiBoZWlnaHQ9IjIwMC4wMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiAxMDA3LjE2MWMtMjc2LjcwNyAwLTQ5NS4xNjEtMjI1LjczNS00OTUuMTYxLTQ5NS4xNjEgMC0yNzYuNzA3IDIyNS43MzUtNDk1LjE2MSA0OTUuMTYxLTQ5NS4xNjEgMjc2LjcwNyAwIDQ5NS4xNjEgMjI1LjczNSA0OTUuMTYxIDQ5NS4xNjEgMCAyNzYuNzA3LTIxOC40NTMgNDk1LjE2MS00OTUuMTYxIDQ5NS4xNjF6TTUxMiA3NS4wOTNjLTI0MC4yOTkgMC00MzYuOTA3IDE5Ni42MDgtNDM2LjkwNyA0MzYuOTA3czE5Ni42MDggNDM2LjkwNyA0MzYuOTA3IDQzNi45MDcgNDM2LjkwNy0xOTYuNjA4IDQzNi45MDctNDM2LjkwNy0xOTYuNjA4LTQzNi45MDctNDM2LjkwNy00MzYuOTA3eiIgIC8+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTUxMiA2MjguNTA5Yy02NS41MzYgMC0xMTYuNTA5LTUwLjk3My0xMTYuNTA5LTExNi41MDlzNTAuOTczLTExNi41MDkgMTE2LjUwOS0xMTYuNTA5IDExNi41MDkgNTAuOTczIDExNi41MDkgMTE2LjUwOWMwIDY1LjUzNi01MC45NzMgMTE2LjUwOS0xMTYuNTA5IDExNi41MDl6TTUxMiA0NjEuMDI3Yy0yOS4xMjcgMC01MC45NzMgMjEuODQ1LTUwLjk3MyA1MC45NzNzMjEuODQ1IDUwLjk3MyA1MC45NzMgNTAuOTczYzI5LjEyNyAwIDUwLjk3My0yMS44NDUgNTAuOTczLTUwLjk3M3MtMjEuODQ1LTUwLjk3My01MC45NzMtNTAuOTczek0xNTUuMTkzIDU0OC40MDljLTcuMjgyIDAtMTQuNTYzLTcuMjgyLTE0LjU2My0xNC41NjN2LTIxLjg0NWMwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzdjE0LjU2M2MwIDE0LjU2My03LjI4MiAyMS44NDUtMTQuNTYzIDIxLjg0NXpNMzM3LjIzNyA4MzkuNjhoLTcuMjgyYy0xMDEuOTQ1LTU4LjI1NC0xNjcuNDgxLTE1Mi45MTctMTgyLjA0NS0yNjIuMTQ0IDAtNy4yODIgNy4yODItMTQuNTYzIDE0LjU2My0xNC41NjNzMTQuNTYzIDcuMjgyIDE0LjU2MyAxNC41NjNjMTQuNTYzIDEwMS45NDUgODAuMDk5IDE4OS4zMjYgMTY3LjQ4MSAyNDAuMjk5IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyA3LjI4MiAyMS44NDVoLTE0LjU2M3pNMzE1LjM5MiA3MTUuODljLTcuMjgyIDAtNy4yODIgMC0xNC41NjMtNy4yODItNDMuNjkxLTQzLjY5MS03Mi44MTgtMTA5LjIyNy03Mi44MTgtMTc0Ljc2MyAwLTcuMjgyIDcuMjgyLTE0LjU2MyAxNC41NjMtMTQuNTYzczE0LjU2MyA3LjI4MiAxNC41NjMgMTQuNTYzYzAgNTguMjU0IDIxLjg0NSAxMDkuMjI3IDY1LjUzNiAxNTIuOTE3IDcuMjgyIDcuMjgyIDcuMjgyIDE0LjU2MyAwIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTcuMjgyIDcuMjgyek0zNjYuMzY1IDc1Mi4yOTloLTcuMjgyYy03LjI4MiAwLTcuMjgyLTcuMjgyLTE0LjU2My03LjI4Mi03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMtNy4yODItMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUtNy4yODIgNy4yODIgMCA3LjI4MiA3LjI4MiAxNC41NjMgNy4yODIgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NS03LjI4MiA3LjI4Mi0xNC41NjMgNy4yODItMTQuNTYzIDcuMjgyek0zODAuOTI4IDY2NC45MTdoLTcuMjgyYy0zNi40MDktMjEuODQ1LTY1LjUzNi02NS41MzYtNjUuNTM2LTEwOS4yMjcgMC03LjI4MiA3LjI4Mi0xNC41NjMgMTQuNTYzLTE0LjU2M3MxNC41NjMgNy4yODIgMTQuNTYzIDE0LjU2M2MwIDM2LjQwOSAxNC41NjMgNjUuNTM2IDUwLjk3MyA4MC4wOTkgNy4yODIgNy4yODIgNy4yODIgMTQuNTYzIDcuMjgyIDIxLjg0NSAwIDcuMjgyLTcuMjgyIDcuMjgyLTE0LjU2MyA3LjI4MnpNODYxLjUyNSA1NTUuNjkxYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDE0LjU2My0xMjMuNzktMzYuNDA5LTI0Ny41ODEtMTM4LjM1NC0zMjAuMzk4LTcuMjgyLTcuMjgyLTcuMjgyLTE0LjU2MyAwLTIxLjg0NSA3LjI4Mi03LjI4MiAxNC41NjMtNy4yODIgMjEuODQ1IDAgMTA5LjIyNyA4MC4wOTkgMTY3LjQ4MSAyMTEuMTcxIDE1Mi45MTcgMzQ5LjUyNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6IiAgLz48cGF0aCBmaWxsPSIjMzMzMzMzIiBkPSJNNzc0LjE0NCA1MjYuNTYzYy03LjI4MiAwLTE0LjU2My03LjI4Mi0xNC41NjMtMTQuNTYzIDcuMjgyLTgwLjA5OS0yMS44NDUtMTUyLjkxNy04Ny4zODEtMTk2LjYwOC03LjI4Mi03LjI4Mi03LjI4Mi0xNC41NjMgMC0yMS44NDVzMTQuNTYzLTcuMjgyIDIxLjg0NSAwYzcyLjgxOCA1MC45NzMgMTA5LjIyNyAxMzguMzU0IDEwMS45NDUgMjI1LjczNS03LjI4MiAwLTE0LjU2MyA3LjI4Mi0yMS44NDUgNy4yODJ6TTY5NC4wNDUgNDkwLjE1NWMtNy4yODIgMC0xNC41NjMtNy4yODItMTQuNTYzLTE0LjU2MyA3LjI4Mi0zNi40MDktNy4yODItNjUuNTM2LTM2LjQwOS04Ny4zODEtNy4yODItNy4yODItNy4yODItMTQuNTYzIDAtMjEuODQ1IDcuMjgyLTcuMjgyIDE0LjU2My03LjI4MiAyMS44NDUgMCAzNi40MDkgMjkuMTI3IDU4LjI1NCA3Mi44MTggNTAuOTczIDExNi41MDktNy4yODIgMC0xNC41NjMgNy4yODItMjEuODQ1IDcuMjgyeiIgIC8+PC9zdmc+"},1893: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+"},1894:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/load-balancer.1740491958.png"},1895:function(e,t,a){var n=a(1896);"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)},1896: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_"}},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__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"}},1899: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(1900)));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},1900:function(e,t,a){var n=a(1901);"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)},1901: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"}},1902: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=_},1917: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(1920));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})},1920:function(e,t,a){var n=a(1921);"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)},1921: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"}},1922: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)},1923:function(e,t,a){var n=a(1924);"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)},1924: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"}},1925: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(1926));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})},1926:function(e,t,a){var n=a(1927);"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)},1927: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"}},1928: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(1935)));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},1935:function(e,t,a){var n=a(1936);"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)},1936: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"}},1937: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)},1938: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})},1944: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(1945));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:""})},1945:function(e,t,a){var n=a(1946);"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)},1946: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"}},1947: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})},1950: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(583);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:""})},1951: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(1958))),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})},1961:function(e,t,a){var n=a(1962);"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)},1962: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"}},1963: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(583);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})},1964: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=>{}})},1965: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(1966))),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},1966: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(1967)));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},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(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})))}},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(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},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;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(1970);var I=p(n(1973)),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(1988));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},1988: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},1989: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},1993: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},1994: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(1995);var s=o(n(1998)),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}},1999: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},2e3: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(2001));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}},2001: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},2017: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))},2018: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))},2019:function(e,t,a){var n=a(2020);"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)},2020: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"}},2021: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(2022));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","")},2022: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(2023);var x=f(n(2026));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(2045));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},2042:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/empty-card.1740491958.svg"},2043:function(e,t,a){var n=a(2044);"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)},2044: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"}},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--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"}},2047: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")},2048: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(2049))),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},2049: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(2050)),b=l(n(2051)),x=l(n(2052)),w=l(n(2054)),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;if(!this.user)return h.default.createElement(u.default,{size:"small",style:{marginLeft:8,marginRight:8}});var{name:n}=this.user.user,r=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,n))),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:r},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},2050: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},2051: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},2052: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(2053),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},2053: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}"}},2054: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},2055: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},2065: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},2066: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},2067: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(2068);var c=o(n(2071)),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},2075: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"}},2076: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=T(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=i(a(1454));function T(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(T=function(e){return e?a:t})(e)}var{SubMenu:A}=x.default,{getLocaleShortName:j}=N.default;class P 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,collapsed:a,isSubMenu:n}=e;return t.icon})),(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:E.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:E.default["menu-item"],onClick:this.onClickMenuItem},C.default.createElement("span",{className:E.default["menu-item-title-wrapper"]},this.renderMenuItemIcon({item:e,isSubMenu:t}),C.default.createElement("span",{className:0===e.level||1===e.level&&!l?E.default["menu-item-title"]:E.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:E.default["sub-menu-title"]},this.renderMenuItemIcon({item:e}),C.default.createElement("span",{className:E.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(A,{key:e.key,title:i,className:E.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?E.default["menu-collapsed"]:E.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=j();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:E.default["trigger-icon"]}):C.default.createElement(g.default,{className:E.default["trigger-icon"]});return C.default.createElement("div",{className:E.default["trigger-wrapper"]},C.default.createElement("div",{className:E.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)(E.default["base-layout-sider"],n?E.default["base-layout-sider-collapsed"]:"",a?E.default["base-layout-sider-hover"]:""),onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},this.renderMenu(t),r)}}t.LayoutMenu=P;var D=(0,_.inject)("rootStore")((0,_.observer)(P));t.default=D}}]); \ No newline at end of file diff --git a/skyline_console/static/basic.bundle.1740005905.js.gz b/skyline_console/static/basic.bundle.1740491958.js.gz similarity index 54% rename from skyline_console/static/basic.bundle.1740005905.js.gz rename to skyline_console/static/basic.bundle.1740491958.js.gz index 07b9c2befc76de59fea536d03ea62efb3ca17377..bdf2db8c99a779258ff6b7582664a2723690adc6 100644 GIT binary patch delta 36854 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 GMFjwOeWg7B diff --git a/skyline_console/static/common.bundle.1740005905.js b/skyline_console/static/common.bundle.1740491958.js similarity index 100% rename from skyline_console/static/common.bundle.1740005905.js rename to skyline_console/static/common.bundle.1740491958.js diff --git a/skyline_console/static/common.bundle.1740005905.js.gz b/skyline_console/static/common.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/common.bundle.1740005905.js.gz rename to skyline_console/static/common.bundle.1740491958.js.gz diff --git a/skyline_console/static/compute.bundle.1740005905.js b/skyline_console/static/compute.bundle.1740491958.js similarity index 100% rename from skyline_console/static/compute.bundle.1740005905.js rename to skyline_console/static/compute.bundle.1740491958.js diff --git a/skyline_console/static/compute.bundle.1740005905.js.gz b/skyline_console/static/compute.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/compute.bundle.1740005905.js.gz rename to skyline_console/static/compute.bundle.1740491958.js.gz diff --git a/skyline_console/static/configuration.bundle.1740005905.js b/skyline_console/static/configuration.bundle.1740491958.js similarity index 100% rename from skyline_console/static/configuration.bundle.1740005905.js rename to skyline_console/static/configuration.bundle.1740491958.js diff --git a/skyline_console/static/configuration.bundle.1740005905.js.gz b/skyline_console/static/configuration.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/configuration.bundle.1740005905.js.gz rename to skyline_console/static/configuration.bundle.1740491958.js.gz diff --git a/skyline_console/static/container-infra.bundle.1740005905.js b/skyline_console/static/container-infra.bundle.1740491958.js similarity index 100% rename from skyline_console/static/container-infra.bundle.1740005905.js rename to skyline_console/static/container-infra.bundle.1740491958.js diff --git a/skyline_console/static/container-infra.bundle.1740005905.js.gz b/skyline_console/static/container-infra.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/container-infra.bundle.1740005905.js.gz rename to skyline_console/static/container-infra.bundle.1740491958.js.gz diff --git a/skyline_console/static/heat.bundle.1740005905.js b/skyline_console/static/heat.bundle.1740491958.js similarity index 100% rename from skyline_console/static/heat.bundle.1740005905.js rename to skyline_console/static/heat.bundle.1740491958.js diff --git a/skyline_console/static/heat.bundle.1740005905.js.gz b/skyline_console/static/heat.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/heat.bundle.1740005905.js.gz rename to skyline_console/static/heat.bundle.1740491958.js.gz diff --git a/skyline_console/static/identity.bundle.1740005905.js b/skyline_console/static/identity.bundle.1740491958.js similarity index 100% rename from skyline_console/static/identity.bundle.1740005905.js rename to skyline_console/static/identity.bundle.1740491958.js diff --git a/skyline_console/static/identity.bundle.1740005905.js.gz b/skyline_console/static/identity.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/identity.bundle.1740005905.js.gz rename to skyline_console/static/identity.bundle.1740491958.js.gz diff --git a/skyline_console/static/index.html b/skyline_console/static/index.html index 3253df4f..d1e97bb4 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.1740005905.js b/skyline_console/static/main.bundle.1740491958.js similarity index 100% rename from skyline_console/static/main.bundle.1740005905.js rename to skyline_console/static/main.bundle.1740491958.js diff --git a/skyline_console/static/main.bundle.1740005905.js.gz b/skyline_console/static/main.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/main.bundle.1740005905.js.gz rename to skyline_console/static/main.bundle.1740491958.js.gz diff --git a/skyline_console/static/management.bundle.1740005905.js b/skyline_console/static/management.bundle.1740491958.js similarity index 100% rename from skyline_console/static/management.bundle.1740005905.js rename to skyline_console/static/management.bundle.1740491958.js diff --git a/skyline_console/static/monitor-center.bundle.1740005905.js b/skyline_console/static/monitor-center.bundle.1740491958.js similarity index 100% rename from skyline_console/static/monitor-center.bundle.1740005905.js rename to skyline_console/static/monitor-center.bundle.1740491958.js diff --git a/skyline_console/static/monitor-center.bundle.1740005905.js.gz b/skyline_console/static/monitor-center.bundle.1740491958.js.gz similarity index 100% rename from skyline_console/static/monitor-center.bundle.1740005905.js.gz rename to skyline_console/static/monitor-center.bundle.1740491958.js.gz diff --git a/skyline_console/static/network.bundle.1740005905.js.gz b/skyline_console/static/network.bundle.1740005905.js.gz deleted file mode 100644 index fe3a76332f048bf3ec7d31426470906986caa63a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86798 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
}M($gqsZB(t(hG?bN@%STkc1DF{&>+K18Q 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 diff --git a/skyline_console/static/network.bundle.1740005905.js b/skyline_console/static/network.bundle.1740491958.js similarity index 99% rename from skyline_console/static/network.bundle.1740005905.js rename to skyline_console/static/network.bundle.1740491958.js index edde1936..09ae9a7d 100644 --- a/skyline_console/static/network.bundle.1740005905.js +++ b/skyline_console/static/network.bundle.1740491958.js @@ -1 +1 @@ -(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(1646)),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(1646)),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(3867);"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(3973)),l=i(a(3975)),o=i(a(3976)),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},1625: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(1626));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},1626: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(1627)),l=i(a(1629)),o=i(a(3839)),s={rowActions:{firstAction:i(a(3840)).default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=s},1627: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(1628)),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=$},1628: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},1629: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},1630: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(1629)),l=i(a(3843)),o={rowActions:{firstAction:i(a(3844)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},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(1632)),l=i(a(3849)),o=i(a(3850)),s=i(a(3851)),d=i(a(3852)),u=i(a(3853)),c=i(a(3854)),f=i(a(3855)),p=i(a(3856)),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},1632: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(1628)),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},1633: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(3870)),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},1634: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(3878));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},1635: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(1636));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},1636: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(3895)),l=i(a(3896)),o=i(a(3897)),s=i(a(3898)),d=i(a(3899)),u=i(a(3900)),c=i(a(3901)),f=i(a(3902)),p=i(a(3903)),m=i(a(3904)),h=i(a(3905)),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},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,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},1638: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(3909)),l=i(a(3910)),o=i(a(3911)),s=i(a(1639)),d=i(a(3917)),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},1639: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(3912)),b=n(r(3913)),y=n(r(3914)),I=n(r(3915)),A=n(r(3916));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},1640: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(3920)),l=i(a(3921)),o=i(a(3922)),s=i(a(3923)),d=i(a(3924)),u=i(a(1641)),c=i(a(3926)),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},1641: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},1642: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(3957)),l=i(a(3959)),o=i(a(3960)),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},1643: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(3964)),l=i(a(3965)),o=i(a(3966)),s=i(a(1644)),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},1644: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},1645: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(3982)),l=i(a(3983)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]}};t.default=o},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(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},1647: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},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(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},1649: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(3993)),l=i(a(3994)),o=i(a(1648)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default}]},primaryActions:[o.default],batchActions:[l.default]};t.default=s},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(1651)),l=i(a(3999)),o=i(a(4e3)),s={actionConfigs:{rowActions:{firstAction:i(a(4001)).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},1651: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},1652: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(1653)),l=i(a(4003)),o=i(a(1654)),s=i(a(4004)),d=i(a(4005)),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},1653: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},1654: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},1655: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(1656));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},1656: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(1657)),o=i(a(4006)),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},1657: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},1658: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(4015)),l=i(a(4016)),o=i(a(4017)),s={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[o.default]};t.default=s},3836: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(3837)),o=e=>(0,n.default)(l.default,e);t.default=o},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(1263)),l=i(a(579)),o=i(a(3838)),s=i(a(1625)),d=i(a(3841)),u=i(a(3846)),c=i(a(3848)),f=i(a(1466)),p=i(a(3857)),m=i(a(3863)),h=i(a(3871)),v=i(a(1634)),g=i(a(1395)),_=i(a(3879)),b=i(a(3894)),y=i(a(1635)),I=i(a(3906)),A=i(a(3908)),S=i(a(1639)),w=i(a(3918)),x=i(a(3927)),P=i(a(3935)),C=i(a(3961)),E=i(a(3963)),D=i(a(3967)),k=i(a(3971)),R=i(a(3977)),N=i(a(3979)),j=i(a(3981)),M=i(a(3984)),T=i(a(3986)),B=i(a(3990)),F=i(a(3995)),L=i(a(3997)),O=i(a(4007)),Q=i(a(4010)),q=i(a(4011)),V=i(a(1474)),H=i(a(1657)),U=i(a(4012)),K=i(a(1653)),G=i(a(1654)),z=i(a(1651)),J=i(a(4014)),W=i(a(4018)),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},3838: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(1625));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},3839: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},3840: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},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.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(3842)),I=f(r(3845)),A=f(r(1626));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},3842: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(1630));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},3843: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},3844: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},3845: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},3846: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(3847)),b=f(r(1630));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},3847: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},3848: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(1631));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},3849: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},3850: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},3851: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},3852: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},3853: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=_},3854: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},3855: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},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=>{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},3857: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(1605)),p=n(r(3858)),m=n(r(3859));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},3858: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},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.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(3860));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},3860: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(3861)),o=i(a(3862)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default},batchActions:[],primaryActions:[]}};t.default=s},3861: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},3862: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},3863: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(583);var S=f(r(420));r(231);var w=f(r(341)),x=f(r(1583)),P=f(r(49)),C=f(r(35)),E=f(r(0)),D=(r(161),f(r(3864))),k=f(r(3865)),R=(r(564),r(412)),N=f(r(233)),j=r(3866),M=f(r(1388)),T=r(565),B=r(36),F=r(571),L=f(r(1471)),O=f(r(1632)),Q=f(r(1627)),q=f(r(1304)),V=f(r(3868)),H=f(r(1633));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},3865:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/cloud.1740005905.png"},3866: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"]]},3867: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"}},3868: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(3869)),p=n(r(597)),m=r(204),h=n(r(1471)),v=n(r(1633));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},3869:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,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"},3870:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/router.1740005905.png"},3871: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(3872)),c=n(r(3873)),f=n(r(3874)),p=n(r(1631));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},3872: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},3873: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},3875: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(3876)),l=i(a(3877)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=o},3876: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},3877: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},3878: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},3879: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(3880)),p=n(r(3885)),m=n(r(3889)),h=n(r(3893)),v=n(r(1606));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=_},3880: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(3881),u=n(r(3882));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},3881: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},3882: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(3883)),l=i(a(3884)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3883: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},3884: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},3885: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(1607))),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(3886)),R=n(r(3887)),{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},3886: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},3887:function(e,t,a){var r=a(3888);"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)},3888: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"}},3889: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(3890));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},3890: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(3891)),l=i(a(3892)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3891: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},3892: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},3893: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},3894: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(1635));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},3895: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},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.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},3897: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},3898: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},3899: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(1637));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},3900: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},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_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},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.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},3903: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},3904: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},3905: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(1637));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},3906: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(3907)),f=n(r(1636));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},3907: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},3908: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(1638);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=_},3909: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},3910: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},3911: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},3912: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},3913: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},3914: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},3915: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},3916: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},3917: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},3918: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(3919)),b=r(1638);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},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.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(1640);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},3920: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=_},3921: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},3922: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(1641);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},3923: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},3924: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(3925)),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},3925: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},3926: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},3927: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(3928)),c=n(r(3929)),f=r(1640);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},3928: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},3929: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(3930);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},3930: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(3931)),l=i(a(3932)),o={rowActions:{firstAction:i(a(3934)).default,moreActions:[{action:n.default}]},batchActions:[],primaryActions:[l.default]};t.actionConfigs=o;var s={rowActions:{moreActions:[{action:n.default}]},batchActions:[],primaryActions:[]};t.adminActions=s},3931: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},3932: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(3933)),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},3934: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},3935: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(3936)),u=n(r(3941)),c=n(r(3946)),f=n(r(3951)),p=n(r(3956));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},3936: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(3937);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},3937: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(3938)),l=i(a(3939)),o=i(a(3940)),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},3938: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},3939: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},3940: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},3941: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(3942);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},3942: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(3943)),l=i(a(3944)),o=i(a(3945)),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},3943: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},3944: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},3945: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},3946: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(3947);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=_},3947: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(3948)),l=i(a(3949)),o=i(a(3950)),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},3948: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},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.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},3950: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},3951: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(3952);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=_},3952: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(3953)),l=i(a(3954)),o=i(a(3955)),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},3953: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},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.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},3955: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},3956: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(1642);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},3957: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(3958));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},3958: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},3959: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},3960: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},3961: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(3962)),c=r(1642);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},3962: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},3963: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(1643));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},3964: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},3965: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},3966: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},3967: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(3968)),c=n(r(1643));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},3968: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(3969));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},3969: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(1644)),l=i(a(3970)),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},3970: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},3971: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(3972));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},3972: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},3973: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(3974),_=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},3974: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},3975: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},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(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},3977: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(3978)),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},3978: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},3979: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(3980)),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},3980: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},3981: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(1645));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},3982: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},3983: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},3984: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(3985)),u=n(r(1645));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},3985: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},3986: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(3987));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},3987: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(1647)),l=i(a(3988)),o=i(a(3989)),s=i(a(1648)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},primaryActions:[n.default],batchActions:[o.default]};t.default=d},3988: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(1647);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},3989: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},3990: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(3991)),c=n(r(3992));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},3991: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},3992: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(1649));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},3993: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},3994: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},3995: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(3996)),c=n(r(1649));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},3996: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},3997: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(3998)),u=n(r(4002)),c=n(r(1655));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},3998: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(1650));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},3999: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},4e3: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},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.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},4002: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(1652));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},4003: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},4004: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},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(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},4006: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},4007: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(4008)),c=n(r(4009)),f=n(r(1650));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},4008: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},4009: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},4014: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(1658));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},4015: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},4016: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},4017: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},4018: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(1658)),d=r(604),u=n(r(4019));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},4019: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(1646)),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(1646)),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(3867);"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(3973)),l=i(a(3975)),o=i(a(3976)),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},1625: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(1626));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},1626: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(1627)),l=i(a(1629)),o=i(a(3839)),s={rowActions:{firstAction:i(a(3840)).default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=s},1627: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(1628)),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=$},1628: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},1629: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},1630: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(1629)),l=i(a(3843)),o={rowActions:{firstAction:i(a(3844)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},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(1632)),l=i(a(3849)),o=i(a(3850)),s=i(a(3851)),d=i(a(3852)),u=i(a(3853)),c=i(a(3854)),f=i(a(3855)),p=i(a(3856)),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},1632: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(1628)),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},1633: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(3870)),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},1634: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(3878));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},1635: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(1636));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},1636: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(3895)),l=i(a(3896)),o=i(a(3897)),s=i(a(3898)),d=i(a(3899)),u=i(a(3900)),c=i(a(3901)),f=i(a(3902)),p=i(a(3903)),m=i(a(3904)),h=i(a(3905)),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},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,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},1638: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(3909)),l=i(a(3910)),o=i(a(3911)),s=i(a(1639)),d=i(a(3917)),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},1639: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(3912)),b=n(r(3913)),y=n(r(3914)),I=n(r(3915)),A=n(r(3916));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},1640: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(3920)),l=i(a(3921)),o=i(a(3922)),s=i(a(3923)),d=i(a(3924)),u=i(a(1641)),c=i(a(3926)),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},1641: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},1642: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(3957)),l=i(a(3959)),o=i(a(3960)),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},1643: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(3964)),l=i(a(3965)),o=i(a(3966)),s=i(a(1644)),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},1644: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},1645: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(3982)),l=i(a(3983)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]}};t.default=o},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(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},1647: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},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(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},1649: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(3993)),l=i(a(3994)),o=i(a(1648)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default}]},primaryActions:[o.default],batchActions:[l.default]};t.default=s},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(1651)),l=i(a(3999)),o=i(a(4e3)),s={actionConfigs:{rowActions:{firstAction:i(a(4001)).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},1651: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},1652: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(1653)),l=i(a(4003)),o=i(a(1654)),s=i(a(4004)),d=i(a(4005)),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},1653: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},1654: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},1655: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(1656));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},1656: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(1657)),o=i(a(4006)),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},1657: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},1658: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(4015)),l=i(a(4016)),o=i(a(4017)),s={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[o.default]};t.default=s},3836: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(3837)),o=e=>(0,n.default)(l.default,e);t.default=o},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(1263)),l=i(a(579)),o=i(a(3838)),s=i(a(1625)),d=i(a(3841)),u=i(a(3846)),c=i(a(3848)),f=i(a(1466)),p=i(a(3857)),m=i(a(3863)),h=i(a(3871)),v=i(a(1634)),g=i(a(1395)),_=i(a(3879)),b=i(a(3894)),y=i(a(1635)),I=i(a(3906)),A=i(a(3908)),S=i(a(1639)),w=i(a(3918)),x=i(a(3927)),P=i(a(3935)),C=i(a(3961)),E=i(a(3963)),D=i(a(3967)),k=i(a(3971)),R=i(a(3977)),N=i(a(3979)),j=i(a(3981)),M=i(a(3984)),T=i(a(3986)),B=i(a(3990)),F=i(a(3995)),L=i(a(3997)),O=i(a(4007)),Q=i(a(4010)),q=i(a(4011)),V=i(a(1474)),H=i(a(1657)),U=i(a(4012)),K=i(a(1653)),G=i(a(1654)),z=i(a(1651)),J=i(a(4014)),W=i(a(4018)),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},3838: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(1625));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},3839: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},3840: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},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.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(3842)),I=f(r(3845)),A=f(r(1626));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},3842: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(1630));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},3843: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},3844: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},3845: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},3846: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(3847)),b=f(r(1630));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},3847: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},3848: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(1631));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},3849: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},3850: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},3851: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},3852: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},3853: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=_},3854: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},3855: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},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=>{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},3857: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(1605)),p=n(r(3858)),m=n(r(3859));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},3858: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},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.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(3860));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},3860: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(3861)),o=i(a(3862)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default},batchActions:[],primaryActions:[]}};t.default=s},3861: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},3862: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},3863: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(583);var S=f(r(420));r(231);var w=f(r(341)),x=f(r(1583)),P=f(r(49)),C=f(r(35)),E=f(r(0)),D=(r(161),f(r(3864))),k=f(r(3865)),R=(r(564),r(412)),N=f(r(233)),j=r(3866),M=f(r(1388)),T=r(565),B=r(36),F=r(571),L=f(r(1471)),O=f(r(1632)),Q=f(r(1627)),q=f(r(1304)),V=f(r(3868)),H=f(r(1633));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},3865:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/cloud.1740491958.png"},3866: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"]]},3867: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"}},3868: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(3869)),p=n(r(597)),m=r(204),h=n(r(1471)),v=n(r(1633));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},3869:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,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"},3870:function(e,t,a){"use strict";a.r(t),t.default=a.p+"asset/image/router.1740491958.png"},3871: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(3872)),c=n(r(3873)),f=n(r(3874)),p=n(r(1631));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},3872: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},3873: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},3875: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(3876)),l=i(a(3877)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=o},3876: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},3877: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},3878: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},3879: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(3880)),p=n(r(3885)),m=n(r(3889)),h=n(r(3893)),v=n(r(1606));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=_},3880: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(3881),u=n(r(3882));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},3881: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},3882: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(3883)),l=i(a(3884)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3883: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},3884: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},3885: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(1607))),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(3886)),R=n(r(3887)),{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},3886: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},3887:function(e,t,a){var r=a(3888);"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)},3888: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"}},3889: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(3890));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},3890: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(3891)),l=i(a(3892)),o={actionConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[n.default]},adminConfigs:{rowActions:{firstAction:l.default},batchActions:[],primaryActions:[]}};t.default=o},3891: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},3892: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},3893: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},3894: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(1635));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},3895: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},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.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},3897: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},3898: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},3899: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(1637));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},3900: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},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_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},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.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},3903: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},3904: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},3905: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(1637));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},3906: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(3907)),f=n(r(1636));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},3907: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},3908: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(1638);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=_},3909: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},3910: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},3911: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},3912: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},3913: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},3914: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},3915: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},3916: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},3917: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},3918: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(3919)),b=r(1638);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},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.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(1640);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},3920: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=_},3921: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},3922: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(1641);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},3923: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},3924: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(3925)),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},3925: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},3926: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},3927: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(3928)),c=n(r(3929)),f=r(1640);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},3928: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},3929: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(3930);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},3930: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(3931)),l=i(a(3932)),o={rowActions:{firstAction:i(a(3934)).default,moreActions:[{action:n.default}]},batchActions:[],primaryActions:[l.default]};t.actionConfigs=o;var s={rowActions:{moreActions:[{action:n.default}]},batchActions:[],primaryActions:[]};t.adminActions=s},3931: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},3932: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(3933)),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},3934: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},3935: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(3936)),u=n(r(3941)),c=n(r(3946)),f=n(r(3951)),p=n(r(3956));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},3936: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(3937);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},3937: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(3938)),l=i(a(3939)),o=i(a(3940)),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},3938: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},3939: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},3940: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},3941: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(3942);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},3942: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(3943)),l=i(a(3944)),o=i(a(3945)),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},3943: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},3944: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},3945: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},3946: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(3947);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=_},3947: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(3948)),l=i(a(3949)),o=i(a(3950)),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},3948: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},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.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},3950: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},3951: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(3952);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=_},3952: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(3953)),l=i(a(3954)),o=i(a(3955)),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},3953: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},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.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},3955: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},3956: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(1642);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},3957: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(3958));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},3958: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},3959: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},3960: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},3961: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(3962)),c=r(1642);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},3962: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},3963: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(1643));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},3964: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},3965: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},3966: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},3967: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(3968)),c=n(r(1643));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},3968: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(3969));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},3969: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(1644)),l=i(a(3970)),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},3970: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},3971: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(3972));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},3972: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},3973: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(3974),_=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},3974: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},3975: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},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(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},3977: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(3978)),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},3978: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},3979: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(3980)),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},3980: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},3981: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(1645));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},3982: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},3983: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},3984: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(3985)),u=n(r(1645));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},3985: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},3986: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(3987));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},3987: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(1647)),l=i(a(3988)),o=i(a(3989)),s=i(a(1648)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:o.default}]},primaryActions:[n.default],batchActions:[o.default]};t.default=d},3988: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(1647);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},3989: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},3990: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(3991)),c=n(r(3992));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},3991: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},3992: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(1649));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},3993: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},3994: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},3995: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(3996)),c=n(r(1649));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},3996: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},3997: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(3998)),u=n(r(4002)),c=n(r(1655));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},3998: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(1650));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},3999: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},4e3: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},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.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},4002: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(1652));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},4003: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},4004: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},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(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},4006: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},4007: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(4008)),c=n(r(4009)),f=n(r(1650));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},4008: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},4009: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},4014: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(1658));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},4015: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},4016: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},4017: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},4018: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(1658)),d=r(604),u=n(r(4019));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},4019: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.1740491958.js.gz b/skyline_console/static/network.bundle.1740491958.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb2e59c6e625971956e0e1e8cb5ed054e438e3d9 GIT binary patch literal 86798 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
}M($gqsZB(t(hG?bN@%STkc1DF{&>+K18Q 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 literal 0 HcmV?d00001 diff --git a/skyline_console/static/runtime.1740005905.js b/skyline_console/static/runtime.1740491958.js similarity index 97% rename from skyline_console/static/runtime.1740005905.js rename to skyline_console/static/runtime.1740491958.js index 07e32667..7f05ea62 100644 --- a/skyline_console/static/runtime.1740005905.js +++ b/skyline_console/static/runtime.1740491958.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