diff --git a/package.json b/package.json index e9ab6dfe..8c8f1597 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "skyline-console", - "version": "0.1.0", + "version": "1.0.0", "description": "", "author": "OpenStack ", "license": "Apache-2.0", diff --git a/skyline_console/static/Container.bundle.1658297502.js b/skyline_console/static/Container.bundle.1658297502.js deleted file mode 100644 index f9f98706..00000000 --- a/skyline_console/static/Container.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1133:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.ContainersStore=void 0;var l,i=r(a(25)),o=r(a(52)),u=r(a(55)),s=r(a(54)),d=r(a(49)),c=a(32),f=(l=class extends s.default{get client(){return d.default.zun.containers}create(e){var t=this;return(0,o.default)((function*(){return t.submitting(t.client.create(e))}))()}delete(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.delete(a)}))()}start(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.start(a)}))()}stop(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.stop(a)}))()}pause(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.pause(a)}))()}reboot(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.reboot(a)}))()}unpause(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.unpause(a)}))()}rebuild(e,t){var a=this;return(0,o.default)((function*(){return a.client.rebuild(e,t)}))()}kill(e,t){var a=this;return(0,o.default)((function*(){return a.client.kill(e,t)}))()}forceDelete(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.delete(a,null,{force:!0})}))()}execute(e,t){var a=this;return(0,o.default)((function*(){return a.client.execute(e,t)}))()}},(0,u.default)(l.prototype,"create",[c.action],(0,i.default)(l.prototype,"create"),l.prototype),(0,u.default)(l.prototype,"delete",[c.action],(0,i.default)(l.prototype,"delete"),l.prototype),(0,u.default)(l.prototype,"start",[c.action],(0,i.default)(l.prototype,"start"),l.prototype),(0,u.default)(l.prototype,"stop",[c.action],(0,i.default)(l.prototype,"stop"),l.prototype),(0,u.default)(l.prototype,"pause",[c.action],(0,i.default)(l.prototype,"pause"),l.prototype),(0,u.default)(l.prototype,"reboot",[c.action],(0,i.default)(l.prototype,"reboot"),l.prototype),(0,u.default)(l.prototype,"unpause",[c.action],(0,i.default)(l.prototype,"unpause"),l.prototype),(0,u.default)(l.prototype,"rebuild",[c.action],(0,i.default)(l.prototype,"rebuild"),l.prototype),(0,u.default)(l.prototype,"kill",[c.action],(0,i.default)(l.prototype,"kill"),l.prototype),(0,u.default)(l.prototype,"forceDelete",[c.action],(0,i.default)(l.prototype,"forceDelete"),l.prototype),(0,u.default)(l.prototype,"execute",[c.action],(0,i.default)(l.prototype,"execute"),l.prototype),l);t.ContainersStore=f;var m=new f;t.default=m},1134:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.checkItemAction=a.containerTaskStatus=a.containerStatus=void 0;var i=l(n(219)),o={Creating:t("Creating"),Created:t("Created"),Running:t("Running"),Stopped:t("Stopped"),Paused:t("Paused"),Restarting:t("Restarting"),Deleting:t("Deleting"),Error:t("Error"),Unknown:t("Unknown"),Rebuilding:t("Rebuilding")};a.containerStatus=o;var u={null:t("No Task"),container_creating:t("Container Creating"),container_starting:t("Container Starting"),container_stopping:t("Container Stopping"),container_rebooting:t("Container Rebooting"),container_deleting:t("Container Deleting"),container_rebuilding:t("Container Rebuilding"),container_killing:t("Container Killing")};a.containerTaskStatus=u;var s="Error",d="Running",c="Stopped",f="Paused",m="Created",p="Deleted",v="Dead",h={update:[m,d,c,f],start:[m,c,s],stop:[d],reboot:[m,d,c,s],rebuild:[m,d,c,s],pause:[d],unpause:[f],execute:[d],kill:[d],delete:[m,s,c,p,v],delete_force:[m,"Creating",s,d,c,"Unknown",p,v,"Restarting","Rebuilding","Deleting"],delete_stop:[d,m,s,c,p,v],manage_security_groups:[m,d,c,f]};a.checkItemAction=(e,t)=>{var a;if(!e)return!1;var{status:n}=e;return(0,i.default)(a=h[t]).call(a,n)}},1281:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.CapsulesStore=void 0;var l,i=r(a(25)),o=r(a(52)),u=r(a(55)),s=r(a(54)),d=r(a(49)),c=a(32),f=(l=class extends s.default{get client(){return d.default.zun.capsules}create(e){var t=this;return(0,o.default)((function*(){return t.client.create(e)}))()}delete(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.delete(a)}))()}},(0,u.default)(l.prototype,"create",[c.action],(0,i.default)(l.prototype,"create"),l.prototype),(0,u.default)(l.prototype,"delete",[c.action],(0,i.default)(l.prototype,"delete"),l.prototype),l);t.CapsulesStore=f;var m=new f;t.default=m},1533:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1534)),i=r(a(4091)),o=r(a(4092)),u=r(a(4093)),s=r(a(4094)),d=r(a(4095)),c=r(a(4096)),f=r(a(4097)),m=r(a(4098)),p=r(a(4099)),v=r(a(4100)),h=r(a(4101)),g=[{action:s.default},{action:d.default},{action:u.default},{action:p.default},{action:f.default},{action:i.default},{action:v.default}],b={actionConfigs:{rowActions:{firstAction:m.default,moreActions:[{action:o.default},{action:c.default},{action:h.default},...g]},batchActions:[i.default],primaryActions:[l.default]},actionConfigsAdmin:{rowActions:{firstAction:m.default,moreActions:g},batchActions:[i.default],primaryActions:[]}};t.default=b},1534:function(e,a,n){"use strict";var r=n(35),l=n(44),i=n(33),o=n(25),u=n(28),s=n(45),d=n(46),c=n(19),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var m=f(n(28)),p=f(n(402)),v=f(n(65));n(1313);var h=f(n(405)),g=f(n(52)),b=f(n(71)),y=f(n(37)),C=n(382),_=(n(167),n(1113)),x=f(n(1133)),S=f(n(384)),I=f(n(4083)),k=f(n(4084)),w=f(n(4085)),M=f(n(4089)),D=f(n(4090));function T(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 A(e){for(var t=1;t{var t,a,n,{environmentVariables:r,labels:l,mounts:i,images:o,exitPolicy:u,maxRetry:s,networks:d,ports:c,hints:f,securityGroup:v}=e,h=(0,b.default)(e,["environmentVariables","labels","mounts","images","exitPolicy","maxRetry","networks","ports","hints","securityGroup"]),g={},y={},C=[],_={},x=[],S=[];(r&&(0,m.default)(r).call(r,(e=>{var t,a,n=(0,p.default)(t=e.value.key.toLowerCase()).call(t),r=(0,p.default)(a=e.value.value.toLowerCase()).call(a);g[n]=r})),l&&(0,m.default)(l).call(l,(e=>{var t,a,n=(0,p.default)(t=e.value.key.toLowerCase()).call(t),r=(0,p.default)(a=e.value.value.toLowerCase()).call(a);y[n]=r})),i&&(0,m.default)(i).call(i,(e=>{var{type:t,source:a,size:n,destination:r,isNewVolume:l}=e.value;l?C.push({type:t,size:n,destination:r}):C.push({type:t,source:a,destination:r})})),d)&&(0,m.default)(t=d.selectedRowKeys||[]).call(t,(e=>{x.push({network:e})}));c&&(0,m.default)(a=c.selectedRowKeys||[]).call(a,(e=>{x.push({port:e})}));v&&(0,m.default)(n=v.selectedRows||[]).call(n,(e=>{S.push(e.name)}));f&&(0,m.default)(f).call(f,(e=>{var t,a,n=(0,p.default)(t=e.value.key.toLowerCase()).call(t),r=(0,p.default)(a=e.value.value.toLowerCase()).call(a);_[n]=r}));var I=A({environment:g,labels:y,mounts:C,hints:_,nets:x,security_groups:S},h);return o&&(I.image=(o.selectedRows[0]||{}).name),u&&(I.restart_policy=A({Name:u},s?{MaximumRetryCount:s}:{})),this.store.create(I)}))}init(){this.store=x.default,this.projectStore=S.default,this.getQuota(),this.errorMsg=""}static allowed(){return v.default.resolve(!0)}get name(){return t("Create Container")}get listUrl(){return this.getRoutePath("zunContainers")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Info"),component:I.default},{title:t("Spec"),component:k.default},{title:t("Volumes"),component:w.default},{title:t("Network Config"),component:M.default},{title:t("Miscellaneous"),component:D.default}]}get showQuota(){return!0}get quotaInfo(){var{containers:e={},cpu:a={},memory:n={},disk:r={}}=this.projectStore.zunQuota,{limit:l}=e||{};if(!l)return[];var{data:{cpu:i,memory:o,disk:u}={}}=this.state,s=A(A({},e),{},{add:1,name:"containers",title:t("Containers")}),d=A(A({},a),{},{add:i,name:"cpu",title:t("CPU"),type:"line"}),c=A(A({},n),{},{add:o,name:"memory",title:t("Memory (MiB)"),type:"line"}),f=A(A({},r),{},{add:u,name:"disk",title:t("Disk (GiB)"),type:"line"});return this.checkQuota(this.state.data,this.projectStore.zunQuota),[s,d,c,f]}getQuota(){var e=this;return(0,g.default)((function*(){yield e.projectStore.fetchProjectZunQuota()}))()}getQuotaMessage(e,a,n){return-1===a?"":e>a?t("Insufficient {name} quota to create resources(left { quota }, input { input }).",{name:n,quota:a,input:e}):""}checkQuota(e,a){var{containers:n={},cpu:r={},memory:l={},disk:i={}}=a||{},{cpu:o,memory:u,disk:s}=e||{},{left:d=0}=n,c=this.getQuotaMessage(1,d,t("Containers")),{left:f=0}=r,m=this.getQuotaMessage(o,f,t("CPU")),{left:p=0}=l,v=this.getQuotaMessage(u,p,t("Memory")),{left:g=0}=i,b=this.getQuotaMessage(s,g,t("Disk"));if(c||m||v||b){var y=c||m||v||b;this.errorMsg!==y&&h.default.error(y),this.errorMsg=y}else this.errorMsg=""}get disableNext(){return!!this.errorMsg}get disableSubmit(){return!!this.errorMsg}}a.StepCreate=P,(0,y.default)(P,"id","create-container"),(0,y.default)(P,"title",t("Create Container")),(0,y.default)(P,"path","/container/containers/create"),(0,y.default)(P,"policy","container:create"),(0,y.default)(P,"aliasPolicy","zun:container:create");var N=(0,C.inject)("rootStore")((0,C.observer)(P));a.default=N},1535:function(e,a,n){"use strict";n(19)(a,"__esModule",{value:!0}),a.capsuleStatus=void 0;var r={Creating:t("Creating"),Pending:t("Pending"),Running:t("Running"),Succeeded:t("Succeeded"),Failed:t("Failed"),Unknown:t("Unknown")};a.capsuleStatus=r},1536:function(e,t,a){"use strict";var n=a(35),r=a(44),l=a(33),i=a(25),o=a(28),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.HostsStore=void 0;var f=c(a(37)),m=c(a(54)),p=c(a(49)),v=a(135);function h(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(0,l.default)(i.default,e);t.default=o},4081:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1130)),i=r(a(525)),o=r(a(4082)),u=r(a(4102)),s=r(a(4106)),d=r(a(4107)),c=r(a(4109)),f=r(a(4111)),m=r(a(1534)),p="/container",v=[{path:p,component:l.default,routes:[{path:"".concat(p,"/containers"),component:o.default,exact:!0},{path:"".concat(p,"/containers/create"),component:m.default,exact:!0},{path:"".concat(p,"/containers/detail/:id"),component:d.default,exact:!0},{path:"".concat(p,"/containers-admin"),component:o.default,exact:!0},{path:"".concat(p,"/containers-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(p,"/capsules"),component:u.default,exact:!0},{path:"".concat(p,"/capsules/detail/:id"),component:c.default,exact:!0},{path:"".concat(p,"/hosts-admin"),component:s.default,exact:!0},{path:"".concat(p,"/hosts-admin/detail/:id"),component:f.default,exact:!0},{path:"*",component:i.default}]}];t.default=v},4082:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Containers=void 0;var i=l(n(37)),o=l(n(1114)),u=n(382),s=l(n(1133)),d=n(1134),c=l(n(1533));class f extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",isLink:!0,routeName:this.getRouteName("zunContainerDetail"),idKey:"uuid"},{title:t("Status"),isHideable:!0,dataIndex:"status",render:e=>d.containerStatus[e]||e},{title:t("Image"),isHideable:!0,dataIndex:"image"},{title:t("Task State"),isHideable:!0,dataIndex:"task_state",render:e=>d.containerTaskStatus[e]||e}]))}init(){this.store=s.default,this.downloadStore=s.default}get name(){return t("containers")}get policy(){return"container:get_all"}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get rowKey(){return"uuid"}}a.Containers=f;var m=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=m},4083:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=l(n(33)),o=l(n(52)),u=l(n(37)),s=l(n(1121)),d=n(382),c=l(n(523)),f=n(520);class m extends s.default{constructor(){super(...arguments),(0,u.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})}))}init(){this.getImageList()}get title(){return t("Info")}get name(){return t("Info")}getImageList(){var e=this;return(0,o.default)((function*(){yield c.default.fetchList(),e.updateDefaultValue()}))()}get imageList(){var e,t,{imageTab:a}=this.state;return(0,i.default)(e=(0,i.default)(t=c.default.list.data||[]).call(t,(e=>e.owner===this.currentProjectId))).call(e,(e=>(0,f.getImageOS)(e)===a))}get imageColumns(){return(0,f.getImageColumns)(this)}get systemTabs(){return(0,f.getImageSystemTabs)()}get formItems(){return[{name:"name",label:t("Container Name"),type:"input",placeholder:t("Container Name")},{name:"images",label:t("Image"),type:"select-table",data:this.imageList,required:!0,isLoading:c.default.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,onTabChange:this.onImageTabChange},{name:"image_driver",label:t("Image Driver"),placeholder:t("Image Driver"),type:"select",options:[{label:t("Docker"),value:"docker"},{label:t("Glance"),value:"glance"}],allowClear:!0},{name:"command",label:t("Command"),type:"input",placeholder:t("A command that will be sent to the container")}]}}a.StepInfo=m;var p=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=p},4084:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepSpec=void 0;var i=l(n(62)),o=l(n(33)),u=l(n(52)),s=l(n(1121)),d=n(382),c=l(n(1180));class f extends s.default{init(){this.getAvailabilityZones(),this.state.disableRetry=!0}get title(){return t("Spec")}get name(){return t("Spec")}getAvailabilityZones(){return(0,u.default)((function*(){yield c.default.fetchListWithoutDetail()}))()}get availabilityZoneList(){var e,t;return(0,i.default)(e=(0,o.default)(t=c.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get formItems(){var{disableRetry:e}=this.state;return[{name:"hostname",label:t("Hostname"),type:"input",placeholder:t("The host name of this container")},{name:"runtime",label:t("Runtime"),type:"input",placeholder:t("The container runtime tool to create container with")},{name:"cpu",label:t("CPU (Core)"),type:"input-int",tip:t("The number of virtual cpu for this container"),min:1,onChange:e=>this.updateContext({cpu:e})},{name:"memory",label:t("Memory (MiB)"),type:"input-int",tip:t("The container memory size in MiB"),min:4,onChange:e=>this.updateContext({memory:e})},{name:"disk",label:t("Disk (GiB)"),type:"input-int",tip:t("The disk size in GiB for per container"),min:1,onChange:e=>this.updateContext({disk:e})},{name:"availability_zone",label:t("Availability Zone"),type:"select",options:this.availabilityZoneList},{name:"exitPolicy",label:t("Exit Policy"),type:"select",options:[{label:t("No"),value:"no"},{label:t("On failure"),value:"on-failure"},{label:t("Always"),value:"always"},{label:t("Unless Stopped"),value:"unless-stopped"}],onChange:e=>this.setState({disableRetry:"on-failure"!==e})},{name:"maxRetry",label:t("Max Retry"),type:"input-number",tip:t("Retry times for restart on failure policy"),min:1,disabled:e},{name:"auto_heal",label:t("Enable auto heal"),type:"check"}]}}a.StepSpec=f;var m=(0,d.inject)("rootStore")((0,d.observer)(f));a.default=m},4085:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepVolumes=void 0;var i=l(n(52)),o=l(n(62)),u=l(n(33)),s=l(n(82)),d=l(n(1121)),c=n(382),f=l(n(4086)),m=n(386);class p extends d.default{init(){this.volumeStore=new m.VolumeStore,this.getVolumes()}get volumes(){var e,t;return(0,o.default)(e=(0,u.default)(t=this.volumeStore.list.data||[]).call(t,(e=>"available"===e.status))).call(e,(e=>{var t;return{value:e.id,label:(0,s.default)(t="".concat(e.name||e.id," (")).call(t,e.id,")")}}))}getVolumes(){var e=this;return(0,i.default)((function*(){yield e.volumeStore.fetchList()}))()}get formItems(){return[{name:"mounts",label:t("Type"),type:"add-select",optionsType:[{label:t("Existing Volume"),value:"bind"},{label:t("New Volume"),value:"volume"}],optionsSource:this.volumes,itemComponent:f.default}]}}a.StepVolumes=p;var v=(0,c.inject)("rootStore")((0,c.observer)(p));a.default=v},4086:function(e,a,n){"use strict";var r=n(35),l=n(44),i=n(33),o=n(25),u=n(28),s=n(45),d=n(46),c=n(19),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1135);var m=f(n(1136));n(1117);var p=f(n(1118));n(1115);var v=f(n(1116));n(1124);var h=f(n(1125));n(519);var g=f(n(388)),b=f(n(37)),y=f(n(0)),C=(n(167),f(n(16))),_=f(n(4087)),x=f(n(1297));function S(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 I(e){for(var t=1;t{var{onChange:t}=this.props;t&&t(e)})),(0,b.default)(this,"onTypeChange",(e=>{this.setState({isNewVolume:"volume"===e},(()=>{this.onChange(I(I({},this.state),{},{type:e}))}))})),(0,b.default)(this,"onSourceChange",(e=>{this.onChange(I(I({},this.state),{},{source:e}))})),(0,b.default)(this,"onVolumeSizeChange",(e=>{this.onChange(I(I({},this.state),{},{size:e}))})),(0,b.default)(this,"onDestinationChange",(e=>{this.onChange(I(I({},this.state),{},{destination:e.target.value}))})),this.state={type:"",source:"",destination:"",size:0,isNewVolume:!1}}static getDerivedStateFromProps(e,t){var{type:a,source:n,size:r,destination:l}=e.value||{};return a!==t.type||n!==t.source||r!==t.size||l!==t.destination?{type:a,source:n,size:r,destination:l,isNewVolume:"volume"===a}:null}render(){var{type:e,source:a,destination:n,size:r,isNewVolume:l}=this.state,i=y.default.createElement(g.default,{value:e,options:this.props.optionsType,onChange:this.onTypeChange,className:_.default.select,placeholder:t("Please select type"),required:!0}),o=y.default.createElement(g.default,{value:a,options:this.props.optionsSource,onChange:this.onSourceChange,className:_.default.select,placeholder:t("Please select source")}),u=y.default.createElement(x.default,{value:r,onChange:this.onVolumeSizeChange,style:{maxWidth:"40%"}}),s=y.default.createElement(h.default,{value:n,onChange:this.onDestinationChange,style:{maxWidth:"60%"},placeholder:t("Specify mount point."),required:!0});return y.default.createElement(m.default.Item,{className:_.default["zun-volume"]},y.default.createElement(p.default,{gutter:24},y.default.createElement(v.default,{span:8},y.default.createElement("span",{className:_.default.label},t("Type")),i),y.default.createElement(v.default,{span:8,hidden:l},y.default.createElement("span",{className:_.default.label},t("Source")),o),y.default.createElement(v.default,{span:8,hidden:!l},y.default.createElement("span",{className:_.default.label},t("Size(GiB)")),u),y.default.createElement(v.default,{span:8},y.default.createElement("span",{className:_.default.label},t("Destination")),s)))}}a.default=k,(0,b.default)(k,"propTypes",{onChange:C.default.func,value:C.default.any})},4087:function(e,t,a){var n=a(4088);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(76)(n,r);n.locals&&(e.exports=n.locals)},4088:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__zun-volume--2qwhn {\n display: block;\n margin-bottom: 8px;\n}\n.index__label--1pY7p {\n margin-right: 10px;\n max-width: 20%;\n}\n.index__select--3-lS2 {\n max-width: 80%;\n}\n",""]),t.locals={"zun-volume":"index__zun-volume--2qwhn",label:"index__label--1pY7p",select:"index__select--3-lS2"}},4089:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepNetworks=void 0;var i=l(n(0)),o=n(392),u=n(521),s=l(n(1121)),d=n(382),c=n(1129),f=n(1193),m=n(517);class p extends s.default{init(){this.portStore=new u.VirtualAdapterStore,this.securityGroupStore=new o.SecurityGroupStore}get title(){return t("Networks")}get name(){return t("Networks")}get nameForStateUpdate(){return["networks"]}get defaultValue(){return{networks:[]}}get formItems(){var{networks:e}=this.state;return[{name:"networks",label:t("Networks"),type:"network-select-table",isMulti:!0,onChange:e=>{var{selectedRowKeys:t=[]}=e;this.setState({networks:t})}},{name:"ports",type:"select-table",label:t("Ports"),extraParams:{project_id:this.currentProjectId,status:"DOWN"},backendPageStore:this.portStore,isMulti:!0,header:t("Ports provide extra communication channels to your instances. You can select ports instead of networks or a mix of both (The port executes its own security group rules by default)."),filterParams:c.portFilters,columns:c.portColumns},{name:"securityGroup",label:t("Security Group"),type:"select-table",backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,hidden:!e||!e.length,header:i.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,m.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")})),filterParams:f.securityGroupFilter,columns:f.securityGroupColumns}]}}a.StepNetworks=p;var v=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=v},4090:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepMiscellaneous=void 0;var i=l(n(1121)),o=n(382),u=l(n(1132));class s extends i.default{get title(){return t("Miscellaneous")}get name(){return t("Miscellaneous")}get formItems(){return[{name:"workdir",label:t("Working Directory"),type:"input",placeholder:t("The working directory for commands to run in")},{name:"environmentVariables",label:t("Environment Variables"),type:"add-select",itemComponent:u.default,addText:t("Add Environment Variable")},{name:"interactive",label:t("Enable interactive mode"),type:"check"},{type:"divider"},{name:"labels",label:t("Labels"),type:"add-select",itemComponent:u.default,addText:t("Add Label")},{type:"divider"},{name:"hints",label:t("Scheduler Hints"),type:"add-select",itemComponent:u.default,addText:t("Add scheduler hints")}]}}a.StepMiscellaneous=s;var d=(0,o.inject)("rootStore")((0,o.observer)(s));a.default=d},4091:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:delete"),(0,i.default)(this,"aliasPolicy","zun:container:delete"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"delete"))),(0,i.default)(this,"onSubmit",(e=>u.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Container")}get actionName(){return t("Delete Container")}get isDanger(){return!0}get buttonText(){return t("Delete")}}a.default=d},4092:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:pause"),(0,i.default)(this,"aliasPolicy","zun:container:pause"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"pause"))),(0,i.default)(this,"onSubmit",(e=>u.default.pause({id:e.uuid})))}get id(){return"pause"}get title(){return t("Pause Container")}get actionName(){return t("Pause Container")}get buttonText(){return t("Pause")}}a.default=d},4093:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:reboot"),(0,i.default)(this,"aliasPolicy","zun:container:reboot"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"reboot"))),(0,i.default)(this,"onSubmit",(e=>u.default.reboot({id:e.uuid})))}get id(){return"reboot"}get title(){return t("Reboot Container")}get actionName(){return t("Reboot Container")}get buttonText(){return t("Reboot")}}a.default=d},4094:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:start"),(0,i.default)(this,"aliasPolicy","zun:container:start"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"start"))),(0,i.default)(this,"onSubmit",(e=>u.default.start({id:e.uuid})))}get id(){return"start"}get title(){return t("Start Container")}get actionName(){return t("Start Container")}get buttonText(){return t("Start")}}a.default=d},4095:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:stop"),(0,i.default)(this,"aliasPolicy","zun:container:stop"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"stop"))),(0,i.default)(this,"onSubmit",(e=>u.default.stop({id:e.uuid})))}get id(){return"start"}get title(){return t("Stop Container")}get actionName(){return t("Stop Container")}get buttonText(){return t("Stop")}}a.default=d},4096:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:unpause"),(0,i.default)(this,"aliasPolicy","zun:container:unpause"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"unpause"))),(0,i.default)(this,"onSubmit",(e=>u.default.unpause({id:e.uuid})))}get id(){return"Unpause"}get title(){return t("Unpause Container")}get actionName(){return t("Unpause Container")}get buttonText(){return t("Unpause")}}a.default=d},4097:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.RebuildContainer=void 0;var i=l(n(71)),o=l(n(37)),u=n(382),s=n(1113),d=l(n(1133)),c=n(1134);class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"aliasPolicy","zun:container:rebuild"),(0,o.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item,{name:a}=e,n=(0,i.default)(e,["name"]);return d.default.rebuild(t,n)}))}get name(){return t("Rebuild Container")}get defaultValue(){var{name:e,image:t,image_driver:a}=this.item;return{name:e,image:t,image_driver:a}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"image",label:t("Image"),type:"input",placeholder:t("Name or ID og the container image"),required:!0},{name:"image_driver",label:t("Image Driver"),placeholder:t("Image Driver"),type:"select",options:[{label:t("Docker"),value:"docker"},{label:t("Glance"),value:"glance"}],allowClear:!0}]}}a.RebuildContainer=f,(0,o.default)(f,"id","rebuild"),(0,o.default)(f,"title",t("Rebuild Container")),(0,o.default)(f,"buttonText",t("Rebuild")),(0,o.default)(f,"policy","container:rebuild"),(0,o.default)(f,"allowed",(e=>(0,c.checkItemAction)(e,"rebuild")));var m=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=m},4098:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.EditContainer=void 0;var i=l(n(37)),o=n(382),u=n(1113),s=l(n(1133)),d=n(1134);class c extends u.ModalAction{constructor(){super(...arguments),(0,i.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item;return s.default.patch({id:t},e)}))}get name(){return t("Edit Container")}get defaultValue(){var{name:e,memory:t,cpu:a}=this.item;return{name:e,cpu:a,memory:t}}get formItems(){return[{name:"name",label:t("Container Name"),type:"input",placeholder:t("Container Name"),required:!0},{name:"cpu",label:t("CPU (Core)"),type:"input-int",tip:t("The number of virtual cpu for this container"),min:1},{name:"memory",label:t("Memory (MiB)"),type:"input-int",tip:t("The container memory size in MiB"),min:4}]}}a.EditContainer=c,(0,i.default)(c,"id","edit"),(0,i.default)(c,"title",t("Edit Container")),(0,i.default)(c,"buttonText",t("Edit")),(0,i.default)(c,"policy","container:update"),(0,i.default)(c,"aliasPolicy","zun:container:update"),(0,i.default)(c,"allowed",(e=>(0,d.checkItemAction)(e,"update")));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4099:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.KillContainer=void 0;var i=l(n(37)),o=n(382),u=n(1113),s=l(n(1133)),d=n(1134);class c extends u.ModalAction{constructor(){super(...arguments),(0,i.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item,{signal:a}=e;return s.default.kill(t,{signal:a})}))}get name(){return t("Kill Container")}get defaultValue(){var{name:e}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"signal",label:t("Kill Signal"),type:"input",placeholder:t("The kill signal to send"),tip:t('Signal to send to the container: integer or string like SIGINT. When not set, SIGKILL is set as default value and the container will exit. The supported signals varies between platform. Besides, you can omit "SIG" prefix.')}]}}a.KillContainer=c,(0,i.default)(c,"id","kill"),(0,i.default)(c,"title",t("Kill Container")),(0,i.default)(c,"buttonText",t("Kill")),(0,i.default)(c,"policy","container:kill"),(0,i.default)(c,"aliasPolicy","zun:container:kill"),(0,i.default)(c,"allowed",(e=>(0,d.checkItemAction)(e,"kill")));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4100:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1133)),s=n(1134);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:delete_force"),(0,i.default)(this,"aliasPolicy","zun:container:delete_force"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"delete_force"))),(0,i.default)(this,"onSubmit",(e=>u.default.forceDelete({id:e.uuid})))}get id(){return"force-delete"}get title(){return t("Force Delete Container")}get actionName(){return t("Force Delete Container")}get buttonText(){return t("Force Delete")}}a.default=d},4101:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.ExecuteCommandContainer=void 0;var i=l(n(82)),o=l(n(65));n(1189);var u=l(n(1190)),s=l(n(52)),d=l(n(37)),c=l(n(0)),f=(n(167),n(382)),m=n(1113),p=l(n(1133)),v=n(1134),h=l(n(1145));class g extends m.ModalAction{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"onSubmit",function(){var a=(0,s.default)((function*(a){var{uuid:n,name:r}=e.item,{command:l}=a,{Title:s,Paragraph:d}=u.default;try{var f,m=yield p.default.execute(n,{command:l});return h.default.warn(t("Command was successfully executed at container {name}.",{name:r}),c.default.createElement(c.default.Fragment,null,c.default.createElement(s,{level:5},(0,i.default)(f="".concat(t("Command"),": ")).call(f,l)),c.default.createElement(s,{level:5},"".concat(t("Outputs"),":")),c.default.createElement(d,null,m.output?c.default.createElement("pre",null,m.output):t("No Outputs")))),o.default.resolve()}catch(e){return h.default.errorWithDetail(e),o.default.reject(e)}}));return function(e){return a.apply(this,arguments)}}())}get name(){return t("Execute Command")}get showNotice(){return!1}get defaultValue(){var{name:e}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"command",label:t("Command"),type:"input",placeholder:t("The command to execute")}]}}a.ExecuteCommandContainer=g,(0,d.default)(g,"id","execute-command"),(0,d.default)(g,"title",t("Execute Command")),(0,d.default)(g,"buttonText",t("Execute Command")),(0,d.default)(g,"policy","container:execute"),(0,d.default)(g,"aliasPolicy","zun:container:execute"),(0,d.default)(g,"allowed",(e=>(0,v.checkItemAction)(e,"execute")));var b=(0,f.inject)("rootStore")((0,f.observer)(g));a.default=b},4102:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Capsules=void 0;var i=l(n(37)),o=l(n(1114)),u=n(382),s=l(n(1281)),d=n(1535),c=l(n(4103));class f extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"meta_name",isLink:!0,routeName:this.getRouteName("zunCapsuleDetail"),idKey:"uuid"},{title:t("Status"),isHideable:!0,dataIndex:"status",render:e=>d.capsuleStatus[e]||e},{title:t("CPU"),isHideable:!0,dataIndex:"cpu"},{title:t("Memory"),isHideable:!0,dataIndex:"memory"}]))}init(){this.store=s.default,this.downloadStore=s.default}get name(){return t("capsules")}get policy(){return"capsule:get_all"}get actionConfigs(){return c.default}}a.Capsules=f;var m=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=m},4103:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(4104)),i=r(a(4105)),o={rowActions:{firstAction:i.default},batchActions:[i.default],primaryActions:[l.default]};t.default=o},4104:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var i=l(n(65)),o=l(n(37)),u=n(382),s=n(1113),d=n(1163),c=l(n(1281));class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var t=(0,d.getYaml)(e.template_file);return this.store.create({template:t})}))}init(){this.store=c.default}static get modalSize(){return"middle"}get name(){return t("Create Capsule")}get formItems(){return[{name:"template_file",label:t("Load Template from a file"),type:"textarea-from-file",rows:6,required:!0,accept:".yaml",validator:(e,a)=>a?i.default.resolve():i.default.reject(t("Please input or load Template from a file"))}]}}a.Create=f,(0,o.default)(f,"id","create-capsules"),(0,o.default)(f,"title",t("Create Capsule")),(0,o.default)(f,"allowed",(()=>i.default.resolve(!0))),(0,o.default)(f,"buttonText",t("Create Capsule")),(0,o.default)(f,"policy","capsule:create");var m=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=m},4105:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(37)),o=n(1113),u=l(n(1281));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","capsule:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>u.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Capsule")}get actionName(){return t("Delete Capsule")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=s},4106:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Hosts=void 0;var i=l(n(82)),o=l(n(37)),u=l(n(0)),s=l(n(1114)),d=n(382),c=l(n(1536)),f=l(n(1314));class m extends s.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:"zuHostsDetailAdmin"},{title:t("Architecture"),dataIndex:"architecture",isHideable:!0},{title:t("Total Containers"),dataIndex:"total_containers",isHideable:!0},{title:t("CPU (Core)"),dataIndex:"cpu_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.cpu_used," / ")).call(a,t.cpus)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.cpu_used," / ")).call(r,t("Total"),": ")).call(n,a.cpus,")")}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.mem_used_gb," / ")).call(a,t.mem_total_gb)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.mem_used_gb," / ")).call(r,t("Total"),": ")).call(n,a.mem_total_gb,")")}},{title:t("Configured Disk (GiB)"),dataIndex:"disk_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.disk_used," / ")).call(a,t.disk_total)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.disk_used," / ")).call(r,t("Total"),": ")).call(n,a.disk_total,")")}}]))}init(){this.store=c.default,this.downloadStore=c.default}get name(){return t("hosts")}get policy(){return"host:get_all"}}a.Hosts=m;var p=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=p},4107:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.ContainerDetail=void 0;var i=n(382),o=l(n(1119)),u=l(n(1133)),s=n(1134),d=l(n(1533)),c=l(n(4108));class f extends o.default{init(){this.store=u.default}get name(){return t("Container Detail")}get listUrl(){return this.getRoutePath("zunContainers")}get policy(){return"container:get_one"}get actionConfigs(){return this.isAdminPage?d.default.actionConfigsAdmin:d.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",render:e=>s.containerStatus[e]||e}]}get tabs(){return[{title:t("General Info"),key:"general_info",component:c.default}]}}a.ContainerDetail=f;var m=(0,i.inject)("rootStore")((0,i.observer)(f));a.default=m},4108:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=l(n(322)),o=l(n(1122)),u=l(n(0)),s=n(382),d=n(1134),c=n(47);class f extends o.default{get leftCards(){return[this.baseInfoCard,this.miscellaneousCard]}get rightCards(){return[this.specCard]}get stringifyContent(){return e=>(0,c.isEmpty)(e)?"-":u.default.createElement("div",null,u.default.createElement("pre",null,(0,i.default)(e,null,4)))}get baseInfoCard(){var e=[{label:t("Status Detail"),dataIndex:"status_detail",render:e=>d.containerStatus[e]||e},{label:t("Status Reason"),dataIndex:"status_reason"},{label:t("Task State"),dataIndex:"task_state"},{label:t("Command"),dataIndex:"command",render:this.stringifyContent}];return{title:t("Base Info"),options:e}}get miscellaneousCard(){var e=[{label:t("Host"),dataIndex:"host"},{label:t("Workdir"),dataIndex:"workdir"},{label:t("Environment"),dataIndex:"environment",render:this.stringifyContent},{label:t("Interactive"),dataIndex:"interactive",valueRender:"yesNo"},{label:t("Labels"),dataIndex:"labels",render:this.stringifyContent}];return{title:t("Miscellaneous"),options:e}}get specCard(){var e=[{label:t("Image"),dataIndex:"image"},{label:t("Image Driver"),dataIndex:"image_driver"},{label:t("Image Pull Policy"),dataIndex:"image_pull_policy"},{label:t("Hostname"),dataIndex:"hostname"},{label:t("Runtime"),dataIndex:"runtime"},{label:t("CPU (Core)"),dataIndex:"cpu"},{label:t("Memory (MiB)"),dataIndex:"memory"},{label:t("Disk (GiB)"),dataIndex:"disk"},{label:t("Restart Policy"),dataIndex:"restart_policy",render:this.stringifyContent},{label:t("Auto Remove"),dataIndex:"auto_remove"},{label:t("Auto Heal"),dataIndex:"auto_heal"},{label:t("Addresses"),dataIndex:"addresses",render:this.stringifyContent},{label:t("Ports"),dataIndex:"ports",render:this.stringifyContent},{label:t("Security Groups"),dataIndex:"security_groups",render:this.stringifyContent}];return{title:t("Spec"),labelCol:4,options:e}}}a.BaseDetail=f;var m=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=m},4109:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.CapsulesDetail=void 0;var i=n(382),o=l(n(1119)),u=l(n(1281)),s=n(1535),d=l(n(4110));class c extends o.default{init(){this.store=u.default}get name(){return t("Cluster Template Detail")}get listUrl(){return this.getRoutePath("zunCapsules")}get policy(){return"capsule:get_one_all_projects"}get detailInfos(){return[{title:t("Name"),dataIndex:"meta_name"},{title:t("Status"),dataIndex:"status",render:e=>s.capsuleStatus[e]||e},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("General Info"),key:"general_info",component:d.default}]}}a.CapsulesDetail=c;var f=(0,i.inject)("rootStore")((0,i.observer)(c));a.default=f},4110:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=l(n(62)),o=l(n(1122)),u=l(n(0)),s=n(382);class d extends o.default{get leftCards(){return[this.baseInfoCard,this.containersCard]}get rightCards(){return[this.specCard]}get baseInfoCard(){var e=[{label:t("Status Reason"),dataIndex:"status_reason"},{label:t("Project ID"),dataIndex:"project_id"},{label:t("User ID"),dataIndex:"user_id"}];return{title:t("Capsule Type"),options:e}}get containersCard(){var e=[{label:t("Containers"),dataIndex:"containers",render:e=>(0,i.default)(e).call(e,(e=>u.default.createElement("div",{key:e.uuid},u.default.createElement("b",null,t("Container Name"))," : ",e.name,u.default.createElement("br",null),u.default.createElement("b",null,t("Container ID")),": ",e.uuid)))}];return{title:t("Containers"),options:e,labelCol:0,contentCol:24}}get specCard(){var e=[{label:t("CPU"),dataIndex:"cpu"},{label:t("Memory"),dataIndex:"memory"},{label:t("Restart Policy"),dataIndex:"restart_policy"},{label:t("Labels"),dataIndex:"labels",render:e=>e||" - "},{label:t("Links"),dataIndex:"links",render:e=>(0,i.default)(e).call(e,(e=>u.default.createElement("div",{key:e.href},e.href," : ",e.rel)))},{label:t("Addresses"),dataIndex:"addresses",render:e=>null!=e.length?e:"-"}];return{title:t("Spec"),options:e}}}a.BaseDetail=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},4111:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.HostsDetail=void 0;var i=l(n(82)),o=n(382),u=l(n(1119)),s=l(n(1536)),d=l(n(4112));class c extends u.default{init(){this.store=s.default}get name(){return t("Hosts Detail")}get listUrl(){return this.getRoutePath("zunHosts")}get policy(){return"host:get"}get detailInfos(){return[{title:t("Hostname"),dataIndex:"name"},{title:t("CPU (Core)"),dataIndex:"cpu_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.cpu_used," / ")).call(a,t.cpus)}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.mem_used_gb," / ")).call(a,t.mem_total_gb)}},{title:t("Configured Disk (GiB)"),dataIndex:"disk_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.disk_used," / ")).call(a,t.disk_total)}}]}get tabs(){return[{title:t("BaseDetail"),key:"BaseDetail",component:d.default}]}}a.HostsDetail=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4112:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=l(n(322)),o=l(n(1122)),u=n(382);class s extends o.default{get leftCards(){return[this.containersInfoCard,this.systemInfoCard]}get rightCards(){return[this.miscellaneousCard]}get containersInfoCard(){var e=[{label:t("Total Containers"),dataIndex:"total_containers"}];return{title:t("Containers Info"),options:e}}get systemInfoCard(){var e=[{label:t("Architecture"),dataIndex:"architecture"},{label:t("Kernel Version"),dataIndex:"kernel_version"},{label:t("OS"),dataIndex:"os"},{label:t("OS Type"),dataIndex:"os_type"}];return{title:t("System Info"),options:e}}get miscellaneousCard(){var e=[{label:t("Labels"),dataIndex:"labels",render:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.default)(e)}},{label:t("Links"),dataIndex:"links",render:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,i.default)(e)}}];return{title:t("Miscellaneous"),options:e}}}a.BaseDetail=s;var d=(0,u.inject)("rootStore")((0,u.observer)(s));a.default=d}}]); \ No newline at end of file diff --git a/skyline_console/static/Container.bundle.1658297502.js.gz b/skyline_console/static/Container.bundle.1658297502.js.gz deleted file mode 100644 index cbdb8a4e..00000000 Binary files a/skyline_console/static/Container.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/Container.bundle.1663167892.js b/skyline_console/static/Container.bundle.1663167892.js new file mode 100644 index 00000000..2d529340 --- /dev/null +++ b/skyline_console/static/Container.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1211:function(e,t,a){"use strict";var n=a(33),r=a(44),l=a(32),i=a(25),o=a(27),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ContainersStore=void 0;var f,p=c(a(33)),m=c(a(57)),v=c(a(174)),g=c(a(1299)),h=c(a(81)),b=c(a(25)),y=c(a(36)),C=c(a(51)),_=c(a(54)),x=c(a(199)),S=c(a(53)),I=c(a(48)),k=a(34);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 w(e){for(var t=1;te=(0,h.default)(e).call(e,t)),[])).call(i,(e=>e.port)));return w(w({},e),{},{stats:l,networks:u,ports:s})}))()}fetchLogs(e){var t=this;return(0,C.default)((function*(){return yield t.client.logs.list(e)}))()}},(0,_.default)(f.prototype,"create",[k.action],(0,b.default)(f.prototype,"create"),f.prototype),(0,_.default)(f.prototype,"delete",[k.action],(0,b.default)(f.prototype,"delete"),f.prototype),(0,_.default)(f.prototype,"start",[k.action],(0,b.default)(f.prototype,"start"),f.prototype),(0,_.default)(f.prototype,"stop",[k.action],(0,b.default)(f.prototype,"stop"),f.prototype),(0,_.default)(f.prototype,"pause",[k.action],(0,b.default)(f.prototype,"pause"),f.prototype),(0,_.default)(f.prototype,"reboot",[k.action],(0,b.default)(f.prototype,"reboot"),f.prototype),(0,_.default)(f.prototype,"unpause",[k.action],(0,b.default)(f.prototype,"unpause"),f.prototype),(0,_.default)(f.prototype,"rebuild",[k.action],(0,b.default)(f.prototype,"rebuild"),f.prototype),(0,_.default)(f.prototype,"kill",[k.action],(0,b.default)(f.prototype,"kill"),f.prototype),(0,_.default)(f.prototype,"forceDelete",[k.action],(0,b.default)(f.prototype,"forceDelete"),f.prototype),(0,_.default)(f.prototype,"execute",[k.action],(0,b.default)(f.prototype,"execute"),f.prototype),f);t.ContainersStore=D;var A=new D;t.default=A},1215:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.checkItemAction=a.containerTaskStatus=a.containerStatus=void 0;var i=l(n(198)),o={Creating:t("Creating"),Created:t("Created"),Running:t("Running"),Stopped:t("Stopped"),Paused:t("Paused"),Restarting:t("Restarting"),Deleting:t("Deleting"),Error:t("Error"),Unknown:t("Unknown"),Rebuilding:t("Rebuilding")};a.containerStatus=o;var u={null:t("No Task"),container_creating:t("Container Creating"),container_starting:t("Container Starting"),container_stopping:t("Container Stopping"),container_rebooting:t("Container Rebooting"),container_deleting:t("Container Deleting"),container_rebuilding:t("Container Rebuilding"),container_killing:t("Container Killing")};a.containerTaskStatus=u;var s="Error",d="Running",c="Stopped",f="Paused",p="Created",m="Deleted",v="Dead",g={update:[p,d,c,f],start:[p,c,s],stop:[d],reboot:[p,d,c,s],rebuild:[p,d,c,s],pause:[d],unpause:[f],execute:[d],kill:[d],delete:[p,s,c,m,v],delete_force:[p,"Creating",s,d,c,"Unknown",m,v,"Restarting","Rebuilding","Deleting"],delete_stop:[d,p,s,c,m,v],manage_security_groups:[p,d,c,f]};a.checkItemAction=(e,t)=>{var a;if(!e)return!1;var{status:n}=e;return(0,i.default)(a=g[t]).call(a,n)}},1365:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.CapsulesStore=void 0;var l,i=r(a(25)),o=r(a(51)),u=r(a(54)),s=r(a(53)),d=r(a(48)),c=a(34),f=(l=class extends s.default{get client(){return d.default.zun.capsules}create(e){var t=this;return(0,o.default)((function*(){return t.client.create(e)}))()}delete(e){var t=this;return(0,o.default)((function*(){var{id:a}=e;return t.client.delete(a)}))()}},(0,u.default)(l.prototype,"create",[c.action],(0,i.default)(l.prototype,"create"),l.prototype),(0,u.default)(l.prototype,"delete",[c.action],(0,i.default)(l.prototype,"delete"),l.prototype),l);t.CapsulesStore=f;var p=new f;t.default=p},1626:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(1627)),o=l(n(4209)),u=l(n(4210)),s=l(n(4211)),d=l(n(4212)),c=l(n(4213)),f=l(n(4214)),p=l(n(4215)),m=l(n(4216)),v=l(n(4217)),g=l(n(4218)),h=l(n(4219)),b=[d.default,c.default,s.default,v.default,p.default],y={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{title:t("Container Status"),actions:[...b,u.default,f.default,h.default]},{action:m.default},{action:g.default}]},batchActions:[o.default],primaryActions:[i.default]},actionConfigsAdmin:{rowActions:{firstAction:o.default,moreActions:[{title:t("Container Status"),actions:b},{action:m.default},{action:g.default}]},batchActions:[o.default],primaryActions:[]}};a.default=y},1627:function(e,a,n){"use strict";var r=n(33),l=n(44),i=n(32),o=n(25),u=n(27),s=n(45),d=n(46),c=n(19),f=n(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(n(27)),m=f(n(427)),v=f(n(65));n(1336);var g=f(n(426)),h=f(n(51)),b=f(n(62)),y=f(n(36)),C=n(406),_=(n(173),n(1193)),x=f(n(1211)),S=f(n(407)),I=f(n(4201)),k=f(n(4202)),M=f(n(4203)),w=f(n(4207)),D=f(n(4208));function A(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(e){for(var t=1;t{var t,a,n,{environmentVariables:r,labels:l,mounts:i,images:o,exitPolicy:u,maxRetry:s,networks:d,ports:c,hints:f,securityGroup:v}=e,g=(0,b.default)(e,["environmentVariables","labels","mounts","images","exitPolicy","maxRetry","networks","ports","hints","securityGroup"]),h={},y={},C=[],_={},x=[],S=[];(r&&(0,p.default)(r).call(r,(e=>{var t,a,n=(0,m.default)(t=e.value.key.toLowerCase()).call(t),r=(0,m.default)(a=e.value.value.toLowerCase()).call(a);h[n]=r})),l&&(0,p.default)(l).call(l,(e=>{var t,a,n=(0,m.default)(t=e.value.key.toLowerCase()).call(t),r=(0,m.default)(a=e.value.value.toLowerCase()).call(a);y[n]=r})),i&&(0,p.default)(i).call(i,(e=>{var{type:t,source:a,size:n,destination:r,isNewVolume:l}=e.value;l?C.push({type:t,size:n,destination:r}):C.push({type:t,source:a,destination:r})})),d)&&(0,p.default)(t=d.selectedRowKeys||[]).call(t,(e=>{x.push({network:e})}));c&&(0,p.default)(a=c.selectedRowKeys||[]).call(a,(e=>{x.push({port:e})}));v&&(0,p.default)(n=v.selectedRows||[]).call(n,(e=>{S.push(e.name)}));f&&(0,p.default)(f).call(f,(e=>{var t,a,n=(0,m.default)(t=e.value.key.toLowerCase()).call(t),r=(0,m.default)(a=e.value.value.toLowerCase()).call(a);_[n]=r}));var I=E({environment:h,labels:y,mounts:C,hints:_,nets:x,security_groups:S},g);return o&&(I.image=(o.selectedRows[0]||{}).name),u&&(I.restart_policy=E({Name:u},s?{MaximumRetryCount:s}:{})),this.store.create(I)}))}init(){this.store=x.default,this.projectStore=S.default,this.getQuota(),this.state.isLoading=!0,this.errorMsg=""}static allowed(){return v.default.resolve(!0)}get name(){return t("Create Container")}get listUrl(){return this.getRoutePath("zunContainers")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Info"),component:I.default},{title:t("Spec"),component:k.default},{title:t("Volumes"),component:M.default},{title:t("Network Config"),component:w.default},{title:t("Miscellaneous"),component:D.default}]}get showQuota(){return!0}get quotaInfo(){if(this.state.isLoading)return[];var{containers:e={},cpu:a={},memory:n={},disk:r={}}=this.projectStore.zunQuota,{left:l=0}=e||{},{data:{cpu:i=0,memory:o=0,disk:u=0}={}}=this.state,s=E(E({},e),{},{add:l?1:0,name:"containers",title:t("Containers")}),{left:d=0}=a,{left:c=0}=n,{left:f=0}=r,p=l&&(-1===d||i<=d)&&(-1===c||o<=c)&&(-1===f||u<=f),m=E(E({},a),{},{add:p?i:0,name:"cpu",title:t("CPU"),type:"line"}),v=E(E({},n),{},{add:p?o:0,name:"memory",title:t("Memory (MiB)"),type:"line"}),g=E(E({},r),{},{add:p?u:0,name:"disk",title:t("Disk (GiB)"),type:"line"});return this.checkQuota(this.state.data,this.projectStore.zunQuota),[s,m,v,g]}getQuota(){var e=this;return(0,h.default)((function*(){yield e.projectStore.fetchProjectZunQuota(),e.setState({isLoading:!1})}))()}getQuotaMessage(e,a,n){return-1===a?"":0===a?t("Quota: Insufficient { name } quota to create resources.",{name:n}):e>a?t("Insufficient {name} quota to create resources(left { quota }, input { input }).",{name:n,quota:a,input:e}):""}checkQuota(e,a){var{containers:n={},cpu:r={},memory:l={},disk:i={}}=a||{},{cpu:o=0,memory:u=0,disk:s=0}=e||{},{left:d=0}=n,c=this.getQuotaMessage(1,d,t("Containers")),{left:f=0}=r,p=this.getQuotaMessage(o,f,t("CPU")),{left:m=0}=l,v=this.getQuotaMessage(u,m,t("Memory")),{left:h=0}=i,b=this.getQuotaMessage(s,h,t("Disk"));if(c||p||v||b){var y=c||p||v||b;this.errorMsg!==y&&g.default.error(y),this.errorMsg=y}else this.errorMsg=""}get disableNext(){return!!this.errorMsg}get disableSubmit(){return!!this.errorMsg}}a.StepCreate=R,(0,y.default)(R,"id","create-container"),(0,y.default)(R,"title",t("Create Container")),(0,y.default)(R,"path","/container/containers/create"),(0,y.default)(R,"policy","container:create"),(0,y.default)(R,"aliasPolicy","zun:container:create");var P=(0,C.inject)("rootStore")((0,C.observer)(R));a.default=P},1628:function(e,a,n){"use strict";n(19)(a,"__esModule",{value:!0}),a.capsuleStatus=void 0;var r={Creating:t("Creating"),Pending:t("Pending"),Running:t("Running"),Succeeded:t("Succeeded"),Failed:t("Failed"),Unknown:t("Unknown")};a.capsuleStatus=r},1629:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(4221)),i=r(a(4222)),o={rowActions:{firstAction:i.default},batchActions:[i.default],primaryActions:[l.default]};t.default=o},1630:function(e,t,a){"use strict";var n=a(33),r=a(44),l=a(32),i=a(25),o=a(27),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.HostsStore=void 0;var f=c(a(36)),p=c(a(53)),m=c(a(48)),v=a(161);function g(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 h(e){for(var t=1;t(0,i.default)(e)?"-":o.default.createElement("div",null,o.default.createElement("pre",null,(0,l.default)(e,null,4)))},1632:function(e,t,a){"use strict";var n=a(33),r=a(44),l=a(32),i=a(25),o=a(27),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ActionsLogStore=void 0;var f=c(a(36)),p=c(a(53)),m=c(a(48));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 g(e){for(var t=1;t{}}get mapper(){return e=>g(g({},e),{},{id:e.request_id})}detailFetchByClient(e){var{id:t,requestId:a}=e;return this.client.show(t,a)}}t.ActionsLogStore=h;var b=new h;t.default=b},4198:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(413)),i=r(a(4199)),o=e=>(0,l.default)(i.default,e);t.default=o},4199:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var l=r(a(1212)),i=r(a(567)),o=r(a(4200)),u=r(a(4220)),s=r(a(4223)),d=r(a(4224)),c=r(a(4229)),f=r(a(4231)),p=r(a(1627)),m=r(a(4233)),v="/container",g=[{path:v,component:l.default,routes:[{path:"".concat(v,"/containers"),component:o.default,exact:!0},{path:"".concat(v,"/containers/create"),component:p.default,exact:!0},{path:"".concat(v,"/containers/detail/:id"),component:d.default,exact:!0},{path:"".concat(v,"/containers-admin"),component:o.default,exact:!0},{path:"".concat(v,"/containers-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(v,"/capsules"),component:u.default,exact:!0},{path:"".concat(v,"/capsules/detail/:id"),component:c.default,exact:!0},{path:"".concat(v,"/hosts-admin"),component:s.default,exact:!0},{path:"".concat(v,"/hosts-admin/detail/:id"),component:f.default,exact:!0},{path:"".concat(v,"/services-admin"),component:m.default,exact:!0},{path:"*",component:i.default}]}];t.default=g},4200:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Containers=void 0;var i=l(n(36)),o=l(n(1194)),u=n(406),s=l(n(1211)),d=n(1215),c=l(n(1626));class f extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",isLink:!0,routeName:this.getRouteName("zunContainerDetail"),idKey:"uuid"},{title:t("Status"),isHideable:!0,dataIndex:"status",valueMap:d.containerStatus},{title:t("Image"),isHideable:!0,dataIndex:"image"},{title:t("Task State"),isHideable:!0,dataIndex:"task_state",valueMap:d.containerTaskStatus}]))}init(){this.store=s.default,this.downloadStore=s.default}get name(){return t("containers")}get policy(){return"container:get_all"}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get rowKey(){return"uuid"}}a.Containers=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4201:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=l(n(32)),o=l(n(51)),u=l(n(36)),s=l(n(1201)),d=n(406),c=l(n(565)),f=n(563);class p extends s.default{constructor(){super(...arguments),(0,u.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})}))}init(){this.getImageList()}get title(){return t("Info")}get name(){return t("Info")}getImageList(){var e=this;return(0,o.default)((function*(){yield c.default.fetchList(),e.updateDefaultValue()}))()}get imageList(){var e,t,{imageTab:a}=this.state;return(0,i.default)(e=(0,i.default)(t=c.default.list.data||[]).call(t,(e=>e.owner===this.currentProjectId))).call(e,(e=>(0,f.getImageOS)(e)===a))}get imageColumns(){return(0,f.getImageColumns)(this)}get systemTabs(){return(0,f.getImageSystemTabs)()}get formItems(){return[{name:"name",label:t("Container Name"),type:"input",placeholder:t("Container Name")},{name:"images",label:t("Image"),type:"select-table",data:this.imageList,required:!0,isLoading:c.default.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,onTabChange:this.onImageTabChange},{name:"image_driver",label:t("Image Driver"),placeholder:t("Image Driver"),type:"select",options:[{label:t("Docker"),value:"docker"},{label:t("Glance"),value:"glance"}],allowClear:!0},{name:"command",label:t("Command"),type:"input",placeholder:t("A command that will be sent to the container")}]}}a.StepInfo=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},4202:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepSpec=void 0;var i=l(n(57)),o=l(n(32)),u=l(n(51)),s=l(n(1201)),d=n(406),c=l(n(1262));class f extends s.default{init(){this.getAvailabilityZones(),this.state.disableRetry=!0}get title(){return t("Spec")}get name(){return t("Spec")}getAvailabilityZones(){return(0,u.default)((function*(){yield c.default.fetchListWithoutDetail()}))()}get availabilityZoneList(){var e,t;return(0,i.default)(e=(0,o.default)(t=c.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get formItems(){var{disableRetry:e}=this.state;return[{name:"hostname",label:t("Hostname"),type:"input",placeholder:t("The host name of this container")},{name:"runtime",label:t("Runtime"),type:"input",placeholder:t("The container runtime tool to create container with")},{name:"cpu",label:t("CPU (Core)"),type:"input-int",tip:t("The number of virtual cpu for this container"),min:1,onChange:e=>this.updateContext({cpu:e})},{name:"memory",label:t("Memory (MiB)"),type:"input-int",tip:t("The container memory size in MiB"),min:4,onChange:e=>this.updateContext({memory:e})},{name:"disk",label:t("Disk (GiB)"),type:"input-int",tip:t("The disk size in GiB for per container"),min:1,onChange:e=>this.updateContext({disk:e})},{name:"availability_zone",label:t("Availability Zone"),type:"select",options:this.availabilityZoneList},{name:"exitPolicy",label:t("Exit Policy"),type:"select",options:[{label:t("No"),value:"no"},{label:t("On failure"),value:"on-failure"},{label:t("Always"),value:"always"},{label:t("Unless Stopped"),value:"unless-stopped"}],onChange:e=>this.setState({disableRetry:"on-failure"!==e})},{name:"maxRetry",label:t("Max Retry"),type:"input-number",tip:t("Retry times for restart on failure policy"),min:1,disabled:e},{name:"auto_heal",label:t("Enable auto heal"),type:"check"}]}}a.StepSpec=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));a.default=p},4203:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepVolumes=void 0;var i=l(n(51)),o=l(n(57)),u=l(n(32)),s=l(n(81)),d=l(n(1201)),c=n(406),f=l(n(4204)),p=n(410);class m extends d.default{init(){this.volumeStore=new p.VolumeStore,this.getVolumes()}get volumes(){var e,t;return(0,o.default)(e=(0,u.default)(t=this.volumeStore.list.data||[]).call(t,(e=>"available"===e.status))).call(e,(e=>{var t;return{value:e.id,label:(0,s.default)(t="".concat(e.name||e.id," (")).call(t,e.id,")")}}))}getVolumes(){var e=this;return(0,i.default)((function*(){yield e.volumeStore.fetchList()}))()}get formItems(){return[{name:"mounts",label:t("Type"),type:"add-select",optionsType:[{label:t("Existing Volume"),value:"bind"},{label:t("New Volume"),value:"volume"}],optionsSource:this.volumes,itemComponent:f.default}]}}a.StepVolumes=m;var v=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=v},4204:function(e,a,n){"use strict";var r=n(33),l=n(44),i=n(32),o=n(25),u=n(27),s=n(45),d=n(46),c=n(19),f=n(21);c(a,"__esModule",{value:!0}),a.default=void 0,n(1216);var p=f(n(1217));n(1198);var m=f(n(1199));n(1196);var v=f(n(1197));n(1205);var g=f(n(1206));n(560);var h=f(n(412)),b=f(n(36)),y=f(n(0)),C=(n(173),f(n(16))),_=f(n(4205)),x=f(n(1381));function S(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 I(e){for(var t=1;t{var{onChange:t}=this.props;t&&t(e)})),(0,b.default)(this,"onTypeChange",(e=>{this.setState({isNewVolume:"volume"===e},(()=>{this.onChange(I(I({},this.state),{},{type:e}))}))})),(0,b.default)(this,"onSourceChange",(e=>{this.onChange(I(I({},this.state),{},{source:e}))})),(0,b.default)(this,"onVolumeSizeChange",(e=>{this.onChange(I(I({},this.state),{},{size:e}))})),(0,b.default)(this,"onDestinationChange",(e=>{this.onChange(I(I({},this.state),{},{destination:e.target.value}))})),this.state={type:"",source:"",destination:"",size:0,isNewVolume:!1}}static getDerivedStateFromProps(e,t){var{type:a,source:n,size:r,destination:l}=e.value||{};return a!==t.type||n!==t.source||r!==t.size||l!==t.destination?{type:a,source:n,size:r,destination:l,isNewVolume:"volume"===a}:null}render(){var{type:e,source:a,destination:n,size:r,isNewVolume:l}=this.state,i=y.default.createElement(h.default,{value:e,options:this.props.optionsType,onChange:this.onTypeChange,className:_.default.select,placeholder:t("Please select type"),required:!0}),o=y.default.createElement(h.default,{value:a,options:this.props.optionsSource,onChange:this.onSourceChange,className:_.default.select,placeholder:t("Please select source")}),u=y.default.createElement(x.default,{value:r,onChange:this.onVolumeSizeChange,style:{maxWidth:"40%"}}),s=y.default.createElement(g.default,{value:n,onChange:this.onDestinationChange,style:{maxWidth:"60%"},placeholder:t("Specify mount point."),required:!0});return y.default.createElement(p.default.Item,{className:_.default["zun-volume"]},y.default.createElement(m.default,{gutter:24},y.default.createElement(v.default,{span:8},y.default.createElement("span",{className:_.default.label},t("Type")),i),y.default.createElement(v.default,{span:8,hidden:l},y.default.createElement("span",{className:_.default.label},t("Source")),o),y.default.createElement(v.default,{span:8,hidden:!l},y.default.createElement("span",{className:_.default.label},t("Size (GiB)")),u),y.default.createElement(v.default,{span:8},y.default.createElement("span",{className:_.default.label},t("Destination")),s)))}}a.default=k,(0,b.default)(k,"propTypes",{onChange:C.default.func,value:C.default.any})},4205:function(e,t,a){var n=a(4206);"string"==typeof n&&(n=[[e.i,n,""]]);var r={hmr:!0,transform:undefined,insertInto:void 0};a(75)(n,r);n.locals&&(e.exports=n.locals)},4206:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__zun-volume--2qwhn {\n display: block;\n margin-bottom: 8px;\n}\n.index__label--1pY7p {\n margin-right: 10px;\n max-width: 20%;\n}\n.index__select--3-lS2 {\n max-width: 80%;\n}\n",""]),t.locals={"zun-volume":"index__zun-volume--2qwhn",label:"index__label--1pY7p",select:"index__select--3-lS2"}},4207:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepNetworks=void 0;var i=l(n(0)),o=n(416),u=n(561),s=l(n(1201)),d=n(406),c=n(1210),f=n(1274),p=n(558);class m extends s.default{init(){this.portStore=new u.PortStore,this.securityGroupStore=new o.SecurityGroupStore}get title(){return t("Networks")}get name(){return t("Networks")}get nameForStateUpdate(){return["networks"]}get defaultValue(){return{networks:[]}}get formItems(){var{networks:e}=this.state;return[{name:"networks",label:t("Networks"),type:"network-select-table",isMulti:!0,onChange:e=>{var{selectedRowKeys:t=[]}=e;this.setState({networks:t})}},{name:"ports",type:"select-table",label:t("Ports"),extraParams:{project_id:this.currentProjectId,status:"DOWN"},backendPageStore:this.portStore,isMulti:!0,header:t("Ports provide extra communication channels to your instances. You can select ports instead of networks or a mix of both (The port executes its own security group rules by default)."),filterParams:c.portFilters,columns:c.portColumns},{name:"securityGroup",label:t("Security Group"),type:"select-table",backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,hidden:!e||!e.length,header:i.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,p.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")})),filterParams:f.securityGroupFilter,columns:f.securityGroupColumns}]}}a.StepNetworks=m;var v=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=v},4208:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.StepMiscellaneous=void 0;var i=l(n(1201)),o=n(406),u=l(n(1214));class s extends i.default{get title(){return t("Miscellaneous")}get name(){return t("Miscellaneous")}get formItems(){return[{name:"workdir",label:t("Working Directory"),type:"input",placeholder:t("The working directory for commands to run in")},{name:"environmentVariables",label:t("Environment Variables"),type:"add-select",itemComponent:u.default,addText:t("Add Environment Variable")},{name:"interactive",label:t("Enable interactive mode"),type:"check"},{type:"divider"},{name:"labels",label:t("Labels"),type:"add-select",itemComponent:u.default,addText:t("Add Label")},{type:"divider"},{name:"hints",label:t("Scheduler Hints"),type:"add-select",itemComponent:u.default,addText:t("Add scheduler hints")}]}}a.StepMiscellaneous=s;var d=(0,o.inject)("rootStore")((0,o.observer)(s));a.default=d},4209:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:delete"),(0,i.default)(this,"aliasPolicy","zun:container:delete"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"delete"))),(0,i.default)(this,"onSubmit",(e=>u.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Container")}get actionName(){return t("Delete Container")}get isDanger(){return!0}get buttonText(){return t("Delete")}}a.default=d},4210:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:pause"),(0,i.default)(this,"aliasPolicy","zun:container:pause"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"pause"))),(0,i.default)(this,"onSubmit",(e=>u.default.pause({id:e.uuid})))}get id(){return"pause"}get title(){return t("Pause Container")}get actionName(){return t("Pause Container")}get buttonText(){return t("Pause")}}a.default=d},4211:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:reboot"),(0,i.default)(this,"aliasPolicy","zun:container:reboot"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"reboot"))),(0,i.default)(this,"onSubmit",(e=>u.default.reboot({id:e.uuid})))}get id(){return"reboot"}get title(){return t("Reboot Container")}get actionName(){return t("Reboot Container")}get buttonText(){return t("Reboot")}get isAsyncAction(){return!0}}a.default=d},4212:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:start"),(0,i.default)(this,"aliasPolicy","zun:container:start"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"start"))),(0,i.default)(this,"onSubmit",(e=>u.default.start({id:e.uuid})))}get id(){return"start"}get title(){return t("Start Container")}get actionName(){return t("Start Container")}get buttonText(){return t("Start")}get isAsyncAction(){return!0}}a.default=d},4213:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:stop"),(0,i.default)(this,"aliasPolicy","zun:container:stop"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"stop"))),(0,i.default)(this,"onSubmit",(e=>u.default.stop({id:e.uuid})))}get id(){return"start"}get title(){return t("Stop Container")}get actionName(){return t("Stop Container")}get buttonText(){return t("Stop")}get isAsyncAction(){return!0}}a.default=d},4214:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:unpause"),(0,i.default)(this,"aliasPolicy","zun:container:unpause"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"unpause"))),(0,i.default)(this,"onSubmit",(e=>u.default.unpause({id:e.uuid})))}get id(){return"Unpause"}get title(){return t("Unpause Container")}get actionName(){return t("Unpause Container")}get buttonText(){return t("Unpause")}}a.default=d},4215:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.RebuildContainer=void 0;var i=l(n(62)),o=l(n(36)),u=n(406),s=n(1193),d=l(n(1211)),c=n(1215);class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"aliasPolicy","zun:container:rebuild"),(0,o.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item,{name:a}=e,n=(0,i.default)(e,["name"]);return d.default.rebuild(t,n)}))}get name(){return t("Rebuild Container")}get isAsyncAction(){return!0}get defaultValue(){var{name:e,image:t,image_driver:a}=this.item;return{name:e,image:t,image_driver:a}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"image",label:t("Image"),type:"input",placeholder:t("Name or ID og the container image"),required:!0},{name:"image_driver",label:t("Image Driver"),placeholder:t("Image Driver"),type:"select",options:[{label:t("Docker"),value:"docker"},{label:t("Glance"),value:"glance"}],allowClear:!0}]}}a.RebuildContainer=f,(0,o.default)(f,"id","rebuild"),(0,o.default)(f,"title",t("Rebuild Container")),(0,o.default)(f,"buttonText",t("Rebuild")),(0,o.default)(f,"policy","container:rebuild"),(0,o.default)(f,"allowed",(e=>(0,c.checkItemAction)(e,"rebuild")));var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4216:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.EditContainer=void 0;var i=l(n(36)),o=n(406),u=n(1193),s=l(n(1211)),d=n(1215);class c extends u.ModalAction{constructor(){super(...arguments),(0,i.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item;return s.default.patch({id:t},e)}))}get name(){return t("Edit Container")}get defaultValue(){var{name:e,memory:t,cpu:a}=this.item;return{name:e,cpu:a,memory:t}}get formItems(){return[{name:"name",label:t("Container Name"),type:"input",placeholder:t("Container Name"),required:!0},{name:"cpu",label:t("CPU (Core)"),type:"input-int",tip:t("The number of virtual cpu for this container"),min:1},{name:"memory",label:t("Memory (MiB)"),type:"input-int",tip:t("The container memory size in MiB"),min:4}]}}a.EditContainer=c,(0,i.default)(c,"id","edit"),(0,i.default)(c,"title",t("Edit Container")),(0,i.default)(c,"buttonText",t("Edit")),(0,i.default)(c,"policy","container:update"),(0,i.default)(c,"aliasPolicy","zun:container:update"),(0,i.default)(c,"allowed",(e=>(0,d.checkItemAction)(e,"update")));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4217:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.KillContainer=void 0;var i=l(n(36)),o=n(406),u=n(1193),s=l(n(1211)),d=n(1215);class c extends u.ModalAction{constructor(){super(...arguments),(0,i.default)(this,"onSubmit",(e=>{var{uuid:t}=this.item,{signal:a}=e;return s.default.kill(t,{signal:a})}))}get name(){return t("Kill Container")}get defaultValue(){var{name:e}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"signal",label:t("Kill Signal"),type:"input",placeholder:t("The kill signal to send"),tip:t('Signal to send to the container: integer or string like SIGINT. When not set, SIGKILL is set as default value and the container will exit. The supported signals varies between platform. Besides, you can omit "SIG" prefix.')}]}}a.KillContainer=c,(0,i.default)(c,"id","kill"),(0,i.default)(c,"title",t("Kill Container")),(0,i.default)(c,"buttonText",t("Kill")),(0,i.default)(c,"policy","container:kill"),(0,i.default)(c,"aliasPolicy","zun:container:kill"),(0,i.default)(c,"allowed",(e=>(0,d.checkItemAction)(e,"kill")));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4218:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1211)),s=n(1215);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","container:delete_force"),(0,i.default)(this,"aliasPolicy","zun:container:delete_force"),(0,i.default)(this,"allowedCheckFunc",(e=>(0,s.checkItemAction)(e,"delete_force"))),(0,i.default)(this,"onSubmit",(e=>u.default.forceDelete({id:e.uuid})))}get id(){return"force-delete"}get title(){return t("Force Delete Container")}get actionName(){return t("Force Delete Container")}get buttonText(){return t("Force Delete")}get isDanger(){return!0}}a.default=d},4219:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.ExecuteCommandContainer=void 0;var i=l(n(81)),o=l(n(65));n(1270);var u=l(n(1271)),s=l(n(51)),d=l(n(36)),c=l(n(0)),f=(n(173),n(406)),p=n(1193),m=l(n(1211)),v=n(1215),g=l(n(1228));class h extends p.ModalAction{constructor(){var e;super(...arguments),e=this,(0,d.default)(this,"onSubmit",function(){var a=(0,s.default)((function*(a){var{uuid:n,name:r}=e.item,{command:l}=a,{Title:s,Paragraph:d}=u.default;try{var f,p=yield m.default.execute(n,{command:l});return g.default.warn(t("Command was successfully executed at container {name}.",{name:r}),c.default.createElement(c.default.Fragment,null,c.default.createElement(s,{level:5},(0,i.default)(f="".concat(t("Command"),": ")).call(f,l)),c.default.createElement(s,{level:5},"".concat(t("Outputs"),":")),c.default.createElement(d,null,p.output?c.default.createElement("pre",null,p.output):t("No Outputs")))),o.default.resolve()}catch(e){return g.default.errorWithDetail(e),o.default.reject(e)}}));return function(e){return a.apply(this,arguments)}}())}get name(){return t("Execute Command")}get showNotice(){return!1}get defaultValue(){var{name:e}=this.item;return{name:e}}get formItems(){return[{name:"name",label:t("Container Name"),type:"label"},{name:"command",label:t("Command"),type:"input",placeholder:t("The command to execute")}]}}a.ExecuteCommandContainer=h,(0,d.default)(h,"id","execute-command"),(0,d.default)(h,"title",t("Execute Command")),(0,d.default)(h,"buttonText",t("Execute Command")),(0,d.default)(h,"policy","container:execute"),(0,d.default)(h,"aliasPolicy","zun:container:execute"),(0,d.default)(h,"allowed",(e=>(0,v.checkItemAction)(e,"execute")));var b=(0,f.inject)("rootStore")((0,f.observer)(h));a.default=b},4220:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Capsules=void 0;var i=l(n(36)),o=l(n(1194)),u=n(406),s=l(n(1365)),d=n(1628),c=l(n(1629));class f extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"meta_name",isLink:!0,routeName:this.getRouteName("zunCapsuleDetail"),idKey:"uuid"},{title:t("Status"),isHideable:!0,dataIndex:"status",valueMap:d.capsuleStatus},{title:t("CPU"),isHideable:!0,dataIndex:"cpu"},{title:t("Memory"),isHideable:!0,dataIndex:"memory"}]))}init(){this.store=s.default,this.downloadStore=s.default}get name(){return t("capsules")}get policy(){return"capsule:get_all"}get actionConfigs(){return c.default}}a.Capsules=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4221:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var i=l(n(65)),o=l(n(36)),u=n(406),s=n(1193),d=n(1245),c=l(n(1365));class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var t=(0,d.getYaml)(e.template_file);return this.store.create({template:t})}))}init(){this.store=c.default}static get modalSize(){return"middle"}get name(){return t("Create Capsule")}get formItems(){return[{name:"template_file",label:t("Load Template from a file"),type:"textarea-from-file",rows:6,required:!0,accept:".yaml",validator:(e,a)=>a?i.default.resolve():i.default.reject(t("Please input or load Template from a file"))}]}}a.Create=f,(0,o.default)(f,"id","create-capsules"),(0,o.default)(f,"title",t("Create Capsule")),(0,o.default)(f,"allowed",(()=>i.default.resolve(!0))),(0,o.default)(f,"buttonText",t("Create Capsule")),(0,o.default)(f,"policy","capsule:create");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4222:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=l(n(36)),o=n(1193),u=l(n(1365));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","capsule:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>u.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Capsule")}get actionName(){return t("Delete Capsule")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=s},4223:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Hosts=void 0;var i=l(n(81)),o=l(n(36)),u=l(n(0)),s=l(n(1194)),d=n(406),c=l(n(1630)),f=l(n(1398));class p extends s.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:"zuHostsDetailAdmin"},{title:t("Architecture"),dataIndex:"architecture",isHideable:!0},{title:t("Total Containers"),dataIndex:"total_containers",isHideable:!0},{title:t("CPU (Core)"),dataIndex:"cpu_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.cpu_used," / ")).call(a,t.cpus)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.cpu_used," / ")).call(r,t("Total"),": ")).call(n,a.cpus,")")}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.mem_used_gb," / ")).call(a,t.mem_total_gb)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.mem_used_gb," / ")).call(r,t("Total"),": ")).call(n,a.mem_total_gb,")")}},{title:t("Configured Disk (GiB)"),dataIndex:"disk_percent",render:(e,t)=>{var a;return u.default.createElement(f.default,{value:e,label:(0,i.default)(a="".concat(t.disk_used," / ")).call(a,t.disk_total)})},width:180,stringify:(e,a)=>{var n,r,l,o;return(0,i.default)(n=(0,i.default)(r=(0,i.default)(l=(0,i.default)(o="".concat(e,"% (")).call(o,t("Used"),": ")).call(l,a.disk_used," / ")).call(r,t("Total"),": ")).call(n,a.disk_total,")")}}]))}init(){this.store=c.default,this.downloadStore=c.default}get name(){return t("hosts")}get policy(){return"host:get_all"}}a.Hosts=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},4224:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.ContainerDetail=void 0;var i=n(406),o=l(n(1200)),u=l(n(1211)),s=n(1215),d=n(1203),c=l(n(1626)),f=l(n(4225)),p=l(n(4226)),m=l(n(4228));class v extends o.default{init(){this.store=u.default}get name(){return t("Container Detail")}get listUrl(){return this.getRoutePath("zunContainers")}get policy(){return"container:get_one"}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:s.containerStatus}]}get showLogs(){return(0,d.checkPolicyRule)("container:logs")}get tabs(){var e=[{title:t("Detail"),key:"general_info",component:f.default},{title:t("Action Logs"),key:"action_logs",component:p.default}];return this.showLogs&&e.push({title:t("Logs"),key:"logs",component:m.default}),e}}a.ContainerDetail=v;var g=(0,i.inject)("rootStore")((0,i.observer)(v));a.default=g},4225:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=l(n(57)),o=l(n(199)),u=l(n(1202)),s=l(n(0)),d=n(406),c=n(1215),f=n(1631);class p extends u.default{get leftCards(){var e=[this.baseInfoCard,this.miscellaneousCard],{stats:t}=this.detailData;return(0,o.default)(t)||e.push(this.statsCard),e}get rightCards(){return[this.specCard]}get baseInfoCard(){var e=[{label:t("Status Detail"),dataIndex:"status_detail",valueMap:c.containerStatus},{label:t("Status Reason"),dataIndex:"status_reason"},{label:t("Task State"),dataIndex:"task_state"},{label:t("Command"),dataIndex:"command",render:f.stringifyContent}];return{title:t("Base Info"),options:e}}get miscellaneousCard(){var e=[{label:t("Host"),dataIndex:"host"},{label:t("Workdir"),dataIndex:"workdir"},{label:t("Environment"),dataIndex:"environment",render:f.stringifyContent},{label:t("Interactive"),dataIndex:"interactive",valueRender:"yesNo"}];return{title:t("Miscellaneous"),options:e}}get specCard(){var e=this,a=[{label:t("Image"),dataIndex:"image"},{label:t("Image Driver"),dataIndex:"image_driver"},{label:t("Image Pull Policy"),dataIndex:"image_pull_policy"},{label:t("Hostname"),dataIndex:"hostname"},{label:t("Runtime"),dataIndex:"runtime"},{label:t("CPU (Core)"),dataIndex:"cpu"},{label:t("Memory (MiB)"),dataIndex:"memory"},{label:t("Disk (GiB)"),dataIndex:"disk"},{label:t("Restart Policy"),dataIndex:"restart_policy",render:f.stringifyContent},{label:t("Auto Remove"),dataIndex:"auto_remove"},{label:t("Auto Heal"),dataIndex:"auto_heal"},{label:t("Addresses"),dataIndex:"addresses",render:f.stringifyContent},{label:t("Networks"),dataIndex:"networks",render:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return s.default.createElement(s.default.Fragment,null,t.length?(0,i.default)(t).call(t,(t=>{var a=e.getLinkRender("networkDetail",t,{id:t});return s.default.createElement("div",{key:t},a)})):"-")}},{label:t("Ports"),dataIndex:"ports",render:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return s.default.createElement(s.default.Fragment,null,t.length?(0,i.default)(t).call(t,(t=>{var a=e.getLinkRender("portDetail",t,{id:t});return s.default.createElement("div",{key:t},a)})):"-")}},{label:t("Security Groups"),dataIndex:"security_groups",render:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return s.default.createElement(s.default.Fragment,null,t.length?(0,i.default)(t).call(t,(t=>{var a=e.getLinkRender("securityGroupDetail",t,{id:t});return s.default.createElement("div",{key:t},a)})):"-")}}];return{title:t("Spec"),labelCol:4,options:a}}get statsCard(){var e=[{label:t("BLOCK I/O(B)"),dataIndex:"stats[BLOCK I/O(B)]"},{label:t("NET I/O(B)"),dataIndex:"stats[NET I/O(B)]"},{label:t("CPU %"),dataIndex:"stats[CPU %]",render:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return e.toFixed(4)}},{label:t("MEM LIMIT (MiB)"),dataIndex:"stats[MEM LIMIT(MiB)]"},{label:t("MEM USAGE (MiB)"),dataIndex:"stats[MEM USAGE(MiB)]",render:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return e.toFixed(4)}},{label:t("MEM %"),dataIndex:"stats[MEM %]",render:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return e.toFixed(4)}}];return{title:t("Stats Information"),options:e}}}a.BaseDetail=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},4226:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.ActionLogs=void 0;var i=l(n(36)),o=l(n(1194)),u=n(406),s=n(1632),d=n(4227);class c extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>(0,d.actionColumn)(this)))}init(){this.store=new s.ActionsLogStore}get name(){return t("Action Logs")}get policy(){return"container:actions"}}a.ActionLogs=c;var f=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=f},4227:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.actionColumn=a.actionMap=a.actionEvent=void 0;var i=l(n(0)),o=n(1632),u=l(n(1534)),s={compute__do_container_start:t("Start Container"),compute__do_container_create:t("Create Container"),compute__do_container_stop:t("Stop Container"),compute__do_container_reboot:t("Reboot Container"),compute__do_container_restart:t("Restart Container"),compute__do_container_pause:t("Pause Container"),compute__do_container_unpause:t("Unpause Container"),compute__do_container_rebuild:t("Rebuild Container"),compute__do_container_kill:t("Kill Container"),compute__do_container_delete:t("Delete Container")};a.actionEvent=s;var d={create:t("Create"),stop:t("Stop"),reboot:t("Reboot"),start:t("Start"),restart:t("Restart"),pause:t("Pause"),unpause:t("Unpause"),resize:t("Resize"),rebuild:t("Rebuild"),kill:t("Kill"),delete:t("Delete")};a.actionMap=d;a.actionColumn=e=>[{title:t("Operation Name"),dataIndex:"action",valueMap:d},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!e.isAdminPage},{title:t("Operation Time"),dataIndex:"start_time",valueRender:"toLocalTimeMoment"},{title:t("Request ID"),dataIndex:"request_id",isHideable:!0,render:(e,t)=>i.default.createElement(i.default.Fragment,null,i.default.createElement("span",null,e),i.default.createElement(u.default,{id:t.container_uuid,requestId:e,store:new o.ActionsLogStore,actionEvent:s}))},{title:t("User ID"),dataIndex:"user_id",isHideable:!0,hidden:!e.isAdminPage,render:t=>e.getLinkRender("userDetail",t,{id:t},null)}]},4228:function(e,a,n){"use strict";var r=n(160),l=n(19),i=n(25),o=n(21);l(a,"__esModule",{value:!0}),a.default=function(e){var[a,n]=(0,s.useState)(""),[r,l]=(0,s.useState)(!0);return(0,s.useEffect)((()=>{(function(){var t=(0,u.default)((function*(){l(!0);var t=yield d.default.fetchLogs(e.detail.uuid);n(t),l(!1)}));return function(){return t.apply(this,arguments)}})()()}),[]),s.default.createElement("div",{style:{margin:"0 16px 16px",padding:16,backgroundColor:"#90a4ae",borderRadius:4,color:"#fff",fontSize:14}},a||r?s.default.createElement("pre",null,a):t("No Logs..."))};var u=o(n(51)),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=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 u=r?i(e,o):null;u&&(u.get||u.set)?l(n,o,u):n[o]=e[o]}n.default=e,a&&a.set(e,n);return n}(n(0)),d=o(n(1211));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)}},4229:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.CapsulesDetail=void 0;var i=n(406),o=l(n(1200)),u=l(n(1365)),s=n(1628),d=l(n(4230)),c=l(n(1629));class f extends o.default{init(){this.store=u.default}get name(){return t("Cluster Template Detail")}get listUrl(){return this.getRoutePath("zunCapsules")}get policy(){return"capsule:get_one_all_projects"}get actionConfigs(){return c.default}get detailInfos(){return[{title:t("Name"),dataIndex:"meta_name"},{title:t("Status"),dataIndex:"status",valueMap:s.capsuleStatus},{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:"general_info",component:d.default}]}}a.CapsulesDetail=f;var p=(0,i.inject)("rootStore")((0,i.observer)(f));a.default=p},4230:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0,n(1198);var i=l(n(1199));n(1196);var o=l(n(1197)),u=l(n(57)),s=l(n(1202)),d=l(n(0)),c=n(406),f=(n(173),n(1631));class p extends s.default{get leftCards(){var{containers:e=[]}=this.detailData,t=[this.baseInfoCard];return e.length&&t.push(this.containersCard),t}get rightCards(){return[this.specCard]}get baseInfoCard(){var e=[{label:t("Status Reason"),dataIndex:"status_reason"},{label:t("Project ID"),dataIndex:"project_id"},{label:t("User ID"),dataIndex:"user_id"}];return{title:t("Capsule Type"),options:e}}get containersCard(){var e=[{label:t("Containers"),dataIndex:"containers",render:e=>(0,u.default)(e).call(e,(e=>d.default.createElement(i.default,{key:e.uuid},d.default.createElement(o.default,{style:{marginRight:8}},t("ID/Name"),":"),d.default.createElement(o.default,null,d.default.createElement("p",null,e.name),d.default.createElement("p",null,e.uuid)))))}];return{title:t("Containers Info"),options:e,labelCol:0,contentCol:24}}get specCard(){var e=[{label:t("CPU"),dataIndex:"cpu"},{label:t("Memory (MiB)"),dataIndex:"memory"},{label:t("Restart Policy"),dataIndex:"restart_policy"},{label:t("Addresses"),dataIndex:"addresses",render:f.stringifyContent}];return{title:t("Spec"),options:e}}}a.BaseDetail=p;var m=(0,c.inject)("rootStore")((0,c.observer)(p));a.default=m},4231:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.HostsDetail=void 0;var i=l(n(81)),o=n(406),u=l(n(1200)),s=l(n(1630)),d=l(n(4232));class c extends u.default{init(){this.store=s.default}get name(){return t("Hosts Detail")}get listUrl(){return this.getRoutePath("zunHosts")}get policy(){return"host:get"}get detailInfos(){return[{title:t("Hostname"),dataIndex:"name"},{title:t("CPU (Core)"),dataIndex:"cpu_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.cpu_used," / ")).call(a,t.cpus)}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.mem_used_gb," / ")).call(a,t.mem_total_gb)}},{title:t("Configured Disk (GiB)"),dataIndex:"disk_percent",render:(e,t)=>{var a;return(0,i.default)(a="".concat(t.disk_used," / ")).call(a,t.disk_total)}}]}get tabs(){return[{title:t("Detail"),key:"detail",component:d.default}]}}a.HostsDetail=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4232:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=l(n(1202)),o=n(406);class u extends i.default{get leftCards(){return[this.containersInfoCard,this.systemInfoCard]}get containersInfoCard(){var e=[{label:t("Total Containers"),dataIndex:"total_containers"}];return{title:t("Containers Info"),options:e}}get systemInfoCard(){var e=[{label:t("Architecture"),dataIndex:"architecture"},{label:t("Kernel Version"),dataIndex:"kernel_version"},{label:t("OS"),dataIndex:"os"},{label:t("OS Type"),dataIndex:"os_type"}];return{title:t("System Info"),options:e}}}a.BaseDetail=u;var s=(0,o.inject)("rootStore")((0,o.observer)(u));a.default=s},4233:function(e,a,n){"use strict";var r=n(19),l=n(21);r(a,"__esModule",{value:!0}),a.default=a.Services=void 0;var i=l(n(36)),o=l(n(1194)),u=n(406),s=l(n(4234)),d=n(1254);class c extends o.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Hosts"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"availability_zone",isHideable:!0},{title:t("Report Count"),dataIndex:"report_count",isHideable:!0},{title:t("Forced Down"),dataIndex:"forced_down",valueRender:"yesNo",isHideable:!0},{title:t("Forbidden"),dataIndex:"disabled",valueRender:"yesNo",isHideable:!0},{title:t("Service State"),dataIndex:"state",valueMap:d.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=s.default,this.downloadStore=s.default}get name(){return t("services")}get policy(){return"zun-service:get_all"}}a.Services=c;var f=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=f},4234:function(e,t,a){"use strict";var n=a(19),r=a(21);n(t,"__esModule",{value:!0}),t.default=t.ServicesStore=void 0;var l=r(a(53)),i=r(a(48));class o extends l.default{get client(){return i.default.zun.services}}t.ServicesStore=o;var u=new o;t.default=u}}]); \ No newline at end of file diff --git a/skyline_console/static/Container.bundle.1663167892.js.gz b/skyline_console/static/Container.bundle.1663167892.js.gz new file mode 100644 index 00000000..fd9ac9ec Binary files /dev/null and b/skyline_console/static/Container.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/asset/image/cloud.1658297502.png b/skyline_console/static/asset/image/cloud.1663167892.png similarity index 100% rename from skyline_console/static/asset/image/cloud.1658297502.png rename to skyline_console/static/asset/image/cloud.1663167892.png diff --git a/skyline_console/static/asset/image/empty-card.1658297502.svg b/skyline_console/static/asset/image/empty-card.1663167892.svg similarity index 100% rename from skyline_console/static/asset/image/empty-card.1658297502.svg rename to skyline_console/static/asset/image/empty-card.1663167892.svg diff --git a/skyline_console/static/asset/image/load-balancer.1658297502.png b/skyline_console/static/asset/image/load-balancer.1663167892.png similarity index 100% rename from skyline_console/static/asset/image/load-balancer.1658297502.png rename to skyline_console/static/asset/image/load-balancer.1663167892.png diff --git a/skyline_console/static/asset/image/login-full.1658297502.png b/skyline_console/static/asset/image/login-full.1663167892.png similarity index 100% rename from skyline_console/static/asset/image/login-full.1658297502.png rename to skyline_console/static/asset/image/login-full.1663167892.png diff --git a/skyline_console/static/asset/image/logo-extend.svg b/skyline_console/static/asset/image/logo-extend.svg index a94f7312..c6f6e49c 100644 --- a/skyline_console/static/asset/image/logo-extend.svg +++ b/skyline_console/static/asset/image/logo-extend.svg @@ -1,4 +1,4 @@ - + - 编组 diff --git a/skyline_console/static/asset/image/logo-small.svg b/skyline_console/static/asset/image/logo-small.svg index c555b8f6..763663ef 100644 --- a/skyline_console/static/asset/image/logo-small.svg +++ b/skyline_console/static/asset/image/logo-small.svg @@ -1,15 +1,15 @@ - logo-浅色 - - - + logo + + +

/.exec(e);if(t)return t[1]}try{return JSON.parse(e)}catch(t){return e}},x=(e,t)=>{var a;return(0,v.isString)(e)?S(e):((0,d.default)(a=(0,c.default)(e)).call(a,(t=>{(0,v.isString)(e[t])&&(e[t]=S(e[t]))})),"json"===t?(0,f.default)(e,null,2):"yaml"===t?(0,g.getValue)(e):e)};class w extends p.PureComponent{constructor(e){super(e),(0,o.default)(this,"handleChange",(e=>{var{onChange:t}=this.props;t(e)})),this.state={value:x(e.value,e.mode),originValue:e.value}}static getDerivedStateFromProps(e,t){var{value:a,mode:r}=e;return a!==t.originValue?{value:x(a,r),originValue:a}:null}render(){var{className:e,mode:t,options:a}=this.props;return p.default.createElement(b.default,(0,s.default)({},a,{className:(0,m.default)(y.default.editor,e),value:this.state.value,mode:t,onChange:this.handleChange}))}}(0,o.default)(w,"propTypes",{value:h.default.oneOfType([h.default.string,h.default.object]),mode:h.default.string,options:h.default.object,onChange:h.default.func}),(0,o.default)(w,"defaultProps",{value:{},mode:"yaml",options:{},onChange(){}});var I=w;t.default=I},1253:function(e,t,a){"use strict";var r=a(156),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var s=l(a(62)),o=l(a(385)),u=l(a(52)),d=l(a(37)),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=v(t);if(a&&a.has(e))return a.get(e);var r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),f=l(a(16)),p=a(135),h=a(47),m=l(a(1291)),g=a(1290);function v(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(v=function(e){return e?a:t})(e)}class y extends c.Component{static propTypes(){return{visibleButtonNumber:f.default.number,primaryActions:f.default.array,onFinishAction:f.default.func,onCancelAction:f.default.func,routing:f.default.object.isRequired,containerProps:f.default.object,onClickAction:f.default.func,primaryActionsExtra:f.default.any}}constructor(e){super(e),(0,d.default)(this,"onClickAction",(()=>{var{onClickAction:e}=this.props;e&&e()})),this.state={primaryAllowedResults:[]},this.actionList=this.getActionList(e)}componentDidMount(){this.getActionsAllowed()}componentDidUpdate(e){(0,h.isEqual)(e,this.props)||this.getActionsAllowed()}getActionsAllowed(){var e=this;return(0,u.default)((function*(){var{containerProps:t,primaryActionsExtra:a,isAdminPage:r}=e.props,{detail:n=null}=t,i=yield(0,g.getAllowedResults)({actions:e.actionList,data:n,containerProps:t,key:null,extra:a,isAdminPage:r});e.setState({primaryAllowedResults:i})}))()}getActionList(e){var{primaryActions:t,containerProps:a}=e;return(0,s.default)(t).call(t,(e=>(0,g.getAction)(e,null,a)))}render(){var e,{primaryAllowedResults:t}=this.state,{onFinishAction:a,routing:r,containerProps:n,onCancelAction:i,onClickAction:l}=this.props,u=(0,s.default)(e=this.actionList).call(e,((e,s)=>{var u="primary-".concat((0,p.generateId)()),{id:d,title:f,buttonType:h,actionType:g,buttonText:v,isDanger:y}=e,b={id:d,title:f,name:v||f,buttonType:h,isDanger:y,actionType:g,action:e};return c.default.createElement(m.default,(0,o.default)({},b,{key:u,isAllowed:t[s],onFinishAction:a,routing:r,containerProps:n,onClickAction:l,onCancelAction:i}))}));return c.default.createElement(c.default.Fragment,null,u)}}t.default=y,(0,d.default)(y,"defaultProps",{visibleButtonNumber:3,primaryActions:[],onFinishAction:null,onCancelAction:null,containerProps:{},primaryActionsExtra:null})},1255:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.hypervisorFilters=a.hypervisorColumns=void 0;var l=i(r(82));r(387);var s=i(r(220)),o=i(r(0)),u=i(r(1314)),d=(r(167),[{title:t("Hostname"),dataIndex:"service_host"},{title:t("Type"),dataIndex:"hypervisor_type"},{title:t("VCPU (Core)"),dataIndex:"vcpus_used_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?o.default.createElement(s.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},o.default.createElement("span",null,"-")):o.default.createElement(u.default,{value:e,label:(0,l.default)(r="".concat(a.vcpus_used," / ")).call(r,a.vcpus)})},width:180,stringify:(e,a)=>{var r,n,i,s;return(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.vcpus_used," / ")).call(n,t("Total"),": ")).call(r,a.vcpus,")")}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_mb_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?o.default.createElement(s.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},o.default.createElement("span",null,"-")):o.default.createElement(u.default,{value:e,label:(0,l.default)(r="".concat(a.memory_mb_used_gb," / ")).call(r,a.memory_mb_gb)})},width:180,stringify:(e,a)=>{var r,n,i,s;return(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.memory_mb_used_gb," / ")).call(n,t("Total"),": ")).call(r,a.memory_mb_gb,")")}},{title:t("Instances"),dataIndex:"running_vms"}]);a.hypervisorColumns=d;var c=[{label:t("Hostname"),name:"service_host"},{label:t("Type"),name:"hypervisor_type"}];a.hypervisorFilters=c},1256:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.InstanceSnapshotStore=void 0;var f=c(a(33)),p=c(a(65)),h=c(a(28)),m=c(a(101)),g=c(a(52)),v=c(a(71)),y=c(a(37)),b=c(a(49)),_=a(520),S=c(a(54));function x(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function w(e){for(var t=1;t{t&&a&&(e.sort_key=t,e.sort_dir="descend"===a?"desc":"asc")})),(0,y.default)(this,"updateParamsSort",this.updateParamsSortPage)}get client(){return b.default.glance.images}get listFilterByProject(){return!0}get fetchListByLimit(){return!0}get paramsFunc(){return this.paramsFuncPage}get paramsFuncPage(){return(e,t)=>{var{id:a,current:r,owner:n}=e,i=w({},(0,v.default)(e,["id","current","owner"]));return n?i.owner=n:t||(i.owner=this.currentProjectId),i}}get mapperBeforeFetchProject(){return e=>w(w({},e),{},{project_name:e.owner_project_name||e.project_name,project_id:e.owner||e.project_id})}listDidFetch(e,t,a){return(0,g.default)((function*(){if(0===e.length)return e;var r=(0,f.default)(e).call(e,_.isSnapshot),{id:n}=a;if(!n)return r;var i={all_tenants:t},l=yield p.default.all([b.default.cinder.snapshots.list(i),b.default.nova.servers.volumeAttachments.list(n,{})]),s=l[0].snapshots,o=l[1].volumeAttachments,u=[];return(0,h.default)(r).call(r,(e=>{var{block_device_mapping:t="[]",instance_id:a}=e;if(a===n)u.push(e);else{var r,i=(0,m.default)(r=JSON.parse(t)).call(r,(e=>0===e.boot_index));if(i){e.snapshotId=i.snapshot_id;var l=(0,m.default)(s).call(s,(e=>e.id===i.snapshot_id));if(l){var d=l.volume_id;(0,m.default)(o).call(o,(e=>e.volumeId===d))&&u.push(e)}}else{var{instance_uuid:c}=e;n===c&&u.push(e)}}})),u}))()}detailDidFetch(e){return(0,g.default)((function*(){var t;e.originData=w({},e);var{block_device_mapping:a="[]"}=e,r=(0,m.default)(t=JSON.parse(a)).call(t,(e=>0===e.boot_index)),n=null,i="";if(r){var{snapshot_id:l}=r;e.snapshotId=l;var s=(yield b.default.cinder.snapshots.show(l)).snapshot;e.snapshotDetail=s;var{volume_id:o}=s,u=(yield b.default.cinder.volumes.show(o)).volume;e.volumeDetail=u,n=u.attachments.length>0?u.attachments[0].server_id:""}else{var{instance_uuid:d}=e;n=d}var c={};try{if(n){c=yield b.default.nova.servers.show(n);var{server:{name:f}={}}=c;i=f}}catch(e){}return e.instance={server_id:n,server_name:i},e.instanceDetail=c.server||{},e}))()}}t.InstanceSnapshotStore=I;var C=new I;t.default=C},1257:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.enablePFW=function(){var{neutronExtensions:e}=s.default,t=!1,a=!1;return(0,l.default)(e).call(e,(e=>{"floating-ip-port-forwarding"===e.alias?t=!0:"expose-port-forwarding-in-fip"===e.alias&&(a=!0)})),t&&a},a.availabilityZoneResource=a.availabilityZoneState=void 0;var l=i(r(28)),s=i(r(136)),o={available:t("Available"),unavailable:t("Unavailable")};a.availabilityZoneState=o;var u={router:t("Router"),network:t("Network")};a.availabilityZoneResource=u},1306:function(e,t,a){var r=a(1909);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},1307:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.QuotaOverview=a.getVolumeTypeCards=a.zunQuotaCard=a.shareQuotaCard=a.quotaCardList=void 0;var o=s(r(62)),u=s(r(33)),d=s(r(82)),c=s(r(65)),f=s(r(35));r(548);var p=s(r(549)),h=s(r(52));r(1428);var m=s(r(1308));r(324);var g=s(r(325));r(1115);var v=s(r(1116));r(1146);var y=s(r(1147));r(1117);var b=s(r(1118));r(1139);var _=s(r(1140)),S=s(r(37));r(387);var x=s(r(220)),w=s(r(1176)),I=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={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),C=(r(167),r(513),r(382)),k=s(r(524)),D=s(r(384)),T=s(r(136)),A=r(47),P=s(r(1306));function M(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(M=function(e){return e?a:t})(e)}var E={normal:{color:"#4CC9F0",text:t("Normal")},danger:{color:"#4361EE",text:t("Danger")},full:{color:"#E8684A",text:t("Full")}},N=I.default.createElement("span",null,t("Key Pair"),I.default.createElement(x.default,{title:t("The number of allowed key pairs for each user.")},I.default.createElement(w.default,{style:{marginLeft:4}}))),R=[{text:t("Compute"),type:"compute",value:[{text:t("Instances"),key:"instances"},{text:t("vCPUs"),key:"cores"},{text:t("Memory (GiB)"),key:"ram"},{text:N,key:"key_pairs"},{text:t("Server Group"),key:"server_groups"}]},{text:t("Storage"),type:"storage",value:[{text:t("Volumes"),key:"volumes"},{text:t("Gigabytes (GiB)"),key:"gigabytes"},{text:t("Snapshots"),key:"snapshots"},{text:t("Backups"),key:"backups"},{text:t("Backup gigabytes (GiB)"),key:"backup_gigabytes"}]},{text:t("Network"),type:"networks",value:[{text:t("Router"),key:"router"},{text:t("Network"),key:"network"},{text:t("Subnet"),key:"subnet"},{text:t("Floating IP"),key:"floatingip"},{text:t("Port"),key:"port"},{text:t("Security Group"),key:"security_group"},{text:t("Security Group Rule"),key:"security_group_rule"}]}];a.quotaCardList=R;var j={text:t("Share"),type:"share",value:[{text:t("Share"),key:"shares"},{text:t("Share Gigabytes(GiB)"),key:"share_gigabytes"},{text:t("Share Network"),key:"share_networks"},{text:t("Share Group"),key:"share_groups"}]};a.shareQuotaCard=j;var F={text:t("Containers Management"),type:"zun",value:[{text:t("Containers"),key:"zun_containers"},{text:t("CPU"),key:"zun_cpu"},{text:t("Memory (MiB)"),key:"zun_memory"},{text:t("Disk (GiB)"),key:"zun_disk"}]};a.zunQuotaCard=F;var L=e=>{var a=(0,o.default)(e).call(e,((e,a)=>({index:a,value:[{text:t("{name} type",{name:e.name}),key:"volumes_".concat(e.name)},{text:t("{name} type gigabytes(GiB)",{name:e.name}),key:"gigabytes_".concat(e.name)},{text:t("{name} type snapshots",{name:e.name}),key:"snapshots_".concat(e.name)}]})));return{text:t("Storage Types"),type:"volumeTypes",value:a}};a.getVolumeTypeCards=L;class O extends I.Component{constructor(e){var a;super(e),a=this,(0,S.default)(this,"getFilteredValue",(e=>(0,u.default)(e).call(e,(e=>!e.hidden)))),(0,S.default)(this,"getItemInfo",((e,a)=>{var r=0;e[a.key]&&(0,A.isNumber)(e[a.key].used)&&-1!==e[a.key].limit&&(r=e[a.key].used/e[a.key].limit*100);var n,i="-";e[a.key]&&(0,A.isNumber)(e[a.key].used)&&(i=(0,d.default)(n="".concat(e[a.key].used," / ")).call(n,-1===e[a.key].limit?t("Unlimit"):e[a.key].limit));var l=r>=90&&E.full.color||r>=80&&E.danger.color||E.normal.color,s=I.default.createElement("span",null,a.text," : ",i),{server_group_members:o}=e;return"server_groups"===a.key&&o&&(s=I.default.createElement("span",null,s," (",t("Member in group")," :",-1===o.limit?t("Unlimit"):o.limit,")")),I.default.createElement(I.default.Fragment,null,I.default.createElement("div",{className:P.default["progress-title"]},s),I.default.createElement(x.default,{title:s,placement:"top",getPopupContainer:e=>e.parentNode},I.default.createElement(_.default,{style:{marginTop:13,marginBottom:13},percent:r,showInfo:!1,strokeColor:l})))})),(0,S.default)(this,"renderQuotaCardList",(()=>{var e,{isLoading:t}=this.state;return I.default.createElement(b.default,{className:P.default.content},(0,o.default)(e=this.quotaCardList).call(e,(e=>I.default.createElement(v.default,{className:P.default.card,span:24,key:e.type},I.default.createElement(y.default,{title:e.text,bordered:!1,loading:t,size:"small"},I.default.createElement(b.default,{gutter:24},this.renderQuotaCardContent(e)))))),this.enableCinder?I.default.createElement(v.default,{className:P.default.card,span:24,key:this.volumeTypesQuota.type},I.default.createElement(y.default,{title:this.volumeTypesQuota.text,bordered:!1,loading:t,size:"small"},this.renderVolumeTypes())):null)})),(0,S.default)(this,"renderQuotaCard",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return(0,o.default)(t).call(t,(t=>I.default.createElement(v.default,{key:t.text,span:12},a.getItemInfo(e,t))))})),(0,S.default)(this,"renderVolumeTypes",(()=>{var{isLoading:e}=this.state;return e?I.default.createElement(g.default,null):I.default.createElement(m.default,{itemLayout:"vertical",size:"large",pagination:{hideOnSinglePage:!0,pageSize:5,size:"small"},dataSource:this.volumeTypesQuota.value,renderItem:e=>{var t;return I.default.createElement(b.default,{key:e.index,gutter:[16]},(0,o.default)(t=e.value).call(t,(e=>I.default.createElement(v.default,{span:8,key:e.text},this.getItemInfo(this.projectStore.quota,e)))))}})})),this.state={isLoading:!0};var{projectStore:r,volumeTypeStore:n}=e;this.projectStore=r||D.default,this.volumeTypeStore=n||k.default}componentDidMount(){this.getData()}getData(){var e=this;return(0,h.default)((function*(){var{getData:t}=e.props;if(t)yield t();else{var{user:a}=e.props.rootStore,{project:{id:r=""}={}}=a,n=[e.projectStore.fetchProjectQuota({project_id:r,withKeyPair:!0})];e.enableCinder&&n.push(e.volumeTypeStore.fetchList()),yield c.default.all(n)}e.setState({isLoading:!1})}))()}get enableCinder(){return T.default.checkEndpoint("cinder")}get enableShare(){return T.default.checkEndpoint("manilav2")}get enableZun(){return T.default.checkEndpoint("zun")}get volumeTypeData(){var{volumeTypeData:e}=this.props;return e||this.volumeTypeStore.list.data}get volumeTypesQuota(){return L(this.volumeTypeData)}get quotaCardList(){var e=[...this.props.quotaCardList||R];return this.enableCinder||(e=(0,u.default)(e).call(e,(e=>"storage"!==e.type))),this.enableShare&&e.push(j),this.enableZun&&e.push(F),e}get quotaAction(){return this.props.quotaAction}renderQuotaCardContent(e){var{isLoading:t}=this.state;return t?I.default.createElement(g.default,null):this.renderQuotaCard(this.projectStore.quota,this.getFilteredValue(e.value))}render(){var e,{isLoading:a}=this.state;return I.default.createElement(y.default,{className:P.default.bottom,bodyStyle:{padding:0},loading:a,headStyle:{paddingLeft:"20px"},title:I.default.createElement("div",{className:P.default.title},I.default.createElement("span",{className:P.default.text},t("Quota Overview")),(0,o.default)(e=(0,f.default)(E)).call(e,(e=>I.default.createElement("span",{key:e,className:P.default.badge},I.default.createElement(p.default,{color:E[e].color,text:E[e].text}))))),extra:this.quotaAction},this.renderQuotaCardList())}}a.QuotaOverview=O;var z=(0,C.inject)("rootStore")((0,C.observer)(O));a.default=z},1311:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ServerGroupInstanceStore=void 0;var f=c(a(65)),p=c(a(62)),h=c(a(28)),m=c(a(37)),g=c(a(52)),v=c(a(71)),y=a(135),b=c(a(54));function _(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function S(e){for(var t=1;t{var{all_projects:t,members:a,isServerGroup:r}=e;return(0,v.default)(e,["all_projects","members","isServerGroup"])}}get groupArraySize(){return 1}requestList(e,t){var a=this;return(0,g.default)((function*(){var{members:r,isServerGroup:n,all_projects:i}=t;if(r&&n&&0===r.length)return[];var l=(0,y.groupArray)(r,a.groupArraySize),s=yield f.default.all((0,p.default)(l).call(l,(t=>{var r=S(S({},e),{},{uuid:t,all_projects:i});return a.skylineClient.extension.servers(r)}))),o=[];return(0,h.default)(s).call(s,(e=>{o.push(...e[a.listResponseKey])})),o}))()}listDidFetch(e){return(0,g.default)((function*(){return 0===e.length?e:(0,p.default)(e).call(e,(e=>S(S({},e),{},{tags:(e.origin_data||{}).tags||[]})))}))()}}t.ServerGroupInstanceStore=x;var w=new x;t.default=w},1312:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.InstanceVolumeStore=void 0;var f=c(a(65)),p=c(a(62)),h=c(a(33)),m=c(a(28)),g=c(a(52)),v=c(a(71)),y=c(a(37)),b=a(515),_=c(a(49)),S=c(a(54));function x(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function w(e){for(var t=1;te.serverId))}get client(){return _.default.nova.servers.volumeAttachments}get isSubResource(){return!0}get paramsFunc(){return e=>{var{id:t,serverId:a,all_projects:r,projectId:n,serverName:i}=e;return(0,v.default)(e,["id","serverId","all_projects","projectId","serverName"])}}get mapperBeforeFetchProject(){return(e,t)=>{var{projectId:a}=t;return w(w({},e),{},{project_id:a})}}get mapper(){return e=>w(w({},e),{},{disk_tag:(0,b.isOsDisk)(e)?"os_disk":"data_disk",host:e["os-vol-host-attr:host"]})}listDidFetch(e,t,a){return(0,g.default)((function*(){if(0===e.length)return e;var{serverName:t,serverId:r}=a,{project_id:n,project_name:i}=e[0],l=yield f.default.all((0,p.default)(e).call(e,(e=>{var{volumeId:t}=e;return _.default.cinder.volumes.show(t)})));return(0,p.default)(l).call(l,(e=>{var{volume:a}=e,{attachments:l=[]}=a,s=(0,h.default)(l).call(l,(e=>e.server_id===r));return(0,m.default)(s).call(s,(e=>{e.server_name=t})),a.attachments=s,w(w({},a),{},{project_id:n,project_name:i})}))}))()}}t.InstanceVolumeStore=I;var C=new I;t.default=C},1314:function(e,t,a){"use strict";var r=a(156),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0,a(387);var s=l(a(220));a(1139);var o=l(a(1140)),u=l(a(37)),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 r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),c=(a(167),l(a(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,"getColor",(()=>{var{value:e,wanValue:t,dangerValue:a,infoColor:r,warnColor:n,dangerColor:i}=this.props;return e{if(this.inQosDetail){var{id:t}=e;return O({qos_policy_id:t},(0,C.default)(e,["id"]))}return e})),(0,k.default)(this,"fetchDataByPage",function(){var t=(0,I.default)((function*(t){yield e.store.fetchListWithResourceName(t),e.list.silent=!1}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new M.FloatingIpStore,this.downloadStore=new M.FloatingIpStore}get qosEndpoint(){return(0,N.qosEndpoint)()}get isFilterByBackend(){return!this.inQosDetail}get isSortByBackend(){return!this.inQosDetail}get defaultSortKey(){return"status"}get inQosDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"qos")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"recycle-bin")}get inInstanceDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"instance")}getData(){var e=arguments,t=()=>super.getData,a=this;return(0,I.default)((function*(){var r=e.length>0&&void 0!==e[0]?e[0]:{},{silent:n}=r,i=(0,C.default)(r,["silent"]);if(a.inDetailPage&&!a.inQosDetail){var l;n&&(a.list.silent=!0);var{detail:{addresses:s=[]}={}}=a.props,o=[];(0,h.default)(l=(0,m.default)(s)).call(l,(e=>{var t,a;o.push(...(0,g.default)(t=(0,v.default)(a=s[e]).call(a,(e=>"fixed"===e["OS-EXT-IPS:type"]))).call(t,(e=>e.addr)))})),i.fixed_ip_address=o,i.all_projects=a.isAdminPage,o.length>0?yield a.store.fetchListWithResourceName(i):a.list.isLoading=!1}else t().call(a,O({silent:n},i))}))()}get fetchDataByCurrentProject(){return!0}get policy(){return"get_floatingip"}get name(){return t("floating ips")}get actionConfigs(){return this.isRecycleBinDetail?E.emptyActionConfig:this.inInstanceDetail?this.isAdminPage?F.default.instanceDetailAdminConfigs:F.default.instanceDetailConfigs:this.inQosDetail?this.isAdminPage?F.default.qosDetailAdminConfigs:F.default.qosDetailConfigs:this.isAdminPage?F.default.adminConfigs:F.default.actionConfigs}get transitionStatusList(){return P.transitionStatuses}get adminPageHasProjectFilter(){return!0}getRecordPortForwarding(e){var t;return(0,y.default)(t=e.port_forwardings||[]).call(t,((e,t)=>e.external_port-t.external_port))}getPortForwardingRender(e){var a=this.getRecordPortForwarding(e);return a.length?D.default.createElement(_.default,{content:D.default.createElement(x.default,{className:j.default["popover-row"],gutter:[8,8]},(0,g.default)(a).call(a,((t,a)=>{var r,n,i;return D.default.createElement(w.default,{span:24,key:"pfw-".concat(a)},(0,b.default)(r=(0,b.default)(n=(0,b.default)(i="".concat(e.floating_ip_address,":")).call(i,t.external_port," => ")).call(n,t.internal_ip_address,":")).call(r,t.internal_port))}))),title:t("Port Forwarding"),destroyTooltipOnHide:!0},t("{number} port forwarding rules",{number:a.length})," ",D.default.createElement(S.default,null)):null}getPortForwardingStringify(e){var a=this.getRecordPortForwarding(e);if(!a.length)return"";var r=(0,g.default)(a).call(a,(t=>{var a,r,n;return(0,b.default)(a=(0,b.default)(r=(0,b.default)(n="".concat(e.floating_ip_address,":")).call(n,t.external_port," => ")).call(r,t.internal_ip_address,":")).call(a,t.internal_port)}));return[t("{number} port forwarding rules",{number:a.length}),...r].join("\n")}getResourceRender(e,t){return e&&"-"!==e?e:this.getPortForwardingRender(t)||"-"}geResourceStringify(e,t){return e&&"-"!==e?e:this.getPortForwardingStringify(t)||"-"}getColumns(){return[{title:t("ID/Floating IP"),dataIndex:"floating_ip_address",isLink:!0,routeName:this.getRouteName("fipDetail")},{title:t("QoS Policy"),dataIndex:"qos_policy_name",isLink:!0,routeName:this.getRouteName("networkQosDetail"),idKey:"qos_policy_id",hidden:!this.qosEndpoint||this.inQosDetail},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0,sorter:!1},{title:t("Associated Resource"),dataIndex:"resource_name",render:(e,t)=>this.getResourceRender(e,t),stringify:(e,t)=>this.geResourceStringify(e,t),isHideable:!0,sorter:!1},{title:t("Status"),dataIndex:"status",render:e=>P.floatingIpStatus[e]||"-"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0,sorter:!1}]}get searchFilters(){return[{label:t("Floating IP"),name:"floating_ip_address"},{label:t("Status"),name:"status",options:(0,R.getOptions)(P.floatingIpStatus)}]}}a.FloatingIps=z;var B=(0,T.inject)("rootStore")((0,T.observer)(z));a.default=B},1317:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.VirtualAdapter=void 0;var p=f(r(82)),h=f(r(62)),m=f(r(33)),g=f(r(219)),v=f(r(518)),y=f(r(71)),b=f(r(37)),_=f(r(0)),S=r(382),x=f(r(1114)),w=r(521),I=r(1129),C=r(319),k=f(r(1460));function D(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}class T extends x.default{constructor(){super(...arguments),(0,b.default)(this,"updateFetchParamsByPage",(e=>{var{id:t}=e,a=function(e){for(var t=1;t{var e=[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("virtualAdapterDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0,sortKey:"project_id"},{title:t("Bind Resource"),dataIndex:"server_name",stringify:(e,t)=>{var a,r,n,i;return t.device_id&&"compute:nova"===t.device_owner?(0,p.default)(n=(0,p.default)(i="".concat(t.device_owner," \n ")).call(i,t.device_id," (")).call(n,e,")"):(0,p.default)(a=(0,p.default)(r="\n ".concat(t.device_owner," ")).call(r,t.device_owner&&"\n","\n ")).call(a,t.device_id||"-","\n ")},render:(e,t)=>{var{device_id:a,device_owner:r}=t;if(a&&"compute:nova"===r){var n,i=e?(0,p.default)(n="".concat(a," (")).call(n,e,")"):a,l=this.getLinkRender("instanceDetail",i,{id:t.device_id},{tab:"interface"});return _.default.createElement(_.default.Fragment,null,t.device_owner,_.default.createElement("br",null),l)}return _.default.createElement(_.default.Fragment,null,t.device_owner,t.device_owner&&_.default.createElement("br",null),t.device_id||"-")},isHideable:!0,sorter:!1},{title:t("Owned Network"),dataIndex:"network_name",isLink:!0,routeName:this.getRouteName("networkDetail"),idKey:"network_id",sorter:!1},{title:t("IPv4 Address"),dataIndex:"ipv4",render:e=>(0,h.default)(e).call(e,(e=>_.default.createElement("div",{key:e},e))),isHideable:!0,stringify:e=>e.join(","),sorter:!1},{title:t("IPv6 Address"),dataIndex:"ipv6",render:e=>(0,h.default)(e).call(e,(e=>_.default.createElement("div",{key:e},e))),isHideable:!0,stringify:e=>e.join(","),sorter:!1},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Status"),dataIndex:"status",render:e=>I.portStatus[e]||e}];return this.isInstanceDetail?(0,m.default)(e).call(e,(e=>"server_name"!==e.dataIndex)):this.isNetworkDetail?(0,m.default)(e).call(e,(e=>"network_name"!==e.dataIndex)):e}))}init(){this.store=new w.VirtualAdapterStore,this.downloadStore=new w.VirtualAdapterStore}get isInstanceDetail(){var e,t;return this.inDetailPage&&((0,g.default)(e=this.path).call(e,"compute/instance")||(0,g.default)(t=this.path).call(t,"management/recycle-bin"))}get isNetworkDetail(){var e,t;return this.inDetailPage&&((0,g.default)(e=this.path).call(e,"networks/detail")||(0,g.default)(t=this.path).call(t,"networks-admin/detail"))}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"status"}get policy(){return"get_port"}get name(){return t("virtual adapters")}get adminPageHasProjectFilter(){return!0}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,g.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?C.emptyActionConfig:this.isAdminPage?k.default.adminActions:this.inDetailPage?this.isInstanceDetail?k.default.actionConfigsInDetail:k.default.noActions:k.default.actionConfigs}get searchFilters(){var e=[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:[{label:t("Active"),key:"ACTIVE"},{label:t("Down"),key:"DOWN"},{label:t("Error"),key:"ERROR"},{label:t("Build"),key:"BUILD"},{label:t("N/A"),key:"N/A"}]}];return this.isNetworkDetail||(0,v.default)(e).call(e,1,0,{label:t("Owned Network"),name:"network_name"}),e}}a.VirtualAdapter=T;var A=(0,S.inject)("rootStore")((0,S.observer)(T));a.default=A},1324:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.CredentialStore=void 0;var i,l=n(a(3825)),s=n(a(28)),o=n(a(25)),u=n(a(52)),d=n(a(71)),c=n(a(55)),f=a(32),p=n(a(49)),h=n(a(136)),m=n(a(1126)),g=n(a(54)),v=(i=class extends g.default{get isSubResource(){return!0}get client(){return p.default.keystone.users.applicationCredentials}get paramsFunc(){return e=>{var{current:t,id:a,all_projects:r}=e;return(0,d.default)(e,["current","id","all_projects"])}}create(e){var t={};return t[this.responseKey]=e,this.submitting(this.client.create(h.default.user.user.id,t))}listDidFetch(e,t){return(0,u.default)((function*(){if(!t)try{var a=yield m.default.getUserProjects(),r=new l.default;(0,s.default)(a).call(a,(e=>{r.set(e.id,e.name)})),(0,s.default)(e).call(e,(e=>{e.project_name=r.get(e.project_id)||"-"}))}catch(t){return e}return e}))()}},(0,c.default)(i.prototype,"create",[f.action],(0,o.default)(i.prototype,"create"),i.prototype),i);t.CredentialStore=v;var y=new v;t.default=y},1350:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(65));r(318);var u=s(r(317));r(1236);var d=s(r(1237)),c=s(r(37)),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={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),p=(r(167),s(r(16))),h=r(135);function m(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(m=function(e){return e?a:t})(e)}class g extends f.Component{static propTypes(){return{title:p.default.string.isRequired,buttonType:p.default.string,render:p.default.func,component:p.default.node,item:p.default.any,modalSize:p.default.string,okText:p.default.string,cancelText:p.default.string,handleOk:p.default.func,className:p.default.func,buttonText:p.default.string,buttonClassName:p.default.string,showCancelButton:p.default.bool,style:p.default.object,onClickButton:p.default.func,onFinishAction:p.default.func,onCancelAction:p.default.func}}constructor(e){super(e),(0,c.default)(this,"getModalWidth",(e=>{switch(e){case"small":return 520;case"middle":return 720;case"large":return 1200;default:return 520}})),(0,c.default)(this,"onClick",(e=>{e&&e.stopPropagation();var{onClickButton:t}=this.props;t&&t(),this.showModal()})),(0,c.default)(this,"onFinishAction",(()=>{var{onFinishAction:e}=this.props;e&&e()})),(0,c.default)(this,"handleOk",(()=>{var{handleOk:e}=this.props;e?(this.setState({submitLoading:!0}),e()instanceof o.default?e().finally((()=>{this.hideModal(),this.onFinishAction(),this.setState({submitLoading:!1})})):(this.hideModal(),this.onFinishAction(),this.setState({submitLoading:!1}))):(this.hideModal(),this.onFinishAction())})),(0,c.default)(this,"handleCancel",(()=>{var{onCancelAction:e}=this.props;e&&e(),this.hideModal()})),(0,c.default)(this,"hideModal",(()=>{this.setState({visible:!1})})),(0,c.default)(this,"showModal",(()=>{this.setState({visible:!0})})),this.state={visible:!1,submitLoading:!1}}renderModal(){var{visible:e,submitLoading:t}=this.state;if(!e)return null;var{title:a,item:r,modalSize:n,className:i,okText:l,cancelText:s,render:o,component:u,showCancelButton:c}=this.props,p=this.getModalWidth(n),m=o?o(r):u,g={visible:e,title:a,key:"modal-".concat((0,h.generateId)()),className:i,width:p,onOk:this.handleOk,onCancel:this.handleCancel,okText:l,cancelText:s,confirmLoading:t};return c||(g.cancelButtonProps={style:{display:"none"}}),f.default.createElement(d.default,g,m)}render(){var{buttonText:e,title:t,danger:a,style:r,buttonType:n,buttonClassName:i}=this.props;return f.default.createElement(f.default.Fragment,null,f.default.createElement(u.default,{type:n,danger:a,onClick:this.onClick,className:i,style:r},e||t),this.renderModal())}}a.default=g,(0,c.default)(g,"defaultProps",{buttonType:"primary",render:null,component:null,item:null,okText:t("Confirm"),cancelText:t("Cancel"),handleOk:null,className:"",buttonClassName:"",showCancelButton:!1,style:{},onClickButton:null,onFinishAction:null,onCancelAction:null})},1442:function(e,a,r){"use strict";var n=r(219),i=r(35),l=r(44),s=r(33),o=r(25),u=r(28),d=r(45),c=r(46),f=r(19),p=r(21);f(a,"__esModule",{value:!0}),a.default=a.BaseTable=void 0;var h=p(r(62)),m=p(r(33)),g=p(r(219)),v=p(r(82)),y=p(r(28)),b=p(r(91));r(530);var _=p(r(531)),S=p(r(1437)),x=p(r(1435)),w=p(r(1192));r(535);var I=p(r(397)),C=p(r(1284));r(1124);var k=p(r(1125));r(318);var D=p(r(317)),T=p(r(71));r(1189);var A=p(r(1190)),P=p(r(1176));r(387);var M=p(r(220)),E=p(r(551)),N=p(r(37)),R=p(r(0)),j=p(r(16)),F=p(r(4)),L=p(r(1310)),O=r(32),z=r(47),B=(r(167),p(r(1296))),V=p(r(1365)),q=(r(513),p(r(3351))),U=r(541),Q=r(135),G=r(231),K=r(517),H=r(382),W=p(r(136)),Y=p(r(3354)),Z=p(r(1166)),J=p(r(1253)),X=p(r(3357)),$=p(r(3360)),ee=p(r(3364));function te(e,t){var a=i(e);if(l){var r=l(e);t&&(r=s(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function ae(e){for(var t=1;t(0,z.isArray)(e)?e.join(","):e)),(0,N.default)(this,"getSortKey",(e=>{var{field:t,column:a}=e;return t&&a?a.sortKey||a.dataIndex:null})),(0,N.default)(this,"handleChange",((e,t,a,r)=>{var{action:n}=r,i=ae({limit:e.pageSize,page:e.current,current:e.current,sortKey:this.getSortKey(a),sortOrder:a.order},t),{isCourier:l,isPageByBack:s}=this.props;if("sort"===n){if(!l&&s){var{pagination:o}=this.props;i=ae(ae({},i),{},{limit:o.pageSize,page:o.current,current:o.current})}this.sortKey=this.getSortKey(a),this.sortOrder=a.order,this.props.onFetchBySort(i)}else this.props.onFetch(i)})),(0,N.default)(this,"handlePageChange",((e,t)=>{var{filters:a}=this.state,{onFetch:r,defaultSortKey:n,defaultSortOrder:i}=this.props;r&&r(ae({limit:t,page:e,current:e,sortKey:this.sortKey||n,sortOrder:this.sortOrder||i},a))})),(0,N.default)(this,"handleRefresh",(()=>{this.props.onRefresh(!0)})),(0,N.default)(this,"handleRowHide",(e=>{var t,a=(0,h.default)(t=this.hideableRows).call(t,(e=>e.value));this.setState({hideRow:(0,m.default)(a).call(a,(t=>!(0,g.default)(e).call(e,t)))},(()=>{var e;(0,G.setLocalStorageItem)((0,v.default)(e="".concat(this.useId,"-")).call(e,this.props.resourceName),this.state.hideRow)}))})),(0,N.default)(this,"handleCancelSelect",(()=>{this.props.onSelectRowKeys([])})),(0,N.default)(this,"handleFilterChange",((e,t)=>{if(!(0,L.default)(e,this.props.filters)||!(0,L.default)(t,this.props.timeFilter)){this.setState({filters:e,timeFilter:t});var{pageSize:a}=this.props.pagination,{sortKey:r,sortOrder:n,onFilterChange:i}=this.props;i&&i(ae({limit:a,page:1,sortKey:r,sortOrder:n},e),t)}})),(0,N.default)(this,"handleTimeChange",(e=>{this.handleFilterChange(this.state.filters,e)})),(0,N.default)(this,"handleFilterInput",(e=>{var t={};(0,y.default)(e).call(e,(e=>{t[(0,m.default)(e).name]=e.value})),this.handleFilterChange(t,this.state.timeFilter)})),(0,N.default)(this,"handleInputFocus",(e=>{var{handleInputFocus:t}=this.props;t&&t(e)})),(0,N.default)(this,"handleFilterInputText",(e=>{var t={},{value:a}=e.currentTarget;a&&(t.keywords=a),this.handleFilterChange(t,this.state.timeFilter)})),(0,N.default)(this,"hasItemActions",(()=>{var{firstAction:e,moreActions:t,actionList:a}=this.itemActions;return!!e||(!(!t||!t.length)||a&&a.length>0)})),(0,N.default)(this,"getProjectId",(e=>e.project_id||e.owner||e.fingerprint||e.tenant)),(0,N.default)(this,"getProjectRender",(e=>e||((e,t)=>{var a=this.getProjectId(t);if(!a)return"-";var r=(0,K.getLinkRender)({key:"projectDetailAdmin",params:{id:a},value:a});return R.default.createElement(R.default.Fragment,null,R.default.createElement("div",null,W.default.hasAdminRole?r:a),R.default.createElement("div",null,e||"-"))}))),(0,N.default)(this,"getNoValueRender",(e=>e||(e=>(0,Q.getNoValue)(e)))),(0,N.default)(this,"getPriceRender",((e,t)=>e||(e=>{var t=(0,z.isString)(e)?e:(e||0).toFixed(2);return R.default.createElement("span",{style:{color:"#f50"}},t)}))),(0,N.default)(this,"getTipRender",(function(e,t,a){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:E.default,n=(n,i)=>{var l=e(n,i),s=t?t(n,i):(0,z.get)(i,a);return l?R.default.createElement("div",null,s,R.default.createElement(M.default,{title:l},R.default.createElement(r,{style:{marginLeft:8}}))):s};return n})),(0,N.default)(this,"getColumnTitle",(e=>{var{title:t,titleTip:a}=e;return a?R.default.createElement("span",null,t,R.default.createElement(M.default,{title:a},R.default.createElement(P.default,{style:{marginLeft:8}}))):t})),(0,N.default)(this,"getBaseColumns",(e=>(0,h.default)(e).call(e,(e=>{var{Paragraph:t}=A.default,{sortable:a,dataIndex:r,valueRender:n,sorter:i,sortOrder:l,render:s,copyable:o,tip:u,isStatus:d,isName:c,isLink:f,routeName:p,linkPrefix:h,isPrice:m}=e,g=(0,T.default)(e,["sortable","dataIndex","valueRender","sorter","sortOrder","render","copyable","tip","isStatus","isName","isLink","routeName","linkPrefix","isPrice"]),v=(0,U.getColumnSorter)(e,this.props),y=l||v?(0,U.getSortOrder)(r,this.props):null,b=s||(0,U.getRender)(n);if((0,U.checkIsStatusColumn)(r,d)&&(b=(0,U.getStatusRender)(b)),"description"===r&&(b=this.getNoValueRender(b)),"project_name"===r&&(b=this.getProjectRender(b)),"name"===r&&p||f){var{rowKey:_}=this.props;b=(0,U.getNameRenderByRouter)(b,e,_)}if("name"===r&&h||c){var{rowKey:S}=this.props;b=(0,U.getNameRender)(b,e,S)}if(("cost"===r||m)&&(b=this.getPriceRender(b,e)),o&&(b=e=>e&&"-"!==e?R.default.createElement(t,{copyable:!0},e):"-"),u){var{tipIcon:x}=e;b=this.getTipRender(u,b,r,x)}var w=ae(ae({},g),{},{title:this.getColumnTitle(e),dataIndex:r,align:e.align||"left"});return v&&(w.sorter=v),l&&(w.sortOrder=y),(0,U.updateColumnSort)(w,this.props),b&&(w.render=b),ae(ae({},w),{},{render:(e,t)=>(0,U.columnRender)(w.render,e,t)})})))),(0,N.default)(this,"getColumns",(()=>{var e,{columns:a,containerProps:r,onClickAction:i,onFinishAction:l,onCancelAction:s,isAdminPage:o}=this.props,{hideRow:u}=this.state,d=(0,m.default)(e=(0,m.default)(a).call(a,(e=>!e.hidden))).call(e,(e=>!n(z)(u,this.getDataIndex(e.dataIndex)))),c=this.getBaseColumns(d);return this.hasItemActions()?[...c,{title:t("Action"),key:"operation",width:150,render:(e,t,a)=>R.default.createElement(Z.default,{isAdminPage:o,actions:this.itemActions,onFinishAction:l,onCancelAction:s,item:t,index:a,containerProps:r,onClickAction:i})}]:c})),(0,N.default)(this,"stopRefreshAuto",(()=>{this.setState({autoRefresh:!1});var{stopRefreshAuto:e}=this.props;e&&e()})),(0,N.default)(this,"startRefreshAuto",(()=>{this.setState({autoRefresh:!0});var{startRefreshAuto:e}=this.props;e&&e()})),(0,N.default)(this,"renderSelectedTitle",(()=>R.default.createElement("div",{className:ee.default["select-title"]},R.default.createElement("div",null,this.renderBatchActions()),R.default.createElement("div",null,R.default.createElement(D.default,{type:"flat",className:ee.default["cancel-select"],onClick:this.handleCancelSelect},t("Cancel Select")))))),(0,N.default)(this,"renderTableTitle",(()=>this.renderNormalTitle())),(0,N.default)(this,"renderRowMenu",(()=>{var{hideRow:e}=this.state;return R.default.createElement(Y.default,{className:ee.default["column-menu"],options:this.hideableRows,value:(e=>{var t,a=[];return(0,y.default)(t=this.hideableRows).call(t,(t=>{-1===(0,b.default)(e).call(e,t.value)&&a.push(t.value)})),a})(e),onChange:this.handleRowHide})})),(0,N.default)(this,"renderTableFooter",(e=>{var{page:t,current:a,pageSize:r,total:n,pageSizeOptions:i}=this.props.pagination,{isLoading:l,hideTotal:s}=this.props;return R.default.createElement(V.default,{current:t||a||1,pageSize:r,onChange:this.handlePageChange,currentDataSize:e.length,pageSizeOptions:i||[10,20,50,100],total:n,isLoading:l,onFocusChange:this.handleInputFocus,hideTotal:s})})),this.state={hideRow:(0,G.getLocalStorageItem)((0,v.default)(a="".concat(this.useId,"-")).call(a,this.props.resourceName))||[],filters:[],timeFilter:{},autoRefresh:e.autoRefresh},this.sortKey=e.defaultSortKey,this.sortOrder=e.defaultSortOrder,this.suggestions=(0,h.default)(r=(0,m.default)(i=e.columns).call(i,(e=>e.search&&e.dataIndex))).call(r,(e=>{var t;return{label:e.title,key:e.dataIndex,options:e.filters&&(0,h.default)(t=e.filters).call(t,(e=>({label:e.text,key:e.value})))}}))}get hideableRows(){var e,t,a;return(0,h.default)(e=(0,m.default)(t=(0,m.default)(a=this.props.columns).call(a,(e=>!e.hidden))).call(t,(e=>e.isHideable))).call(e,(e=>({label:e.title,value:this.getDataIndex(e.dataIndex)||e.key})))}get useId(){var{user:e={}}=(0,O.toJS)(this.props.rootStore)||{},{user:{id:t}={}}=e||{};return t}get itemActions(){var{itemActions:e={}}=this.props;return e}filterDownloadColumns(e){var a,r,{rowKey:n}=this.props,i=(0,h.default)(a=(0,m.default)(e).call(e,(e=>!e.hidden))).call(a,(e=>{var{title:a,splitColumnForDownload:r=!0}=e;if((0,g.default)(a).call(a,"/")&&r){var i,l,[s,o]=e.title.split("/"),u=o;if(s.length>2)u=(0,v.default)(l="".concat(s.split("ID")[0])).call(l,o);var d=e.idKey||n;return(0,g.default)(i=e.title).call(i,t("Project"))&&"project_name"===e.dataIndex&&(d="project_id"),[{title:s,dataIndex:d},ae(ae({},e),{},{title:u})]}return e}));return(0,v.default)(r=[]).call(r,...i)}renderBatchActions(){var{batchActions:e,selectedRowKeys:t,data:a,rowKey:r,containerProps:n,onClickAction:i,onFinishAction:l,onCancelAction:s,resourceName:o,isAdminPage:u}=this.props,d=(0,m.default)(a).call(a,(e=>(0,b.default)(t).call(t,e[r])>=0));return e?R.default.createElement(X.default,{isAdminPage:u,visibleButtonNumber:3,selectedItemKeys:t,selectedItems:d,batchActions:e,onFinishAction:l,onCancelAction:s,containerProps:n,onClickAction:i,resourceName:o}):null}renderTimeFilter(){var{showTimeFilter:e,filterTimeDefaultValue:t}=this.props;if(!e)return null;var a={onChange:this.handleTimeChange,className:ee.default.timer};return void 0!==t&&(a.defaultValue=t),R.default.createElement(q.default,a)}renderSearch(){var{hideSearch:e,searchFilters:a,initFilter:r={}}=this.props;return e?null:a.length>0?R.default.createElement("div",{className:ee.default["search-row"]},R.default.createElement(B.default,{filterParams:a,initValue:r,onInputChange:this.handleFilterInput,onInputFocus:this.handleInputFocus,placeholder:t("Multiple filter tags are separated by enter")})):R.default.createElement("div",{className:ee.default["search-row"]},R.default.createElement(k.default,{placeholder:t("Enter query conditions to filter"),onChange:this.handleFilterInputText}))}renderActions(){var{isAdminPage:e,primaryActions:t,containerProps:a,onClickAction:r,onFinishAction:n,onCancelAction:i,primaryActionsExtra:l}=this.props;return t?R.default.createElement(J.default,{isAdminPage:e,primaryActions:t,containerProps:a,onClickAction:r,onFinishAction:n,onCancelAction:i,primaryActionsExtra:l}):null}renderCustomButton(){var{hideCustom:e}=this.props;return e?null:R.default.createElement(I.default,{overlay:this.renderRowMenu()},R.default.createElement(D.default,{className:ee.default["custom-button"],type:"default",icon:R.default.createElement(C.default,null)}))}renderDownload(){var{pagination:e,data:t,columns:a,resourceName:r,detailName:n,getDownloadData:i,onClickAction:l,onCancelAction:s,hideDownload:o}=this.props;if(o)return null;var{total:u}=e,d={data:t,columns:this.filterDownloadColumns(a),total:u,getValueRenderFunc:U.getValueRenderFunc,resourceName:r,extraName:n,getData:i,onBeginDownload:l,onFinishDownload:s,onCancelDownload:s};return R.default.createElement($.default,d)}renderRefresh(){var{hideRefresh:e}=this.props;return e?null:R.default.createElement(D.default,{type:"default",icon:R.default.createElement(w.default,null),onClick:this.handleRefresh})}renderRefreshAuto(){var{hideAutoRefresh:e}=this.props;if(e)return null;var{autoRefresh:a}=this.state;if(a){var r=t("Stop auto refreshing data");return R.default.createElement(M.default,{title:r},R.default.createElement(D.default,{type:"primary",icon:R.default.createElement(x.default,null),onClick:this.stopRefreshAuto}))}var n=t("Start auto refreshing data");return R.default.createElement(M.default,{title:n},R.default.createElement(D.default,{type:"default",icon:R.default.createElement(S.default,null),onClick:this.startRefreshAuto}))}renderNormalTitle(){return R.default.createElement("div",{className:ee.default["table-header"]},R.default.createElement("div",{className:(0,F.default)(ee.default["table-header-btns"],"table-header-btns")},this.renderRefresh(),this.renderActions(),this.renderBatchActions(),this.renderCustomButton(),this.renderDownload(),this.renderRefreshAuto()),this.renderTimeFilter(),this.renderSearch())}render(){var{className:e,data:t,isLoading:a,silentLoading:r,rowKey:n,selectedRowKeys:i,onSelectRowKeys:l,hideHeader:s,getCheckboxProps:o,pagination:u,scrollY:d,expandable:c,isPageByBack:f=!0,isCourier:p,childrenColumnName:h}=this.props,m=null,g=!(!p&&f)&&ae(ae({},u),{},{size:"small"});s||this.renderTableTitle;var v=!p&&f?this.renderTableFooter:null;l&&(m={selectedRowKeys:i,getCheckboxProps:o,onChange:l});var y=this.renderTableTitle(),b=this.getColumns(),S={};return d>0&&(S.y=d||400),R.default.createElement("div",null,y,R.default.createElement(_.default,{className:(0,F.default)(ee.default.table,"sl-table",e),rowKey:n,columns:b,dataSource:(0,O.toJS)(t),loading:!r&&a,onChange:this.handleChange,pagination:g,rowSelection:m,sortDirections:["ascend","descend","ascend"],scroll:S,showSorterTooltip:!1,expandable:c,footer:v,childrenColumnName:h}))}}a.BaseTable=re,(0,N.default)(re,"propTypes",{data:j.default.oneOfType([j.default.array,j.default.object]).isRequired,columns:j.default.array.isRequired,selectedRowKeys:j.default.array,isLoading:j.default.bool,pagination:j.default.object,filters:j.default.object,keyword:j.default.string,rowKey:j.default.any,onFetch:j.default.func,onFilterChange:j.default.func,onSelectRowKeys:j.default.func,getCheckboxProps:j.default.func,hideHeader:j.default.bool,hideSearch:j.default.bool,hideCustom:j.default.bool,batchActions:j.default.array,alwaysUpdate:j.default.bool,emptyText:j.default.oneOfType([j.default.string||j.default.func]),resourceName:j.default.string,detailName:j.default.string,expandable:j.default.object,showTimeFilter:j.default.bool,timeFilter:j.default.any,isPageByBack:j.default.bool,isSortByBack:j.default.bool,autoRefresh:j.default.bool,hideRefresh:j.default.bool,hideAutoRefresh:j.default.bool,startRefreshAuto:j.default.func,stopRefreshAuto:j.default.func,dataDurationAuto:j.default.number,defaultSortKey:j.default.string,defaultSortOrder:j.default.string,hideTotal:j.default.bool,hideDownload:j.default.bool,primaryActionsExtra:j.default.any,isAdminPage:j.default.bool,containerProps:j.default.any}),(0,N.default)(re,"defaultProps",{rowKey:"name",selectedRowKeys:[],onFetch(){},hideHeader:!1,hideSearch:!1,hideCustom:!1,resourceName:"",detailName:"",expandable:void 0,showTimeFilter:!1,isPageByBack:!1,isSortByBack:!1,autoRefresh:!0,hideRefresh:!1,hideAutoRefresh:!1,dataDurationAuto:15,defaultSortKey:"",defaultSortOrder:"",hideTotal:!1,hideDownload:!1,primaryActionsExtra:null,isAdminPage:!1});var ne=(0,H.inject)("rootStore")(re);a.default=ne},1443:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.ActionLogStore=void 0;var i=n(a(49)),l=n(a(54));class s extends l.default{get client(){return i.default.nova.servers.instanceActions}get isSubResource(){return!0}get paramsFunc(){return()=>({})}detailFetchByClient(e){var{id:t,requestId:a}=e;return this.client.show(t,a)}}t.ActionLogStore=s;var o=new s;t.default=o},1447:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateKeypair=void 0;var p=f(r(65)),h=f(r(52)),m=f(r(37)),g=r(382),v=r(1113),y=f(r(396)),b=f(r(384)),_=f(r(1217));function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function x(e){for(var t=1;t{var{total:e=0,data:t=[]}=y.default.list||{};return e||t.length},I=e=>{var{limit:t=0}=e||{};return-1===t||t>w()?1:0};class C extends v.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"onSubmit",(e=>{var{name:t,public_key:a}=e,r={name:t,public_key:a,type:"ssh"};return y.default.create(r).then((e=>{if(!a){var{keypair:{private_key:r}}=e,n="".concat(t,".pem"),i=new Blob([r],{type:"text/plain;charset=utf-8"});_.default.saveAs(i,n)}}))}))}get name(){return t("Create Keypair")}init(){this.state.quota={},this.state.quotaLoading=!0,this.projectStore=b.default,this.getQuota()}get tips(){return t("Quota of key pair means: the number of allowed key pairs for each user.")}static get disableSubmit(){var{novaQuota:{key_pairs:e={}}}=b.default;return 0===I(e)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,h.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectNovaQuota(),{key_pairs:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var r=I(e),n=w();return[x(x({},e),{},{add:r,used:n,name:"key_pair",title:t("Key Pair")})]}get defaultValue(){return{type:"create"}}get createTypeList(){return[{value:"create",label:t("Create Keypair")},{value:"import",label:t("Import Keypair")}]}get formItems(){var{type:e}=this.state,a="create"===e;return[{name:"type",label:t("Create Type"),type:"radio",options:this.createTypeList},{name:"name",label:t("Name"),type:"input-name",required:!0,isKeypair:!0},{name:"public_key",label:t("Public Key"),type:"textarea-from-file",hidden:a,required:!a}]}}a.CreateKeypair=C,(0,m.default)(C,"id","create-keypair"),(0,m.default)(C,"title",t("Create Keypair")),(0,m.default)(C,"policy","os_compute_api:os-keypairs:create"),(0,m.default)(C,"allowed",(()=>p.default.resolve(!0)));var k=(0,g.inject)("rootStore")((0,g.observer)(C));a.default=k},1448:function(e,t,a){var r=a(3386);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},1451:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0,r(1117);var o=s(r(1118)),u=s(r(1213));r(1115);var d=s(r(1116));r(387);var c=s(r(220));r(1185);var f=s(r(1186));r(1124);var p=s(r(1125)),h=s(r(385)),m=s(r(33)),g=s(r(320)),v=s(r(62)),y=s(r(195)),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),_=(r(167),r(513),r(319)),S=s(r(16));function x(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(x=function(e){return e?a:t})(e)}var w=e=>{var{tags:a,onChange:r,maxLength:n,maxCount:i}=e,[l,s]=(0,b.useState)(a),[S,x]=(0,b.useState)(!1),[w,I]=(0,b.useState)(""),[C,k]=(0,b.useState)(-1),[D,T]=(0,b.useState)(""),A=n&&n>0?{maxLength:n}:{},P=i&&i>0||-1;var M=null,E=null,N=e=>{M=e};function R(e){T(e.target.value)}function j(){var e=[...l];e[C]=D,s(e),T(""),k(-1)}function F(){var e=w.toLocaleLowerCase();w&&!(0,g.default)(l).call(l,(t=>t.toLowerCase()===e))&&(-1!==P&&l.length{E&&E.focus()}),[S]),(0,b.useEffect)((()=>{M&&M.focus()}),[C]),(0,b.useEffect)((()=>{r(l)}),[l]),b.default.createElement(o.default,{gutter:[0,8]},(0,v.default)(l).call(l,((e,t)=>{if(C===t)return b.default.createElement(p.default,(0,h.default)({ref:N,style:{width:78,marginRight:8,verticalAlign:"top"},key:e,size:"small",value:D,onChange:R,onBlur:j,onPressEnter:j},A));var a=e.length>20,r=a?"".concat((0,y.default)(e).call(e,0,20),"..."):e,n=b.default.createElement(f.default,{key:e,closable:!0,onClose:()=>{return t=e,void s((0,m.default)(l).call(l,(e=>e!==t)));var t},color:_.projectTagsColors[t%10]},b.default.createElement("span",{style:{whiteSpace:"pre-wrap"},onDoubleClick:a=>{k(t),T(e),a.preventDefault()}},r));return b.default.createElement(d.default,{span:24,key:e},a?b.default.createElement(c.default,{title:b.default.createElement("span",{style:{whiteSpace:"pre-wrap"}},e)},n):n)})),b.default.createElement(d.default,{span:24},S&&b.default.createElement(p.default,(0,h.default)({ref:e=>{E=e},style:{width:78,marginRight:8,verticalAlign:"top"},type:"text",size:"small",value:w,onChange:function(e){I(e.target.value)},onBlur:F,onPressEnter:F},A)),!S&&b.default.createElement(f.default,{onClick:function(){x(!0)}},b.default.createElement(u.default,null)," ",t("New Tag"))))};w.propTypes={tags:S.default.array,onChange:S.default.func,maxLength:S.default.number,maxCount:S.default.number};var I=w;a.default=I},1452:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Volume=void 0;var h=p(r(219)),m=p(r(37)),g=r(382),v=p(r(1114)),y=r(515),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=w(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(386)),_=r(1312),S=r(319),x=p(r(1453));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 I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;t(0,y.getVolumeColumnsList)(this))),(0,m.default)(this,"updateFetchParams",(e=>{if(this.inDetailPage){var{match:t,detail:a}=this.props,{id:r}=t.params,{tenant_id:n,name:i}=a||{};return C(C({},e),{},{serverId:r,serverName:i,projectId:n})}return e}))}init(){this.inDetailPage?(this.store=new _.InstanceVolumeStore,this.downloadStore=this.store):(this.store=b.default,this.downloadStore=new b.VolumeStore)}get policy(){return"volume:get_all"}get name(){return t("volumes")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,h.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?S.emptyActionConfig:this.isAdminPage?this.inDetailPage?x.default.instanceDetailAdminConfig:x.default.adminConfig:this.inDetailPage?x.default.instanceDetailConfig:x.default.actionConfigs}get transitionStatusList(){return y.volumeTransitionStatuses}get isFilterByBackend(){return!this.inDetailPage}get isSortByBackend(){return this.isFilterByBackend}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"created_at"}get searchFilters(){return y.volumeFilters}}a.Volume=k;var D=(0,g.inject)("rootStore")((0,g.observer)(k));a.default=D},1453:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(1454)),l=n(a(3443)),s=n(a(3444)),o=n(a(3445)),u=n(a(3446)),d=n(a(3447)),c=n(a(3448)),f=n(a(3449)),p=n(a(3450)),h=n(a(3451)),m=n(a(1455)),g=n(a(3452)),v=n(a(3453)),y=n(a(3454)),b=n(a(3455)),_=n(a(3456)),S=n(a(3457)),x=n(a(3458)),w=n(a(3459)),I={rowActions:{firstAction:c.default,moreActions:[{action:l.default},{action:w.default},{action:x.default},{action:y.default},{action:m.default},{action:u.default},{action:d.default},{action:f.default},{action:p.default},{action:h.default},{action:_.default},{action:S.default},{action:s.default},{action:o.default}]},batchActions:[s.default],primaryActions:[i.default,b.default]},C={rowActions:{firstAction:c.default,moreActions:[{action:l.default},{action:x.default},{action:y.default},{action:u.default},{action:d.default},{action:f.default},{action:p.default},{action:h.default},{action:_.default},{action:S.default},{action:s.default}]},batchActions:[],primaryActions:[]},k={actionConfigs:I,adminConfig:{rowActions:{firstAction:s.default,moreActions:[{action:g.default},{action:v.default}]},batchActions:[s.default],primaryActions:[]},instanceDetailConfig:C,instanceDetailAdminConfig:{rowActions:{firstAction:g.default,moreActions:[{action:v.default}]},batchActions:[],primaryActions:[]}};t.default=k},1454:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(101)),h=f(r(65)),m=f(r(1315)),g=f(r(62)),v=f(r(1254)),y=f(r(82)),b=f(r(516)),_=f(r(28)),S=f(r(33));r(1157);var x=f(r(1158)),w=f(r(385)),I=f(r(52));r(1313);var C=f(r(405)),k=f(r(37)),D=f(r(0)),T=r(382),A=f(r(1292)),P=r(527),M=r(515),E=f(r(539)),N=f(r(523)),R=f(r(386)),j=f(r(524)),F=f(r(384)),L=f(r(1160)),O=(r(167),r(32)),z=r(1113),B=f(r(4)),V=r(520),q=r(1219),U=r(135),Q=f(r(3441));function G(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function K(e){for(var t=1;t{this.setState({imageTab:e})})),(0,k.default)(this,"onConfirmCancel",(()=>{var{initVolumeType:e}=this.state,{selectedRows:t,selectedRowKeys:a,snapshotId:r}=e,n={selectedRows:t,selectedRowKeys:a,snapshotId:"".concat(r,"-1")};this.setState({initVolumeType:n})})),(0,k.default)(this,"onVolumeTypeChange",(e=>{var{selectedRows:a=[]}=e;if(0===a.length)return(0,M.setCreateVolumeType)(""),void this.setState({multiattach:!1});var{id:r,extra_specs:{multiattach:n="False"}={},name:i}=a[0];if((0,M.setCreateVolumeType)(i),this.sourceTypeIsSnapshot){var{initVolumeType:{selectedRowKeys:l=[]},confirmCount:s=0}=this.state;r!==l[0]&&s<1&&(A.default.warn({title:t("Note: Are you sure you need to modify the volume type?"),content:M.snapshotTypeTip,onCancel:this.onConfirmCancel}),this.setState({confirmCount:1}))}this.setState({multiattach:" True"===n})})),(0,k.default)(this,"onSnapshotChange",(e=>{var{selectedRows:t=[]}=e||{};if(t.length){var a,{origin_data:{volume_type_id:r}={},id:n}=t[0]||{},i=(0,p.default)(a=this.volumeTypes).call(a,(e=>e.id===r));if(i){var l={selectedRowKeys:[r],selectedRows:[i],snapshotId:n};this.setState({initVolumeType:l})}}})),(0,k.default)(this,"onCountChange",(e=>{(0,M.setCreateVolumeCount)(e),this.setState({count:e},(()=>{this.onCountChangeCallback&&this.onCountChangeCallback()}))})),(0,k.default)(this,"getCountMax",(()=>{var{volumes:{left:e=0}={}}=this.getVolumeQuota();return-1===e?1/0:e})),(0,k.default)(this,"onSubmit",(e=>{var t,a,{count:r}=this.state;if(this.message)return h.default.reject(this.message);var{backup:n,image:i,snapshot:l,size:s,availableZone:o,shared:u,name:d,volume_type:c}=e,f={name:d,size:s,availability_zone:"noSelect"!==o?o:null,multiattach:u,volume_type:c.selectedRowKeys[0]};return n&&(0,m.default)(n.selectedRowKeys)&&n.selectedRowKeys.length&&(f.backup_id=n.selectedRowKeys[0]),i&&(0,m.default)(i.selectedRowKeys)&&i.selectedRowKeys.length&&(f.imageRef=i.selectedRowKeys[0]),l&&(0,m.default)(l.selectedRowKeys)&&l.selectedRowKeys.length&&(f.snapshot_id=l.selectedRowKeys[0]),1===r?this.volumeStore.create(f):(0,U.allSettled)((0,g.default)(t=(0,v.default)(a=new Array(r)).call(a,r)).call(t,((e,t)=>{var a,r=K(K({},f),{},{name:(0,y.default)(a="".concat(f.name,"-")).call(a,t+1)});return this.volumeStore.create(r)})))}))}init(){this.state=K(K({},this.state),{},{quotaLoading:!0,count:1,sharedDisabled:!1,confirmCount:0}),this.message="",this.snapshotStore=E.default,this.imageStore=N.default,this.volumeStore=R.default,this.volumeTypeStore=j.default,this.backupStore=L.default,this.getQuota(),this.getAvailZones(),this.getImages(),this.getVolumeTypes()}get listUrl(){return this.getRoutePath("volume")}get name(){return t("create volume")}static allowed(){return h.default.resolve(!0)}get disableSubmit(){var{quotaLoading:e}=this.state;if(e)return!0;var{cinderQuota:t={}}=F.default,{add:a,error:r}=(0,M.getAdd)(t),n=0===a;return n?r!==this.message&&(C.default.error(r),this.message=r):this.message="",n}get instanceName(){var e,t,{name:a}=(0,b.default)(this)||{},{count:r=1}=this.state;return 1===r?a:(0,g.default)(e=(0,v.default)(t=new Array(r)).call(t,r)).call(e,((e,t)=>{var r;return(0,y.default)(r="".concat(a,"-")).call(r,t+1)})).join(", ")}get errorText(){return this.message?t("Unable to create volume: insufficient quota to create resources."):super.errorText}get showQuota(){return!0}getVolumeQuota(){var{quota:e={}}=this.state;return(0,M.getQuota)(e)}get quotaInfo(){return(0,M.getQuotaInfo)(this)}get defaultSize(){return this.quotaIsLimit&&this.maxSize<10?this.maxSize:10}get defaultValue(){var{initVolumeType:e}=this.state;return{source:this.sourceTypes[0],size:this.defaultSize,project:this.currentProjectName,availableZone:(this.availableZones[0]||[]).value,volume_type:e}}get availableZones(){var e,a,r=[{label:t("Not select"),value:"noSelect"}];return(0,_.default)(e=(0,S.default)(a=this.volumeStore.availabilityZones||[]).call(a,(e=>e.zoneState.available))).call(e,(e=>{r.push({value:e.zoneName,label:e.zoneName})})),r}get images(){var e,{imageTab:t}=this.state,a=(0,S.default)(e=this.imageStore.list.data||[]).call(e,(e=>!(!(0,V.canImageCreateInstance)(e)&&!(0,V.canImageCreateIronicInstance)(e))&&(t?(0,V.getImageOS)(e)===t&&"active"===e.status:e)));return(0,g.default)(a).call(a,(e=>K(K({},e),{},{key:e.id})))}get volumeTypes(){return(0,O.toJS)(this.volumeTypeStore.list.data||[])}get backups(){var e;return(0,g.default)(e=this.backupStore.list.data||[]).call(e,(e=>K(K({},e),{},{key:e.id})))}get sourceTypes(){return[{label:t("Blank Volume"),value:"blank-volume"},{label:t("Image"),value:"image"},{label:t("Snapshot"),value:"snapshot"}]}get quotaIsLimit(){var{gigabytes:{limit:e}={}}=this.getVolumeQuota();return-1!==e}get maxSize(){var{gigabytes:{left:e=0}={}}=this.getVolumeQuota();return-1===e?1e3:e}getAvailZones(){this.volumeStore.fetchAvailabilityZoneList()}getImages(){this.imageStore.fetchList({all_projects:this.hasAdminRole})}getVolumeTypes(){var e=this;return(0,I.default)((function*(){var t=yield e.volumeTypeStore.fetchList();if(t.length>0){var a=t[0],{id:r,name:n}=a,i={selectedRowKeys:[r],selectedRows:[a]};(0,M.setCreateVolumeType)(n),e.setState({initVolumeType:i,volume_type:a},(()=>{e.updateFormValue("volume_type",i),e.updateDefaultValue()}))}}))()}getQuota(){var e=this;return(0,I.default)((function*(){yield(0,M.fetchQuota)(e,0),(0,M.setCreateVolumeSize)(e.defaultSize),e.onCountChange(1),e.updateDefaultValue()}))()}get systemTabs(){return(0,V.getImageSystemTabs)()}getVolumeTypeExtra(){if(this.sourceTypeIsSnapshot)return M.snapshotTypeTip;var{multiattach:e=!1}=this.state;return e?M.multiTip:void 0}get sourceTypeIsImage(){var{source:e}=this.state;return e===this.sourceTypes[1].value}get sourceTypeIsSnapshot(){var{source:e}=this.state;return e===this.sourceTypes[2].value}getDiskMinSize(){var e=0;if(this.sourceTypeIsImage){var{min_disk:t=0,size:a=0}=this.state.image||{},r=Math.ceil(a/1024/1024/1024);e=Math.max(t,r,1)}else if(this.sourceTypeIsSnapshot){var{size:n=0}=this.state.snapshot||{};e=n}return Math.max(e,1)}get nameForStateUpdate(){return["source","image","snapshot","size","volume_type"]}get formItems(){var e,{initVolumeType:a}=this.state,r=this.getDiskMinSize();return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),options:this.availableZones,tip:t("Unless you know clearly which AZ to create the volume in, you don not need to fill in here.")},{type:"divider"},{name:"source",label:t("Data Source Type"),type:"radio",options:this.sourceTypes,required:!0,isWrappedValue:!0},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:this.imageStore.list.isLoading,required:this.sourceTypeIsImage,isMulti:!1,hidden:!this.sourceTypeIsImage,filterParams:[{label:t("Name"),name:"name"}],columns:(0,V.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange},{name:"snapshot",label:t("Snapshot"),type:"select-table",backendPageStore:this.snapshotStore,required:this.sourceTypeIsSnapshot,isMulti:!1,hidden:!this.sourceTypeIsSnapshot,isSortByBack:!0,defaultSortKey:"created_at",defaultSortOrder:"descend",onChange:this.onSnapshotChange,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",render:e=>"".concat(e,"GiB"),sorter:!1},{title:t("Status"),dataIndex:"status",render:e=>M.volumeStatus[e]||"-"},{title:t("Description"),dataIndex:"description",sorter:!1},{title:t("Created At"),dataIndex:"created_at",render:e=>(0,P.getSinceTime)(e)}]},{type:"divider"},K(K({name:"volume_type",label:t("Volume Type"),type:"select-table",tip:t('The volume type needs to set "multiattach" in the metadata to support shared volume attributes.')},q.volumeTypeSelectProps),{},{data:this.volumeTypes,isLoading:this.volumeTypeStore.list.isLoading,required:!0,extra:this.getVolumeTypeExtra(),onChange:this.onVolumeTypeChange,initValue:a}),{name:"size",label:t("Capacity (GiB)"),type:"slider-input",max:this.maxSize,min:r,description:(0,y.default)(e="".concat(r,"GiB-")).call(e,this.maxSize,"GiB"),required:this.quotaIsLimit,hidden:!this.quotaIsLimit,onChange:M.onVolumeSizeChange},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:r,hidden:this.quotaIsLimit,required:!this.quotaIsLimit,onChange:M.onVolumeSizeChange},{type:"divider"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{title:t("Description"),dataIndex:"description"}]}onCountChangeCallback(){}renderFooterLeft(){var{count:e=1}=this.state,a={min:1,max:this.getCountMax(),precision:0,onChange:this.onCountChange,formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return D.default.createElement("div",null,D.default.createElement("span",null,t("Count")),D.default.createElement(x.default,(0,w.default)({},a,{value:e,className:(0,B.default)(Q.default.input,"volume-count")})))}}a.Create=H,(0,k.default)(H,"id","volume-create"),(0,k.default)(H,"title",t("Create Volume")),(0,k.default)(H,"path","/storage/volume/create"),(0,k.default)(H,"policy","volume:create");var W=(0,T.inject)("rootStore")((0,T.observer)(H));a.default=W},1455:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateBackup=void 0;var l=i(r(82)),s=i(r(65)),o=i(r(37)),u=r(382),d=r(1113),c=i(r(1160)),f=r(515),p=r(1220);class h extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{name:a,incremental:r}=e,n={name:a,incremental:r,volume_id:t,force:(0,f.isInUse)(this.item)};return this.store.create(n)}))}get name(){return t("Create backup")}get tips(){return p.createTip}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),incremental:!1}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Backup Name"),type:"input-name",required:!0},{name:"incremental",label:t("Backup Mode"),type:"radio",options:p.backupModeList,tip:p.modeTip}]}init(){this.store=c.default,c.default.setCurrentVolume(this.item),(0,p.fetchQuota)(this)}static get disableSubmit(){return(0,p.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,p.getQuotaInfo)(this)}}a.CreateBackup=h,(0,o.default)(h,"id","create-backup"),(0,o.default)(h,"title",t("Create Backup")),(0,o.default)(h,"policy","backup:create"),(0,o.default)(h,"aliasPolicy","cinder:backup:create"),(0,o.default)(h,"allowed",(e=>s.default.resolve((0,f.isAvailableOrInUse)(e))));var m=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=m},1456:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.PoolStore=void 0;var f=c(a(37)),p=c(a(71)),h=a(47),m=c(a(49)),g=c(a(54));function v(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function y(e){for(var t=1;t{var{keywords:t}=e;return y(y({},(0,p.default)(e,["keywords"])),{},{detail:!0})}}get mapper(){return e=>{var{name:t,capabilities:a={}}=e,r=y({name:t},a),{total_capacity_gb:n,free_capacity_gb:i}=a;return(0,h.isNumber)(n)&&(0,h.isNumber)(i)&&(r.usedGB=(n-i).toFixed(2),r.usedGBPercent=100*(r.usedGB/n).toFixed(2)),r}}}t.PoolStore=b;var _=new b;t.default=_},1457:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.poolColumns=void 0;var l=i(r(82)),s=i(r(0)),o=i(r(1314)),u=[{title:t("Name"),dataIndex:"name"},{title:t("Protocol"),dataIndex:"storage_protocol"},{title:t("Backend Name"),dataIndex:"volume_backend_name",isHideable:!0},{title:t("Storage Capacity(GiB)"),dataIndex:"usedGBPercent",isHideable:!0,render:(e,t)=>{var a;return s.default.createElement(o.default,{value:e,label:(0,l.default)(a="".concat(t.usedGB," / ")).call(a,t.total_capacity_gb)})},stringify:(e,a)=>{var r,n,i,s;return(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.usedGB," / ")).call(n,t("Total"),": ")).call(r,a.total_capacity_gb,")")}}];a.poolColumns=u;var d=u;a.default=d},1458:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(319),l=n(a(3462)),s=n(a(3463)),o=n(a(3464)),u=n(a(3465)),d=n(a(3466)),c=n(a(1459)),f={firstAction:d.default,moreActions:[{action:s.default},{action:u.default},{action:c.default},{action:o.default}]},p={actionConfigs:{rowActions:f,batchActions:[o.default],primaryActions:[l.default]},adminConfigs:{rowActions:{firstAction:o.default},batchActions:[o.default],primaryActions:[l.default]},instanceDetailConfigs:{rowActions:{firstAction:u.default}},instanceDetailAdminConfigs:i.emptyActionConfig,qosDetailConfigs:{rowActions:f},qosDetailAdminConfigs:{rowActions:{firstAction:o.default}}};t.default=p},1459:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateDNAT=void 0;var p=f(r(516)),h=f(r(65)),m=f(r(82)),g=f(r(320)),v=f(r(1194)),y=f(r(518)),b=f(r(1177)),_=f(r(71)),S=f(r(52)),x=f(r(37)),w=f(r(0)),I=r(382),C=(r(513),r(1113)),k=r(47),D=r(1137),T=r(529),A=r(1129),P=r(1151),M=f(r(553)),E=r(1257);function N(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}class R extends C.ModalAction{constructor(){var e;super(...arguments),e=this,(0,x.default)(this,"portsDisableFunc",(e=>0===e.fixed_ips.length)),(0,x.default)(this,"handlePortSelect",function(){var t=(0,S.default)((function*(t){e.setState({fixedIpLoading:!0});var{canReachSubnetIdsWithRouterId:a}=e.state,r=yield(0,P.getInterfaceWithReason)(t.selectedRows),n=(0,A.getPortsAndReasons)(r,a,!0);e.setState({portFixedIPs:n,fixed_ip_address:void 0,fixedIpLoading:!1}),e.formRef.current&&e.formRef.current.resetFields(["fixed_ip_address","internal_port"])}));return function(e){return t.apply(this,arguments)}}()),(0,x.default)(this,"onSubmit",(e=>{var{floatingIp:t,virtual_adapter:{selectedRows:a=[]}={},fixed_ip_address:{selectedRows:r=[]}={}}=e,n=function(e){for(var t=1;t{var{item:t}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id})),this.getFipAlreadyUsedPorts(),this.state={alreadyUsedPorts:[],instanceFixedIPs:[],portFixedIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[]}}getFipAlreadyUsedPorts(){var e=this;return(0,S.default)((function*(){var t=yield M.default.fetchList({fipId:e.item.id});e.setState({alreadyUsedPorts:t||[]})}))()}get instanceName(){return this.item.floating_ip_address||(0,p.default)(this).name}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{floating_ip_address:e}=this.item;return{floatingIp:e}}get formItems(){var{fixed_ip_address:e={selectedRows:[]}}=this.state,a=[{name:"floatingIp",label:t("Floating Ip"),type:"label",icon:w.default.createElement(b.default,null)},{name:"protocol",label:t("Protocol"),type:"select",options:[{label:"TCP",value:"tcp"},{label:"UDP",value:"udp"}],required:!0},{name:"external_port",label:t("External Port"),type:"input-number",min:1,max:65535,required:!0,validator:(e,a)=>{var r;if(!a)return h.default.reject(new Error((0,m.default)(r="".concat(t("Please input")," ")).call(r,t("External Port"))));var{alreadyUsedPorts:n}=this.state;return(0,g.default)(n).call(n,(e=>e.external_port===a))?h.default.reject(new Error(t("The port of this fip is in use, Please change another port."))):h.default.resolve(!0)}},{name:"internal_port",label:t("Internal Port"),type:"input-number",hidden:0===e.selectedRows.length,min:1,max:65535,required:!0,validator:(e,a)=>{var r;if(!a)return h.default.reject(new Error((0,m.default)(r="".concat(t("Please input")," ")).call(r,t("Internal Port"))));var n=this.formRef.current.getFieldsValue(["virtual_adapter","fixed_ip_address"]),i=n.fixed_ip_address.selectedRows[0].fixed_ip_address,l=n.virtual_adapter.selectedRows[0].id,{alreadyUsedPorts:s}=this.state;return(0,g.default)(s).call(s,(e=>e.internal_port===a&&e.internal_port_id===l&&e.internal_ip_address===i))?h.default.reject(new Error(t("A DNAT rule has been created for this port of this IP, please choose another port."))):h.default.resolve(!0)}}],r=A.getPortFormItem.call(this,["compute:nova",""]);r[(0,v.default)(r).call(r,(e=>"virtual_adapter"===e.name))].label=t("Target Port");var n=(0,v.default)(r).call(r,(e=>"fixed_ip_address"===e.name));return r[n].label=t("Target IP Address"),r[n].onChange=e=>{this.setState({fixed_ip_address:e},(()=>{this.formRef.current.resetFields(["internal_port"])}))},(0,y.default)(a).call(a,3,0,...r),a}}a.CreateDNAT=R,(0,x.default)(R,"id","createDNAT"),(0,x.default)(R,"title",t("Create DNAT Rule")),(0,x.default)(R,"policy","create_floatingip_port_forwarding"),(0,x.default)(R,"allowed",(e=>h.default.resolve((0,k.isNull)(e.fixed_ip_address)&&(0,E.enablePFW)())));var j=(0,I.inject)("rootStore")((0,I.observer)(R));a.default=j},1460:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3467)),l=n(a(3468)),s=n(a(3469)),o=n(a(3470)),u=n(a(3471)),d=n(a(3472)),c=n(a(3473)),f=n(a(3474)),p=n(a(1461)),h={actionConfigs:{rowActions:{firstAction:s.default,moreActions:[{action:o.default},{action:c.default},{action:f.default},{action:u.default},{action:d.default},{action:p.default},{},{action:l.default}]},batchActions:[l.default],primaryActions:[i.default]},actionConfigsInDetail:{rowActions:{firstAction:u.default,moreActions:[{action:d.default}]},batchActions:[],primaryActions:[]},noActions:{rowActions:{firstAction:null,moreActions:[]},batchActions:[],primaryActions:[]},adminActions:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=h},1461:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var l=i(r(65)),s=i(r(62)),o=i(r(52)),u=i(r(37)),d=r(382),c=r(1113),f=i(r(521)),p=r(392),h=r(1193),m=r(32),g=r(47);class v extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={},port_security_enabled:a}=e,{id:r}=this.item,n={port:{security_groups:a?t:[],port_security_enabled:a}};return this.securityGroupStore.updatePortSecurityGroup({id:r,reqBody:n})}))}get name(){return t("Manage Security Group")}init(){this.securityGroupStore=new p.SecurityGroupStore,this.currentSecurityGroups=[],this.state.sgInitValue={selectedRowKeys:[],selectedRows:[]},this.detail=null,this.getPortDetail()}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{sgInitValue:e}=this.state,{selectedRowKeys:t=[]}=e||{};return t.length?{port_security_enabled:this.item.port_security_enabled,securityGroup:e}:{}}getPortDetail(){var e=this;return(0,o.default)((function*(){var{id:t,security_groups:a,port_security_enabled:r}=e.item,n=a;a||(n=(yield f.default.fetchDetail({id:t})).security_groups);var i=yield l.default.all((0,s.default)(n).call(n,(t=>e.securityGroupStore.fetchDetail({id:t})))),o={selectedRowKeys:(0,s.default)(n).call(n,(e=>(0,m.toJS)(e))),selectedRows:(0,s.default)(i).call(i,(e=>(0,m.toJS)(e)))};e.setState({sgInitValue:o,port_security_enabled:r}),e.updateFormValue("securityGroup",o),e.updateFormValue("port_security_enabled",r)}))()}get messageHasItemName(){var{item:e}=this.props;return!!e&&e.name}get formItems(){var{sgInitValue:e,port_security_enabled:a}=this.state;return[{name:"port_security_enabled",label:t("Port Security"),type:"switch",onChange:e=>{this.setState({port_security_enabled:e})},required:!0},{name:"securityGroup",label:t("Security Group"),type:"select-table",tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},initValue:e,isMulti:!0,filterParams:h.securityGroupFilter,columns:h.securityGroupColumns,onRow:()=>{},hidden:!a}]}}a.ManageSecurityGroup=v,(0,u.default)(v,"id","manage-security-group"),(0,u.default)(v,"title",t("Manage Security Group")),(0,u.default)(v,"policy","update_port:port_security_enabled"),(0,u.default)(v,"allowed",(e=>l.default.resolve(0===(0,g.get)(e,"origin_data.allowed_address_pairs",[]).length)));var y=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=y},1507:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Credentials=void 0;var p=f(r(62)),h=f(r(219)),m=f(r(37)),g=f(r(0)),v=r(382),y=f(r(1114)),b=r(1324),_=f(r(136)),S=r(3850);function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t[{title:t("ID/Name"),dataIndex:"name",isName:!0,hasNoDetail:!0},{title:t("Project ID/Name"),dataIndex:"project_name"},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Expires At"),dataIndex:"expires_at",valueRender:"toLocalTime",isHideable:!0},{title:t("Roles"),dataIndex:"roles",render:e=>{var t;return(0,p.default)(t=e||[]).call(t,(e=>g.default.createElement("div",{key:e.id},e.name)))},stringify:e=>(0,p.default)(e).call(e,(e=>e.name)).join("\n")}])),(0,m.default)(this,"updateFetchParams",(e=>this.isUserDetail?e:w(w({},e),{},{id:_.default.user.user.id})))}init(){this.store=new b.CredentialStore,this.downloadStore=new b.CredentialStore}get isUserDetail(){var e;return this.inDetailPage&&(0,h.default)(e=this.path).call(e,"user-admin/detail")}get policy(){return"identity:get_application_credential"}get name(){return t("application credential")}get actionConfigs(){return this.isUserDetail?S.detailConfigs:S.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Credentials=I;var C=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=C},1583:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.getValue=void 0;var i=n(a(322)),l=a(47),s=n(a(1285));t.getValue=e=>{if((0,l.isObject)(e))try{return s.default.safeDump(e,{noRefs:!0})}catch(t){return(0,i.default)(e,null,2)}return String(e)}},1584:function(e,t,a){var r=a(1585);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},1585:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__editor--3eLoM {\n min-height: 60vh;\n border-radius: 4px;\n}\n",""]),t.locals={editor:"index__editor--3eLoM"}},1586:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(385)),l=n(a(0)),s=n(a(1286));a(1592),a(1593),a(1594);class o extends l.default.Component{render(){return l.default.createElement(s.default,(0,i.default)({theme:"github",width:"auto",height:"100%",tabSize:2,debounceChangePeriod:200,editorProps:{$blockScrolling:!0},showPrintMargin:!1,wrapEnabled:!0},this.props))}}t.default=o},1594:function(e,t,a){var r=a(1595);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},1595:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* stylelint-disable selector-class-pattern */\n.custom__ace_editor--2x9Bb {\n font-family: Monaco, Menlo, Consolas, 'Courier New', monospace;\n line-height: 20px !important;\n -webkit-font-smoothing: auto;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L {\n color: #fff;\n background-color: #242e42;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_gutter--1cP4P {\n color: #537f7e;\n background-color: #242e42;\n border-right: 1px solid #4a5974;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_variable--ViPst,\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_identifier--249iw,\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_meta--2PQjL.custom__ace_tag--2I4Xk {\n color: #75e0f2;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_keyword--TdUSy {\n color: #fff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_string--3lFMH {\n color: #ebe087;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_constant--bDEu2.custom__ace_numeric--2gqBl {\n color: #bd99ff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_marker-layer--6Ofnc .custom__ace_active-line--3gBy- {\n background-color: #36435c;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_indent-guide--2YcVM {\n padding: 2px 0;\n border-right: 1px dotted #777;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_marker-layer--6Ofnc .custom__ace_selection--1U_DQ {\n background-color: #4a5974;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_comment--1foUc {\n color: #aaa;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_fold--3dVBm:hover {\n background-color: #fff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_line--3FuBW .custom__ace_fold--3dVBm {\n height: auto;\n}\n",""]),t.locals={ace_editor:"custom__ace_editor--2x9Bb","ace-chaos":"custom__ace-chaos--NJP1L",ace_gutter:"custom__ace_gutter--1cP4P",ace_variable:"custom__ace_variable--ViPst",ace_identifier:"custom__ace_identifier--249iw",ace_meta:"custom__ace_meta--2PQjL",ace_tag:"custom__ace_tag--2I4Xk",ace_keyword:"custom__ace_keyword--TdUSy",ace_string:"custom__ace_string--3lFMH",ace_constant:"custom__ace_constant--bDEu2",ace_numeric:"custom__ace_numeric--2gqBl","ace_marker-layer":"custom__ace_marker-layer--6Ofnc","ace_active-line":"custom__ace_active-line--3gBy-","ace_indent-guide":"custom__ace_indent-guide--2YcVM",ace_selection:"custom__ace_selection--1U_DQ",ace_comment:"custom__ace_comment--1foUc",ace_fold:"custom__ace_fold--3dVBm",ace_line:"custom__ace_line--3FuBW"}},1602:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.statusMap=void 0;var n={500:t("Internal Server Error (code: 500) "),501:t("Not Implemented (code: 501) "),502:t("Bad Gateway (code: 502) "),503:t("Service Unavailable (code: 503) "),504:t("Gateway Time-out (code: 504) "),505:t("HTTP Version not supported (code: 505) ")};a.statusMap=n},1603:function(e,t,a){var r=a(1604);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},1604:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__notify--2uuPy .ant-notification-notice-icon {\n font-size: 18px;\n}\n.index__notify--2uuPy .ant-notification-notice-message {\n font-size: 12px;\n word-break: break-all;\n}\n.index__notify--2uuPy .ant-notification-notice-with-icon .ant-notification-notice-message {\n margin-left: 32px;\n}\n.index__code-editor--D2lB7 {\n height: 400px !important;\n min-height: 400px !important;\n}\n",""]),t.locals={notify:"index__notify--2uuPy","code-editor":"index__code-editor--D2lB7"}},1909:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\n/* stylelint-disable no-duplicate-selectors */\n/* stylelint-disable */\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.style__container--3Y09L {\n height: 100%;\n padding: 44px;\n overflow: auto;\n}\n.style__container--3Y09L .style__main-icon--1ECQa {\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: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.style__container--3Y09L .style__action-button--2uJsF {\n color: #a3a3a3;\n font-size: 18px;\n line-height: 88px;\n background: #fff;\n border-radius: 4px;\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 opacity: 0.9;\n}\n.style__container--3Y09L .style__action-icon--3cQV7 {\n display: block;\n width: 50px;\n height: 50px;\n margin-left: 60px;\n}\n.style__container--3Y09L .ant-card {\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.style__container--3Y09L .ant-card-head {\n font-size: 16px;\n}\n.style__container--3Y09L .style__left--2FbNm {\n height: 100%;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB {\n display: table-cell;\n vertical-align: bottom;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB .style__text--2ZnVb {\n color: #252525;\n font-size: 21px;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB .style__action--1T3zl {\n margin-left: 40px;\n color: #000;\n font-size: 16px;\n}\n.style__container--3Y09L .style__right--18Zal {\n height: 100%;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ {\n position: relative;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ .style__meta--VzBqf {\n margin-bottom: 16px;\n padding-bottom: 16px;\n border-bottom: 1px dashed #e8e8e8;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ .ant-descriptions-item-label {\n width: 130px;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ .style__role-button--1PSuQ {\n position: absolute;\n right: 24px;\n bottom: 0;\n}\n.style__outer--GK3KD {\n position: relative;\n width: 100%;\n height: 10rem;\n overflow: hidden;\n font-size: 12px;\n}\n.style__outer--GK3KD .style__inner--19_DW {\n position: absolute;\n left: 0;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: scroll;\n}\n.style__outer--GK3KD .style__inner--19_DW::-webkit-scrollbar {\n display: none;\n}\n.style__bottom--1cuhB {\n border-radius: 4px;\n}\n.style__bottom--1cuhB .ant-card {\n -webkit-box-shadow: unset;\n box-shadow: unset;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__text--2ZnVb {\n color: #252525;\n font-size: 16px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 {\n margin-left: 22px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 .ant-badge-status-dot {\n width: 10px;\n height: 10px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 .ant-badge-status-text {\n font-size: 14px;\n}\n.style__bottom--1cuhB .style__action--1T3zl {\n float: right;\n margin-top: 6px;\n color: #0068ff;\n font-size: 12px;\n cursor: pointer;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 {\n padding: 8px;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .ant-card-head {\n border-bottom: none;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .ant-card-head .ant-card-head-title {\n padding-bottom: 0;\n color: #565656;\n font-weight: 500;\n font-size: 16px;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .style__progress-title--1khEP {\n overflow: hidden;\n font-size: 14px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n",""]),t.locals={container:"style__container--3Y09L","main-icon":"style__main-icon--1ECQa","action-button":"style__action-button--2uJsF","action-icon":"style__action-icon--3cQV7",left:"style__left--2FbNm",top:"style__top--3UBpB",title:"style__title--18DKB",text:"style__text--2ZnVb",action:"style__action--1T3zl",right:"style__right--18Zal",project:"style__project--2WhsJ",meta:"style__meta--VzBqf","role-button":"style__role-button--1PSuQ",outer:"style__outer--GK3KD",inner:"style__inner--19_DW",bottom:"style__bottom--1cuhB",badge:"style__badge--1KS_6",content:"style__content--1BVOG",card:"style__card--3BNS7","progress-title":"style__progress-title--1khEP"}},3351:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=void 0,r(538);var h=p(r(399)),m=p(r(37));r(1238);var g=p(r(1239)),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=S(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(0)),y=(r(167),r(319)),b=r(527),_=p(r(3352));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 x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var t={value:e};1!==e&&(t.start=void 0,t.end=void 0),this.setState(w({},t),(()=>{this.onChange(t)}))})),(0,m.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(w(w({},this.state),e))})),(0,m.default)(this,"onDateChange",(e=>{var t={start:e?e[0]:null,end:e?e[1]:null};this.setState(w({},t),(()=>{this.onChange(t)}))}));var{defaultValue:t}=e;this.state={defaultValue:void 0!==t?t:C,value:null,start:null,end:null}}componentDidMount(){var{defaultValue:e,value:t}=this.state;this.onChangeType(t||e)}get options(){return[{label:t("All"),value:0},{label:t("In the last hour"),value:C},{label:t("Recently a day"),value:k},{label:t("In the last 7 days"),value:D},{label:t("In the last 30 days"),value:30*k},{label:t("Custom"),value:1}]}render(){var{defaultValue:e,value:t}=this.state;return v.default.createElement("div",{className:_.default.wrapper},v.default.createElement(h.default.Group,{defaultValue:e,value:t,options:this.options,buttonStyle:"solid",optionType:"button",onChange:e=>this.onChangeType(e.target.value)}),1===t&&v.default.createElement(I,{onCalendarChange:this.onDateChange,format:b.timeFormatStr.YMDHm,showTime:!0}))}}a.default=T},3352:function(e,t,a){var r=a(3353);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3353:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__wrapper--2C8q2 {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n min-width: 450px;\n}\n",""]),t.locals={wrapper:"index__wrapper--2C8q2"}},3354:function(e,t,a){"use strict";var r=a(219),n=a(156),i=a(19),l=a(25),s=a(21);i(t,"__esModule",{value:!0}),t.default=void 0;var o=s(a(62)),u=s(a(576));a(1144);var d=s(a(393)),c=s(a(37)),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=g(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),p=s(a(16)),h=(a(167),a(513),a(47)),m=s(a(3355));function g(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(g=function(e){return e?a:t})(e)}class v extends f.Component{constructor(){super(...arguments),(0,c.default)(this,"changeVisibleList",(e=>{var t=e.key,{value:a,onChange:n}=this.props,[...i]=a;r(h)(i,t)?(0,h.remove)(i,(e=>e===t)):i.push(t),n(i)}))}isVisibleOption(e){var{value:t}=e,{value:a}=this.props;return r(h)(a,t)}renderHeader(){var{title:e}=this.props;return(0,h.isUndefined)(e)?null:f.default.createElement("header",null,e)}renderOptions(){var{options:e}=this.props,t=(0,o.default)(e).call(e,(e=>this.renderOption(e)));return f.default.createElement(d.default,{onClick:this.changeVisibleList,theme:"light"},t)}renderOption(e){var t=this.isVisibleOption(e),{value:a,label:r}=e,n=t?f.default.createElement(u.default,null):f.default.createElement("span",{className:m.default.empty});return f.default.createElement(d.default.Item,{key:a},n,r)}render(){var{className:e}=this.props;return f.default.createElement("div",{className:e},this.renderHeader(),this.renderOptions())}}(0,c.default)(v,"propTypes",{value:p.default.array,onChange:p.default.func.isRequired,className:p.default.string,title:p.default.node,options:p.default.array.isRequired}),(0,c.default)(v,"defaultProps",{value:[]});var y=v;t.default=y},3355:function(e,t,a){var r=a(3356);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3356:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__empty--2DMK4 {\n display: inline-block;\n width: 24px;\n}\n",""]),t.locals={empty:"index__empty--2DMK4"}},3357:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=x,r(387);var l=i(r(220));r(535);var s=i(r(397));r(318);var o=i(r(317)),u=i(r(547)),d=i(r(385));r(1144);var c=i(r(393)),f=i(r(62)),p=i(r(195)),h=i(r(0)),m=(r(167),r(513),i(r(16))),g=r(135),v=i(r(1291)),y=r(1290),b=i(r(3358)),_=(e,t)=>{var{id:a,title:r,actionType:n,buttonType:i,buttonText:l,isDanger:s}=e;return{id:a,title:r,name:l||r,actionType:n,buttonType:i,isDanger:s,action:e,isAllowed:t.length>0,items:t,isBatch:!0,needHide:!1}};function S(e){var{actions:a,selectedItems:r,onFinishAction:n,containerProps:i,onClickAction:l,onCancelAction:p}=e;if(a.length<1)return null;var m=(0,f.default)(a).call(a,(e=>{var t="table-batch-more-".concat((0,g.generateId)()),a=_(e,r),{isDanger:s,name:o}=a;return a.onFinishAction=n,a.isDanger=!!s,r.length?h.default.createElement(c.default.Item,{key:t},h.default.createElement(v.default,(0,d.default)({},a,{buttonType:"link",onFinishAction:n,containerProps:i,onClickAction:l,onCancelAction:p,buttonClassName:b.default["more-action-btn"]}))):h.default.createElement(c.default.Item,{key:t,disabled:!0,style:{textAlign:"center"}},o)})),y=h.default.createElement(c.default,null,m);return h.default.createElement(s.default,{overlay:y,overlayClassName:b.default["table-batch-menu"]},h.default.createElement(o.default,{type:"primary"},t("More Actions")," ",h.default.createElement(u.default,null)))}function x(e){var a,r,{selectedItems:n,visibleButtonNumber:i,batchActions:s,onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b,resourceName:x,isAdminPage:w}=e,I=[],C=[],k=(0,y.getActionsByPolicy)({actions:s,containerProps:c,isAdminPage:w});return i{var{isDanger:a=!1,buttonType:r="default"}=e;return n&&0!==n.length?h.default.createElement(v.default,(0,d.default)({},_(e,n),{key:"table-batch-action-".concat((0,g.generateId)()),onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b})):h.default.createElement(l.default,{title:t("Please select {name} first",{name:x}),key:"tooltip-".concat((0,g.generateId)())},h.default.createElement(o.default,{type:r,disabled:!0,danger:a},e.buttonText||e.title))})),a=h.default.createElement(S,{actions:C,selectedItems:n,onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b}),h.default.createElement(h.default.Fragment,null,r,a)}x.defaultProps={visibleButtonNumber:1},x.prototypes={visibleButtonNumber:m.default.number}},3358:function(e,t,a){var r=a(3359);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3359:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__table-action--1o0Rg {\n margin-right: 5px;\n}\n.index__more-action-btn--oi5mL {\n width: 100%;\n text-align: center;\n}\n.index__table-batch-menu--39tMs .ant-dropdown-menu-item {\n padding-right: 0;\n padding-left: 0;\n}\n",""]),t.locals={"table-action":"index__table-action--1o0Rg","more-action-btn":"index__more-action-btn--oi5mL","table-batch-menu":"index__table-batch-menu--39tMs"}},3360:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(62)),u=s(r(219)),d=s(r(82)),c=s(r(28)),f=s(r(65));r(535);var p=s(r(397));r(1144);var h=s(r(393)),m=s(r(556));r(1139);var g=s(r(1140));r(387);var v=s(r(220));r(318);var y=s(r(317)),b=s(r(1298)),_=s(r(52)),S=s(r(37)),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=M(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),w=s(r(16)),I=s(r(1217)),C=(r(513),r(167),r(47)),k=r(3361),D=r(135),T=s(r(1145)),A=s(r(1292)),P=s(r(3362));function M(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(M=function(e){return e?a:t})(e)}class E extends x.Component{constructor(e){var a;super(e),a=this,(0,S.default)(this,"getSimpleValue",((e,t,a)=>{var r,n;return(0,C.isArray)(e)?(0,o.default)(e).call(e,((e,r)=>{if(x.default.isValidElement(e))try{return t[a][r]}catch(e){return""}return e})).join("\n"):(0,C.isObject)(e)?x.default.isValidElement(e)?(0,u.default)(n=[void 0,"",null]).call(n,t[a])?"-":t[a].toString():t[a]:(0,u.default)(r=[void 0,"",null]).call(r,e)?"-":e})),(0,S.default)(this,"getColumnData",((e,t)=>{var{dataIndex:a,render:r,valueRender:n,stringify:i}=t,{getValueRenderFunc:l}=this.props,s=(0,C.get)(e,a);if(!r&&!n&&!i)return this.getSimpleValue(s,e,a);if(i)return i(s,e);if(n){var o=l(n);return this.getSimpleValue(o(s,e),e,a)}return r?this.getSimpleValue(r(s,e),e,a):void 0})),(0,S.default)(this,"confirmExportMax",(()=>{var{totalMax:e,total:a}=this.props;A.default.warn({title:t("Are you sure to download data?"),content:t("The total amount of data is { total }, and the interface can support downloading { totalMax } pieces of data. If you need to download all the data, please contact the administrator.",{totalMax:e,total:a}),onCancel:this.onConfirmCancel,onOk:this.beginDownload})})),(0,S.default)(this,"downloadAllData",(()=>{var{total:e,totalMax:t}=this.props;e&&e>t?this.confirmExportMax():this.beginDownload()})),(0,S.default)(this,"getFileName",(e=>{var a,r,n,i,l=(0,D.toLocalTimeFilter)((new Date).getTime()),{resourceName:s,extraName:o}=this.props,u=o?(0,d.default)(a="".concat(o,"-")).call(a,s):s;return e?(0,d.default)(r=(0,d.default)(n="".concat(u,"-")).call(n,t("all"),"-")).call(r,l,".csv"):(0,d.default)(i="".concat(u,"-")).call(i,l,".csv")})),(0,S.default)(this,"exportCurrentData",((e,a)=>{var r=this.getDownloadHeader(),n=this.getDownloadData(),i=new k.Parser({fields:r}).parse(n),l=new Blob(["\ufeff"+i],{type:"text/plain;charset=utf-8"}),s=a?this.getFileName("all"):this.getFileName();I.default.saveAs(l,s),a?T.default.success(t("All data downloaded.")):T.default.success(t("Current data downloaded."))})),(0,S.default)(this,"exportCurrentDataAll",(()=>{this.exportCurrentData(null,!0)})),(0,S.default)(this,"exportAllData",(()=>{var e=this.getDownloadHeader(),a=this.getDownloadDataAll(),r=new k.Parser({fields:e}).parse(a),n=new Blob(["\ufeff"+r],{type:"text/plain;charset=utf-8"}),i=this.getFileName("all");I.default.saveAs(n,i),T.default.success(t("All data downloaded."))})),(0,S.default)(this,"cancelDownload",(()=>{this.setState({isDownloading:!1},(()=>{var{onFinishDownload:e}=this.props;e&&e()})),T.default.warn(t("Download canceled!"))})),(0,S.default)(this,"beginDownload",(()=>{this.setState({isDownloading:!0,percent:0,current:1,allData:[]},(()=>{var{onBeginDownload:e}=this.props;e&&e(),this.getDownloadDataForAll()}))})),(0,S.default)(this,"finishDownload",(()=>{this.setState({isDownloading:!1},(()=>{this.exportAllData();var{onFinishDownload:e}=this.props;e&&e()}))})),(0,S.default)(this,"getDownloadDataForAll",(0,_.default)((function*(){var{current:e,allData:t,isDownloading:r}=a.state,{totalMax:n}=a.props,i=Math.min(a.total||0,n);if(r){var{getData:l}=a.props,s=yield l({page:e,limit:a.pageSize}),o=[...t,...s];if(s.length=i)a.setState({allData:o,percent:100},(()=>{a.finishDownload()}));else{var u=0;(u=i?Math.floor(o.length/i*100):10*e)>100&&(u=100),a.setState({allData:o,current:e+1,percent:u},(()=>{a.getDownloadDataForAll()}))}}}))),this.state={isDownloading:!1,current:1,allData:[]}}get pageSize(){return 100}get total(){return this.props.total}getDownloadHeader(){var{columns:e}=this.props;return(0,o.default)(e).call(e,(e=>({label:e.title,value:e.dataIndex,default:""})))}getDownloadData(){var{columns:e,data:t}=this.props;return(0,o.default)(t).call(t,(t=>{var a={};return(0,c.default)(e).call(e,(e=>{var r=this.getColumnData(t,e);a[e.dataIndex]=r})),a}))}getDownloadDataAll(){var{columns:e}=this.props,{allData:t}=this.state;return(0,o.default)(t).call(t,(t=>{var a={};return(0,c.default)(e).call(e,(e=>{var r=this.getColumnData(t,e);a[e.dataIndex]=r})),a}))}renderDownloadCurrent(){return x.default.createElement(v.default,{title:t("Download all data")},x.default.createElement(y.default,{type:"default",onClick:this.exportCurrentDataAll,icon:x.default.createElement(b.default,null)}))}renderProgress(){var{isDownloading:e,percent:t}=this.state;return e?x.default.createElement(g.default,{percent:t,status:"active",className:P.default.progress}):null}renderCancelBtn(){var{isDownloading:e}=this.state;return e?x.default.createElement(v.default,{title:t("Cancel Download")},x.default.createElement(y.default,{type:"danger",shape:"circle",onClick:this.cancelDownload,icon:x.default.createElement(m.default,null),size:"small"})):null}renderDownloadAll(){var e=x.default.createElement(h.default,null,x.default.createElement(h.default.Item,{key:"current",onClick:this.exportCurrentData},t("Download current data")),x.default.createElement(h.default.Item,{key:"all",onClick:this.downloadAllData},t("Download all data")));return x.default.createElement(x.default.Fragment,null,x.default.createElement(p.default,{overlay:e},x.default.createElement(y.default,{type:"default",icon:x.default.createElement(b.default,null)})),this.renderProgress(),this.renderCancelBtn())}render(){var{total:e,data:t}=this.props;return e===t.length?this.renderDownloadCurrent():this.renderDownloadAll()}}a.default=E,(0,S.default)(E,"propTypes",{columns:w.default.array,data:w.default.array,total:w.default.number,getValueRenderFunc:w.default.func.isRequired,resourceName:w.default.string,extraName:w.default.string,getData:w.default.func,totalMax:w.default.number}),(0,S.default)(E,"defaultProps",{columns:[],data:[],total:0,totalMax:1e4,resourceName:"",extraName:"",getData:()=>f.default.resolve({data:{items:[],count:0}})})},3362:function(e,t,a){var r=a(3363);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3363:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__progress--1I8an {\n width: 100px;\n margin-right: 10px;\n}\n",""]),t.locals={progress:"index__progress--1I8an"}},3364:function(e,t,a){var r=a(3365);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3365:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__table--33j8W {\n overflow: hidden;\n background-color: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 4px 8px 0 rgba(36, 46, 66, 0.06);\n box-shadow: 0 4px 8px 0 rgba(36, 46, 66, 0.06);\n}\n.index__table--33j8W .ant-table-container {\n -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n}\n.index__table--33j8W .ant-table-pagination.ant-pagination {\n margin: 0;\n padding: 8px 16px;\n}\n.index__button--3bdor {\n min-width: 96px;\n margin-left: 10px;\n}\n.index__select-title--1m-fB {\n padding: 2px;\n}\n.index__cancel-select--1WxJX {\n color: #fff;\n}\n.index__create--2BjrH {\n min-width: 96px;\n margin-left: 12px;\n}\n.index__action--2MndJ {\n padding: 0 4px;\n color: #329dce;\n font-weight: 600;\n cursor: pointer;\n}\n.index__column-menu--3pO2n {\n width: 160px;\n overflow: hidden;\n border-radius: 4px;\n -webkit-box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.2);\n}\n.index__column-menu--3pO2n .ant-menu-vertical > .ant-menu-item {\n height: 30px;\n line-height: 30px;\n}\n.index__custom-button--3b70- {\n margin-left: 0;\n}\n.index__table-header--3WB0r {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.index__table-header-btns--2QPSM {\n position: relative;\n display: inline-block;\n margin-bottom: 16px;\n}\n.index__table-header-btns--2QPSM button {\n margin-right: 10px;\n}\n.index__table-header-btns--2QPSM .ant-btn[disabled] {\n -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.045);\n box-shadow: 0 2px 0 rgba(0, 0, 0, 0.045);\n}\n.index__search-row--7P1c7 {\n float: right;\n min-width: 350px;\n}\n.index__search-input--1izmf {\n width: 288px;\n height: 32px;\n}\n",""]),t.locals={table:"index__table--33j8W",button:"index__button--3bdor","select-title":"index__select-title--1m-fB","cancel-select":"index__cancel-select--1WxJX",create:"index__create--2BjrH",action:"index__action--2MndJ","column-menu":"index__column-menu--3pO2n","custom-button":"index__custom-button--3b70-","table-header":"index__table-header--3WB0r","table-header-btns":"index__table-header-btns--2QPSM","search-row":"index__search-row--7P1c7","search-input":"index__search-input--1izmf"}},3366:function(e,t,a){var r=a(3367);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3367:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--3q1S2 {\n min-height: calc(100vh - 108px);\n margin-top: 16px;\n padding: 0 16px;\n}\n.index__hint--3yEH0 {\n margin-bottom: 16px;\n}\n.index__hints--1QRzH .ant-alert-warning {\n background-color: #fffbe6;\n border: 1px solid #ffe58f;\n}\n.index__hints--1QRzH .ant-alert-warning .ant-alert-icon {\n color: #faad14;\n}\n",""]),t.locals={wrapper:"index__wrapper--3q1S2",hint:"index__hint--3yEH0",hints:"index__hints--1QRzH"}},3368:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMThweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMTggMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+bG9jazwvdGl0bGU+CiAgICA8ZyBpZD0i6K6+6K6h6KeE6IyDIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ibG9jayIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTAuMDAwMDAwLCAwLjAwMDAwMCkiIGZpbGw9IiNFQjM1NEQiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMi4zOTk0MDY2LDkuNzYzMzE4ODEgTDE1LjA2MjEzMTksOS43OTg4MTMxIEwxNS4wNjIxMzE5LDcuMDI2OTIzMDggQzE1LjA2MjEzMTksMi43NTc2OTIzMSAxMi42MjMwNTQ0LDAgOC44NDkwOTg1NiwwIEM1LjA3NTE0MjczLDAgMi42MzYwODc3NCwyLjc1NzY5MjMxIDIuNjM2MDg3NzQsNy4wMjY5MjMwOCBMMi42MzYwODc3NCw5Ljc2MzMxODgxIEw1LjI5ODgxMzEsOS43NjMzMTg4MSBMNS4yOTg4MTMxLDcuMDI2OTIzMDggQzUuMjk4ODEzMSw1LjcxNDE5NzcyIDUuNjQ0OTY2OTUsMi42NjI3MjUzNiA4Ljg0OTA5ODU2LDIuNjYyNzI1MzYgQzExLjkzNzg2ODEsMi42NjI3MjUzNiAxMi4zOTk0MDY2LDUuMzk3MzQwNzUgMTIuMzk5NDA2Niw3LjAyNjkyMzA4IEwxMi4zOTk0MDY2LDkuNzYzMzE4ODEgWiIgaWQ9Iui3r+W+hCI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMTUuMDg4NzQ3LDkuNzk4ODEzMSBMMi42NjI3MjUzNiw5Ljc5ODgxMzEgQzEuMTkyOTAxMTUsOS43OTg4MTMxIDAsMTAuOTkxNzE0MiAwLDEyLjQ2MTUzODUgTDAsMjEuMzM3Mjc0NiBDMCwyMi44MDcwOTg5IDEuMTkyOTAxMTUsMjQgMi42NjI3MjUzNiwyNCBMMTUuMDg4NzQ3LDI0IEMxNi41NTg1NzEyLDI0IDE3Ljc1MTQ3MjQsMjIuODA3MDk4OSAxNy43NTE0NzI0LDIxLjMzNzI3NDYgTDE3Ljc1MTQ3MjQsMTIuNDYxNTM4NSBDMTcuNzUxNDcyNCwxMC45OTE3MzY4IDE2LjU1ODU3MTIsOS43OTg4MTMxIDE1LjA4ODc0Nyw5Ljc5ODgxMzEgWiBNOS43NjMyOTYyOCwxNy41NDExMjA4IEw5Ljc2MzI5NjI4LDE5LjU2MjEzMTkgQzkuNzYzMjk2MjgsMjAuMDUxMTY0NCA5LjM2NDc5MTE3LDIwLjQ0OTcxNDUgOC44NzU3MzYxOCwyMC40NDk3MTQ1IEM4LjM4NjY4MTE5LDIwLjQ0OTcxNDUgNy45ODgxNTM1NSwyMC4wNTExODY5IDcuOTg4MTUzNTUsMTkuNTYyMTMxOSBMNy45ODgxNTM1NSwxNy41NDExMjA4IEM3LjQ1OTE2NDY3LDE3LjIzMzE0MyA3LjEwMDU5MzQ1LDE2LjY2Nzc1ODQgNy4xMDA1OTM0NSwxNi4wMTE4MjM5IEM3LjEwMDU5MzQ1LDE1LjAzMTk1NjEgNy44OTU4NDU4NiwxNC4yMzY2ODEyIDguODc1NzM2MTgsMTQuMjM2NjgxMiBDOS44NTU2MjY1MSwxNC4yMzY2ODEyIDEwLjY1MDkwMTUsMTUuMDMxOTU2MSAxMC42NTA5MDE1LDE2LjAxMTg0NjUgQzEwLjY1MDkwMTUsMTYuNjY2ODU3IDEwLjI5MjMwNzcsMTcuMjMzMTQzIDkuNzYzMjk2MjgsMTcuNTQxMTQzMyBMOS43NjMyOTYyOCwxNy41NDExMjA4IFoiIGlkPSLlvaLnirYiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg=="},3369:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+amllc3VvPC90aXRsZT4KICAgIDxnIGlkPSLorr7orqHop4TojIMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSIzLi1JY29uIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNzguMDAwMDAwLCAtNzI5LjAwMDAwMCkiIGZpbGw9IiM1MTUxNTEiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJqaWVzdW8iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDc4LjAwMDAwMCwgNzI5LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTEwLjE1MzgyODEsNy4zMDggTDEwLjE1MzgyODEsOC4zMDc3MDMxMiBMMTIuOTIzMDg1OSw4LjMwNzcwMzEyIEwxMi45MjMwODU5LDcuMzA4IEMxMi45MjMwODU5LDIuODY4IDEwLjM4NjQ0NTMsMCA2LjQ2MTUzMTI1LDAgQzIuNTM2NjE3MTksMCAwLDIuODY4IDAsNy4zMDggTDAsMTAuMTUzODUxNiBMMi43NjkyMzQzNywxMC4xNTM4NTE2IEwyLjc2OTIzNDM3LDcuMzA4IEMyLjc2OTIzNDM3LDUuOTQyNzY1NjIgMy4xMjkyMzQzOCwyLjc2OTIzNDM3IDYuNDYxNTMxMjUsMi43NjkyMzQzNyBDOS42NzM4NTE1NiwyLjc2OTIzNDM3IDEwLjE1Mzg1MTYsNS42MTMyMzQzOCAxMC4xNTM4NTE2LDcuMzA4IEwxMC4xNTM4MjgxLDcuMzA4IFoiIGlkPSLot6/lvoQiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0yMS4yMzA3NjU2LDkuMjMwNzY1NjMgTDguMzA3NzAzMTIsOS4yMzA3NjU2MyBDNi43NzkwODU5NCw5LjIzMDc2NTYzIDUuNTM4NDY4NzUsMTAuNDcxMzgyOCA1LjUzODQ2ODc1LDEyIEw1LjUzODQ2ODc1LDIxLjIzMDc2NTYgQzUuNTM4NDY4NzUsMjIuNzU5MzgyOCA2Ljc3OTA4NTk0LDI0IDguMzA3NzAzMTIsMjQgTDIxLjIzMDc2NTYsMjQgQzIyLjc1OTM4MjgsMjQgMjQsMjIuNzU5MzgyOCAyNCwyMS4yMzA3NjU2IEwyNCwxMiBDMjQsMTAuNDcxNDA2MyAyMi43NTkzODI4LDkuMjMwNzY1NjMgMjEuMjMwNzY1Niw5LjIzMDc2NTYzIFogTTE1LjY5MjI5NjksMTcuMjgyNzY1NiBMMTUuNjkyMjk2OSwxOS4zODQ2MTcyIEMxNS42OTIyOTY5LDE5Ljg5MzIxMDkgMTUuMjc3ODUxNiwyMC4zMDc3MDMxIDE0Ljc2OTIzNDQsMjAuMzA3NzAzMSBDMTQuMjYwNjE3MiwyMC4zMDc3MDMxIDEzLjg0NjE0ODQsMTkuODkzMjM0NCAxMy44NDYxNDg0LDE5LjM4NDYxNzIgTDEzLjg0NjE0ODQsMTcuMjgyNzY1NiBDMTMuMjk2LDE2Ljk2MjQ2ODcgMTIuOTIzMDg1OSwxNi4zNzQ0Njg4IDEyLjkyMzA4NTksMTUuNjkyMjk2OSBDMTIuOTIzMDg1OSwxNC42NzMyMzQ0IDEzLjc1MDE0ODQsMTMuODQ2MTQ4NCAxNC43NjkyMzQ0LDEzLjg0NjE0ODQgQzE1Ljc4ODMyMDMsMTMuODQ2MTQ4NCAxNi42MTU0MDYyLDE0LjY3MzIzNDQgMTYuNjE1NDA2MiwxNS42OTIzMjAzIEMxNi42MTU0MDYyLDE2LjM3MzUzMTMgMTYuMjQyNDY4OCwxNi45NjI0Njg3IDE1LjY5MjI5NjksMTcuMjgyNzg5MSBMMTUuNjkyMjk2OSwxNy4yODI3NjU2IFoiIGlkPSLlvaLnirYiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+"},3381:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ConfirmStep=void 0;var l=i(r(65)),s=i(r(82)),o=i(r(62)),u=i(r(1446)),d=i(r(33)),c=i(r(219));r(1117);var f=i(r(1118));r(1115);var p=i(r(1116)),h=i(r(37)),m=i(r(0)),g=r(382),v=i(r(1121)),y=r(1120);r(167);class b extends v.default{constructor(){super(...arguments),(0,h.default)(this,"allowed",(()=>l.default.resolve()))}init(){}get title(){return"ConfirmStep"}get name(){return"ConfirmStep"}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}getDisk(e){var t,a,{size:r,typeOption:n,deleteTypeLabel:i}=e;return(0,s.default)(t=(0,s.default)(a="".concat(n.label," ")).call(a,r,"GiB ")).call(t,i)}getBootableVolumeDisk(){var e,{bootableVolume:t}=this.props.context,{size:a,volume_type:r}=t.selectedRows[0];return(0,s.default)(e="".concat(r," ")).call(e,a,"GiB")}getSystemDisk(){if(!this.enableCinder)return null;var{context:e}=this.props,{systemDisk:t,source:{value:a}={},instanceSnapshotDisk:r}=e;return"bootableVolume"===a?this.getBootableVolumeDisk():"instanceSnapshot"===a&&null!==r?this.getDisk(r):this.getDisk(t)}getDataDisk(){if(!this.enableCinder)return null;var{context:e}=this.props,{dataDisk:t=[]}=e;return(0,o.default)(t).call(t,(e=>this.getDisk(e.value)))}getFlavor(){var e,t,a,{context:r}=this.props,{flavor:n}=r,{disk:i,ram:l,vcpus:o}=n.selectedRows[0];return i?(0,s.default)(e=(0,s.default)(t="".concat(o,"VCPU/")).call(t,i,"GiB/")).call(e,(0,u.default)(l/1024,10),"GiB"):(0,s.default)(a="".concat(o,"VCPU/")).call(a,(0,u.default)(l/1024,10),"GiB")}getSourceValue(){var{context:e}=this.props,{source:t}=e,{selectedRows:a=[],selectedRowKeys:r=[]}=e[t.value];return a.length?a[0].name:r[0]}getVirtualLANs(){var{context:e}=this.props,{networks:t=[]}=e,a=(0,o.default)(t).call(t,(e=>{var t,a,r,{networkOption:n,subnetOption:i,ipTypeOption:l,ip:o}=e.value,u=1===l.value?i.name||i.label:"";return(0,s.default)(t=(0,s.default)(a=(0,s.default)(r="".concat(n.name||n.label," ")).call(r,l.label," ")).call(a,u," ")).call(t,1===l.value?o:"")}));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getPorts(){var{context:e}=this.props,{ports:{selectedRows:t=[]}={}}=e,a=(0,o.default)(t).call(t,(e=>e.name||e.id));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getSecurityGroups(){var{context:e}=this.props,{securityGroup:{selectedRows:t=[]}={}}=e,a=(0,o.default)(t).call(t,(e=>e.name));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getLoginType(){var e,{context:t}=this.props,{loginType:a,keypair:r}=t,{value:n,label:i}=a;return(0,s.default)(e="".concat(i," ")).call(e,"keypair"===n?r.selectedRows[0].name:"")}getPhysicalNode(){var{context:e}=this.props,{physicalNodeType:t,physicalNode:a}=e;return t?"smart"===t.value?t.label:a.selectedRows[0].hypervisor_hostname:y.physicalNodeTypes[0].label}getServerGroup(){var{context:e}=this.props,{serverGroup:t}=e;return t&&t.selectedRows.length?t.selectedRows[0].name:"-"}getIso(){var{context:e}=this.props,{iso:t}=e;return t&&0!==t.length?(0,o.default)(t).call(t,(e=>e.value)).join(" "):"-"}goStep(e){var{goStep:t}=this.props;t&&t(e)}get defaultValue(){return{}}get formItems(){var e,a,{context:r}=this.props,n=[{label:t("Start Source"),value:r.source.label},{label:t("System Disk"),value:this.getSystemDisk()},{label:t("Available Zone"),value:r.availableZone.label},{label:t("Start Source Name"),value:this.getSourceValue()},{label:t("Data Disk"),value:this.getDataDisk()},{label:t("Project"),value:r.project},{label:t("Flavor"),value:this.getFlavor()}];return this.enableCinder||(n=(0,d.default)(n).call(n,(e=>{var a;return!(0,c.default)(a=[t("System Disk"),t("Data Disk")]).call(a,e.label)}))),[{name:"confirm-count",label:t("Count"),type:"label",content:r.count||1},{name:"confirm-config",label:t("Config Overview"),type:"descriptions",title:t("Base Config"),onClick:()=>{this.goStep(0)},items:n},{type:"short-divider"},{name:"confirm-config-network",label:" ",type:"descriptions",title:t("Network Config"),onClick:()=>{this.goStep(1)},items:[{label:(0,s.default)(e="".concat(t("Virtual LAN"),"(")).call(e,t("New"),")"),value:this.getVirtualLANs(),span:1},{label:(0,s.default)(a="".concat(t("Virtual LAN"),"(")).call(a,t("Created"),")"),value:this.getPorts(),span:1},{label:t("Security Group"),value:this.getSecurityGroups(),span:1}]},{type:"short-divider"},{name:"confirm-config-system",label:" ",type:"descriptions",title:t("System Config"),onClick:()=>{this.goStep(2)},items:[{label:t("Name"),value:r.name},{label:t("Login Type"),value:this.getLoginType()},{label:t("Physical Node"),value:this.getPhysicalNode()},{label:t("Server Group"),value:this.getServerGroup()}]}]}}a.ConfirmStep=b;var _=(0,g.inject)("rootStore")((0,g.observer)(b));a.default=_},3385:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SystemStep=void 0;var p=f(r(65)),h=f(r(101)),m=f(r(62)),g=f(r(33)),v=f(r(52)),y=f(r(37)),b=f(r(0)),_=r(382),S=f(r(396)),x=f(r(383)),w=f(r(544)),I=f(r(543)),C=f(r(1218)),k=f(r(1121)),D=r(514),T=r(1255),A=r(1120),P=r(135),M=f(r(1447)),E=f(r(1166)),N=f(r(1448));function R(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function j(e){for(var t=1;tp.default.resolve())),(0,y.default)(this,"onFinishCreateKeyPair",(0,v.default)((function*(){var{createdItem:t}=e.keyPairStore,a=yield e.getKeypairs(),r=(0,h.default)(a).call(a,(e=>e.name===(t||{}).name));if(r){var n={selectedRowKeys:[r.id],selectedRows:[r]};e.setState({initKeyPair:n},(()=>{e.updateDefaultValue()}))}})))}init(){this.keyPairStore=S.default,this.serverStore=x.default,this.hypervisorStore=w.default,this.serverGroupStore=I.default,this.getKeypairs(),this.hasAdminRole&&this.getHypervisors(),this.getServerGroups()}get hypervisorColumns(){var e=[...T.hypervisorColumns];return e[0]={title:t("Hostname"),dataIndex:"hypervisor_hostname"},e}get hypervisorFilters(){var e=[...T.hypervisorFilters];return e[0]={label:t("Hostname"),name:"hypervisor_hostname"},e}get title(){return"SystemStep"}get name(){return"SystemStep"}get keypairs(){var e;return(0,m.default)(e=this.keyPairStore.list.data||[]).call(e,(e=>j(j({},e),{},{key:e.name,id:e.name})))}get hypervisors(){var e;return(0,m.default)(e=this.hypervisorStore.list.data||[]).call(e,(e=>j(j({},e),{},{key:e.id,name:e.hypervisor_hostname})))}get serverGroups(){var e,t;return(0,m.default)(e=(0,g.default)(t=this.serverGroupStore.list.data||[]).call(t,(e=>{var{servergroup:t}=this.locationParams;return!t||e.id===t}))).call(e,(e=>j(j({},e),{},{key:e.id})))}get serverGroupRequired(){var{more:e}=this.state,{servergroup:t}=this.locationParams;return!!t&&e}get inputHelp(){var{input:e=""}=this.state;return t("Entered: {length, plural, =1 {one character} other {# characters} }(maximum {maxCount} characters)",{length:e.length,maxCount:1e3})}get sourceInfo(){var{context:e={}}=this.props,{source:t={},image:a={},bootableVolume:r={},instanceSnapshot:n={}}=e;if("image"===t.value){var{selectedRows:i=[]}=a;return i.length&&i[0]}if("bootableVolume"===t.value){var{selectedRows:l=[]}=r,s=l.length&&l[0].origin_data||{},o=l.length&&l[0].volume_image_metadata;return s.volume_image_metadata||o}if("instanceSnapshot"===t.value){var{selectedRows:u=[]}=n;return u.length&&u[0]}return!1}get isWindowsImage(){return this.sourceInfo&&"windows"===this.sourceInfo.os_distro}get defaultValue(){var e,{servergroup:t}=this.locationParams,{context:a={}}=this.props,r={loginType:a.loginType||(this.isWindowsImage?this.loginTypes[1]:this.loginTypes[0]),more:!1,physicalNodeType:A.physicalNodeTypes[0],userData:""};t&&(r.serverGroup={selectedRowKeys:[t],selectedRows:(0,g.default)(e=this.serverGroups).call(e,(e=>e.id===t))});var{initKeyPair:n,name:i}=this.state;return n&&(r.keypair=n),i&&(r.name=i),r}get loginTypes(){return[{label:t("Keypair"),value:"keypair",disabled:this.isWindowsImage},{label:t("Password"),value:"password"}]}getKeypairs(){var e=this;return(0,v.default)((function*(){return e.keyPairStore.fetchList()}))()}getHypervisors(){this.hypervisorStore.fetchList()}getServerGroups(){var e=this;return(0,v.default)((function*(){yield e.serverGroupStore.fetchList(),e.updateDefaultValue()}))()}get nameForStateUpdate(){return["name","loginType","password","confirmPassword","more","physicalNodeType"]}get loginUserName(){return this.sourceInfo&&this.sourceInfo.os_admin_user}getKeyPairHeader(){var{isLoading:e}=this.keyPairStore.list||{};return e?null:b.default.createElement("div",{style:{marginBottom:10}},b.default.createElement("span",null,t("The key pair allows you to SSH into your newly created instance. You can select an existing key pair, import a key pair, or generate a new key pair.")),b.default.createElement("span",{className:N.default["action-wrapper"]},b.default.createElement(E.default,{actions:{moreActions:[{action:M.default}]},onFinishAction:this.onFinishCreateKeyPair})))}get formItems(){var{loginType:e,more:a=!1,physicalNodeType:r}=this.state,n=e===this.loginTypes[1].value,i=r===A.physicalNodeTypes[1].value,{initKeyPair:l}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,isInstance:!0},{name:"loginType",label:t("Login Type"),type:"radio",options:this.loginTypes,isWrappedValue:!0},{name:"username",label:t("Login Name"),content:this.loginUserName||"-",extra:this.loginUserName?"":t("The feasible configuration of cloud-init or cloudbase-init service in the image is not synced to image's properties, so the Login Name is unknown."),tip:t("Whether the Login Name can be used is up to the feasible configuration of cloud-init or cloudbase-init service in the image.")},{name:"keypair",label:t("Keypair"),type:"select-table",data:this.keypairs,isLoading:this.keyPairStore.list.isLoading,required:!n,hidden:n,header:this.getKeyPairHeader(),initValue:l,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}],selectedLabel:t("Keypair")},{name:"password",label:t("Login Password"),type:"input-password",required:n,hidden:!n,otherRule:(0,D.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:n,hidden:!n,otherRule:(0,D.getPasswordOtherRule)("confirmPassword","instance")},{type:"divider"},{name:"more",label:t("Advanced Options"),type:"more"},{name:"physicalNodeType",label:t("Physical Node"),type:"radio",hidden:!a||!this.hasAdminRole,options:A.physicalNodeTypes,isWrappedValue:!0},{name:"physicalNode",label:" ",type:"select-table",hidden:!this.hasAdminRole||!a||!i,required:i,data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,extra:t("You can manually specify a physical node to create an instance."),columns:this.hypervisorColumns,filterParams:this.hypervisorFilters},{name:"serverGroup",label:t("Server Group"),type:"select-table",hidden:!a,data:this.serverGroups,isLoading:this.serverGroupStore.list.isLoading,required:this.serverGroupRequired,extra:t("Using server groups, you can create cloud hosts on the same/different physical nodes as much as possible to meet the affinity/non-affinity requirements of business applications."),columns:[{title:t("Name"),dataIndex:"name"},{title:t("Member Count"),dataIndex:"members",render:e=>e.length},{title:t("Policy"),dataIndex:"policy",render:e=>C.default[e]||"-"}],filterParams:[{label:t("Name"),name:"name"},{label:t("Policy"),name:"policy",options:(0,P.getOptions)(C.default)}]},{name:"userData",label:t("User Data"),type:"textarea-from-file",validator:D.asciiValidator,hidden:!a,extra:t("The user needs to ensure that the input is a shell script that can run completely and normally.")}]}}a.SystemStep=F;var L=(0,_.inject)("rootStore")((0,_.observer)(F));a.default=L},3386:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__input--2eKC2 {\n margin-right: 32px;\n margin-left: 16px;\n}\n.index__number-input--3TVxi {\n min-width: 165px;\n}\n.index__action-wrapper--2DjKP {\n margin-left: 8px;\n}\n.index__action-wrapper--2DjKP .ant-btn-link {\n padding: 5.6px 15px !important;\n border-color: #0068FF;\n}\n",""]),t.locals={input:"index__input--2eKC2","number-input":"index__number-input--3TVxi","action-wrapper":"index__action-wrapper--2DjKP"}},3387:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.NetworkStep=void 0;var l=i(r(65)),s=i(r(101)),o=i(r(62)),u=i(r(28)),d=i(r(91)),c=i(r(1150)),f=i(r(52)),p=i(r(37)),h=i(r(0)),m=r(382),g=r(47),v=r(321),y=r(390),b=r(392),_=r(521),S=r(514),x=i(r(1121)),w=i(r(1299)),I=r(522),C=r(1193),k=r(1129),D=r(517),{isIPv4:T,isIpv6:A}=S.ipValidate;class P extends x.default{constructor(){var e;super(...arguments),e=this,(0,p.default)(this,"allowed",(()=>l.default.resolve())),(0,p.default)(this,"getSubnetPromise",function(){var t=(0,f.default)((function*(t){if(!e.subnetMap[t]){var a=yield e.subnetStore.fetchList({network_id:t});e.subnetMap[t]=a}return e.subnetMap[t]}));return function(e){return t.apply(this,arguments)}}()),(0,p.default)(this,"checkNetworks",(e=>!(!(0,g.isArray)(e)||(0,g.isEmpty)(e)||(0,g.isEmpty)(e[0].value))&&(!(0,s.default)(e).call(e,(e=>!e.value||!e.value.network))&&!(0,s.default)(e).call(e,(e=>1===e.value.ipType&&!T(e.value.ip)&&!A(e.value.ip)))))),(0,p.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,p.default)(this,"onNetworkChange",(e=>{var{selectedRows:t}=e;this.setState({networkSelectRows:t},(()=>{this.getSubnets()})),this.updateContext({networkSelectRows:t})})),(0,p.default)(this,"checkNetworkAndPort",(e=>{var{getFieldValue:a}=e;return{validator(){var e=a("networkSelect"),r=a("ports"),{selectedRowKeys:n=[]}=e||{},{selectedRowKeys:i=[]}=r||{};return 0===n.length&&0===i?l.default.reject(t("Please select")):l.default.resolve()}}})),(0,p.default)(this,"onPortChange",(e=>{var{selectedRows:t=[]}=e||{};this.updateContext({portSelectRows:t})}))}init(){this.networkStore=new v.NetworkStore,this.subnetStore=new y.SubnetStore,this.securityGroupStore=new b.SecurityGroupStore,this.portStore=new _.VirtualAdapterStore,this.subnetMap={}}get title(){return"NetworkStep"}get name(){return"NetworkStep"}get defaultValue(){return{networks:[]}}getSubnets(){var e=this;return(0,f.default)((function*(){var{networkSelectRows:t,networks:a=[]}=e.state,r=yield l.default.all((0,o.default)(t).call(t,(t=>e.getSubnetPromise(t.id)))),n=[];(0,u.default)(r).call(r,(e=>{n.push(...e)}));var i=[],c=(0,o.default)(t).call(t,((e,t)=>{var r=(0,s.default)(n).call(n,(t=>t.network_id===e.id)),l=(0,s.default)(a).call(a,((t,a)=>t.value.network===e.id&&(i.push(a),!0)));return l||{value:{network:e.id,subnet:r.id,networkOption:e,subnetOption:r,ipTypeOption:I.ipTypeOptions[0],ipType:0},index:t}})),f=(0,o.default)(t).call(t,(e=>e.id));(0,u.default)(a).call(a,((e,t)=>{(0,d.default)(i).call(i,t)<0&&(0,d.default)(f).call(f,e.value.network)>=0&&c.push(e)})),e.updateFormValue("networks",c),e.setState({subnets:n,initValue:c})}))()}get nameForStateUpdate(){return["networkSelect","networks","ports"]}get formItems(){var{networkSelectRows:e=[],subnets:a,initValue:r=[],ports:n=[]}=this.state,i=e.length>0,s=e.length&&(0,c.default)(e).call(e,(e=>e.port_security_enabled)),o=0===n.length,u=0===e.length;return[{name:"networkSelect",label:t("Networks"),type:"network-select-table",disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange,showExternal:!0,isMulti:!0,required:o,otherRule:this.checkNetworkAndPort,dependencies:["ports"],header:h.default.createElement("div",null,t("Please reasonably plan the network and subnet to which the virtual network card belongs."),t(" You can go to the console to "),(0,D.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")}))},{name:"networks",label:t("Virtual LAN"),type:"add-select",networks:e,hidden:!i,subnets:a,itemComponent:w.default,required:i,addTextTips:t("Virtual LANs"),addText:t("Add Virtual LAN"),minCount:e.length||0,optionsByIndex:!0,initValue:r,validator:(e,t)=>this.checkNetworks(t)?l.default.resolve():l.default.reject("")},{name:"divider1",type:"divider"},{name:"ports",type:"select-table",label:t("Ports"),extraParams:{project_id:this.currentProjectId,status:"DOWN"},backendPageStore:this.portStore,isMulti:!0,header:t("Ports provide extra communication channels to your instances. You can select ports instead of networks or a mix of both (The port executes its own security group rules by default)."),filterParams:k.portFilters,columns:k.portColumns,dependencies:["networkSelect"],otherRule:this.checkNetworkAndPort,required:u,onChange:this.onPortChange},{name:"divider2",type:"divider"},{name:"securityGroup",label:t("Security Group"),type:"select-table",tip:t("Each instance belongs to at least one security group, which needs to be specified when it is created. Instances in the same security group can communicate with each other on the network, and instances in different security groups are disconnected from the internal network by default."),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},hidden:!s,required:s,isMulti:!0,header:h.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,D.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")}),t("Note: The security group you use will act on all virtual adapters of the instance.")),filterParams:C.securityGroupFilter,columns:C.securityGroupColumns,onRow:()=>{}}]}}a.NetworkStep=P;var M=(0,m.inject)("rootStore")((0,m.observer)(P));a.default=M},3388:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(385)),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=p(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),d=s(r(3389)),c=r(332),f=r(517);function p(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(p=function(e){return e?a:t})(e)}class h extends u.Component{getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,f.getPath)({key:t,params:{id:e}})}render(){var{item:{security_group_rules:e=[]}={}}=this.props,a={buttonType:"link",title:t("Security Group Rules"),buttonText:t("View Rules"),modalSize:"middle",columns:(0,c.getSelfColumns)(this),data:e};return u.default.createElement(d.default,(0,o.default)({},a,{style:{paddingLeft:0}}))}}a.default=h},3389:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0,r(530);var o=s(r(531)),u=s(r(37)),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=p(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),c=s(r(1350)),f=s(r(16));r(167);function p(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(p=function(e){return e?a:t})(e)}class h extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"renderTable",(()=>{var{data:e,columns:t}=this.props;return d.default.createElement(o.default,{columns:t,dataSource:e})}))}static propTypes(){return{title:f.default.string.isRequired,buttonType:f.default.string,isDanger:f.default.bool,data:f.default.array,columns:f.default.array,modalSize:f.default.string,className:f.default.func,buttonText:f.default.string,style:f.default.string}}render(){var{buttonType:e,isDanger:t,title:a,buttonText:r,modalSize:n,style:i}=this.props,l={buttonType:e,isDanger:t,title:a,buttonText:r,modalSize:n,style:i,render:this.renderTable};return d.default.createElement(c.default,l)}}a.default=h,(0,u.default)(h,"defaultProps",{buttonType:"link",isDanger:!1,data:[],columns:[],modalSize:"middle",className:"",buttonText:t("View Detail"),title:t("Detail")})},3394:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var p=f(r(65)),h=f(r(101)),m=f(r(62)),g=f(r(33));r(1117);var v=f(r(1118));r(1115);var y=f(r(1116)),b=f(r(52)),_=f(r(37)),S=f(r(0)),x=r(382),w=r(32),I=(r(167),r(515)),C=f(r(383)),k=f(r(523)),D=f(r(1256)),T=f(r(524)),A=f(r(1180)),P=r(386),M=r(520),E=f(r(1121)),N=f(r(1380)),R=r(1131),j=f(r(1195));function F(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function L(e){for(var t=1;tp.default.resolve())),(0,_.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,_.default)(this,"checkSystemDisk",((e,t)=>t.type?p.default.resolve():p.default.reject(""))),(0,_.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})})),(0,_.default)(this,"onInstanceSnapshotChange",function(){var a=(0,b.default)((function*(a){var r,n,{min_disk:i,size:l,id:s}=a.selectedRows[0]||{};if(!s)return e.updateContext({instanceSnapshotDisk:null}),void e.setState({instanceSnapshotDisk:null,instanceSnapshotMinSize:0});var o=yield e.instanceSnapshotStore.fetchDetail({id:s}),{snapshotDetail:{size:u=0,volume_type_id:d}={},block_device_mapping:c="",volumeDetail:f}=o;f||(e.updateContext({instanceSnapshotDisk:null}),e.setState({instanceSnapshotDisk:null,instanceSnapshotMinSize:0}));var p=Math.max(i,l,u),m={};try{m=JSON.parse(c)}catch(e){}var{volume_type:g}=f,{delete_on_termination:v}=m[0]||{},y=v?1:0,b=v?t("Deleted with the instance"):t("Not deleted with the instance"),_=d||((0,h.default)(r=e.volumeTypes).call(r,(e=>e.label===g))||{}).value,S=(0,h.default)(n=e.volumeTypes).call(n,(e=>e.value===_)),x=f?{type:_,typeOption:S,size:u,deleteType:y,deleteTypeLabel:b}:null;e.updateFormValue("instanceSnapshotDisk",x),e.updateContext({instanceSnapshotDisk:x}),e.setState({instanceSnapshotDisk:x,instanceSnapshotMinSize:p})}));return function(e){return a.apply(this,arguments)}}()),(0,_.default)(this,"onBootableVolumeChange",(e=>{this.updateContext({bootableVolume:e})})),(0,_.default)(this,"onSystemDiskChange",(e=>{this.updateContext({systemDisk:e})})),(0,_.default)(this,"onDataDiskChange",(e=>{this.updateContext({dataDisk:e})})),(0,_.default)(this,"getInstanceSnapshotDisk",(()=>{var{instanceSnapshotDisk:e}=this.state,{instanceSnapshotDisk:t}=this.props.context;return e||t})),(0,_.default)(this,"renderSnapshotDisk",(()=>{var e=this.getInstanceSnapshotDisk();if(null===e)return null;var{deleteTypeLabel:a,typeOption:r={},size:n}=e||{};if(!n)return null;var i={marginRight:10,maxWidth:"20%"};return S.default.createElement(v.default,{gutter:24},S.default.createElement(y.default,{span:8},S.default.createElement("span",{style:i},t("Type")),r.label),S.default.createElement(y.default,{span:8},S.default.createElement("span",{style:i},t("Size")),n,S.default.createElement("span",{style:i},"GiB")),S.default.createElement(y.default,{span:8},a))}))}init(){this.serverStore=C.default,this.imageStore=k.default,this.volumeStore=new P.VolumeStore,this.volumeTypeStore=T.default,this.instanceSnapshotStore=D.default,this.getAvailZones(),this.getImages(),this.getVolumeTypes(),this.getVolumes(),this.getInstanceSnapshots(),this.initSourceChange()}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){var{volume:e,snapshot:t}=this.locationParams,a=this.imageSourceType;return e?a=this.volumeSourceType:t&&(a=this.snapshotSourceType),{systemDisk:this.defaultVolumeType,source:a,project:this.currentProjectName,dataDisk:[]}}get availableZones(){var e,t;return(0,m.default)(e=(0,g.default)(t=A.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get images(){var{imageTab:e}=this.state,{image:t}=this.locationParams,a=t?[(0,w.toJS)(this.imageStore.detail)]:this.imageStore.list.data||[],r=(0,g.default)(a).call(a,(t=>!!(0,M.canImageCreateInstance)(t)&&(e?(0,M.getImageOS)(t)===e:t)));return(0,m.default)(r).call(r,(e=>L(L({},e),{},{key:e.id})))}get snapshots(){var{snapshot:e}=this.locationParams;if(!e){var{list:{data:t}}=this.instanceSnapshotStore;return t||[]}return[(0,w.toJS)(this.instanceSnapshotStore.detail)]}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get volumeTypes(){var e;return(0,m.default)(e=this.volumeTypeStore.list.data||[]).call(e,(e=>({label:e.name,value:e.id,originData:(0,w.toJS)(e)})))}get volumes(){var e,t,a,{volume:r}=this.locationParams;return r?(0,g.default)(a=[(0,w.toJS)(this.volumeStore.detail)]).call(a,(e=>(0,I.canCreateInstance)(e))):(0,m.default)(e=(0,g.default)(t=this.volumeStore.list.data||[]).call(t,(e=>(0,I.canCreateInstance)(e)))).call(e,(e=>L(L({},e),{},{key:e.id})))}get defaultVolumeType(){return{size:10,deleteType:1}}get sourceTypes(){var{image:e,snapshot:a,volume:r}=this.locationParams,n=[{label:t("Image"),value:"image",disabled:r||a},{label:t("Instance Snapshot"),value:"instanceSnapshot",disabled:e||r}];return this.enableCinder&&n.push({label:t("Bootable Volume"),value:"bootableVolume",disabled:e||a}),n}get imageSourceType(){var e;return(0,h.default)(e=this.sourceTypes).call(e,(e=>"image"===e.value))}get snapshotSourceType(){var e;return(0,h.default)(e=this.sourceTypes).call(e,(e=>"instanceSnapshot"===e.value))}get volumeSourceType(){var e;return this.enableCinder?(0,h.default)(e=this.sourceTypes).call(e,(e=>"bootableVolume"===e.value)):{}}getAvailZones(){var e=this;return(0,b.default)((function*(){yield A.default.fetchListWithoutDetail(),e.availableZones.length&&e.updateFormValue("availableZone",e.availableZones[0])}))()}getImages(){var e=this;return(0,b.default)((function*(){var t,{volume:a,image:r,snapshot:n}=e.locationParams;a||n||(r?yield e.imageStore.fetchDetail({id:r}):yield e.imageStore.fetchList({all_projects:e.hasAdminRole}),r&&e.updateFormValue("image",{selectedRowKeys:[r],selectedRows:(0,g.default)(t=e.images).call(t,(e=>e.id===r))}))}))()}getVolumeTypes(){var e=this;return(0,b.default)((function*(){e.enableCinder&&(yield e.volumeTypeStore.fetchList())}))()}getVolumes(){var e=this;return(0,b.default)((function*(){var t,{image:a,snapshot:r,volume:n}=e.locationParams;a||r||e.enableCinder&&(n?(yield e.volumeStore.fetchDetail({id:n}),e.updateContext({source:e.volumeSourceType})):yield e.volumeStore.fetchList({sortKey:"bootable",sortOrder:"ascend"}),n&&e.updateFormValue("volume",{selectedRowKeys:[n],selectedRows:(0,g.default)(t=e.volumes).call(t,(e=>e.id===n))}))}))()}getInstanceSnapshots(){var e=this;return(0,b.default)((function*(){var t,{snapshot:a}=e.locationParams;a?(yield e.instanceSnapshotStore.fetchDetail({id:a}),a&&e.updateFormValue("instanceSnapshot",{selectedRowKeys:[a],selectedRows:(0,g.default)(t=e.snapshots).call(t,(e=>e.id===a))})):e.instanceSnapshotStore.fetchList()}))()}get systemTabs(){return(0,M.getImageSystemTabs)()}get nameForStateUpdate(){return["source","image","instanceSnapshot","bootableVolume","flavor"]}getSystemDiskMinSize(){var e=(this.state.flavor||{}).disk||0,t=0;if(this.sourceTypeIsImage){var{min_disk:a=0,size:r=0}=this.state.image||{},n=Math.ceil(r/1024/1024/1024);return t=Math.max(a,n,1),Math.max(e,t,1)}if(this.sourceTypeIsSnapshot){var{instanceSnapshotMinSize:i=0}=this.state;return Math.max(e,i,1)}return Math.max(e,1)}get sourceTypeIsImage(){var{source:e}=this.state;return e===this.imageSourceType.value}get sourceTypeIsSnapshot(){var{source:e}=this.state;return e===this.snapshotSourceType.value}get sourceTypeIsVolume(){var{source:e}=this.state;return e===this.volumeSourceType.value}getImageExtraWords(){var{flavor:{category:e}={}}=this.state;return(0,R.isGpuCategory)(e)?t("For GPU type, you need to install GPU drivers in the instance operating system."):""}initSourceChange(){var{snapshot:e,volume:t}=this.locationParams;e?this.onSourceChange(this.snapshotSourceType):t?this.onSourceChange(this.volumeSourceType):this.onSourceChange(this.imageSourceType)}onSourceChange(e){this.updateContext({source:e})}get imageColumns(){return(0,M.getImageColumns)(this)}get instanceSnapshotColumns(){return[{title:t("Name"),dataIndex:"name"},{title:t("Disk Format"),dataIndex:"disk_format",render:e=>M.imageFormats[e]||"-"},{title:t("Min System Disk"),dataIndex:"min_disk",render:e=>"".concat(e,"GiB")},{title:t("Min Memory"),dataIndex:"min_ram",render:e=>"".concat(e/1024,"GiB")},{title:t("Status"),dataIndex:"status",render:e=>M.imageStatus[e]||"-"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]}get volumeColumns(){return[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",render:e=>"".concat(e,"GiB"),width:80},{title:t("Status"),dataIndex:"status",render:e=>I.volumeStatus[e]||"-",width:80},{title:t("Type"),dataIndex:"volume_type"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}get showSystemDisk(){var e=this.getInstanceSnapshotDisk();return this.enableCinder&&(this.sourceTypeIsImage||this.sourceTypeIsSnapshot&&null===e)}getFlavorComponent(){return S.default.createElement(j.default,{onChange:this.onFlavorChange})}get formItems(){var{image:e}=this.locationParams,a=e?this.imageStore.isLoading:this.imageStore.list.isLoading;return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),isWrappedValue:!0,required:!0,options:this.availableZones,tip:t("Availability zone refers to a physical area where power and network are independent of each other in the same area. In the same region, the availability zone and the availability zone can communicate with each other in the intranet, and the available zones can achieve fault isolation.")},{type:"divider"},{name:"flavor",label:t("Specification"),type:"select-table",component:this.getFlavorComponent(),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"source",label:t("Start Source"),type:"radio",options:this.sourceTypes,required:!0,isWrappedValue:!0,tip:t("The start source is a template used to create an instance. You can choose an image or a bootable volume."),onChange:e=>{this.onSourceChange(e)}},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:a,required:this.sourceTypeIsImage,isMulti:!1,display:this.sourceTypeIsImage,extra:this.getImageExtraWords(),filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.locationParams.os_distro||this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange},{name:"instanceSnapshot",label:t("Instance Snapshot"),type:"select-table",data:this.snapshots,required:this.sourceTypeIsSnapshot,isMulti:!1,hidden:!this.sourceTypeIsSnapshot,display:this.sourceTypeIsSnapshot,onChange:this.onInstanceSnapshotChange,filterParams:[{label:t("Name"),name:"name"}],columns:this.instanceSnapshotColumns},{name:"bootableVolume",label:t("Bootable Volume"),type:"select-table",data:this.volumes,isLoading:this.volumeStore.list.isLoading,required:this.sourceTypeIsVolume,isMulti:!1,display:this.sourceTypeIsVolume&&this.enableCinder,onChange:this.onBootableVolumeChange,filterParams:[{label:t("Name"),name:"name"}],columns:this.volumeColumns},{type:"divider"},{name:"systemDisk",label:t("System Disk"),type:"instance-volume",options:this.volumeTypes,required:this.showSystemDisk,hidden:!this.showSystemDisk,validator:this.checkSystemDisk,minSize:this.getSystemDiskMinSize(),extra:t("Disk size is limited by the min disk of flavor, image, etc."),onChange:this.onSystemDiskChange},{name:"instanceSnapshotDisk",label:t("System Disk"),hidden:this.showSystemDisk,component:this.renderSnapshotDisk()},{name:"dataDisk",label:t("Data Disk"),type:"add-select",options:this.volumeTypes,defaultItemValue:this.defaultVolumeType,itemComponent:N.default,minCount:0,addTextTips:t("Data Disks"),addText:t("Add Data Disks"),extra:t("Too many disks mounted on the instance will affect the read and write performance. It is recommended not to exceed 16 disks."),onChange:this.onDataDiskChange,display:this.enableCinder}]}}a.BaseStep=O;var z=(0,x.inject)("rootStore")((0,x.observer)(O));a.default=z},3395:function(e,t,a){var r=a(3396);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3396:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__flavor-label--GI_En {\n display: inline-block;\n min-width: 50px;\n margin-right: 16px;\n}\n.index__flavor-tab--2Mc6u {\n margin-bottom: 16px;\n}\n",""]),t.locals={"flavor-label":"index__flavor-label--GI_En","flavor-tab":"index__flavor-tab--2Mc6u"}},3433:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(1187);var i=n(a(1188));a(1169);var l=n(a(1159)),s=n(a(62)),o=n(a(0)),u=(a(167),n(a(16))),d=a(135),c=n(a(3434)),f=e=>{var{title:t,descriptions:a,loading:r}=e,n=(0,s.default)(a).call(a,(e=>("number"==typeof e.content&&(e.content=e.content.toString()),o.default.createElement(l.default.Item,{label:e.label,className:c.default.item,key:"label-".concat((0,d.generateId)())},e.content))));return o.default.createElement(i.default,{loading:r},o.default.createElement(l.default,{colon:!1,title:t},n))},p=u.default.shape({label:u.default.oneOfType([u.default.string,u.default.node]),content:u.default.any});f.propTypes={title:u.default.oneOfType([u.default.string,u.default.node]),descriptions:u.default.arrayOf(p),loading:u.default.bool};var h=f;t.default=h},3434:function(e,t,a){var r=a(3435);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3435:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__item--3lFuh {\n margin-bottom: 10px;\n background-color: #fff;\n}\n.index__item--3lFuh .ant-descriptions-item-label {\n width: 100px;\n color: #8a8a8a;\n}\n.index__item--3lFuh .ant-descriptions-item-content {\n word-break: break-all;\n}\n",""]),t.locals={item:"index__item--3lFuh"}},3436:function(e,t,a){var r=a(3437);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3437:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__main--1q8mG {\n position: relative;\n height: 100%;\n overflow: auto;\n}\n.index__sider--3LZqm {\n position: absolute;\n top: 0;\n left: 0;\n width: 354px;\n min-width: 354px;\n}\n@media screen and (max-width: 1280px) {\n .index__sider--3LZqm {\n width: 300px;\n min-width: 300px;\n }\n}\n.index__content--1OSKS {\n padding-left: 374px;\n}\n@media screen and (max-width: 1280px) {\n .index__content--1OSKS {\n padding-left: 320px;\n }\n}\n.index__nav--2zbId {\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 height: 48px;\n margin: 0 0 12px;\n padding: 0 14px;\n background-color: #124191;\n border-radius: 4px;\n}\n.index__navItem--uT8lm {\n min-width: 96px;\n height: 32px;\n margin: 0 6px;\n padding: 0 14px;\n color: #fff;\n font-weight: 500;\n line-height: 32px;\n text-align: center;\n border: 1px solid transparent;\n -webkit-transition: all 0.3s;\n transition: all 0.3s;\n}\n.index__navItem--uT8lm:first-child {\n margin: 0 6px 0 0;\n}\n.index__navItem--uT8lm.index__active--oKb1h {\n background-color: #1890ff;\n border-color: #1890ff;\n border-radius: 4px;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__navItem--uT8lm.index__active--oKb1h:hover {\n color: #fff;\n}\n.index__loading--3cfaa {\n padding: 30px 0;\n text-align: center;\n}\n.index__header--2mGuj {\n padding-right: 16px;\n padding-bottom: 30px;\n padding-left: 16px;\n background-color: #fff;\n}\n.index__header--2mGuj .ant-descriptions-title {\n margin-bottom: 0;\n}\n.index__header-title--3X2Ku {\n font-style: italic;\n}\n.index__title-label--3TrNR {\n margin-right: 8px;\n font-style: italic;\n}\n.index__header-button--2VTui {\n float: right;\n}\n.index__header-divider--3b6-4 {\n width: 2px;\n margin: 0 14px 0 24px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__tabs--VwWK2 {\n margin-top: -42px;\n}\n.index__tabs--VwWK2 .ant-tabs-bar {\n padding-right: 16px;\n padding-left: 16px;\n}\n.index__tabs--VwWK2 .ant-tabs-nav-wrap {\n padding-left: 30px;\n}\n.index__tab-wrapper--2DZuY {\n width: 100%;\n}\n.index__tab-wrapper--2DZuY .list-container {\n margin-top: 0;\n}\n.index__action-wrapper--pIcIO {\n position: absolute;\n right: 80px;\n}\n.index__action-wrapper--pIcIO .ant-btn-link {\n padding: 5.6px 15px !important;\n border-color: #0068FF;\n}\n.index__action-wrapper--pIcIO .ant-divider-vertical {\n border-left: none;\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous {\n color: #c4233e;\n background: transparent;\n border-color: #c4233e;\n}\n.index__action-wrapper--pIcIO .ant-btn-link[disabled],\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:hover,\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:focus,\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:active {\n border-color: rgba(0, 0, 0, 0.25);\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous.ant-btn-link:active {\n color: #c4233e;\n background: transparent;\n border-color: #c4233e;\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous:hover,\n.index__action-wrapper--pIcIO .ant-btn-dangerous:focus {\n color: #f76070;\n background: #fff;\n border-color: #f76070;\n}\n",""]),t.locals={main:"index__main--1q8mG",sider:"index__sider--3LZqm",content:"index__content--1OSKS",nav:"index__nav--2zbId",navItem:"index__navItem--uT8lm",active:"index__active--oKb1h",loading:"index__loading--3cfaa",header:"index__header--2mGuj","header-title":"index__header-title--3X2Ku","title-label":"index__title-label--3TrNR","header-button":"index__header-button--2VTui","header-divider":"index__header-divider--3b6-4",tabs:"index__tabs--VwWK2","tab-wrapper":"index__tab-wrapper--2DZuY","action-wrapper":"index__action-wrapper--pIcIO"}},3441:function(e,t,a){var r=a(3442);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3442:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__input--1LaXS {\n margin-right: 32px;\n margin-left: 16px;\n}\n",""]),t.locals={input:"index__input--1LaXS"}},3443:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=i(r(65)),s=i(r(37)),o=r(382),u=r(1113),d=i(r(386)),c=r(515);class f extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.update(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},{name:"description",label:t("Description"),type:"textarea"}]}init(){this.store=d.default}}a.EditAction=f,(0,s.default)(f,"id","edit"),(0,s.default)(f,"title",t("Edit")),(0,s.default)(f,"policy","volume:update"),(0,s.default)(f,"allowed",(e=>l.default.resolve((0,c.isAvailableOrInUse)(e))));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3444:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(91)),s=i(r(37)),o=r(1113),u=i(r(386));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","volume:delete"),(0,s.default)(this,"canDelete",(e=>{var t;return(0,l.default)(t=["available","error","error_extending"]).call(t,e.status)>=0})),(0,s.default)(this,"allowedCheckFunc",(e=>this.canDelete(e))),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Volume")}get name(){return t("Delete Volume")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete volume")}}a.default=d},3445:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.RestoreAction=void 0;var l=i(r(82)),s=i(r(65)),o=i(r(37)),u=r(382),d=r(1113),c=r(386),f=i(r(539)),p=r(515),h=r(527);class m extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{snapshot:{selectedRowKeys:t=[]}={}}=e,{id:a}=this.item;return this.store.revert(a,{snapshot_id:t[0]})}))}init(){this.store=new c.VolumeStore,this.snapshotStore=f.default}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var e,t,{name:a,id:r="-",volume_type:n="-",size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)")}}get formItems(){var{id:e}=this.item;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"snapshot",label:t("Select Snapshot"),type:"select-table",backendPageStore:this.snapshotStore,extraParams:{volume_id:e},required:!0,isMulti:!1,isSortByBack:!0,defaultSortKey:"created_at",defaultSortOrder:"descend",filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",render:e=>"".concat(e,"GiB"),sorter:!1},{title:t("Status"),dataIndex:"status",render:e=>p.volumeStatus[e]||"-"},{title:t("Created At"),dataIndex:"created_at",render:e=>(0,h.getSinceTime)(e)}]}]}get name(){return t("Restore from snapshot")}}a.RestoreAction=m,(0,o.default)(m,"id","Restore from snapshot"),(0,o.default)(m,"title",t("Restore from snapshot")),(0,o.default)(m,"policy","volume:create"),(0,o.default)(m,"allowed",(e=>s.default.resolve("available"===e.status)));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},3446:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Attach=void 0;var p=f(r(101)),h=f(r(65)),m=f(r(62)),g=f(r(82)),v=f(r(37)),y=r(382),b=r(1113),_=r(383),S=f(r(386)),x=r(1120),w=r(515);function I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;t!(0,x.allowAttachVolumeInstance)(e))),(0,v.default)(this,"alreadyAttached",(e=>{var{attachments:t=[]}=this.item;return!!(0,p.default)(t).call(t,(t=>t.server_id===e.id))})),(0,v.default)(this,"onSubmit",(e=>{var{instance:t}=e,{id:a}=this.item,{selectedRowKeys:r}=t;return h.default.all((0,m.default)(r).call(r,(e=>this.vmStore.attachVolume({id:e,body:{volumeAttachment:{volumeId:a}}}))))}))}init(){this.store=S.default,this.vmStore=new _.ServerStore}get name(){return t("Attach")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var e,t,{name:a,id:r,size:n,volume_type:i}=this.item;return{volume:(0,g.default)(e=(0,g.default)(t="".concat(a||r,"(")).call(t,i," | ")).call(e,n,"GiB)")}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},C({name:"instance",label:t("Instance"),type:"select-table",required:!0,backendPageStore:this.vmStore,disabledFunc:this.disabledInstance,extraParams:{noReminder:!0},isMulti:!1},x.instanceSelectTablePropsBackend)]}}a.Attach=k,(0,v.default)(k,"id","attach"),(0,v.default)(k,"title",t("Attach")),(0,v.default)(k,"policy","os_compute_api:os-volumes-attachments:create"),(0,v.default)(k,"allowed",(e=>h.default.resolve((0,w.isAvailable)(e)||(0,w.isMultiAttach)(e))));var D=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=D},3447:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Detach=void 0;var l=i(r(65)),s=i(r(62)),o=i(r(82)),u=i(r(1315)),d=i(r(37)),c=r(382),f=r(1113),p=i(r(383)),h=r(1311),m=r(515),g=r(1120);class v extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"disabledInstance",(e=>!(0,g.allowAttachVolumeInstance)(e))),(0,d.default)(this,"onSubmit",(e=>{var{instance:t}=e,{id:a}=this.item,{selectedRowKeys:r}=t;return l.default.all((0,s.default)(r).call(r,(e=>this.store.detachVolume({id:e,volumes:[a]}))))}))}get name(){return t("Detach")}init(){this.store=p.default,this.instanceStore=new h.ServerGroupInstanceStore,this.getInstances()}static get modalSize(){return"large"}getModalSize(){return"large"}get instances(){return this.instanceStore.list.data||[]}getInstances(){var e,t=(0,s.default)(e=this.item.attachments||[]).call(e,(e=>e.server_id));this.instanceStore.fetchList({members:t})}get defaultValue(){var e,t,{name:a,size:r,volume_type:n}=this.item;return{volume:(0,o.default)(e=(0,o.default)(t="".concat(a,"(")).call(t,n," | ")).call(e,r,"GiB)")}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"instance",label:t("Instance"),type:"select-table",required:!0,data:this.instances,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:g.instanceColumnsBackend,isLoading:this.instanceStore.list.isLoading,disabledFunc:this.disabledInstance}]}}a.Detach=v,(0,d.default)(v,"id","detach"),(0,d.default)(v,"title",t("Detach")),(0,d.default)(v,"isDanger",!0),(0,d.default)(v,"policy","os_compute_api:os-volumes-attachments:delete"),(0,d.default)(v,"allowed",(e=>l.default.resolve((0,m.isInUse)(e)&&!(0,m.isOsDisk)(e)&&(0,u.default)(e.attachments)&&e.attachments.length)));var y=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=y},3448:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSnapshot=void 0;var p=f(r(82)),h=f(r(65)),m=f(r(52)),g=f(r(37)),v=r(382),y=r(1113),b=f(r(539)),_=r(515),S=f(r(384));function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{snapshots:t={}}=e,{currentVolumeType:a}=b.default;return{snapshotQuota:t,typeQuota:e["snapshots_".concat(a)]||{}}},C=e=>{var{snapshotQuota:t,typeQuota:a}=I(e),{left:r=0}=t||{},{left:n=0}=a||{};return 0!==r&&0!==n?1:0};class k extends y.ModalAction{constructor(){super(...arguments),(0,g.default)(this,"onSubmit",(e=>{var{id:t,status:a}=this.item,{name:r}=e,n={name:r,volume_id:t,force:"in-use"===a};return this.store.create(n)}))}init(){b.default.setCurrentVolumeType(this.item),this.state.quota={},this.state.quotaLoading=!0,this.store=b.default,this.projectStore=S.default,this.getQuota()}get name(){return t("create snapshot")}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,p.default)(e=(0,p.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)")}}static get disableSubmit(){var{cinderQuota:e={}}=S.default;return 0===C(e)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,m.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectCinderQuota();e.setState({quota:t,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{snapshotQuota:r={},typeQuota:n={}}=I(e),i=C(e),l=w(w({},r),{},{add:i,name:"snapshot",title:t("Snapshots")}),{volume_type:s}=this.item;return[l,w(w({},n),{},{add:i,name:"type",title:t("{name} type snapshots",{name:s}),type:"line"})]}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Snapshot Name"),type:"input-name",placeholder:t("Please input snapshot name"),required:!0}]}}a.CreateSnapshot=k,(0,g.default)(k,"id","create-snapshot"),(0,g.default)(k,"title",t("Create Snapshot")),(0,g.default)(k,"policy","volume:create_snapshot"),(0,g.default)(k,"allowed",(e=>h.default.resolve((0,_.isAvailableOrInUse)(e))));var D=(0,v.inject)("rootStore")((0,v.observer)(k));a.default=D},3449:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.ExtendVolume=void 0;var o=s(r(65)),u=s(r(62)),d=s(r(33)),c=s(r(82)),f=s(r(71)),p=s(r(52)),h=s(r(37)),m=r(382),g=r(1113),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(386)),y=s(r(384)),b=s(r(383)),_=r(515),S=r(47);function x(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(x=function(e){return e?a:t})(e)}class w extends g.ModalAction{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"onSizeChange",(e=>{var t=e-this.itemSize;(0,_.setCreateVolumeSize)(t)})),(0,h.default)(this,"checkInstance",(()=>{var{lockedError:e}=this.state;return e?o.default.reject(e):o.default.resolve()})),(0,h.default)(this,"onSubmit",function(){var t=(0,p.default)((function*(t){var{new_size:a}=t,{id:r}=e.item;return e.store.extendSize(r,{new_size:a})}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Extend volume")}init(){this.store=v.default,this.state.showNotice=!0,this.volumeStore=new v.VolumeStore,this.projectStore=y.default,(0,_.fetchQuota)(this,1,this.item.volume_type),this.checkAttachedServer()}get tips(){return t("After the volume is expanded, the volume cannot be reduced.")}static get disableSubmit(){return(0,_.checkQuotaDisable)(!1)}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){var{quota:e={},quotaLoading:t}=this.state;if(t||(0,S.isEmpty)(e))return[];var[a,r,n,i]=(0,_.getQuotaInfo)(this,!1),{type:l}=r;return[(0,f.default)(r,["type"]),i]}checkAttachedServer(){var e=this;return(0,p.default)((function*(){var a,r,n,i,l=(0,u.default)(a=e.item.attachments||[]).call(a,(e=>e.server_id));if(l.length){var s=(0,u.default)(l).call(l,(e=>b.default.pureFetchDetail({id:e}))),c=yield o.default.allSettled(s),f=(0,u.default)(r=(0,d.default)(n=(0,u.default)(i=(0,d.default)(c).call(c,(e=>{var{status:t}=e;return"fulfilled"===t}))).call(i,(e=>e.value))).call(n,(e=>e.locked))).call(r,(e=>{var{name:t}=e;return t}));if(f.length){var p=f.join(", "),h=t("The server {name} is locked. Please unlock first.",{name:p});e.setState({lockedError:h})}}}))()}get isQuotaLimited(){var{gigabytes:{limit:e}={}}=this.projectStore.cinderQuota||{};return-1!==e}get leftSize(){var{gigabytes:{left:e=0}={}}=this.projectStore.cinderQuota||{};return e}get itemSize(){var{size:e}=this.item;return e}get minSize(){return this.itemSize+1}get maxSize(){var{size:e}=this.item;return e+this.leftSize}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,c.default)(e=(0,c.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),new_size:this.minSize}}get formItems(){var e;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"new_size",label:t("Capacity (GiB)"),type:"slider-input",max:this.maxSize,min:this.minSize,description:(0,c.default)(e="".concat(this.minSize,"GiB-")).call(e,this.maxSize,"GiB"),required:!0,display:this.isQuotaLimited,onChange:this.onSizeChange,validator:this.checkInstance},{name:"new_size",label:t("Capacity (GiB)"),type:"input-int",min:this.minSize,required:!0,display:!this.isQuotaLimited,onChange:this.onSizeChange,validator:this.checkInstance}]}}a.ExtendVolume=w,(0,h.default)(w,"id","extend-snapshot"),(0,h.default)(w,"title",t("Extend Volume")),(0,h.default)(w,"policy","volume:extend"),(0,h.default)(w,"allowed",(e=>o.default.resolve((0,_.isAvailableOrInUse)(e))));var I=(0,m.inject)("rootStore")((0,m.observer)(w));a.default=I},3450:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ChangeType=void 0;var l=i(r(62)),s=i(r(33)),o=i(r(82)),u=i(r(65)),d=i(r(37)),c=r(382),f=r(1113),p=i(r(386)),h=i(r(524)),m=r(515);class g extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{new_type:a}=e,r={new_type:a,migration_policy:"on-demand"};return this.store.retype(t,r)}))}get name(){return t("Change type")}get tips(){return t("If the capacity of the disk is large,the type modify operation may takes several hours. Please be cautious.")}init(){this.store=p.default,this.volumeTypeStore=h.default,this.getVolumeTypes()}getVolumeTypes(){this.volumeTypeStore.fetchList()}get isAsyncAction(){return!0}get volumeTypes(){var e,{volume_type:t}=this.item,{data:a=[]}=this.volumeTypeStore.list;return(0,l.default)(e=(0,s.default)(a).call(a,(e=>e.name!==t))).call(e,(e=>({label:e.name,value:e.id})))}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,o.default)(e=(0,o.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),volume_type:(this.volumeTypes[0]||{}).value}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"new_type",label:t("Volume Type"),type:"select",required:!0,options:this.volumeTypes}]}}a.ChangeType=g,(0,d.default)(g,"id","change-type"),(0,d.default)(g,"title",t("Change Type")),(0,d.default)(g,"policy","volume:retype"),(0,d.default)(g,"allowed",(e=>u.default.resolve((0,m.isAvailableOrInUse)(e)&&!(0,m.isOsDisk)(e))));var v=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=v},3451:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CloneVolume=void 0;var p=f(r(101)),h=f(r(82)),m=f(r(65)),g=f(r(52)),v=f(r(71)),y=f(r(37)),b=r(382),_=r(1113),S=f(r(386)),x=r(515);function w(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{volume:t,more:a}=e,r=I(I({},(0,v.default)(e,["volume","more"])),{},{source_volid:this.item.id});return this.store.create(r)}))}get name(){return t("Clone volume")}get tips(){return t("It is recommended that you perform this cloning operation on a disk without any reading/writing")}init(){this.store=S.default,this.getVolumeTypes(),(0,x.fetchQuota)(this,this.item.size)}getVolumeTypes(){var e=this;return(0,g.default)((function*(){var t;yield e.store.fetchVolumeTypes();var a=(0,p.default)(t=e.volumeTypes).call(t,(t=>t.label===e.item.volume_type));e.defaultType=a,a&&(0,x.setCreateVolumeType)(e.item.volume_type),e.updateDefaultValue()}))()}get volumeTypes(){return this.store.volumeTypes}static get disableSubmit(){return(0,x.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,x.getQuotaInfo)(this)}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,h.default)(e=(0,h.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),volume_type:(this.defaultType||{}).value,size:i}}get maxSize(){var{quota:{gigabytes:{left:e=0}={}}={}}=this.state;return-1===e?1/0:e}get formItems(){var{size:e}=this.item,{more:a}=this.state;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Volume Name"),type:"input-name",required:!0},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:e,max:this.maxSize,required:!0,onChange:x.onVolumeSizeChange},{name:"more",type:"more",label:t("Advanced Options")},{name:"volume_type",label:t("Volume Type"),type:"select",options:this.volumeTypes,onChange:x.onVolumeTypeChange,allowClear:!1,hidden:!a}]}}a.CloneVolume=C,(0,y.default)(C,"id","clone-volume"),(0,y.default)(C,"title",t("Clone Volume")),(0,y.default)(C,"policy","volume:create"),(0,y.default)(C,"allowed",(e=>m.default.resolve((0,x.isAvailableOrInUse)(e))));var k=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=k},3452:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.UpdateStatus=void 0;var l=i(r(82)),s=i(r(65)),o=i(r(37)),u=r(382),d=r(1113),c=i(r(386));class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"handleStatusChange",(e=>{this.setState({status:e})})),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return delete e.volume,this.store.resetStatus(t,e)}))}get name(){return t("update status")}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),status:"available"}}get tips(){return t('Do not reset the normally mounted volume to the "available"、"maintenance" or "error" status. The reset state does not remove the volume from the instance. If you need to remove the volume from the instance, please go to the console of the corresponding project and use the "detach" operation.')}get formItems(){var{status:e}=this.state,a=[{value:"available",label:t("Available")},{value:"maintenance",label:t("Maintained")},{value:"error",label:t("Error")},{value:"in-use",label:t("In Use")}];return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"status",label:t("Status"),type:"select",options:a,onChange:this.handleStatusChange,extra:"in-use"===e?t("The volume status can be reset to in-use only when the previous status is in-use."):""}]}init(){this.store=c.default}}a.UpdateStatus=f,(0,o.default)(f,"id","update-status"),(0,o.default)(f,"title",t("Update Status")),(0,o.default)(f,"policy","volume_extension:volume_admin_actions:reset_status"),(0,o.default)(f,"allowed",(()=>s.default.resolve(!0)));var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3453:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Migrate=void 0;var l=i(r(82)),s=i(r(65)),o=i(r(37)),u=r(382),d=r(1113),c=i(r(386)),f=r(515),p=i(r(1456)),h=r(1457);class m extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"disableFunc",(e=>{var{host:t}=this.item;return e.name===t})),(0,o.default)(this,"onSubmit",(e=>{var{pool:t}=e,{item:{id:a}}=this,{selectedRowKeys:r=[]}=t||{};return c.default.migrate(a,{host:r[0]})}))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Migrate volume")}init(){this.poolStore=p.default,this.getPools()}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i,host:s}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),host:s}}getPools(){this.poolStore.fetchList()}get pools(){return this.poolStore.list.data||[]}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"host",label:t("Current Storage Backend"),type:"label",iconType:"instance"},{name:"pool",label:t("Target Storage Backend"),type:"select-table",required:!0,data:this.pools,isLoading:this.poolStore.list.isLoading,disabledFunc:this.disableFunc,rowKey:"name",columns:h.poolColumns}]}}a.Migrate=m,(0,o.default)(m,"id","migrate-volume"),(0,o.default)(m,"title",t("Migrate Volume")),(0,o.default)(m,"policy","volume_extension:volume_admin_actions:migrate_volume"),(0,o.default)(m,"allowed",(e=>s.default.resolve((0,f.isAvailableOrInUse)(e))));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},3454:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateImage=void 0;var l=i(r(62)),s=i(r(35)),o=i(r(65)),u=i(r(37)),d=r(382),c=r(1113),f=r(520),p=i(r(386)),h=r(515);class m extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.uploadImage(t,e)}))}get name(){return t("Create Image")}get defaultValue(){return{disk_format:"raw"}}get osList(){var e;return(0,l.default)(e=(0,s.default)(f.imageOS)).call(e,(e=>({value:e,label:f.imageOS[e]})))}get formatList(){var e;return(0,l.default)(e=(0,s.default)(f.volumeCreateImageTypes)).call(e,(e=>({label:f.volumeCreateImageTypes[e],value:e})))}get formItems(){return[{name:"image_name",label:t("Image Name"),type:"input-name",placeholder:t("Please input name"),isImage:!0,required:!0},{name:"disk_format",label:t("Format"),type:"select",options:this.formatList,required:!0}]}init(){this.store=p.default}}a.CreateImage=m,(0,u.default)(m,"id","create-image"),(0,u.default)(m,"title",t("Create Image")),(0,u.default)(m,"policy","volume_extension:volume_actions:upload_image"),(0,u.default)(m,"allowed",(e=>o.default.resolve((0,h.isAvailable)(e))));var g=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=g},3455:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.AcceptVolumeTransfer=void 0;var l=i(r(65)),s=i(r(37)),o=r(382),u=r(1113),d=i(r(386));class c extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{transfer_id:t,auth_key:a}=e;return d.default.acceptVolumeTransfer(t,{auth_key:a})}))}get name(){return t("Accept Volume Transfer")}get defaultValue(){return{}}get messageHasItemName(){return!1}get formItems(){return[{name:"transfer_id",label:t("Transfer ID"),type:"input",placeholder:t("Please input transfer id"),required:!0},{name:"auth_key",label:t("Auth Key"),type:"input",placeholder:t("Please input auth key"),required:!0}]}}a.AcceptVolumeTransfer=c,(0,s.default)(c,"id","accept-volume-transfer"),(0,s.default)(c,"title",t("Accept Volume Transfer")),(0,s.default)(c,"policy",(()=>"volume:accept_transfer")),(0,s.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3456:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateTransfer=void 0;var l=i(r(82)),s=i(r(65)),o=i(r(37)),u=r(382),d=r(1113),c=i(r(386)),f=r(515);class p extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"downloadTxt",((e,t)=>{var a=document.createElement("a");a.href="data:text/plain;charset=utf-8,".concat(t),a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a)})),(0,o.default)(this,"onSubmit",(e=>{var{name:t}=e,{id:a}=this.item;return this.store.createTransfer({name:t,volume_id:a}).then((e=>{if(e&&e.transfer){var t,a,{id:r,name:n,auth_key:i}=e.transfer;this.downloadTxt("Volume Transfer ".concat(r,".txt"),(0,l.default)(t=(0,l.default)(a="Transfer Name: ".concat(n,"\nTransfer ID: ")).call(a,r,"\nAuth Key: ")).call(t,i))}}))}))}get name(){return t("Create Transfer")}get defaultValue(){return{name:""}}get tips(){return t("Ownership of a volume can be transferred from one project to another. The transfer process of the volume needs to perform the transfer operation in the original owner's project, and complete the \"accept\" operation in the receiver's project.")}get formItems(){return[{name:"name",label:t("Transfer Name"),type:"input-name",required:!0,placeholder:t("Please input name")}]}init(){this.store=c.default}}a.CreateTransfer=p,(0,o.default)(p,"id","create-transfer"),(0,o.default)(p,"title",t("Create Transfer")),(0,o.default)(p,"policy","volume:create_transfer"),(0,o.default)(p,"allowed",(e=>s.default.resolve((0,f.isAvailable)(e)&&!e.encrypted)));var h=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=h},3457:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(65)),s=i(r(37)),o=r(1113),u=i(r(386));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","volume:delete_transfer"),(0,s.default)(this,"allowedCheckFunc",(e=>l.default.resolve("awaiting-transfer"===e.status))),(0,s.default)(this,"confirmContext",(e=>{var{name:a}=e;return t("Are you sure to cancel transfer volume { name }? ",{name:a})})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.cancelTransfer({id:t})}))}get id(){return"cancel-transfer"}get title(){return t("Cancel Transfer")}get name(){return t("Cancel Transfer")}get buttonText(){return t("Cancel Transfer")}get actionName(){return t("Cancel Transfer")}}a.default=d},3458:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=i(r(65)),s=i(r(37)),o=r(382),u=i(r(1170)),d=r(515);class c extends u.default{static path(e){return"/compute/instance/create?volume=".concat(e.id)}static allowed(e){return l.default.resolve((0,d.canCreateInstance)(e))}}a.StepCreate=c,(0,s.default)(c,"id","instance-create"),(0,s.default)(c,"title",t("Create Instance")),(0,s.default)(c,"policy","os_compute_api:servers:create:attach_volume");var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3459:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Bootable=void 0;var l=i(r(65)),s=i(r(516)),o=i(r(37)),u=r(382),d=r(1113),c=i(r(386));class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{bootable:t}=e,{id:a}=this.item;return c.default.changeBootable(a,{bootable:t})}))}static allowed(){return l.default.resolve(!0)}get name(){var{bootable:e}=(0,s.default)(this);return e?t("Bootable"):t("Unbootable")}get defaultValue(){var{item:e}=this.props;return{bootable:"true"===e.bootable}}get formItems(){return[{name:"bootable",label:t("Bootable"),checkedText:t("Bootable"),uncheckedText:t("Unbootable"),type:"switch",required:!0}]}}a.Bootable=f,(0,o.default)(f,"id","volume-bootable"),(0,o.default)(f,"title",t("Bootable")),(0,o.default)(f,"buttonText",t("Bootable")),(0,o.default)(f,"policy","volume:update");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3460:function(e,t,a){var r=a(3461);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3461:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".styles__popover-row--1Esbj {\n max-width: 320px;\n margin: 0 !important;\n text-align: center;\n}\n",""]),t.locals={"popover-row":"styles__popover-row--1Esbj"}},3462:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Allocate=void 0;var p=f(r(62)),h=f(r(65)),m=f(r(71)),g=f(r(52)),v=f(r(37)),y=f(r(0)),b=r(382),_=r(1113),S=r(323),x=r(321),w=f(r(384)),I=f(r(390)),C=r(391),k=r(1221),D=r(83);function T(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t({allocation_pools:e.allocation_pools,ip_version:e.ip_version,value:e.id,label:e.name}))),selectedNetwork:t}),e.formRef.current.setFieldsValue({subnet_id:null})}));return function(e){return t.apply(this,arguments)}}()),(0,v.default)(this,"handleSubnetChange",(e=>{this.setState({selectedSubnet:e})})),(0,v.default)(this,"onSubmit",(e=>{var{subnet_id:t,batch_allocate:a,count:r,qos_policy_id:n}=e,i=(0,m.default)(e,["subnet_id","batch_allocate","count","qos_policy_id"]);if(t&&(i.subnet_id=t.value),n&&n.selectedRowKeys.length>0&&(i.qos_policy_id=n.selectedRowKeys[0]),a){i.floating_ip_address=null;for(var l=[],s=0;s{this.setState({count:e})})),(0,v.default)(this,"onProjectChange",(e=>{this.setState({projectId:e},(()=>{this.getQuota()}))}))}get name(){return t("Allocate IP")}static get modalSize(){return(0,D.qosEndpoint)()?"large":"small"}getModalSize(){return(0,D.qosEndpoint)()?"large":"small"}get qosEndpoint(){return(0,D.qosEndpoint)()}init(){this.store=new S.FloatingIpStore,this.networkStore=new x.NetworkStore,this.qosPolicyStore=new C.QoSPolicyStore,this.projectStore=w.default,this.state=A(A({},this.state||{}),{},{selectedNetwork:null,selectedSubnet:null,networks:[],subnets:[],qosPolicy:null,count:2,quota:{},quotaLoading:!0,projectId:this.currentProjectId,maxCount:2}),this.getExternalNetworks(),this.isAdminPage&&w.default.fetchList(),this.getQuota()}getExternalNetworks(){var e=this;return(0,g.default)((function*(){var t=yield e.networkStore.pureFetchList({"router:external":!0});e.setState({networks:t})}))()}get messageHasItemName(){return!1}static get disableSubmit(){var{neutronQuota:{floatingip:{left:e=0}={}}}=w.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,g.default)((function*(){var{projectId:t,count:a}=e.state;e.setState({quotaLoading:!0});var r=yield e.projectStore.fetchProjectNeutronQuota(t),{floatingip:n={}}=r||{},{left:i=0}=n;e.setState({quota:n,quotaLoading:!1,maxCount:i});var l=a;i0&&0===a&&(l=1),l!==a&&(e.updateFormValue("count",l),e.setState({count:l}))}))()}get quotaInfo(){var{quota:e={},quotaLoading:a,batchAllocate:r=!1,count:n}=this.state;if(a)return[];var{left:i=0}=e,l=0;return 0!==i&&(l=r?n:1),[A(A({},e),{},{add:l,name:"floatingip",title:t("Floating IP")})]}get defaultValue(){return{project_id:this.currentProjectId,count:2}}get formItems(){var e,a,{networks:r,selectedNetwork:n,subnets:i,selectedSubnet:l,batchAllocate:s=!1,maxCount:o}=this.state,u=(0,p.default)(r).call(r,(e=>({label:e.name,value:e.id}))),d=(0,p.default)(e=w.default.list.data).call(e,(e=>({label:e.name,value:e.id})));return[{name:"floating_network_id",label:t("Network"),type:"select",options:u,onChange:this.handleNetworkChange,required:!0},{name:"project_id",label:t("Project"),type:"select",showSearch:!0,hidden:!this.isAdminPage,required:this.isAdminPage,options:d,onChange:this.onProjectChange},{name:"subnet_id",label:t("Owned Subnet"),type:"select",options:i,isWrappedValue:!0,onChange:e=>this.handleSubnetChange(e),extra:l&&y.default.createElement(y.default.Fragment,null,y.default.createElement("span",null,t("Allocation Pools")),(0,p.default)(a=l.allocation_pools).call(a,((e,t)=>y.default.createElement("div",{key:"pool.start.".concat(t)},e.start,"--",e.end)))),hidden:!n,required:!1},{name:"batch_allocate",label:t("Batch Allocate"),type:"check",onChange:e=>{this.setState({batchAllocate:e})}},{name:"count",label:t("Count"),type:"input-int",min:1,max:o,hidden:!s,required:!0,onChange:this.onCountChange},{name:"floating_ip_address",label:t("Floating IP Address"),hidden:!l||s,type:"ip-input",version:l&&(l.ip_version||4)},{name:"description",label:t("Description"),type:"textarea"},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:k.getQoSPolicyTabs.call(this),isMulti:!1,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),onChange:this.onQosChange,display:!!this.qosEndpoint}]}}a.Allocate=P,(0,v.default)(P,"id","allocate"),(0,v.default)(P,"title",t("Allocate IP")),(0,v.default)(P,"policy","create_floatingip"),(0,v.default)(P,"allowed",(()=>h.default.resolve(!0)));var M=(0,b.inject)("rootStore")((0,b.observer)(P));a.default=M},3463:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Associate=void 0;var h=p(r(65)),m=p(r(516)),g=p(r(62)),v=p(r(1177)),y=p(r(52)),b=p(r(37)),_=p(r(0)),S=r(382),x=(r(513),r(1113)),w=R(r(383)),I=R(r(526)),C=p(r(542)),k=r(47),D=r(1137),T=p(r(323)),A=r(529),P=r(1120),M=r(1129),E=r(1151);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 R(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={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}return r.default=e,a&&a.set(e,r),r}function j(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function F(e){for(var t=1;t{var{floating_network_id:t}=this.item;return!(e.hasExternalGateway&&e.external_gateway_info&&e.external_gateway_info.network_id===t&&0===e.external_gateway_info.external_fixed_ips.length)})),(0,b.default)(this,"portsDisableFunc",(e=>0===e.fixed_ips.length)),(0,b.default)(this,"onValuesChange",(e=>{if((0,k.has)(e,"resourceType")){var{resourceType:t}=e;this.setState({resourceType:t})}})),(0,b.default)(this,"handleInstanceSelect",function(){var t=(0,y.default)((function*(t){if(e.setState({instanceLoading:!0}),0===t.selectedRows.length)return e.setState({instanceFixedIPs:l,instanceLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({port:null})}));var{id:a}=t.selectedRows[0],r=yield w.default.fetchInterfaceList({id:a}),n=yield(0,E.getInterfaceWithReason)(r),{canReachSubnetIdsWithRouterId:i}=e.state,l=(0,M.getPortsAndReasons)(n,i,!0);return e.setState({instanceFixedIPs:l,instanceLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({port:null})}))}));return function(e){return t.apply(this,arguments)}}()),(0,b.default)(this,"handlePortSelect",function(){var t=(0,y.default)((function*(t){e.setState({fixedIpLoading:!0});var{canReachSubnetIdsWithRouterId:a}=e.state,r=yield(0,E.getInterfaceWithReason)(t.selectedRows),n=(0,M.getPortsAndReasons)(r,a,!0);return e.setState({portFixedIPs:n,fixedIpLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({fixed_ip_address:null})}))}));return function(e){return t.apply(this,arguments)}}()),(0,b.default)(this,"onSubmit",(e=>{var{resourceType:t}=e,{id:a}=this.item,r={};if(r.id=a,"instance"===t){var{port:{selectedRows:n=[]}={}}=e;r.port_id=n[0].port_id,r.fixed_ip_address=n[0].fixed_ip_address}else if("port"===t){var{virtual_adapter:{selectedRows:i=[]}={},fixed_ip_address:{selectedRows:l=[]}={}}=e;r.port_id=i[0].id,r.fixed_ip_address=l[0].fixed_ip_address}else if("router"===t){var{router:s}=e,o=s.selectedRows[0];return I.default.associateFip({id:o.id,fip:this.item,router:o})}return T.default.associateFip(r)}))}get name(){return t("Associate Floating IP")}init(){this.store=new w.ServerStore,this.routersStore=new I.RouterStore,this.portStore=new A.PortStore,D.getCanReachSubnetIdsWithRouterIdInComponent.call(this,(e=>{var{item:t}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id})),this.state={instanceFixedIPs:[],portFixedIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[]}}get instanceName(){return this.item.floating_ip_address||(0,m.default)(this).name}static get modalSize(){return"large"}getModalSize(){return"large"}get instances(){return this.store.list.data||[]}get resourceTypeMap(){return[{value:"instance",label:t("Instance")},{value:"port",label:t("Virtual Adapter")}]}get defaultValue(){var{floating_ip_address:e}=this.item;return{floatingIp:e,resourceType:"instance"}}get formItems(){var{resourceType:e="instance",instanceFixedIPs:a,instanceLoading:r}=this.state,n=[{name:"floatingIp",label:t("Floating Ip"),type:"label",icon:_.default.createElement(v.default,null)},{name:"resourceType",label:t("Resource Type"),type:"radio",required:!0,options:this.resourceTypeMap}];switch(e){case"instance":n.push(F({name:"instance",label:t("Instance"),type:"select-table",required:!0,backendPageStore:this.store,extraParams:{noReminder:!0},disabledFunc:e=>0===e.fixed_addresses.length,onChange:this.handleInstanceSelect,isMulti:!1},P.instanceSelectTablePropsBackend),{name:"port",label:t("Instance IP"),type:"select-table",required:!0,data:a,isLoading:r,isMulti:!1,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"name"},{title:t("Mac Address"),dataIndex:"mac_address"},{title:t("Network"),dataIndex:"network_name"},{title:t("Reason"),dataIndex:"reason"}],disabledFunc:e=>!e.available});break;case"lb":n.push({name:"loadbalance",label:t("Load Balancer"),type:"select-table",required:!0,data:[],isMulti:!1,filterParams:[{label:t("Name"),name:"name"},{label:t("IP"),name:"private_ip"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Image"),dataIndex:"image",render:e=>_.default.createElement(C.default,{type:e,title:e})},{title:t("Fixed IP"),dataIndex:"fixed_addresses",render:e=>(0,g.default)(e).call(e,(e=>_.default.createElement("span",{key:e},e,_.default.createElement("br",null))))},{title:t("Floating IP"),dataIndex:"floating_addresses",render:e=>e?(0,g.default)(e).call(e,(e=>_.default.createElement("span",{key:e},e,_.default.createElement("br",null)))):"-"},{title:t("Flavor"),dataIndex:"flavor"},{title:t("Created At"),dataIndex:"created",valueRender:"sinceTime"}]});break;case"router":n.push(F({name:"router",label:t("Router"),type:"select-table",required:!0,backendPageStore:this.routersStore,disabledFunc:this.routersDisableFunc,isMulti:!1},(0,D.getRouterSelectTablePropsBackend)(this)));break;case"port":n.push(...M.getPortFormItem.call(this,[""]))}return n}}a.Associate=L,(0,b.default)(L,"id","associate"),(0,b.default)(L,"title",t("Associate")),(0,b.default)(L,"policy","update_floatingip"),(0,b.default)(L,"allowed",(e=>h.default.resolve(!(0,E.disableFIPAssociate)(e)&&(0,k.isNull)(e.fixed_ip_address)&&"DOWN"===e.status&&(0,k.isNull)(e.port_details))));var O=(0,S.inject)("rootStore")((0,S.observer)(L));a.default=O},3464:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(65)),u=s(r(28)),d=s(r(33)),c=s(r(71));r(534);var f=s(r(394)),p=s(r(37)),h=s(r(0)),m=r(1113),g=s(r(323)),v=(r(167),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(47)));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 m.ConfirmAction{constructor(){super(...arguments),(0,p.default)(this,"policy","delete_floatingip"),(0,p.default)(this,"getItemName",(e=>e.floating_ip_address)),(0,p.default)(this,"confirmContext",(e=>{var a=null;if(this.needForceRelease(e)&&(a=h.default.createElement("div",null,h.default.createElement(f.default,{style:{marginTop:"14px"},onChange:t=>{this.onChangeType(t.target.checked,e)}},t("Force release")))),!this.messageHasItemName)return h.default.createElement("div",null,h.default.createElement("p",null," ",t("Are you sure to {action}?",{action:this.actionNameDisplay||this.title})),a);var r=this.getName(e);return h.default.createElement("div",null,h.default.createElement("p",null," ",this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:r}))),a)})),(0,p.default)(this,"onSubmit",(e=>{var{forceRelease:a}=e,r=(0,c.default)(e,["forceRelease"]);if(this.hasCheckBox&&!a){var n=t("Floating ip has already been associate, Please check Force release");return o.default.reject(n)}return g.default.delete(r)}))}get id(){return"delete"}get title(){return t("Release")}get isDanger(){return!0}get buttonText(){return t("Release")}get actionName(){return t("Release")}onChangeType(e,t){(0,v.isArray)(t)?(0,u.default)(t).call(t,(t=>{t.forceRelease=e})):t.forceRelease=e}needForceRelease(e){var t=!1;(0,v.isArray)(e)?((0,u.default)(e).call(e,(e=>{e.forceRelease=!1})),(0,d.default)(e).call(e,(e=>!(v.default.isNull(e.fixed_ip_address)&&"DOWN"===e.status&&v.default.isNull(e.port_details))))[0]&&(t=!0)):(e.forceRelease=!1,t=!(v.default.isNull(e.fixed_ip_address)&&"DOWN"===e.status&&v.default.isNull(e.port_details)));return this.hasCheckBox=t,t}}a.default=b},3465:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),s=r(1113),o=i(r(47)),u=i(r(323));class d extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_floatingip"),(0,l.default)(this,"allowedCheckFunc",(e=>!o.default.isNull(e.fixed_ip_address)&&"DOWN"!==e.status)),(0,l.default)(this,"getItemName",(e=>e.floating_ip_address)),(0,l.default)(this,"onSubmit",(e=>u.default.disassociateFip(e)))}get id(){return"disassociate"}get title(){return t("Disassociate")}get buttonText(){return t("Disassociate")}get actionName(){return t("Disassociate")}}a.default=d},3466:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(65)),h=f(r(37)),m=r(382),g=r(1113),v=f(r(323)),y=r(1221),b=r(391),_=r(83);function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}class x extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{description:t,qos_policy_id:a}=e;return v.default.edit({id:this.item.id},{description:t,qos_policy_id:a.selectedRowKeys.length?a.selectedRowKeys[0]:null})}))}static get modalSize(){return(0,_.qosEndpoint)()?"large":"small"}getModalSize(){return(0,_.qosEndpoint)()?"large":"small"}get qosEndpoint(){return(0,_.qosEndpoint)()}init(){this.qosPolicyStore=new b.QoSPolicyStore}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;tp.default.resolve(!0)));var w=(0,m.inject)("rootStore")((0,m.observer)(x));a.default=w},3467:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var p=f(r(62)),h=f(r(65));r(318);var m=f(r(317)),g=f(r(1242)),v=f(r(71)),y=f(r(52)),b=f(r(37)),_=f(r(0)),S=r(382),x=r(1113),w=(r(513),r(167),r(321)),I=r(392),C=r(391),k=f(r(521)),D=f(r(384)),T=r(390),A=r(1221),P=r(83);function M(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function E(e){for(var t=1;t{var t=e.selectedRowKeys[0];this.setState({network_id:t}),this.formRef.current.setFieldsValue({fixed_ips:void 0}),this.getSubnets(t)})),(0,b.default)(this,"onSubmit",(e=>{var{mac_address:{type:t,mac:a},security_groups:r,enableQosPolicy:n,qos_policy_id:i,more:l,network_id:s,fixed_ips:o,bindingProfile:u}=e,d=(0,v.default)(e,["mac_address","security_groups","enableQosPolicy","qos_policy_id","more","network_id","fixed_ips","bindingProfile"]),c=E(E({},o&&o.length>0?{fixed_ips:(0,p.default)(o).call(o,(e=>{var t={subnet_id:e.subnet};return e.ip_address&&"manual"===e.ip_address.type&&(t.ip_address=e.ip_address.ip),t}))}:{}),{},{network_id:s.selectedRowKeys[0]},d);return t&&"auto"!==t&&(c.mac_address=a),n&&i&&(c.qos_policy_id=0===i.selectedRowKeys.length?null:i.selectedRowKeys[0]),r&&(c.security_groups=r.selectedRowKeys||void 0),c.project_id=this.currentProjectId,u&&(c["binding:profile"]=JSON.parse(u)),k.default.create(c)}))}get qosEndpoint(){return(0,P.qosEndpoint)()}init(){this.state.quota={},this.state.quotaLoading=!0,this.projectStore=D.default,this.networkStore=new w.NetworkStore,this.securityGroupStore=new I.SecurityGroupStore,this.qosPolicyStore=new C.QoSPolicyStore,this.subnetStore=new T.SubnetStore,this.getQuota()}getSubnets(e){var t=this;return(0,y.default)((function*(){yield t.networkStore.fetchDetail({id:e}),yield t.fetchSubnetDetails(e)}))()}get name(){return t("Create Virtual Adapter")}static get modalSize(){return"large"}getModalSize(){return"large"}get tips(){return t("Virtual adapter mainly used for binding instance and other operations, occupying the quota of the port.")}static get disableSubmit(){var{neutronQuota:{port:{left:e=0}={}}}=D.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,y.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectNeutronQuota(),{port: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,n=0===r?0:1;return[E(E({},e),{},{add:n,name:"port",title:t("Port")})]}get defaultValue(){return{more:!1,mac_address:{type:"auto"},qos_policy:"disable",port_security_enabled:!0,enableQosPolicy:!1}}get securityGroups(){var e;return(0,p.default)(e=this.securityGroupStore.list.data||[]).call(e,(e=>E(E({},e),{},{key:e.id})))}get formItems(){var e,{more:a,network_id:r,subnetDetails:n=[],port_security_enabled:i=!0,enableQosPolicy:l=!1}=this.state,s=(0,p.default)(e="normal,macvtap,direct,baremetal,direct-physical,virtio-forwarder,smart-nic".split(",")).call(e,(e=>({label:e,value:e})));return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"network_id",label:t("Owned Network"),type:"network-select-table",onChange:this.handleOwnedNetworkChange,required:!0},{name:"fixed_ips",label:t("Owned Subnet"),type:"ip-distributor",subnets:n,hidden:!r},{name:"ipv6",label:"IPv6",type:"label",style:{marginBottom:24},content:_.default.createElement("span",null,t("The selected VPC/ subnet does not have IPv6 enabled.")," ",_.default.createElement(m.default,{type:"link"},t("To open")," ",_.default.createElement(g.default,null))," "),hidden:!0},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},required:!0,type:"mac-address"},{name:"port_security_enabled",label:t("Port Security"),type:"switch",tip:t("Disabling port security will turn off the security group policy protection and anti-spoofing protection on the port. General applicable scenarios: NFV or operation and maintenance Debug."),onChange:e=>{this.setState({port_security_enabled:e})}},{name:"security_groups",label:t("Security Group"),type:"select-table",tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),data:this.securityGroups,isLoading:this.securityGroupStore.list.isLoading,extraParams:{project_id:this.currentProjectId},backendPageStore:this.securityGroupStore,isMulti:!0,hidden:!i,required:i,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]},{name:"binding:vnic_type",label:t("Port Type"),type:"select",options:s,hidden:!a},{name:"enableQosPolicy",label:t("Enable QoS Policy"),type:"switch",onChange:e=>{this.setState({enableQosPolicy:e})},hidden:!a,display:!!this.qosEndpoint},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:A.getQoSPolicyTabs.call(this),isMulti:!1,required:l,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),hidden:!(a&&l),display:!!this.qosEndpoint},{name:"bindingProfile",label:t("Binding Profile"),type:"aceEditor",hidden:!a,mode:"json",wrapEnabled:!0,tabSize:2,width:"100%",height:"200px",setOptions:{enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableSnippets:!0},validator:(e,a)=>{if(void 0!==a&&""!==a)try{return JSON.parse(a),h.default.resolve(!0)}catch(e){return h.default.reject(new Error(t("Illegal JSON scheme")))}return h.default.resolve(!0)}},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.CreateAction=N,(0,b.default)(N,"id","create-virtual-adapter"),(0,b.default)(N,"title",t("Create Virtual Adapter")),(0,b.default)(N,"policy","create_port"),(0,b.default)(N,"allowed",(()=>h.default.resolve(!0)));var R=(0,S.inject)("rootStore")((0,S.observer)(N));a.default=R},3468:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),s=r(1113),o=i(r(521));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_port"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>o.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Virtual Adapter")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete virtual adapter")}isOwnerOrAdmin(){return!0}}a.default=u},3469:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p,h=f(r(71)),m=f(r(37)),g=f(r(62)),v=f(r(65)),y=r(382),b=r(1113),_=f(r(521));function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function x(e){for(var t=1;t({label:e,value:e})));class I extends b.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"onSubmit",(e=>{var{item:{id:t}={}}=this.props,{mac_address:{type:a,mac:r},more:n}=e,i=x({},(0,h.default)(e,["mac_address","more"]));return a&&"auto"!==a&&(i.mac_address=r),_.default.update({id:t},i)}))}get defaultValue(){var{item:e}=this.props;return x(x({},e),{},{mac_address:{type:"manual",mac:e.mac_address},"binding:vnic_type":e.binding_vnic_type})}get formItems(){var{more:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},type:"mac-address",required:!0},{name:"binding:vnic_type",label:t("Port Type"),type:"select",required:!0,options:w,hidden:!e},{name:"description",label:t("Description"),type:"textarea"},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.Edit=I,(0,m.default)(I,"id","edit-virtual-adapter"),(0,m.default)(I,"title",t("Edit")),(0,m.default)(I,"buttonText",t("Edit")),(0,m.default)(I,"policy","update_port"),(0,m.default)(I,"allowed",(()=>v.default.resolve(!0)));var C=(0,y.inject)("rootStore")((0,y.observer)(I));a.default=C},3470:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Attach=void 0;var h=p(r(219)),m=p(r(65)),g=p(r(37)),v=r(382),y=r(1113),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=S(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(383)),_=r(1120);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 x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{id:t}=this.props.item,{instance:{selectedRowKeys:a=[]}={}}=e;return b.default.addInterface({id:a[0],body:{interfaceAttachment:{port_id:t}}})}))}init(){this.store=new b.ServerStore}get name(){return t("Attach Instance")}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{name:e,id:t}=this.item;return{virtual_adapter:e,virtual_adapter_id:t}}get formItems(){return[{name:"virtual_adapter",label:t("Virtual Adapter"),type:"label"},{name:"virtual_adapter_id",label:t("Virtual Adapter ID"),type:"label",hidden:!0},w({name:"instance",label:t("Instance"),type:"select-table",backendPageStore:this.store,extraParams:{noReminder:!0},disabledFunc:e=>e.locked||!(0,h.default)(_.allowAttachInterfaceStatus).call(_.allowAttachInterfaceStatus,e.vm_state),required:!0,isMulti:!1},_.instanceSelectTablePropsBackend)]}}a.Attach=I,(0,g.default)(I,"id","attach_instance"),(0,g.default)(I,"title",t("Attach Instance")),(0,g.default)(I,"policy","os_compute_api:os-attach-interfaces:create"),(0,g.default)(I,"allowed",(e=>m.default.resolve(""===e.device_id)));var C=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=C},3471:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(52)),s=i(r(37)),o=r(1113),u=i(r(383));class d extends o.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"policy","os_compute_api:os-attach-interfaces:delete"),(0,s.default)(this,"allowedCheckFunc",(e=>!!e.device_id)),(0,s.default)(this,"onSubmit",(0,l.default)((function*(){var{id:t,device_id:a}=e.item;return u.default.detachInterface({id:a,ports:[t]})})))}get id(){return"detach_instance"}get title(){return t("Detach Instance")}get buttonText(){return t("Detach")}get actionName(){return t("detach instance")}get isAsyncAction(){return!0}}a.default=d},3472:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ModifyQoS=void 0;var l=i(r(65)),s=i(r(52)),o=i(r(37)),u=i(r(0)),d=r(382),c=r(1113),f=r(391),p=i(r(521)),h=r(1221),m=r(83);class g extends c.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{enableQosPolicy:a,qos_policy_id:r}=e,n={qos_policy_id:null};return a&&r&&(n.qos_policy_id=0===r.selectedRowKeys.length?null:r.selectedRowKeys[0]),p.default.update({id:t},n)}))}get name(){return t("Modify QoS")}get labelCol(){return{xs:{span:6},sm:{span:4}}}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.qosPolicyStore=new f.QoSPolicyStore,this.state={qosPolicy:{name:"",id:""}},this.item.qos_policy_id&&this.getQosPolicyItem()}getQosPolicyItem(){var e=this;return(0,s.default)((function*(){var t=yield e.qosPolicyStore.fetchDetail({id:e.item.qos_policy_id});e.setState({qosPolicy:t})}))()}get instanceName(){return this.item.name||this.item.id}get defaultValue(){var e=null!==this.item.qos_policy_id;return{enableQosPolicy:e,qos_policy_id:{selectedRowKeys:e?[this.item.qos_policy_id]:[],selectedRows:e?[{id:this.item.qos_policy_id,name:this.item.qos_policy_id}]:[]}}}get formItems(){var{enableQosPolicy:e=null!==this.item.qos_policy_id,qosPolicy:a}=this.state;return[{name:"enableQosPolicy",label:t("Enable QoS Policy"),type:"switch",onChange:e=>{this.setState({enableQosPolicy:e})}},{name:"name",label:t("Current QoS policy name"),type:"label",content:u.default.createElement("div",null,a.name||t("Not yet bound")),hidden:!e},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:h.getQoSPolicyTabs.call(this,{disabledFunc:e=>e.id===this.item.qos_policy_id}),isMulti:!1,required:!0,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),hidden:!e}]}}a.ModifyQoS=g,(0,o.default)(g,"id","modify_qos"),(0,o.default)(g,"title",t("Modify QoS")),(0,o.default)(g,"policy","update_port"),(0,o.default)(g,"allowed",(()=>l.default.resolve(!!(0,m.qosEndpoint)())));var v=(0,d.inject)("rootStore")((0,d.observer)(g));a.default=v},3473:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=i(r(65)),s=i(r(52)),o=i(r(37)),u=r(382),d=i(r(323)),c=r(1113),f=r(1120),p=r(1129),h=r(1137),m=r(1151);class g extends c.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"handleFixedIPChange",(e=>m.handleFixedIPChange.call(this,e))),(0,o.default)(this,"onSubmit",(e=>{var{fixed_ip:t,fip:a}=e,r=t.selectedRows[0],n=a.selectedRowKeys[0];return d.default.associateFip({id:n,port_id:this.item.id,fixed_ip_address:r.fixed_ip_address})}))}init(){this.getInterfaces(),h.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={interfaces:[],fixed_ip:null,canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],portLoading:!0}}getInterfaces(){var e=this;return(0,s.default)((function*(){var t=[e.item],a=yield(0,m.getInterfaceWithReason)(t);e.setState({interfaces:a,portLoading:!1})}))()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Associate Floating IP")}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return p.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{virtualAdapter:e}}getFIPFormItemExtra(){return(0,m.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,m.disableFIPAssociate)(e)}get formItems(){var e=(0,m.getFixedIPFormItemForAssociate)(t("Fixed IP"),this),a=(0,m.getFIPFormItemForAssociate)(this);return[{name:"virtualAdapter",label:t("Virtual Adapter"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=g,(0,o.default)(g,"id","AssociateFip"),(0,o.default)(g,"title",t("Associate Floating IP")),(0,o.default)(g,"policy","update_floatingip"),(0,o.default)(g,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,f.isNotError)(e)&&e.associatedDetail&&e.associatedDetail.length{var{floating_ip:t}=e,{id:a}=t.selectedRows[0];return u.default.disassociateFip({id:a})}))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Disassociate Floating IP")}get defaultValue(){var{name:e}=this.item;return{virtualAdapter:e}}get formItems(){var{associatedDetail:e}=this.item;return[{name:"virtualAdapter",label:t("Virtual Adapter"),type:"label",iconType:"instance"},{name:"floating_ip",label:t("Floating IP"),type:"select-table",required:!0,data:e,isMulti:!1,tagKey:"floating_ip_address",filterParams:[{label:t("Fixed IP Address"),name:"fixed_ip_address"}],columns:[{title:t("Fixed IP Address"),dataIndex:"fixed_ip_address"},{title:t("Floating IP Address"),dataIndex:"floating_ip_address"}]}]}}a.DisAssociateFip=f,(0,s.default)(f,"id","DisAssociateFip"),(0,s.default)(f,"title",t("Disassociate Floating IP")),(0,s.default)(f,"policy","update_floatingip"),(0,s.default)(f,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,c.isNotError)(e)&&e.associatedDetail&&e.associatedDetail.length)}));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3479:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(91)),l=n(a(62));a(532);var s=n(a(533)),o=n(a(550));a(1187);var u=n(a(1188));a(1117);var d=n(a(1118));a(1115);var c=n(a(1116));a(387);var f=n(a(220));a(1189);var p=n(a(1190)),h=n(a(0)),m=(a(167),a(513),a(47)),g=n(a(16)),v=n(a(4)),y=a(135),b=n(a(583)),_=n(a(3480)),{Paragraph:S}=p.default,x=(e,t)=>{var{content:a,dataIndex:r,render:n,valueRender:l,copyable:s}=t;if((0,m.has)(t,"content"))return s?h.default.createElement(S,{copyable:s},a):a;var o=(0,m.get)(e,r);if(n)o=n(o,e);else if(l){var u=y.renderFilterMap[l];o=u&&u(o)}return(0,m.isNumber)(o)||(o=o||"-"),((e,t,a,r)=>{var n,l,s=(0,m.get)(a,t);return(0,i.default)(n=t.toLowerCase()).call(n,"status")>=0||(0,i.default)(l=t.toLowerCase()).call(l,"state")>=0?h.default.createElement(b.default,{status:s,text:e}):"-"!==e&&(/_?id/g.test(t.toLowerCase())&&!1!==r||r)?h.default.createElement(S,{copyable:r},e):e||"-"})(o,r,e,s)},w=(e,t,a,r,n)=>(0,l.default)(e).call(e,((e,i)=>h.default.createElement(u.default,{loading:a,key:"detail-row-".concat(i)},h.default.createElement(d.default,{className:(0,v.default)(_.default["card-item"],"sl-card-item")},h.default.createElement(c.default,{span:r},(e=>{var{label:t,tooltip:a=""}=e;return a?h.default.createElement(f.default,{title:a},h.default.createElement("span",null,t)):t})(e)),h.default.createElement(c.default,{span:n},x(t,e)))))),I=e=>{var t,{title:a,titleHelp:r,loading:n,options:i,data:l,labelCol:c,contentCol:f,className:p,button:m}=e;return r&&(t=h.default.createElement(s.default,{arrowPointAtCenter:"true",placement:"rightTop",content:r,getPopupContainer:e=>e.parentNode},h.default.createElement(o.default,{className:_.default["title-help"]}))),h.default.createElement("div",{className:(0,v.default)(_.default.card,p)},h.default.createElement("div",{className:_.default["card-content"]},h.default.createElement(u.default,{loading:n},h.default.createElement(d.default,{className:(0,v.default)(_.default["card-item"],"sl-card-item")},h.default.createElement("h3",null," ",a," "),t,m)),w(i,l,n,c,f)))},C=g.default.shape({label:g.default.oneOfType([g.default.string,g.default.node]),content:g.default.any,tooltip:g.default.oneOfType([g.default.string,g.default.node]),dataIndex:g.default.string,valueRender:g.default.string});I.defaultProps={labelCol:8,contentCol:16,options:[],title:"",titleHelp:"",loading:!1,data:{}},I.propTypes={title:g.default.oneOfType([g.default.string,g.default.node]),titleHelp:g.default.any,options:g.default.arrayOf(C),loading:g.default.bool,data:g.default.object,labelCol:g.default.number,contentCol:g.default.number};var k=I;t.default=k},3480:function(e,t,a){var r=a(3481);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3481:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__card--Na2sx {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n margin-bottom: 16px;\n background-color: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n}\n.index__card--Na2sx .index__card-content--26JCN {\n padding: 16px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY {\n margin-bottom: 8px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY h3 {\n margin-bottom: 0;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY .index__title-help--8XKV- {\n margin-left: 8px;\n line-height: 26px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY div {\n word-break: break-all;\n}\n.index__card--Na2sx .index__card-content--26JCN :last-child {\n margin-bottom: 0;\n}\n.index__card--Na2sx .index__card-content--26JCN .ant-typography {\n word-break: break-all;\n}\n",""]),t.locals={card:"index__card--Na2sx","card-content":"index__card-content--26JCN","card-item":"index__card-item--1w9VY","title-help":"index__title-help--8XKV-"}},3482:function(e,t,a){var r=a(3483);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3483:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__main--TubAm {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding: 0 16px;\n}\n.index__main--TubAm .index__left-side--pbUVD {\n width: 380px;\n padding-right: 16px;\n}\n.index__main--TubAm .index__right-side--3v5zG {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n",""]),t.locals={main:"index__main--TubAm","left-side":"index__left-side--pbUVD","right-side":"index__right-side--3v5zG"}},3506:function(e,t,a){var r=a(3507);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3507:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--26YmP {\n min-height: calc(100vh - 108px);\n}\n.index__wrapper--26YmP .ant-tabs > .ant-tabs-nav {\n background-color: #fff;\n}\n.index__wrapper--26YmP .ant-tabs-nav-wrap {\n padding: 0 16px;\n}\n.index__wrapper--26YmP .list-container {\n margin-top: 0;\n}\n",""]),t.locals={wrapper:"index__wrapper--26YmP"}},3850:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.detailConfigs=t.actionConfigs=void 0;var i=n(a(3851)),l=n(a(3852)),s={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[i.default]};t.actionConfigs=s;var o={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]};t.detailConfigs=o},3851:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=i(r(62)),s=i(r(33)),o=i(r(35)),u=i(r(322)),d=i(r(65)),c=i(r(71)),f=i(r(37)),p=r(382),h=r(1113),m=i(r(1324)),g=i(r(115)),v=i(r(136)),y=r(32),b=i(r(1217));class _ extends h.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"onSubmit",(e=>{var t,a;(e.expires_at&&(e.expires_at=e.expires_at.clone().endOf("day")),e.roles)&&(e.roles=(0,l.default)(t=(0,s.default)(a=(0,o.default)(e.roles)).call(a,(t=>e.roles[t]))).call(t,(e=>({id:e}))));return m.default.create(e).then((e=>{var t=e.application_credential,{links:a,roles:r,system:n,unrestricted:i,user_id:l,name:s}=t,o=(0,c.default)(t,["links","roles","system","unrestricted","user_id","name"]),d="".concat(s,".json"),f=new Blob([(0,u.default)(o,null,2)],{type:"text/plain;charset=utf-8"});b.default.saveAs(f,d)}))}))}static get modalSize(){return"middle"}getModalSize(){return"middle"}get name(){return t("Create Application Credentials")}static allowed(){return d.default.resolve(!0)}get roleOptions(){var e=(0,y.toJS)(v.default.roles);return(0,l.default)(e).call(e,(e=>({label:e.name,value:e.id})))}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"expires_at",label:t("Expires At"),type:"date-picker",showToday:!1,disabledDate:e=>e&&e<(0,g.default)().subtract(1,"days").endOf("d"),required:!1},{name:"roles",label:t("Roles"),type:"check-group",options:this.roleOptions,extra:t("If not provided, the roles assigned to the application credential will be the same as the roles in the current token."),span:12},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Create=_,(0,f.default)(_,"id","create-application_credentials"),(0,f.default)(_,"title",t("Create Application Credentials")),(0,f.default)(_,"policy","identity:create_application_credential");var S=(0,p.inject)("rootStore")((0,p.observer)(_));a.default=S},3852:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),s=r(1113),o=i(r(1324));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","identity:delete_application_credential"),(0,l.default)(this,"onSubmit",(e=>{var{user_id:t,id:a}=e;return o.default.client.delete(t,a)}))}get id(){return"delete"}get title(){return t("Delete Application Credential")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete application credential")}}a.default=u}}]); \ No newline at end of file diff --git a/skyline_console/static/common.bundle.1658297502.js.gz b/skyline_console/static/common.bundle.1658297502.js.gz deleted file mode 100644 index f1f70414..00000000 Binary files a/skyline_console/static/common.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/common.bundle.1663167892.js b/skyline_console/static/common.bundle.1663167892.js new file mode 100644 index 00000000..64a42b15 --- /dev/null +++ b/skyline_console/static/common.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{1194:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(r(580)),h=f(r(81)),m=f(r(102)),g=f(r(33)),v=f(r(1299)),y=f(r(90)),b=f(r(32)),_=f(r(226)),S=f(r(200)),x=f(r(27)),w=f(r(198)),I=f(r(57)),C=f(r(1233)),k=f(r(3436));r(3442);var D=f(r(1529));r(1227);var P=f(r(418));r(3447);var T=f(r(3450));r(573);var A=f(r(421));r(333);var M=f(r(332)),R=f(r(62)),N=f(r(409)),E=f(r(51)),j=f(r(36)),F=f(r(165)),L=f(r(559)),z=f(r(91)),O=f(r(202)),B=f(r(131)),V=f(r(111)),U=f(r(346)),q=f(r(199)),Q=f(r(0)),G=r(341),K=f(r(4)),H=r(34),W=(r(173),f(r(1530))),Y=r(161),Z=f(r(1228)),J=r(569),X=f(r(1203)),$=f(r(1296)),ee=r(558),te=f(r(3470));function ae(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function re(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),a=this,(0,j.default)(this,"setRefreshDataTimerTransition",(()=>{this.stopRefreshAuto(),this.dataTimerTransition||(this.dataTimerTransition=(0,p.default)((()=>{this.handleRefresh(),this.dataTimerTransition=null}),1e3*this.dataDurationTransition))})),(0,j.default)(this,"setRefreshDataTimerAuto",(()=>{if(this.stopRefreshTransition(),this.ableAutoFresh){var{autoRefresh:e}=this.state;e&&!this.dataTimerAuto&&(this.dataTimerAuto=(0,p.default)((()=>{this.autoRefreshCount+=1,this.handleRefresh(),this.dataTimerAuto=null}),1e3*this.dataDurationAuto))}})),(0,j.default)(this,"onStopRefreshAuto",(()=>{this.setState({autoRefresh:!1}),this.stopRefreshAuto()})),(0,j.default)(this,"onClickAction",(()=>{this.inAction=!0,this.autoRefreshCount=0})),(0,j.default)(this,"onFinishAction",(()=>{this.inAction=!1,this.handleSelectRowKeys([]),this.handleRefresh(!0)})),(0,j.default)(this,"onCancelAction",(()=>{this.inAction=!1,this.getDataSource()})),(0,j.default)(this,"handleInputFocus",(e=>{this.inAction=e,e||this.setRefreshDataTimerAuto()})),(0,j.default)(this,"fetchListWithTry",function(){var e=(0,E.default)((function*(e){try{e&&(yield e())}catch(e){var{message:r="",data:n,status:i}=(e||{}).response||e||{};if(401===i){var l=t("The session has expired, please log in again.");Z.default.errorWithDetail(null,l)}else if(500===i){var s,o=t("System is error, please try again later."),u=(0,h.default)(s="".concat(t("Get {name} error.",{name:a.name.toLowerCase()})," ")).call(s,o);Z.default.errorWithDetail(null,u)}else{var d={message:n||r||e||"",status:i};Z.default.errorWithDetail(d,t("Get {name} error.",{name:a.name.toLowerCase()}))}a.list.isLoading=!1,a.list.silent=!1}}));return function(t){return e.apply(this,arguments)}}()),(0,j.default)(this,"updateFetchParamsByPage",(e=>e)),(0,j.default)(this,"updateFetchParams",(e=>e)),(0,j.default)(this,"fetchDataByPage",function(){var e=(0,E.default)((function*(e){yield a.store.fetchListByPage(e),a.list.silent=!1}));return function(t){return e.apply(this,arguments)}}()),(0,j.default)(this,"fetchData",function(){var e=(0,E.default)((function*(e){yield a.store.fetchList(e),a.list.silent=!1}));return function(t){return e.apply(this,arguments)}}()),(0,j.default)(this,"fetchDownloadData",function(){var e=(0,E.default)((function*(e){return a.isFilterByBackend?yield a.downloadStore.fetchListByPage(a.updateFetchParamsByPage(e)):yield a.downloadStore.fetchList(a.updateFetchParams(e))}));return function(t){return e.apply(this,arguments)}}()),(0,j.default)(this,"getDownloadData",(0,E.default)((function*(){var e=(0,N.default)({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{filters:t}=a.state,r=re(re(re(re({},a.props.match.params),e),t),{},{sortKey:e.sortKey||a.isSortByBackend&&a.defaultSortKey||"",sortOrder:e.sortOrder||a.isSortByBackend&&a.defaultSortOrder||""});!a.isAdminPage&&a.fetchDataByCurrentProject?r.project_id=a.currentProjectId:a.isAdminPage&&a.fetchDataByAllProjects&&a.allProjectsKey&&(r[a.allProjectsKey]=!0);var n=yield a.fetchDownloadData(r);return n}))),(0,j.default)(this,"startRefreshAuto",(()=>{this.autoRefreshCount=0,this.setState({autoRefresh:!0}),this.handleRefresh()})),(0,j.default)(this,"stopRefreshAuto",(()=>{clearTimeout(this.dataTimerAuto),this.dataTimerAuto=null})),(0,j.default)(this,"stopRefreshTransition",(()=>{clearTimeout(this.dataTimerTransition),this.dataTimerTransition=null})),(0,j.default)(this,"getFilteredValue",(e=>this.list.filters[e])),(0,j.default)(this,"checkIsProjectFilter",(e=>e.name===this.projectFilterKey)),(0,j.default)(this,"getSearchFilters",(()=>{var e=this.searchFilters;return this.isAdminPage&&this.adminPageHasProjectFilter?(0,m.default)(e).call(e,(e=>this.checkIsProjectFilter(e)))?e:[...e,{label:t("Project ID"),name:this.projectFilterKey}]:e})),(0,j.default)(this,"filterDataByTime",(e=>{if(!this.filterTimeKey)return!0;var{timeFilter:{value:t=0,start:a,end:r}={}}=this.state;if(0===t)return!0;var n=(0,V.default)(e,this.filterTimeKey,0);return 1!==t?(0,J.checkTimeIn)(n,(new Date).getTime()-t,null):(0,J.checkTimeIn)(n,a,r)})),(0,j.default)(this,"checkFilterInclude",(e=>{var t,a=(0,m.default)(t=this.searchFilters).call(t,(t=>t.name===e));return(0,L.default)(a,"include")?a.include:!(0,L.default)(a,"options")})),(0,j.default)(this,"filterData",(e=>{var t;if(!this.filterDataByTime(e))return!1;var{filters:a}=this.state;if(1===(0,g.default)(a).length&&a.keywords){var r,{keywords:n}=a;return!!(0,m.default)(r=(0,v.default)(e)).call(r,(e=>((0,B.default)(e)||(0,z.default)(e))&&(0,y.default)(e).call(e,n)>=0))}return!(0,m.default)(t=(0,g.default)(a)).call(t,(t=>{var r,n=(0,V.default)(e,t),i=a[t],{filterFunc:l}=(0,m.default)(r=this.getSearchFilters()).call(r,(e=>e.name===t));if(l)return!l(n,i,e);var s,o=this.checkFilterInclude(t);return(0,B.default)(n)&&(0,B.default)(i)?o?(0,y.default)(s=n.toLowerCase()).call(s,i.toLowerCase())<0:n.toLowerCase()!==i.toLowerCase():!(0,O.default)(n,i)}))})),(0,j.default)(this,"getDataSource",(()=>{var e,{data:t,filters:a={}}=this.list,{timeFilter:r={}}=this.state,{id:n,tab:i}=a,l=(0,R.default)(a,["id","tab"]),s=[];this.isFilterByBackend?s=(0,H.toJS)(t):(s=(0,b.default)(e=(0,H.toJS)(t)||[]).call(e,(e=>this.filterData(e,(0,H.toJS)(l),(0,H.toJS)(r)))),this.updateList({total:s.length}));return(0,_.default)(s).call(s,(e=>this.itemInTransitionFunction(e)))?this.setRefreshDataTimerTransition():this.setRefreshDataTimerAuto(),this.updateHintsByData(s),this.setTableHeight(),s})),(0,j.default)(this,"getFilters",(()=>{var e,{filters:t}=this.list;return re(re({},(0,G.parse)((0,S.default)(e=this.location.search).call(e,1))),(0,H.toJS)(t))})),(0,j.default)(this,"handleMoreMenuClick",(e=>(t,a)=>{var r,n=(0,m.default)(r=this.enabledItemActions).call(r,(e=>e.key===a));n&&n.onClick&&n.onClick(e)})),(0,j.default)(this,"refreshDetailData",(()=>{var{refreshDetail:e}=this.props;e&&e()})),(0,j.default)(this,"handleRefresh",(e=>{var{inAction:t,inSelect:a}=this;if(!(t||a&&!e)&&(e||!(this.autoRefreshCount>=this.autoRefreshCountMax))){e&&(this.autoRefreshCount=0);var{page:r,limit:n,sortKey:i,sortOrder:l,filters:s}=this.list,o=re(re({page:r,limit:n,sortKey:i,sortOrder:l},(0,H.toJS)(s)),{},{silent:!e});this.handleFetch(o,!0),this.inDetailPage&&(e||this.forceRefreshTopDetailWhenListRefresh)&&this.shouldRefreshDetail&&this.refreshDetailData()}})),(0,j.default)(this,"updateList",(e=>{var t;this.list&&(this.list.update?this.list.update(e):(0,x.default)(t=(0,g.default)(e)).call(t,(t=>{this.list[t]=e[t]})))})),(0,j.default)(this,"getPureParamsByFrontend",(e=>{var t,{page:a,limit:r,sortKey:n,sortOrder:i}=e,l=(0,R.default)(e,["page","limit","sortKey","sortOrder"]),s={page:a,limit:r};if(this.isSortByBackend&&(s.sortKey=n,s.sortOrder=i),!this.searchFilters.length){var{keywords:o}=l,u=(0,R.default)(l,["keywords"]);return re(re({},s),u)}return(0,x.default)(t=(0,g.default)(l)).call(t,(e=>{var t;(0,m.default)(t=this.searchFilters).call(t,(t=>t.name===e))||(s[e]=l[e])})),s})),(0,j.default)(this,"handleFetch",((e,t)=>{if(!t||this.isFilterByBackend){var{sortKey:a,limit:r,page:n,current:i,sortOrder:l}=e;(0,R.default)(e,["sortKey","limit","page","current","sortOrder"]);n===this.list.page&&r===this.list.limit||(this.autoRefreshCount=0),this.isFilterByBackend?this.getDataWithPolicy(re(re({},e),this.list.filters||{})):this.updateList({page:n,limit:r,sortKey:a,sortOrder:l})}else this.getDataWithPolicy(this.getPureParamsByFrontend(e))})),(0,j.default)(this,"handleFetchBySort",(e=>{if(this.isSortByBackend){var t=re(re({},e),{},{page:1});this.handleFetch(t,!0)}else{var{sortKey:a,limit:r,page:n,sortOrder:i}=e;this.updateList({page:n,limit:r,sortKey:a,sortOrder:i})}})),(0,j.default)(this,"handleFilterChange",((e,t)=>{var{page:a,limit:r,sortKey:n,sortOrder:i}=e,l=(0,R.default)(e,["page","limit","sortKey","sortOrder"]);this.isFilterByBackend?(this.list.filters=e,this.setState({timeFilter:t},(()=>{this.handleFetch(e,!0)}))):(this.updateList({page:a,sortKey:n,sortOrder:i,filters:l}),this.setState({filters:l,timeFilter:t}))})),(0,j.default)(this,"handleSelectRowKeys",(e=>{this.store.setSelectRowKeys("list",e),e&&0!==e.length?(this.inSelect=!0,this.autoRefreshCount=0):(this.inSelect=!1,this.getDataSource())})),(0,j.default)(this,"onCloseSuccessHint",(()=>{})),(0,j.default)(this,"getTablePageSize",(e=>{var t=[10,20,50,100],a=this.pageSizeOptions||t;return(0,w.default)(a).call(a,e)?e:a[0]||t[0]})),(0,j.default)(this,"renderMore",((e,t)=>{if((0,q.default)(this.enabledItemActions))return null;var a=this.renderMoreMenu(t);return null===a?null:Q.default.createElement(A.default,{content:a,trigger:"click",placement:"bottomRight"},Q.default.createElement(M.default,{icon:"more",type:"flat"}))})),(0,j.default)(this,"renderMoreMenu",(e=>{var t,a=(0,I.default)(t=this.enabledItemActions).call(t,(t=>((0,U.default)(t.show)?t.show(e):t.show||!0)?Q.default.createElement(P.default.MenuItem,{key:t.key},Q.default.createElement(T.default,{name:t.icon})," ",Q.default.createElement("span",null,t.text)):null));return(0,C.default)(a).call(a,(e=>null===e))?null:Q.default.createElement(P.default,{onClick:this.handleMoreMenuClick(e)},a)})),this.options=n,this.state={filters:{},timeFilter:{},autoRefresh:!0,newHints:!1,tableHeight:this.getTableHeight()},this.dataTimerTransition=null,this.dataTimerAuto=null,this.dataDurationTransition=10,this.dataDurationAuto=30,this.autoRefreshTotalTime=600,this.autoRefreshCount=0,this.autoRefreshCountMax=Math.floor(this.autoRefreshTotalTime/this.dataDurationAuto),this.infoMessage="",this.successMessage="",this.errorMessage="",this.warnMessage="",this.inAction=!1,this.inSelect=!1,this.setTableHeight=(0,k.default)(r=this.setTableHeight).call(r,this),this.debounceSetTableHeight=this.debounceSetTableHeight.call(this),this.init()}componentDidMount(){this.unsubscribe=this.routing.history.subscribe((e=>{if(e.pathname===this.props.match.url&&e.key===this.props.location.key){var t=this.initFilter;if(!this.filterTimeKey){var{limit:a,page:r}=this.store.list;this.list.filters={},this.handleFetch(re(re({},t),{},{limit:a,page:r}),!0)}}})),window.addEventListener("resize",this.debounceSetTableHeight)}componentDidUpdate(e){if(this.inDetailPage){var{detail:t}=e,{detail:a}=this.props;(0,q.default)(t)||(0,q.default)(a)||(0,O.default)(t,a)||this.handleRefresh(!0)}}componentWillUnmount(){this.unsubscribe&&this.unsubscribe(),this.disposer&&this.disposer(),this.unMountActions&&this.unMountActions(),this.stopRefreshTransition(),this.stopRefreshAuto(),this.clearListUnmount&&this.store.clearData&&this.store.clearData("listUnmount"),window.removeEventListener("resize",this.debounceSetTableHeight)}get policy(){return""}get aliasPolicy(){return""}get name(){return""}get title(){return"".concat(this.name,"s")}get className(){return""}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get inDetailPage(){var{detail:e}=this.props;return!!e}get detailName(){if(!this.inDetailPage)return"";var{detailName:e}=this.props;return e}get shouldRefreshDetail(){return!0}get location(){return this.props.location}get isAdminPage(){var{pathname:e}=this.location;return(0,Y.isAdminPage)(e)}get hasAdminRole(){return this.props.rootStore.hasAdminRole}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]:{},r=this.getRouteName(e);return(0,ee.getPath)({key:r,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=this.getRouteName(e);return(0,ee.getLinkRender)({key:n,params:a,query:r,value:t})}get prefix(){return this.props.match.url}get params(){return this.props.match.params||{}}get routing(){return this.props.rootStore.routing}get list(){return this.store.list}get isLoading(){return this.list.isLoading||this.store.isSubmitting}get tips(){return[]}get rowKey(){return"id"}get hasTab(){return!1}get hasSubTab(){return!1}get hideCustom(){return!1}get hideSearch(){return!1}get hideRefresh(){return!1}get hideDownload(){return!1}get checkEndpoint(){return!1}get endpoint(){return""}get endpointError(){return this.checkEndpoint&&!this.endpoint}get initFilter(){var e;return(0,G.parse)((0,S.default)(e=this.location.search).call(e,1))||{}}get hintHeight(){var e=0;return this.infoMessage&&(e+=50),this.warnMessage&&(e+=50),this.errorMessage&&(e+=50),this.successMessage&&(e+=50),e}get tableTopHeight(){var e=document.getElementById("sl-table-header-search"),t=90+(e?e.scrollHeight:50)+16;return this.hasSubTab?t+88:this.hasTab?t+44:t}getTableHeight(){var e=window.innerHeight;if(this.inDetailPage)return-1;var t=document.getElementsByClassName("ant-table-header")[0],a=t?t.offsetHeight:51,r=e-this.tableTopHeight-this.hintHeight-50-a;return r>0?r:1}get tableWidth(){return 800}get isFilterByBackend(){return!1}get isSortByBackend(){return!1}get ableSkipPageByBackend(){return!1}get enabledItemActions(){var e;return(0,b.default)(e=this.itemActions).call(e,(e=>!e.action))}get adminPageHasProjectFilter(){return!1}get transitionStatusList(){return[]}get fetchDataByAllProjects(){return!0}get currentUser(){var{user:e}=this.props.rootStore||{};return e||{}}get currentProjectId(){return this.props.rootStore.projectId}get fetchDataByCurrentProject(){return!1}get defaultSortKey(){return""}get defaultSortOrder(){return"descend"}get clearListUnmount(){return!1}get itemInTransitionFunction(){return e=>{var t,{status:a}=e;return(0,y.default)(t=this.transitionStatusList).call(t,a)>=0}}get ableAutoFresh(){return!0}get actionConfigs(){return{batchActions:[],primaryActions:[],rowActions:[]}}get primaryActions(){return this.actionConfigs.primaryActions}get batchActions(){return this.actionConfigs.batchActions}get itemActions(){return this.actionConfigs.rowActions}get searchFilters(){return[]}get expandable(){}get filterTimeKey(){}get projectFilterKey(){return"project_id"}get pageSizeOptions(){return[10,20,50,100]}get hideTotal(){return!1}get primaryActionsExtra(){return null}get allProjectsKey(){return"all_projects"}get forceRefreshTopDetailWhenListRefresh(){return!1}getEmptyProps(){return{}}getEnabledTableProps(){var e=this.getTableProps();return(0,q.default)(this.batchActions)&&(e.onSelectRowKeys=null),e}getCheckboxProps(e){return{disabled:!1,name:e.name}}getBaseTableProps(){var{keyword:e,selectedRowKeys:a,total:r,page:n,limit:i,silent:l,sortKey:s,sortOrder:o,timerFilter:u}=this.list,d={total:r,current:Number(n),pageSize:this.getTablePageSize(i),showTotal:e=>t("Total {total} items",{total:e}),showSizeChanger:!0};this.pageSizeOptions&&(d.pageSizeOptions=this.pageSizeOptions);var{autoRefresh:c,tableHeight:f}=this.state;return re({resourceName:this.name,detailName:this.detailName,data:this.getDataSource(),columns:this.getColumns(),filters:this.getFilters(),timerFilter:u,searchFilters:this.getSearchFilters(),keyword:e,pagination:d,primaryActions:this.primaryActions,batchActions:this.batchActions,itemActions:this.itemActions,getCheckboxProps:this.getCheckboxProps,isLoading:this.isLoading,silentLoading:l,rowKey:this.rowKey,selectedRowKeys:(0,H.toJS)(a),scrollY:f,sortKey:s,sortOrder:o,defaultSortKey:this.defaultSortKey,defaultSortOrder:this.defaultSortOrder,getDownloadData:this.getDownloadData,containerProps:this.props,expandable:this.expandable,showTimeFilter:!!this.filterTimeKey,filterTimeDefaultValue:this.filterTimeDefaultValue,isPageByBack:this.isFilterByBackend,isSortByBack:this.isSortByBackend,ableSkipPageByBackend:this.ableSkipPageByBackend,autoRefresh:c,startRefreshAuto:this.startRefreshAuto,stopRefreshAuto:this.onStopRefreshAuto,onClickAction:this.onClickAction,onFinishAction:this.onFinishAction,onCancelAction:this.onCancelAction,dataDurationAuto:this.dataDurationAuto,handleInputFocus:this.handleInputFocus,hideTotal:this.hideTotal,hideDownload:this.hideDownload,primaryActionsExtra:this.primaryActionsExtra,isAdminPage:this.isAdminPage,initFilter:this.initFilter},this.getEnabledTableProps())}getTableProps(){return{onRefresh:this.handleRefresh,onFetch:this.handleFetch,onFetchBySort:this.handleFetchBySort,onSelectRowKeys:this.handleSelectRowKeys,onFilterChange:this.handleFilterChange,hideCustom:this.hideCustom,hideSearch:this.hideSearch,hideRefresh:this.hideRefresh,hideAutoRefresh:!this.ableAutoFresh}}getData(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{silent:t}=e,a=(0,R.default)(e,["silent"]);t&&(this.list.silent=!0);var r=re(re(re({},this.props.match.params),a),{},{sortKey:a.sortKey||this.isSortByBackend&&this.defaultSortKey||"",sortOrder:a.sortOrder||this.isSortByBackend&&this.defaultSortOrder||""});if(!this.isAdminPage&&this.fetchDataByCurrentProject?r.project_id=this.currentProjectId:this.isAdminPage&&this.fetchDataByAllProjects&&this.allProjectsKey&&(r[this.allProjectsKey]=!0),this.isFilterByBackend){var{limit:n}=r;n&&(r.limit=this.getTablePageSize(n)),this.fetchListWithTry((()=>this.fetchDataByPage(this.updateFetchParamsByPage(r))))}else this.fetchListWithTry((()=>this.fetchData(this.updateFetchParams(r))))}getDataWithPolicy(e){if(this.currentUser&&!(0,q.default)(this.currentUser)&&!this.endpointError){if(!(0,X.default)({policy:this.policy,aliasPolicy:this.aliasPolicy,actionName:this.name})){var a={message:t("You don't have access to get {name}.",{name:this.name.toLowerCase()}),status:401};return Z.default.errorWithDetail(a,t("Unable to get {name}.",{name:this.name.toLowerCase()})),this.list.isLoading=!1,void(this.list.silent=!1)}this.getData(e)}}setTableHeight(){if(!this.inAction){var e=this.getTableHeight(),{tableHeight:t}=this.state;e!==t&&this.setState({tableHeight:e})}}getColumns(){return[]}debounceSetTableHeight(){return(0,F.default)(this.setTableHeight,1e3)}updateHintsByOthers(){this.updateHints&&(this.updateHints(),(0,p.default)(this.setTableHeight,0),this.setState({newHints:!0}))}updateHintsByData(e){}init(){this.store={list:{}},this.downloadStore={}}renderTable(){try{var e=this.getBaseTableProps();return Q.default.createElement(W.default,e)}catch(e){var t=this.getRoutePath("overview");return Q.default.createElement($.default,{title:this.name,link:t,codeError:!0})}}renderInfoHint(){return this.infoMessage?Q.default.createElement(D.default,{message:this.infoMessage,type:"info",showIcon:!0,className:te.default.hint}):null}renderSuccessHint(){return this.successMessage?Q.default.createElement(D.default,{message:this.successMessage,type:"success",showIcon:!0,closable:!0,className:te.default.hint,onClose:this.onCloseSuccessHint}):null}renderWarnHint(){return this.warnMessage?Q.default.createElement(D.default,{message:this.warnMessage,type:"warning",showIcon:!0,className:te.default.hint}):null}renderErrorHint(){return this.errorMessage?Q.default.createElement(D.default,{message:this.errorMessage,type:"error",showIcon:!0,closable:!0,className:te.default.hint}):null}renderHint(){var{newHints:e}=this.state;return e||this.infoMessage||this.warnMessage||this.successMessage||this.errorMessage?Q.default.createElement("div",{className:(0,K.default)(te.default.hints,"list-hints")},this.renderInfoHint(),this.renderSuccessHint(),this.renderWarnHint(),this.renderErrorHint()):null}renderHeader(){return null}render(){if(this.endpointError){var e=this.getRoutePath("overview");return Q.default.createElement($.default,{title:this.name,link:e,endpointError:!0})}var t=this.renderTable();return Q.default.createElement("div",{className:(0,K.default)(te.default.wrapper,"list-container",this.className)},this.renderHeader(),this.renderHint(),t)}}a.default=ne},1195:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.isBootFromVolume=a.allowAttachInterfaceStatus=a.SimpleTag=a.actionColumn=a.actionEvent=a.actionMap=a.instanceStatusFilter=a.allowAttachVolumeInstance=a.canCreateIronicByEndpoint=a.instanceSelectTablePropsBackend=a.instanceSortProps=a.instanceFilters=a.instanceColumnsBackend=a.isIronicInstance=a.physicalNodeTypes=a.getIpInitValue=a.getUserData=a.hasRootVolume=a.isIsoInstance=a.isNotError=a.isPaused=a.isStopped=a.isActive=a.isShutOff=a.isActiveOrShutOff=a.isNotLockedOrAdmin=a.checkStatus=a.lockRender=a.isLocked=a.isNotDeleting=a.isNotLocked=a.isBuilding=a.instanceStatus=a.powerStatus=a.taskStatus=a.stableStatus=a.transitionStatus=void 0;var p=f(r(198)),h=f(r(102)),m=f(r(57)),g=f(r(200));r(1266);var v=f(r(1267)),y=f(r(36));r(411);var b=f(r(227)),_=f(r(199)),S=f(r(0)),x=f(r(584)),w=(r(173),r(1533)),I=r(76),C=r(334),k=f(r(1534)),D=f(r(3472)),P=f(r(3473));function T(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function A(e){for(var t=1;t"build"===e.status;var z=e=>!e.locked;a.isNotLocked=z;var O=e=>!e.task_state||"deleting"!==e.task_state.toLowerCase();a.isNotDeleting=O;var B=e=>!!e.locked;a.isLocked=B;var V=e=>e?M:R;a.lockRender=V;var U=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],{status:r,vm_state:n}=t;return(0,p.default)(e).call(e,r.toLowerCase())||a&&n&&(0,p.default)(e).call(e,n.toLowerCase())};a.checkStatus=U;a.isNotLockedOrAdmin=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return!B(e)||t};a.isActiveOrShutOff=e=>U(["active","shutoff"],e);a.isShutOff=e=>U(["shutoff"],e);a.isActive=e=>U(["active"],e);a.isStopped=e=>U(["stopped"],e);a.isPaused=e=>U(["paused"],e);a.isNotError=e=>!U(["error"],e);a.isIsoInstance=e=>{var{iso_server:t=!1}=e;return t};a.hasRootVolume=e=>{var{root_device_name:t="/dev/vda",volumes_attached:a=[]}=e;return!!(0,h.default)(a).call(a,(e=>e.is_root_volume||e.device===t))};var q='Content-Type: multipart/mixed; boundary="===============2309984059743762475=="\nMIME-Version: 1.0\n\n--===============2309984059743762475==\nContent-Type: text/cloud-config; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="ssh-pwauth-script.txt" \n\n#cloud-config\ndisable_root: false\nssh_pwauth: true\npassword: USER_PASSWORD\n\n--===============2309984059743762475==\nContent-Type: text/x-shellscript; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="passwd-script.txt" \n\n#!/bin/sh\necho \'root:USER_PASSWORD\' | chpasswd\n\n--===============2309984059743762475==\nContent-Type: text/x-shellscript; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="init-shell.txt" \n\nUSER_DATA\n\n--===============2309984059743762475==--',Q='Content-Type: multipart/mixed; boundary="===============2309984059743762475==" \nMIME-Version: 1.0\n\n--===============2309984059743762475==\nContent-Type: text/cloud-config; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="ssh-pwauth-script.txt" \n\n#cloud-config\ndisable_root: false\nssh_pwauth: true\npassword: USER_PASSWORD\n\n--===============2309984059743762475==\nContent-Type: text/x-shellscript; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="passwd-script.txt" \n\n#!/bin/sh\necho \'root:USER_PASSWORD\' | chpasswd\n\n--===============2309984059743762475==--',G='Content-Type: multipart/mixed; boundary="===============2309984059743762475==" \nMIME-Version: 1.0\n\n--===============2309984059743762475==\nContent-Type: text/x-shellscript; charset="us-ascii" \nMIME-Version: 1.0\nContent-Transfer-Encoding: 7bit\nContent-Disposition: attachment; filename="init-shell.txt" \n\nUSER_DATA\n\n--===============2309984059743762475==--';a.getUserData=(e,t)=>e&&t?q.replace(/USER_PASSWORD/g,e).replace(/USER_DATA/g,t):e?Q.replace(/USER_PASSWORD/g,e):G.replace(/USER_DATA/g,t);a.getIpInitValue=e=>{if(!e)return null;var{start:t}=e.allocation_pools[0];return t};var K=[{label:t("Smart Scheduling"),value:"smart"},{label:t("Manually Specify"),value:"manually"}];a.physicalNodeTypes=K;var H=e=>{var{flavor_info:{extra_specs:t={}}={}}=e;return"bare_metal"===t[":architecture"]};a.isIronicInstance=H;var W=[{title:t("Name"),dataIndex:"name",sortKey:"display_name"},{title:t("Image"),sorter:!1,dataIndex:"image_os_distro",render:(e,t)=>S.default.createElement(x.default,{type:e,title:t.image_name})},{title:t("Fixed IP"),dataIndex:"fixed_addresses",width:120,sorter:!1,render:e=>e&&e.length?(0,m.default)(e).call(e,(e=>S.default.createElement("span",{key:e},e,S.default.createElement("br",null)))):"-"},{title:t("Floating IP"),dataIndex:"floating_addresses",width:120,sorter:!1,render:e=>e&&e.length?(0,m.default)(e).call(e,(e=>S.default.createElement("span",{key:e},e,S.default.createElement("br",null)))):"-"},{title:t("Flavor"),dataIndex:"flavor",sorter:!1},{title:t("Status"),dataIndex:"status",sorter:!1,render:e=>L[e&&e.toLowerCase()]||"-"},{title:t("Locked"),dataIndex:"locked",isHideable:!0,render:V},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}];a.instanceColumnsBackend=W;var Y=[{label:t("Name"),name:"name"}];a.instanceFilters=Y;var Z={isSortByBack:!0,defaultSortKey:"created_at",defaultSortOrder:"descend"};a.instanceSortProps=Z;var J=A(A({},Z),{},{filterParams:Y,columns:W});a.instanceSelectTablePropsBackend=J;a.canCreateIronicByEndpoint=()=>(0,I.ironicOriginEndpoint)();a.allowAttachVolumeInstance=e=>U(["active","paused","stopped","resized","soft-delete","shelved","shelved_offloaded"],e)&&O(e)&&z(e)&&!H(e);var X={label:t("Status"),name:"status",options:[{label:t("Active"),key:"ACTIVE"},{label:t("Building"),key:"BUILD"},{label:t("Paused"),key:"PAUSED"},{label:t("Suspended"),key:"SUSPENDED"},{label:t("Error"),key:"ERROR"},{label:t("Shutoff"),key:"SHUTOFF"},{label:t("Shelved Offloaded"),key:"SHELVED_OFFLOADED"}]};a.instanceStatusFilter=X;var $={attach_interface:t("Attach Interface"),detach_interface:t("Detach Interface"),attach_volume:t("Attach Volume"),detach_volume:t("Detach Volume"),create:t("Create"),stop:t("Stop"),reboot:t("Reboot"),suspend:t("Suspend"),resume:t("Resume"),shelve:t("Shelve"),unshelve:t("Unshelve"),start:t("Start"),lock:t("Lock"),unlock:t("Unlock"),pause:t("Pause"),unpause:t("Unpause"),createImage:t("Create Snapshot"),resize:t("Extend Root Volume"),confirmResize:t("Resize"),"live-resize":t("Online Resize"),extend_volume:t("Extend Volume"),changePassword:t("Change Password"),rebuild:t("Rebuild"),migrate:t("Migrate"),"live-migration":t("Live Migrate"),delete:t("Delete"),restore:t("Recover")};a.actionMap=$;var ee={compute_restore_instance:t("Resume Instance"),compute_soft_delete_instance:t("Soft Delete Instance"),compute_post_live_migration_at_destination:t("Live Migration At Destination"),compute_pre_live_migration:t("Pre Live Migration"),compute_live_migration:t("Compute Live Migration"),compute_check_can_live_migrate_source:t("Check Can Live Migrate Source"),compute_check_can_live_migrate_destination:t("Check Can Live Migrate Destination"),conductor_live_migrate_instance:t("Conductor Live Migrate Instance"),compute_confirm_resize:t("Resized"),compute_finish_resize:t("Finish Resize"),compute_resize_instance:t("Resize Instance"),compute_prep_resize:t("Prep Resize"),cold_migrate:t("Cold Migrate"),conductor_migrate_server:t("Conductor Migrate Server"),compute_rebuild_instance:t("Rebuild Instance"),rebuild_server:t("Rebuild Instance"),compute_set_admin_password:t("Set Admin Password"),compute_extend_volume:t("Extend Volume"),compute_live_resize_instance:t("Compute Live Resize Instance"),conductor_live_resize_instance:t("Conductor Live Resize Instance"),api_snapshot_instance:t("Snapshot Instance"),api_lock:t("Lock"),api_unlock:t("Unlock"),compute_detach_volume:t("Detach Volume"),compute_attach_volume:t("Attach Volume"),compute_detach_interface:t("Detach Interface"),compute_attach_interface:t("Attach Interface"),compute__do_build_and_run_instance:t("Do Build And Run Instance"),compute_suspend_instance:t("Compute Suspend Instance"),compute_start_instance:t("Compute Start Instance"),compute_stop_instance:t("Compute Stop Instance"),compute_resume_instance:t("Compute Resume Instance"),compute_pause_instance:t("Compute Pause Instance"),compute_unpause_instance:t("Compute Unpause Instance"),compute_reboot_instance:t("Compute Reboot Instance")};a.actionEvent=ee;a.actionColumn=e=>[{title:t("Operation Name"),dataIndex:"action",valueMap:$},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!e.isAdminPage},{title:t("Operation Time"),dataIndex:"start_time",valueRender:"toLocalTimeMoment"},{title:t("Request ID"),dataIndex:"request_id",isHideable:!0,render:(e,t)=>S.default.createElement(S.default.Fragment,null,S.default.createElement("span",null,e),S.default.createElement(k.default,{id:t.instance_uuid,requestId:e,store:new w.ActionLogStore,actionEvent:ee}))},{title:t("User ID"),dataIndex:"user_id",isHideable:!0,hidden:!e.isAdminPage,render:t=>e.getLinkRender("userDetail",t,{id:t},null)}];a.SimpleTag=e=>{var{tag:t,index:a}=e,r=t.length>20,n=r?"".concat((0,g.default)(t).call(t,0,20),"..."):t,i=S.default.createElement(v.default,{key:t,color:C.projectTagsColors[a%10],style:{marginTop:2,marginBottom:2}},S.default.createElement("span",{style:{whiteSpace:"pre-wrap"}},n));return r?S.default.createElement(b.default,{key:t,title:S.default.createElement("span",{style:{whiteSpace:"pre-wrap"}},t)},i):i};a.allowAttachInterfaceStatus=["active","paused","stopped"];a.isBootFromVolume=e=>{var{origin_data:t}=e||{};return t&&!(0,_.default)(t)?!t.image:!e.image}},1200:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=void 0;var p=f(r(198)),h=f(r(200)),m=f(r(102)),g=f(r(57)),v=f(r(32)),y=f(r(90)),b=f(r(81));r(1260);var _=f(r(1261)),S=f(r(409)),x=f(r(1273));r(333);var w=f(r(332));r(1250);var I=f(r(1251)),C=f(r(1379)),k=f(r(596));r(1270);var D=f(r(1271)),P=f(r(36)),T=f(r(111)),A=f(r(199)),M=f(r(0)),R=r(341),N=f(r(4)),E=r(161),j=(r(173),r(555),f(r(1296))),F=f(r(3537)),L=f(r(1228)),z=r(34),O=f(r(1203)),B=f(r(1249)),V=r(334),U=r(558),q=r(578),Q=f(r(3540));function G(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function K(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};super(e),(0,P.default)(this,"onCollapsedCallback",(()=>{})),(0,P.default)(this,"handleChangeTab",(e=>{this.handleFetch({tab:e},!0)})),(0,P.default)(this,"handleFetch",((e,t)=>{this.routing.query(e,t)})),(0,P.default)(this,"handleDetailInfo",(()=>{var{collapsed:e}=this.state;this.setState({collapsed:!e},(()=>{this.onCollapsedCallback(!e)}))})),(0,P.default)(this,"getDesc",((e,t)=>{var{dataIndex:a,render:r,valueRender:n,valueMap:i,unit:l}=t,s=(0,T.default)(e,a);if(r)return r(s,e);if(n){var o=E.renderFilterMap[n];return o&&o(s)}return i?(0,q.getValueMapRender)(t)(s):l?(0,q.getUnitRender)(t)(s):void 0===s||""===s?"-":s})),(0,P.default)(this,"fetchData",((e,t)=>{if(this.store.fetchDetail){var a=K(K(K({},this.params),e||{}),{},{all_projects:this.isAdminPage,silent:t}),r=this.updateFetchParams(a);this.store.fetchDetail(r).catch(this.catch)}})),(0,P.default)(this,"getRouteProps",(()=>({}))),(0,P.default)(this,"fetchDataWithPolicy",((e,a)=>{if((0,O.default)({policy:this.policy,aliasPolicy:this.aliasPolicy,actionName:this.name}))this.fetchData(a,e);else{var r={message:t("You don't have access to get {name}.",{name:this.name.toLowerCase()}),status:401};L.default.errorWithDetail(r,t("Unable to get {name} detail.",{name:this.name.toLowerCase()}))}})),(0,P.default)(this,"refreshDetailByTab",(()=>{this.fetchDataWithPolicy(!0)})),(0,P.default)(this,"refreshDetailByAction",(e=>{this.fetchDataWithPolicy(e)})),(0,P.default)(this,"handleRefresh",(()=>{this.fetchDataWithPolicy(!1)})),(0,P.default)(this,"catch",(e=>{var{data:a,status:r}=(e||{}).response||e||{};if(401===r){var n=t("The session has expired, please log in again.");L.default.errorWithDetail(null,n)}else if(404===r)this.setState({notFound:!0}),L.default.warn(t("{name} {id} could not be found.",{name:this.name.toLowerCase(),id:this.id}));else{var i={message:a,status:r};L.default.errorWithDetail(i,t("Get {name} detail error.",{name:this.name.toLowerCase()}))}})),(0,P.default)(this,"goBack",(()=>{this.routing.push(this.listUrl)})),(0,P.default)(this,"updateFetchParams",(e=>e)),(0,P.default)(this,"onFinishAction",((e,t,a)=>{if(e&&a)this.goBack();else{var r,n=!(0,p.default)(r=this.forceLoadingTabs).call(r,this.tab.key);this.refreshDetailByAction(n)}})),this.options=a,this.state={notFound:!1,collapsed:!1},this.init()}componentDidMount(){this.fetchDataWithPolicy()}componentDidUpdate(e){var{id:t}=e.match.params;this.id!==t&&this.handleRefresh(!0)}get params(){return this.props.match.params||{}}get id(){return this.props.match.params.id}get policy(){return""}get aliasPolicy(){return""}get name(){return""}get routing(){return this.props.rootStore.routing}get path(){var{location:{pathname:e=""}={}}=this.props;return e||""}get isAdminPage(){var{pathname:e}=this.props.location;return(0,E.isAdminPage)(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]:{},r=this.getRouteName(e);return(0,U.getPath)({key:r,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=this.getRouteName(e);return(0,U.getLinkRender)({key:n,params:a,query:r,value:t})}get tabs(){return[]}get tab(){var e,t;if(0===this.tabs.length)return null;var a=(0,R.parse)((0,h.default)(e=this.routing.location.search).call(e,1)),{tab:r}=a;return(0,m.default)(t=this.tabs).call(t,(e=>e.key===r))||this.tabs[0]}get actionConfigs(){return V.emptyActionConfig}get rowActions(){return[]}get detailTabs(){return[{title:"tab1",key:"tab1",component:null},{title:"tab2",key:"tab2",component:null}]}get titleLabel(){return"ID:"}get titleValue(){return this.params.id}get detailTitle(){var{collapsed:e}=this.state,{Paragraph:a}=D.default,r=e?M.default.createElement(k.default,null):M.default.createElement(C.default,null);return M.default.createElement("div",null,M.default.createElement("span",{className:Q.default["title-label"]},this.titleLabel),M.default.createElement("span",{className:Q.default["header-title"]},M.default.createElement(a,{style:{display:"inherit"},copyable:!0},this.titleValue)),M.default.createElement(I.default,{type:"vertical",className:Q.default["header-divider"]}),M.default.createElement(w.default,{onClick:this.goBack,type:"link"},t("Back")),M.default.createElement(w.default,{type:"link",icon:M.default.createElement(x.default,null),onClick:this.handleRefresh}),M.default.createElement(w.default,{onClick:this.handleDetailInfo,icon:r,type:"link",className:Q.default["header-button"]}))}get className(){return""}get listUrl(){return""}get detailData(){return(0,z.toJS)(this.store.detail)||{}}get isLoading(){return this.store.isLoading}get detailInfos(){return[]}get forceLoadingTabs(){return[]}getActionData(){return this.detailData}init(){this.store={detail:{},isLoading:!0}}renderDetailInfos(){var e,t,{Paragraph:a}=D.default,{collapsed:r}=this.state;if((0,A.default)(this.detailData))return M.default.createElement(F.default,{title:this.detailTitle,descriptions:[],loading:this.isLoading});var n=r?[]:(0,g.default)(e=(0,v.default)(t=this.detailInfos).call(t,(e=>!e.hidden))).call(e,(e=>{var t,r,n,{title:i,dataIndex:l,copyable:s}=e;this.isLoading||!this.detailData||(0,A.default)(this.detailData)?t="-":"-"!==(t=this.getDesc(this.detailData,e))&&(s||0===(0,y.default)(r=l.toLowerCase()).call(r,"id")||(0,y.default)(n=l.toLowerCase()).call(n,"_id")>=0)&&(t=M.default.createElement(a,{style:{margin:0},copyable:s},t));return{label:i,content:t}}));return M.default.createElement(F.default,{title:this.detailTitle,descriptions:n,loading:this.isLoading})}renderTabComponent(e){var t,{component:a,key:r}=e;return a?M.default.createElement(e.component,(0,S.default)({},this.props,{detail:this.detailData,detailName:(0,b.default)(t="".concat(this.name,"-")).call(t,this.id),refreshDetail:this.refreshDetailByTab})):M.default.createElement("span",null,r)}renderTab(e,t){return e!==t.key?M.default.createElement(_.default.TabPane,{tab:t.title,key:t.key}):M.default.createElement(_.default.TabPane,{tab:t.title,key:t.key},this.renderTabComponent(t))}renderTabs(){var e;if((0,A.default)(this.detailData)||this.isLoading)return null;if(!this.tab)return null;var t=(0,g.default)(e=this.tabs).call(e,(e=>this.renderTab(this.tab.key,e)));return M.default.createElement("div",{className:(0,N.default)(Q.default["tab-wrapper"],this.className)},M.default.createElement(_.default,{activeKey:this.tab.key,onChange:this.handleChangeTab},t))}renderActions(){var e=this.getActionData();return(0,A.default)(e)||this.store.isLoading?null:M.default.createElement(B.default,{actions:this.actionConfigs.rowActions||this.actions,onFinishAction:this.onFinishAction,item:this.getActionData(),containerProps:{isAdminPage:this.isAdminPage},isAdminPage:this.isAdminPage})}render(){return this.state.notFound?M.default.createElement(j.default,{title:this.name,link:this.listUrl,goList:!0}):M.default.createElement("div",{className:(0,N.default)(Q.default.main,this.className,"detail-main")},M.default.createElement("div",{className:Q.default["action-wrapper"]},this.renderActions()),M.default.createElement("div",{className:Q.default.header},this.renderDetailInfos()),M.default.createElement("div",{className:Q.default.tabs},this.renderTabs()))}}a.default=H},1202:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=void 0;var f=c(a(57)),p=c(a(36)),h=c(a(559)),m=c(a(0)),g=c(a(4)),v=c(a(3582)),y=a(34),b=a(161),_=a(558),S=c(a(3585));function x(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}class w extends m.default.Component{constructor(e){super(e),(0,p.default)(this,"fetchData",(e=>{this.shouldFetchDetail&&this.store.fetchDetail&&this.store.fetchDetail(function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this.getRouteName(e);return(0,_.getPath)({key:r,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=this.getRouteName(e);return(0,_.getLinkRender)({key:n,params:a,query:r,value:t})}init(){this.store={}}renderLeftCards(){var e;return(0,f.default)(e=this.leftCards).call(e,((e,t)=>{var{title:a,titleHelp:r,options:n,render:i,labelCol:l,contentCol:s,button:o,sourceData:u}=e;return i?i():m.default.createElement(v.default,{key:"card-left-".concat(t),className:"detail-left-card",data:u||this.detailData,title:a,titleHelp:r,options:n,loading:this.isLoading,labelCol:l,contentCol:s,button:o})}))}renderRightCards(){var e;return(0,f.default)(e=this.rightCards).call(e,((e,t)=>{var{title:a,options:r,labelCol:n,titleHelp:i,render:l,button:s,className:o}=e;if(l)return l();var u=8,d=16;return(0,h.default)(e,"labelCol")&&(d=24-(u=n)),m.default.createElement(v.default,{key:"card-right-".concat(t),className:(0,g.default)("detail-right-card",o),data:this.detailData,title:a,titleHelp:i,options:r,loading:this.isLoading,labelCol:u,contentCol:d,button:s})}))}renderModal(){return null}render(){return m.default.createElement("div",{className:(0,g.default)(S.default.main)},m.default.createElement("div",{className:S.default["left-side"],id:"detail-left-side",style:this.leftCardsStyle},this.renderLeftCards()),m.default.createElement("div",{className:S.default["right-side"],id:"detail-right-side"},this.renderRightCards()),this.renderModal())}}t.default=w},1207:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.UserStore=void 0;var f,p,h=c(a(27)),m=c(a(102)),g=c(a(33)),v=c(a(65)),y=c(a(57)),b=c(a(32)),_=c(a(25)),S=c(a(51)),x=c(a(62)),w=c(a(71)),I=c(a(36)),C=c(a(54)),k=(c(a(72)),a(34)),D=c(a(429)),P=c(a(48)),T=c(a(140)),A=c(a(407)),M=c(a(1238)),R=c(a(53));function N(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function E(e){for(var t=1;tM.default.addGroupUsers({id:e,userId:t}))),(0,I.default)(this,"addProjectUser",((e,t,a)=>A.default.assignUserRole({id:e,userId:t,roleId:a}))),(0,I.default)(this,"getProjectMapRoles",((e,t,a,r)=>{var n={},{id:i}=e;return(0,h.default)(t).call(t,(e=>{var{scope:{project:{id:t}={}}={},role:{id:l}={},user:{id:s}={}}=e;if(s===i&&l&&t){var o=(0,m.default)(a).call(a,(e=>e.id===l));if(n[t])n[t].roles=[...n[t].roles,o];else{var u=(0,m.default)(r).call(r,(e=>e.id===t));n[t]={project:u,roles:[o]}}}})),n})),(0,I.default)(this,"getSystemRoles",((e,t,a,r)=>{var n=[],{id:i}=e||{};return(0,h.default)(t).call(t,(e=>{var{role:{id:t}={},user:{id:r}={}}=e;if(r===i&&t){var l=(0,m.default)(a).call(a,(e=>e.id===t));n.push(l)}})),n})),(0,I.default)(this,"updateUser",((e,t,a,r,n,i)=>{var l=this.getProjectMapRoles(e,t,r,n),s=this.getSystemRoles(e,a,r,n),o=(0,m.default)(i).call(i,(t=>t.id===e.domain_id));return E(E({},e),{},{projects:l,projectCount:(0,g.default)(l).length,domain:o,domainName:(o||{}).name||e.domain_id,systemRoles:s})}))}get client(){return P.default.keystone.users}get domainClient(){return P.default.keystone.domains}get systemGroupClient(){return P.default.keystone.systemGroups}get roleClient(){return P.default.keystone.roles}get roleAssignmentClient(){return P.default.keystone.roleAssignments}get projectClient(){return P.default.keystone.projects}get systemUserClient(){return P.default.keystone.systemUsers}get groupClient(){return P.default.keystone.groups}listFetchByClient(e,t){var{groupId:a}=t;return a?this.groupClient.users.list(a,e):this.client.list(e)}get paramsFunc(){return e=>{var{id:t,projectId:a,groupId:r,roleId:n,withProjectRole:i,withSystemRole:l,all_projects:s}=e;return(0,x.default)(e,["id","projectId","groupId","roleId","withProjectRole","withSystemRole","all_projects"])}}create(e){var t=this;return(0,S.default)((function*(){var a,r={},{select_project:n,select_user_group:i=[],projectRoles:l,defaultRole:s}=e,o=(0,x.default)(e,["select_project","select_user_group","projectRoles","defaultRole"]);r[t.responseKey]=o,t.isSubmitting=!0;var u=yield t.client.create(r),{user:{id:d}}=u,c=[];return(0,h.default)(i).call(i,(e=>{c.push(t.addGroupUsers(e,d))})),(0,h.default)(a=(0,g.default)(l)).call(a,(e=>{var a=l[e];(0,h.default)(a).call(a,(a=>{c.push(t.addProjectUser(e,d,a))}))})),yield v.default.all(c),t.isSubmitting=!1,u}))()}getUserProjects(){var e=this;return(0,S.default)((function*(){e.userProjects.update({isLoading:!0});var{user:{user:{id:t}}}=T.default,{projects:a}=yield e.client.projects.list(t);return e.userProjects.update({data:a,isLoading:!1}),a}))()}listDidFetch(e,t,a){var r=this;return(0,S.default)((function*(){if(!e.length)return e;var{withProjectRole:t=!0,withSystemRole:n=!0,projectId:i,roleId:l,domain_id:s}=a,o=t||n,u={};l&&(u["role.id"]=l),i&&(u["scope.project.id"]=i);var d=[t?r.roleAssignmentClient.list(u):null,n?r.roleAssignmentClient.list({"scope.system":"all"}):null,o?r.roleClient.list():null,t?r.projectClient.list():null,s?null:r.domainClient.list()],[c,f,p,h,g]=yield v.default.all(d),{roles:_=[]}=p||{},{domains:S=[]}=g||{},{role_assignments:x=[]}=c||{},{role_assignments:w=[]}=f||{},{projects:I=[]}=h||{},C=(0,y.default)(e).call(e,(e=>r.updateUser(e,x,w,_,I,S)));return i?(0,b.default)(C).call(C,(e=>!!e.projectCount)):l?(0,b.default)(C).call(C,(e=>{var{projectCount:t,systemRoles:a}=e;return!!t||!!(0,m.default)(a).call(a,(e=>e.id===l))})):C}))()}detailDidFetch(e){var t=this;return(0,S.default)((function*(){var{id:a}=e,r={"user.id":a,"scope.system":"all"},n=[t.roleAssignmentClient.list(r),t.roleClient.list(),t.domainClient.list()],[i,l,s]=yield v.default.all(n),{roles:o=[]}=l||{},{domains:u=[]}=s,{role_assignments:d=[]}=i||{};return t.updateUser(e,[],d,o,[],u)}))()}enable(e){var t=this;return(0,S.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{user:{enabled:!0}}))}))()}forbidden(e){var t=this;return(0,S.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{user:{enabled:!1}}))}))()}changePassword(e){var t=this;return(0,S.default)((function*(){var{id:a,password:r}=e,n={user:{password:r}};return t.submitting(t.client.patch(a,n))}))()}changePasswordUser(e){var t=this;return(0,S.default)((function*(){var{id:a,password:r,original_password:n}=e,i={user:{password:r,original_password:n}};return t.submitting(t.client.updatePassword(a,i))}))()}assignSystemRole(e){var t=this;return(0,S.default)((function*(){var{id:a,roleId:r}=e;return t.systemUserClient.roles.update(a,r)}))()}deleteSystemRole(e){var t=this;return(0,S.default)((function*(){var{id:a,roleId:r}=e;return t.systemUserClient.roles.delete(a,r)}))()}edit(e,t){var a=this;return(0,S.default)((function*(){var{email:r,phone:n,real_name:i,description:l,name:s}=t,o={user:{email:r,phone:n,real_name:i,description:l,name:s}};return a.submitting(a.client.patch(e,o))}))()}},p=(0,C.default)(f.prototype,"userProjects",[k.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new D.default}}),(0,C.default)(f.prototype,"create",[k.action],(0,_.default)(f.prototype,"create"),f.prototype),(0,C.default)(f.prototype,"getUserProjects",[k.action],(0,_.default)(f.prototype,"getUserProjects"),f.prototype),(0,C.default)(f.prototype,"enable",[k.action],(0,_.default)(f.prototype,"enable"),f.prototype),(0,C.default)(f.prototype,"forbidden",[k.action],(0,_.default)(f.prototype,"forbidden"),f.prototype),(0,C.default)(f.prototype,"changePassword",[k.action],(0,_.default)(f.prototype,"changePassword"),f.prototype),(0,C.default)(f.prototype,"changePasswordUser",[k.action],(0,_.default)(f.prototype,"changePasswordUser"),f.prototype),(0,C.default)(f.prototype,"assignSystemRole",[k.action],(0,_.default)(f.prototype,"assignSystemRole"),f.prototype),(0,C.default)(f.prototype,"deleteSystemRole",[k.action],(0,_.default)(f.prototype,"deleteSystemRole"),f.prototype),(0,C.default)(f.prototype,"edit",[k.action],(0,_.default)(f.prototype,"edit"),f.prototype),f);t.UserStore=j;var F=new j;t.default=F},1210:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.getPortsAndReasons=function(e,a){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return(0,h.default)(e).call(e,(e=>{var n=!0,i="",l=e.fixed_ip_address;if(k(l))if(e["router:external"])i=t("Is external network port"),n=!1;else if(e.floatingIP){var s;i=(0,m.default)(s="".concat(t("Is associate to floating ip: ")," ")).call(s,e.floatingIP),n=!1}else(0,g.default)(a).call(a,(t=>t.subnet_id===e.subnet_id))<0&&(i="".concat(r?t("It is unreachable for this floating ip."):t("It is unreachable for all floating ips.")),n=!1);else i="".concat(t("It is IPv6 type.")),n=!1;return C(C({},e),{},{key:l,name:l,available:n,reason:i})}))},a.getPortsForPortFormItem=function(e){this.portStore.fetchList({device_owner:e,project_id:this.currentProjectId})},a.getPortFormItem=function(){var e,a=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],{portFixedIPs:r,fixedIpLoading:n}=this.state,i=[{label:t("Name"),name:"name"},{label:t("Fixed IP"),name:"fixed_ips",filterFunc:(e,t)=>{var a;return(0,v.default)(a=e||[]).call(a,(e=>{var a;return(0,y.default)(a=e.ip_address).call(a,t)}))}}];a&&i.push({label:t("Bind Resource Name"),name:"server_name"},{label:t("Status"),name:"status",options:(0,b.default)(e=(0,w.getOptions)(D)).call(e,(e=>{var t;return(0,y.default)(t=["ACTIVE","DOWN"]).call(t,e.key)}))});var l=[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("portDetail")},{title:t("Description"),dataIndex:"description"},{title:t("Fixed IPs"),dataIndex:"fixed_ips",render:e=>S.default.createElement(S.default.Fragment,null,(0,h.default)(e).call(e,((e,t)=>S.default.createElement("div",{key:"ip_address_".concat(t)},e.ip_address))))},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}];if(a){var s=[{title:t("Status"),dataIndex:"status",valueMap:D},{title:t("Bind Resource"),dataIndex:"server_name",render:(e,t)=>{var{device_id:a}=t;if(!a)return"-";var r=this.getLinkRender("instanceDetail",a,{id:a},{tab:"interface"});return S.default.createElement(S.default.Fragment,null,r,S.default.createElement("br",null),e||"-")}}];(0,_.default)(l).call(l,4,0,...s)}return[{name:"virtual_adapter",label:t("Virtual Adapter"),type:"select-table",required:!0,rowKey:"id",data:this.portStore.list.data||[],isLoading:this.portStore.list.isLoading,disabledFunc:this.portsDisableFunc,onChange:this.handlePortSelect,isMulti:!1,filterParams:i,columns:l},{name:"fixed_ip_address",label:t("Fixed IP"),type:"select-table",rowKey:"fixed_ip_address",required:!0,data:r,isLoading:n,isMulti:!1,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"name"},{title:t("Subnet ID"),dataIndex:"subnet_id"},{title:t("Reason"),dataIndex:"reason"}],disabledFunc:e=>!e.available}]},a.portFilters=a.portColumns=a.portSortProps=a.bindingTypes=a.portState=a.portStatus=void 0;var p=f(r(36)),h=f(r(57)),m=f(r(81)),g=f(r(1338)),v=f(r(226)),y=f(r(198)),b=f(r(32)),_=f(r(562)),S=f(r(0)),x=r(556),w=r(161);function I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;tS.default.createElement("div",null,S.default.createElement("div",null,t.id),S.default.createElement("div",null,e||"-"))},{title:t("Owned Network"),dataIndex:"network_name",isLink:!0,idKey:"network_id",sorter:!1},{title:t("IPv4 Address"),dataIndex:"ipv4",render:e=>(0,h.default)(e).call(e,(e=>S.default.createElement("div",{key:e},e))),sorter:!1},{title:t("IPv6 Address"),dataIndex:"ipv6",render:e=>(0,h.default)(e).call(e,(e=>S.default.createElement("div",{key:e},e))),sorter:!1},{title:t("Mac Address"),dataIndex:"mac_address",sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:D,sorter:!1}];a.portColumns=A;var M=[{label:t("Name"),name:"name"}];a.portFilters=M},1212:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.BaseLayout=void 0;var i=a(0),l=a(406),s=n(a(413));class o extends i.Component{constructor(e){super(e),this.routes=e.route.routes}render(){var{isAdminPage:e,sliderCollapsed:t}=this.props,a={isAdminPage:e,sliderCollapsed:t};return(0,s.default)(this.routes,a)}}t.BaseLayout=o;var u=(0,l.inject)("rootStore")((0,l.observer)(o));t.default=u},1213:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.getFlavorArchInfo=a.isBareMetalFlavor=a.isBareMetal=a.getFamilyItemValue=a.getAllArchitecture=a.gpuColumns=a.cpuArchColumn=a.extraColumns=a.getBaseColumns=a.isComputeOptimized=a.isGpuVisual=a.isGpuCategory=a.categoryHasEphemeral=a.categoryHasIOPS=a.hasEphemeralTypes=a.hasIOPSTypes=a.flavorCategoryList=a.bareMetalCategoryList=a.heterogeneousCategoryList=a.armCategoryList=a.ironicCategoryList=a.x86CategoryList=a.flavorArchitectures=a.pageTypeMap=a.pageTypeList=a.cpuThreadPolicyMap=a.cpuThreadPolicyList=a.cpuPolicyList=void 0;var p=f(r(90)),h=f(r(102)),m=f(r(27)),g=f(r(81)),v=f(r(36)),y=r(161);function b(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function _(e){for(var t=1;te&&(0,p.default)(N).call(N,e)>=0;a.categoryHasEphemeral=e=>e&&(0,p.default)(E).call(E,e)>=0;a.isGpuCategory=e=>e&&(0,p.default)(e).call(e,"_gpu")>=0;a.isGpuVisual=e=>"visualization_compute_optimized_type_with_gpu"===e;a.isComputeOptimized=e=>"compute_optimized_type"===e;a.getBaseColumns=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e?e.getRouteName("flavorDetail"):""},{title:t("Category"),dataIndex:"category",valueMap:R},{title:t("CPU"),dataIndex:"vcpus",isHideable:!0},{title:t("Memory"),dataIndex:"ram",isHideable:!0,render:e=>(0,y.formatSize)(e,2)},{title:t("Internal Network Bandwidth(Gbps)"),dataIndex:"quota:vif_outbound_average",isHideable:!0,width:120,render:e=>e?e/1e3/125:"-"},{title:t("Ephemeral Disk (GiB)"),dataIndex:"OS-FLV-EXT-DATA:ephemeral",isHideable:!0},{title:t("Storage IOPS"),dataIndex:"quota:disk_total_iops_sec",isHideable:!0,render:e=>e||"-"}];var j=[{title:t("Public"),dataIndex:"is_public",isHideable:!0,valueRender:"yesNo"}];a.extraColumns=j;var F={title:t("CPU Arch"),dataIndex:"cpu_arch",isHideable:!0};a.cpuArchColumn=F;var L=[{title:t("GPU Type"),dataIndex:"gpuType",isHideable:!0},{title:t("GPU Count"),dataIndex:"gpuCount",isHideable:!0},{title:t("NUMA Nodes"),dataIndex:"hw:numa_nodes",isHideable:!0},{title:t("CPU Policy"),dataIndex:"hw:cpu_policy",isHideable:!0,valueMap:S},{title:t("CPU Thread Policy"),dataIndex:"hw:cpu_thread_policy",isHideable:!0,valueMap:w},{title:t("Memory Page"),dataIndex:"hw:mem_page_size",isHideable:!0,valueMap:C}];a.gpuColumns=L;a.getAllArchitecture=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],a=[];try{var r,n,i=(0,h.default)(r=e||[]).call(r,(e=>"flavor_families"===e.key));(0,m.default)(n=i&&i.value||[]).call(n,(e=>{e.architecture&&a.push(e.architecture)}))}catch(e){}return t&&a.push("custom"),a};a.getFamilyItemValue=e=>{var t,a=(0,h.default)(t=e||[]).call(t,(e=>"flavor_families"===e.key));return a?a.value:[]};var z=e=>"bare_metal"===e;a.isBareMetal=z;a.isBareMetalFlavor=e=>{var{extra_specs:t={}}=e.originData||e||{};return z(t[":architecture"])||"required"===t["trait:CUSTOM_GOLD"]};a.getFlavorArchInfo=e=>{var t,{architecture:a="",category:r=""}=e||{};return a?"custom"===a?k[a]:(0,g.default)(t="".concat(k[a]||a," - ")).call(t,R[r]||r):"-"}},1214:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=void 0,r(1198);var h=p(r(1199)),m=p(r(1524));r(1196);var g=p(r(1197));r(1205);var v=p(r(1206)),y=p(r(36)),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=S(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(0)),_=(r(173),p(r(16)));r(555);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 x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{onChange:t}=this.props;t&&t(e)})),(0,y.default)(this,"onKeyChange",(e=>{this.onChange(w(w({},this.state),{},{key:e.target.value}))})),(0,y.default)(this,"onValueChange",(e=>{this.onChange(w(w({},this.state),{},{value:e.target.value}))})),this.state={key:"",value:""}}static getDerivedStateFromProps(e,t){var{key:a,value:r}=e.value||{};return a!==t.key||r!==t.value?{key:a,value:r}:null}render(){var{key:e,value:a}=this.state,{keyReadonly:r,valueReadonly:n,keySpan:i,valueSpan:l}=this.props;return b.default.createElement(h.default,null,b.default.createElement(g.default,{span:i||4},b.default.createElement(v.default,{value:e,placeholder:t["Please input key"],onChange:this.onKeyChange,readOnly:r,required:!0})),b.default.createElement(g.default,{span:1,style:{textAlign:"center",lineHeight:"30px"}},b.default.createElement(m.default,{rotate:90})),b.default.createElement(g.default,{span:l||8},b.default.createElement(v.default,{value:a,placeholder:t["Please input key"],onChange:this.onValueChange,readOnly:n,required:!0})))}}a.default=I,(0,y.default)(I,"propTypes",{onChange:_.default.func,value:_.default.object,keyReadonly:_.default.bool,valueReadonly:_.default.bool,keySpan:_.default.number,valueSpan:_.default.number}),(0,y.default)(I,"defaultProps",{onChange:null,value:{key:"",value:""},keyReadonly:!1,valueReadonly:!1})},1218:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.FlavorStore=void 0;var f,p,h=c(a(198)),m=c(a(32)),g=c(a(65)),v=c(a(57)),y=c(a(27)),b=c(a(25)),_=c(a(51)),S=c(a(62)),x=c(a(71)),w=c(a(36)),I=c(a(54)),C=(c(a(72)),a(34)),k=c(a(48)),D=c(a(53));function P(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function T(e){for(var t=1;t{var{extra_specs:t={}}=e||{},a=t["pci_passthrough:alias"],r=t["resources:VGPU"],n=t[":category"],i="-",l="-",s="-",o="-";if(r&&(i="vgpu",l=r),a)if(n&&!(0,h.default)(n).call(n,"visualization_")){var u=a.split(",")[0],d=a.split(",")[1];i=u.split(":")[0],l=u.split(":")[1],d&&(s=d.split(":")[0],o=d.split(":")[1])}else{var c=a.split(",")[0];s=c.split(":")[0],o=c.split(":")[1]}return{gpuType:i,gpuCount:l,usbType:s,usbCount:o}}))}get listWithDetail(){return!0}get client(){return k.default.nova.flavors}get mapperBeforeFetchProject(){return e=>{var{extra_specs:{key:t}={}}=e,a=(0,S.default)(e.extra_specs,["key"]),r=(0,S.default)(e,["extra_specs"]),n=this.getGpuInfo(e);return T(T(T(T({},r),a),{},{architecture:a[":architecture"]||"custom",category:a[":category"]},n),{},{is_public:r["os-flavor-access:is_public"],originData:e})}}get paramsFunc(){return e=>{var{all_projects:t,name:a}=e,r=(0,S.default)(e,["all_projects","name"]);return t?T(T({},r),{},{is_public:"None"}):T({name:a},r)}}listDidFetch(e,t,a){return(0,_.default)((function*(){var{tab:t}=a;return t?(0,m.default)(e).call(e,(e=>e.architecture===t)):e}))()}fetchAccess(e){var t=this;return(0,_.default)((function*(){var a=yield t.client.access.list(e);t.access=a.flavor_access}))()}create(e,t,a){var r=this;return(0,_.default)((function*(){var n={};n[r.responseKey]=e,r.isSubmitting=!0;var i=yield r.client.create(n),{id:l}=i.flavor,s={extra_specs:t};return a&&a.length>0&&(yield g.default.all((0,v.default)(a).call(a,(e=>{var t={addTenantAccess:{tenant:e}};return r.client.action(l,t)})))),r.submitting(r.client.extraSpecs.create(l,s))}))()}updateAccess(e,t,a){var r=this;return(0,_.default)((function*(){return r.isSubmitting=!0,yield g.default.all((0,v.default)(t).call(t,(t=>{var a={addTenantAccess:{tenant:t}};return r.client.action(e,a)}))),r.submitting(g.default.all((0,v.default)(a).call(a,(t=>{var a={removeTenantAccess:{tenant:t}};return r.client.action(e,a)}))))}))()}createExtraSpecs(e,t){var a=this;return(0,_.default)((function*(){var r={extra_specs:t};return a.submitting(a.client.extraSpecs.create(e,r))}))()}deleteExtraSpecs(e,t){var a=this;return(0,_.default)((function*(){return a.submitting(a.client.extraSpecs.delete(e,t))}))()}putExtraSpecs(e,t,a){var r=this;return(0,_.default)((function*(){return r.submitting(r.client.extraSpecs.update(e,t,a))}))()}updateExtraSpecs(e){var t=arguments,a=this;return(0,_.default)((function*(){var r=t.length>1&&void 0!==t[1]?t[1]:[],n=t.length>2&&void 0!==t[2]?t[2]:[],i=t.length>3&&void 0!==t[3]?t[3]:[];if(r.length>0){var l={};(0,y.default)(r).call(r,(e=>{l[e.key]=e.value})),yield a.createExtraSpecs(e,l)}return n.length>0&&(yield g.default.all((0,v.default)(n).call(n,(t=>a.putExtraSpecs(e,t.key,{[t.key]:t.value}))))),i.length>0&&(yield g.default.all((0,v.default)(i).call(i,(t=>a.deleteExtraSpecs(e,t))))),g.default.resolve()}))()}},p=(0,I.default)(f.prototype,"access",[C.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,I.default)(f.prototype,"fetchAccess",[C.action],(0,b.default)(f.prototype,"fetchAccess"),f.prototype),(0,I.default)(f.prototype,"create",[C.action],(0,b.default)(f.prototype,"create"),f.prototype),(0,I.default)(f.prototype,"updateAccess",[C.action],(0,b.default)(f.prototype,"updateAccess"),f.prototype),(0,I.default)(f.prototype,"createExtraSpecs",[C.action],(0,b.default)(f.prototype,"createExtraSpecs"),f.prototype),(0,I.default)(f.prototype,"deleteExtraSpecs",[C.action],(0,b.default)(f.prototype,"deleteExtraSpecs"),f.prototype),(0,I.default)(f.prototype,"putExtraSpecs",[C.action],(0,b.default)(f.prototype,"putExtraSpecs"),f.prototype),(0,I.default)(f.prototype,"updateExtraSpecs",[C.action],(0,b.default)(f.prototype,"updateExtraSpecs"),f.prototype),f);t.FlavorStore=A;var M=new A;t.default=M},1219:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.getRoutersWithIDAndExtInfo=P,a.getLinkedRouterIdsByFip=function(e,t){return A.apply(this,arguments)},a.getCanReachSubnetIdsWithRouterId=M,a.getCanReachSubnetIdsWithRouterIdInComponent=function(e){return N.apply(this,arguments)},a.getRouterSelectTablePropsBackend=a.routerSortProps=a.routerFilters=a.getRouterColumns=a.getRouterState=a.routerState=a.routerStatus=void 0;var p=f(r(51)),h=f(r(36)),m=f(r(57)),g=f(r(32)),v=f(r(0)),y=f(r(568)),b=r(1224),_=r(161);function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function x(e){for(var t=1;te?t("Up"):t("Down");var C=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e.getRouteName("routerDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!e.isAdminPage,sortKey:"project_id"},{title:t("Status"),dataIndex:"status",valueMap:w},{title:t("Open External Gateway"),dataIndex:"hasExternalGateway",valueRender:"yesNo",isHideable:!0,sorter:!1},{title:t("External Network"),dataIndex:"externalNetworkId",isHideable:!0,sorter:!1,render:t=>e.getLinkRender("networkDetail",t,{id:t})},{title:t("External Fixed IP"),dataIndex:"externalFixedIps",isHideable:!0,sorter:!1,render:e=>(0,m.default)(e).call(e,(e=>v.default.createElement("div",{key:e.ip_address},e.ip_address)))||"-",stringify:e=>(0,m.default)(e).call(e,(e=>e.ip_address)).join(",")||"-"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime",isHideable:!0,sorter:!1}];a.getRouterColumns=C;var k=[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:(0,_.getOptions)(w)}];a.routerFilters=k;var D={isSortByBack:!0,defaultSortKey:"status",defaultSortOrder:"descend"};a.routerSortProps=D;function P(e){return T.apply(this,arguments)}function T(){return(T=(0,p.default)((function*(e){var t={fields:["id","external_gateway_info"],project_id:e};return yield y.default.pureFetchList(t)}))).apply(this,arguments)}function A(){return(A=(0,p.default)((function*(e,t){var a,r=yield P(e);return(0,m.default)(a=(0,g.default)(r).call(r,(e=>e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id))).call(a,(e=>e.id))}))).apply(this,arguments)}function M(e,t){return R.apply(this,arguments)}function R(){return(R=(0,p.default)((function*(e,t){var a=yield P(e);t&&(a=(0,g.default)(a).call(a,t));var r=yield(0,b.getPortsWithFixedIPs)();return{canReachSubnetIdsWithRouterId:(0,b.getSubnetToRouter)(r,a),routerIdWithExternalNetworkInfo:a}}))).apply(this,arguments)}function N(){return(N=(0,p.default)((function*(e){var{canReachSubnetIdsWithRouterId:t,routerIdWithExternalNetworkInfo:a}=yield M(this.currentProjectId,e);return this.setState({canReachSubnetIdsWithRouterId:t,routerIdWithExternalNetworkInfo:a}),t}))).apply(this,arguments)}a.getRouterSelectTablePropsBackend=e=>x(x({},D),{},{columns:C(e),filterParams:k})},1224:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.getSubnetToRouter=function(e,t){var a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=[];return(0,l.default)(e).call(e,(e=>{var n;(0,s.default)(t).call(t,(t=>!(a&&!t.external_gateway_info)&&t.id===e.device_id))&&(0,l.default)(n=e.fixed_ips).call(n,(t=>{r.push({subnet_id:t.subnet_id,router_id:e.device_id})}))})),r},a.getPortsWithFixedIPs=function(){return C.apply(this,arguments)},a.getInterfaceWithReason=function(e){return k.apply(this,arguments)},a.saveAndBuildPromisesFromInterfaces=D,a.getReasonForExternalNetworkPortOrAlreadyBindFip=T,a.getFipsFromRouterId=M,a.handleFixedIPChange=function(e){return N.apply(this,arguments)},a.getPortForwardingName=a.portForwardingProtocols=a.getFIPFormItemForAssociate=a.disableFIPAssociate=a.getFIPFormItemExtra=a.getFixedIPFormItemForAssociate=a.transitionStatuses=a.resourceType=a.floatingIpStatus=void 0;var l=i(r(27)),s=i(r(102)),o=i(r(81)),u=i(r(65)),d=i(r(226)),c=i(r(198)),f=i(r(57)),p=i(r(32)),h=i(r(1299)),m=i(r(51)),g=i(r(199)),v=i(r(575)),y=i(r(228)),b=r(556),_=i(r(336)),S=r(1340),{isIPv4:x}=b.ipValidate,w={AVAILABLE:t("Available"),PENDING:t("Pending"),ACTIVE:t("Active"),ERROR:t("Error"),DOWN:t("Down")};a.floatingIpStatus=w;var I={compute:t("Instance"),Octavia:t("Load Balancer"),"network:router_gateway":t("Router"),database:t("Database Instance"),null:"-"};a.resourceType=I;function C(){return(C=(0,m.default)((function*(){return yield v.default.pureFetchList({device_owner:["network:router_interface_distributed","network:router_interface","network:ha_router_replicated_interface"],fields:["fixed_ips","device_id","device_owner"]})}))).apply(this,arguments)}function k(){return(k=(0,m.default)((function*(e){var[t,a,r]=yield D(e);return yield T(t,a,r)}))).apply(this,arguments)}function D(e){return P.apply(this,arguments)}function P(){return(P=(0,m.default)((function*(e){var t=[],a=[],r=[];return(0,l.default)(e).call(e,(e=>{var n,i=e.port_id||e.id,s=e.mac_addr||e.mac_address||"",o=e.net_id||e.network_id;(0,l.default)(n=e.fixed_ips).call(n,(e=>{r.push({port_id:i,fixed_ip_address:e.ip_address,mac_address:s,subnet_id:e.subnet_id,network_id:o}),t.push(y.default.fetchDetail({id:o})),x(e.ip_address)?a.push(_.default.pureFetchList({fixed_ip_address:e.ip_address})):a.push(u.default.resolve([]))}))})),[r,t,a]}))).apply(this,arguments)}function T(e,t,a){return A.apply(this,arguments)}function A(){return(A=(0,m.default)((function*(e,t,a){var r=[...e],n=yield u.default.all(t);(0,l.default)(n).call(n,((e,t)=>{r[t].network_name=e.name}));var i=yield y.default.pureFetchList({"router:external":!0});(0,l.default)(r).call(r,(e=>{(0,d.default)(i).call(i,(t=>{var a;return(0,c.default)(a=t.subnets).call(a,e.subnet_id)}))?e["router:external"]=!0:e["router:external"]=!1}));var s=yield u.default.all(a);return(0,l.default)(s).call(s,((e,t)=>{r[t].floatingIP=e[0]&&e[0].port_id===r[t].port_id&&e[0].floating_ip_address||""})),r}))).apply(this,arguments)}function M(e){return R.apply(this,arguments)}function R(){return(R=(0,m.default)((function*(e){var t,{routerIdWithExternalNetworkInfo:a}=this.state,r=(0,s.default)(a).call(a,(t=>t.id===e.router_id));if(!r.external_gateway_info)return[];var n=r.external_gateway_info.network_id,i=yield _.default.pureFetchList({floating_network_id:n,status:"DOWN",project_id:this.currentProjectId}),l=yield y.default.fetchDetail({id:n});return(0,f.default)(t=(0,p.default)(i).call(i,(e=>!e.fixed_ip_address&&!e.port_details))).call(t,(e=>(e.network_name=l.name,e.name=e.floating_ip_address,e)))}))).apply(this,arguments)}function N(){return(N=(0,m.default)((function*(e){this.setState({fipLoading:!0});var{canReachSubnetIdsWithRouterId:t}=this.state;e.selectedRows.length||this.setState({fixed_ip:null,canAssociateFloatingIPs:[],fipLoading:!1});var a=e.selectedRows[0],r=[],n=(0,p.default)(t).call(t,(e=>e.subnet_id===a.subnet_id)),i=yield u.default.all((0,f.default)(n).call(n,(e=>M.call(this,e))));(0,l.default)(i).call(i,(e=>{r.push(...e)}));var s={};(0,l.default)(r).call(r,(e=>{s[e.id]=e}));var o=(0,h.default)(s);this.setState({fixed_ip:a,canAssociateFloatingIPs:o,fipLoading:!1})}))).apply(this,arguments)}a.transitionStatuses=["PENDING"];a.getFixedIPFormItemForAssociate=(e,a)=>{var{portLoading:r}=a.state;return{name:"fixed_ip",label:e,type:"select-table",required:!0,data:a.ports,isLoading:r,isMulti:!1,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"name"},{title:t("Mac Address"),dataIndex:"mac_address"},{title:t("Network"),dataIndex:"network_name"},{title:t("Subnet ID"),dataIndex:"subnet_id"},{title:t("Reason"),dataIndex:"reason"}],disabledFunc:e=>!e.available,onChange:a.handleFixedIPChange}};a.getFIPFormItemExtra=()=>(0,S.enablePFW)()?t("The floating IP configured with port forwardings cannot be bound"):"";a.disableFIPAssociate=e=>!!(e.port_forwardings||[]).length;a.getFIPFormItemForAssociate=e=>{var{canAssociateFloatingIPs:a,fipLoading:r}=e.state;return{name:"fip",label:t("Floating Ip Address"),type:"select-table",required:!0,data:a,isLoading:r,isMulti:!1,extra:e.getFIPFormItemExtra(),disabledFunc:e.disableFIPAssociate,filterParams:[{label:t("Floating Ip Address"),name:"name"}],columns:[{title:t("Floating Ip Address"),dataIndex:"name"},{title:t("Network"),dataIndex:"network_name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}};var E={tcp:t("TCP"),udp:t("UDP")};a.portForwardingProtocols=E;a.getPortForwardingName=function(){var e,t,a,r,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if((0,g.default)(n))return"";var{protocol:l,external_port:s,external_port_range:u,internal_ip_address:d,internal_port:c,internal_port_range:f}=n,p=E[l]||l,h=(0,o.default)(e=(0,o.default)(t="".concat(s||u," => ")).call(t,d,":")).call(e,c||f),m=i?(0,o.default)(a="".concat(i,":")).call(a,h):h;return(0,o.default)(r="".concat(p,": ")).call(r,m)}},1228:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(229)),s=i(r(81));r(1676);var o=i(r(641)),u=i(r(599)),d=i(r(603)),c=i(r(602)),f=i(r(591)),p=i(r(131)),h=i(r(199)),m=i(r(0)),g=(r(173),i(r(16))),v=(r(555),i(r(1316))),y=i(r(1436)),b=i(r(140)),_=r(161),S=r(1699),x=i(r(1700)),w=e=>{var{title:a=t("Error"),type:r="error",description:n="",onClose:i,top:l=48}=e,s="#F5222D",p=null;"info"===r?(s="#0068FF",p=m.default.createElement(f.default,{theme:"filled",style:{color:s}})):"success"===r?(s="#57E39B",p=m.default.createElement(c.default,{theme:"filled",style:{color:s}})):"error"===r?(s="#EB354D",p=m.default.createElement(d.default,{theme:"filled",style:{color:s}})):"process"===r?(s="#0068FF",p=m.default.createElement(u.default,{style:{color:s}})):"warn"===r&&(s="#FEDF40",p=m.default.createElement(f.default,{theme:"filled",style:{color:s}}));var h="error"===r||"warn"===r?0:4.5;o.default.open({message:(0,_.unescapeHtml)(a),duration:h,icon:p,description:(0,_.unescapeHtml)(n),className:x.default.notify,onClose:i,top:l,style:{whiteSpace:"pre-line"}})};w.propTypes={title:g.default.string,type:g.default.string,description:g.default.string};var I=(e,t)=>{b.default.addNoticeCount(),w({title:e,description:t,type:"error",onClose:()=>{b.default.removeNoticeCount()}})},C={open:w,success:(e,t)=>{w({title:e,description:t,type:"success"})},error:I,warn:(e,t)=>{w({title:e,description:t,type:"warn"})},info:(e,t)=>{w({title:e,description:t,type:"info"})},process:(e,t)=>{w({title:e,description:t,type:"process"})},errorWithDetail:(e,a)=>{var r,{status:n,message:i}=e||{},o=a;if(n&&(0,l.default)(n,10)>=500)if((0,h.default)(i)||S.statusMap[n])o+=S.statusMap[n];else{var u,d;if((0,p.default)(i))o+=(0,s.default)(d="".concat(t("message"))).call(d,t("."));else if(i.reason){var c;o+=(0,s.default)(c="".concat(t("message.reason"))).call(c,t("."))}o+=(0,s.default)(u="".concat(t("Status Code"),": ")).call(u,n)}else r=e?m.default.createElement(y.default,{style:{float:"right"},buttonType:"link",buttonText:t("Click to show detail"),component:m.default.createElement(v.default,{className:x.default["code-editor"],value:e,mode:"json",options:{readOnly:!0}})}):"";I(o,r)}};a.default=C},1234:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var s=l(a(200)),o=l(a(102)),u=l(a(57));a(1260);var d=l(a(1261)),c=l(a(409)),f=l(a(36)),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=_(t);if(a&&a.has(e))return a.get(e);var r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),h=a(341),m=l(a(4)),g=(a(173),a(161)),v=a(558),y=l(a(1296)),b=l(a(3609));function _(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(_=function(e){return e?a:t})(e)}class S extends p.Component{constructor(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(e),(0,f.default)(this,"handleFetch",((e,t)=>{this.routing.query(e,t)})),(0,f.default)(this,"handleChangeTab",(e=>{this.handleFetch({tab:e},!0)})),this.options=t,this.state={},this.init()}get routing(){return this.props.rootStore.routing}get location(){return this.props.location||{}}get isAdminPage(){var{pathname:e}=this.location;return(0,g.isAdminPage)(e)}get hasAdminRole(){return this.props.rootStore.hasAdminRole}get endpoint(){return""}get checkEndpoint(){return!1}get name(){return""}get endpointError(){return this.checkEndpoint&&!this.endpoint}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]:{},r=this.getRouteName(e);return(0,v.getPath)({key:r,params:t,query:a})}getLinkRender(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=this.getRouteName(e);return(0,v.getLinkRender)({key:n,params:a,query:r,value:t})}get tabs(){return[{title:"tab1",key:"tab1",component:null},{title:"tab2",key:"tab2",component:null}]}getTab(){var e,t=(0,h.parse)((0,s.default)(e=this.routing.location.search).call(e,1)),{tab:a}=t;return a}get tab(){var e;if(0===this.tabs.length)return null;var t=this.getTab();return(0,o.default)(e=this.tabs).call(e,(e=>e.key===t))||this.tabs[0]}init(){}renderTabComponent(e){var{component:t,key:a}=e;return t?p.default.createElement(e.component,(0,c.default)({},this.props,{tab:this.tab.key})):p.default.createElement("span",{key:a},a)}renderTab(e,t){return e!==t.key?p.default.createElement(d.default.TabPane,{tab:t.title,key:t.key}):p.default.createElement(d.default.TabPane,{tab:t.title,key:t.key},this.renderTabComponent(t))}renderTabs(){var e;if(!this.tab)return null;if(this.endpointError){var t=this.getRoutePath("overview");return p.default.createElement(y.default,{title:this.name,link:t,endpointError:!0})}var a=(0,u.default)(e=this.tabs).call(e,(e=>this.renderTab(this.tab.key,e)));return p.default.createElement("div",{className:(0,m.default)(b.default.wrapper,this.className)},p.default.createElement(d.default,{activeKey:this.tab.key,onChange:this.handleChangeTab},a))}render(){return this.renderTabs()}}t.default=S},1235:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.projectTableOptions=a.projectColumns=a.projectFilter=void 0;var n=r(334),i=[{label:t("Project Name"),name:"name"},{label:t("Enabled"),name:"enabled",options:n.yesNoOptions}];a.projectFilter=i;var l=[{title:t("Project Name"),dataIndex:"name"},{title:t("User Num"),dataIndex:"userCount"},{title:t("Enabled"),dataIndex:"enabled",valueRender:"yesNo"},{title:t("description"),dataIndex:"description",isHideable:!0}];a.projectColumns=l;var s={filterParams:i,columns:l};a.projectTableOptions=s},1238:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.GroupStore=void 0;var f,p,h,m,g=c(a(27)),v=c(a(102)),y=c(a(33)),b=c(a(65)),_=c(a(32)),S=c(a(57)),x=c(a(25)),w=c(a(51)),I=c(a(62)),C=c(a(71)),k=c(a(36)),D=c(a(54)),P=(c(a(72)),a(34)),T=c(a(48)),A=c(a(53));function M(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function R(e){for(var t=1;t{var i={},{id:l}=e||{};(0,g.default)(t).call(t,(e=>{var{scope:{project:{id:t}={}}={},group:{id:r}={},role:{id:s}={}}=e;if(r===l&&s){var o=(0,v.default)(a).call(a,(e=>e.id===s));if(t)if(i[t])i[t].roles=[...i[t].roles,o];else{var u=(0,v.default)(n).call(n,(e=>e.id===t));i[t]={project:u,roles:[o]}}}}));var s=(0,v.default)(r).call(r,(t=>t.id===e.domain_id));return R(R({},e),{},{projects:i,projectCount:(0,y.default)(i).length,domain:s,domainName:(s||{}).name||e.domain_id})}))}get client(){return T.default.keystone.groups}get domainClient(){return T.default.keystone.domains}get systemGroupClient(){return T.default.keystone.systemGroups}get roleClient(){return T.default.keystone.roles}get roleAssignmentClient(){return T.default.keystone.roleAssignments}get userClient(){return T.default.keystone.users}get projectClient(){return T.default.keystone.projects}get paramsFunc(){return e=>{var{id:t,userId:a,groupId:r,roleId:n,projectId:i,domainId:l,withRole:s,all_projects:o}=e;return(0,I.default)(e,["id","userId","groupId","roleId","projectId","domainId","withRole","all_projects"])}}listFetchByClient(e,t){var{userId:a}=t;return a?this.userClient.groups.list(a,e):this.client.list(e)}edit(e){var t=this;return(0,w.default)((function*(){var{id:a,description:r,name:n}=e,i={group:{description:r,name:n}};return t.submitting(t.client.patch(a,i))}))()}fetchSystemRole(e){var t=this;return(0,w.default)((function*(){var{id:a}=e;t.systemRoles=[];var r=yield t.systemGroupClient.roles.list(a);t.systemRoles=r.roles}))()}assignSystemRole(e){var t=this;return(0,w.default)((function*(){var{id:a,roleId:r}=e;return t.systemGroupClient.roles.update(a,r)}))()}deleteSystemRole(e){var t=this;return(0,w.default)((function*(){var{id:a,roleId:r}=e;return t.systemGroupClient.roles.delete(a,r)}))()}fetchDomainRole(e){var t=this;return(0,w.default)((function*(){var{id:a,domain_id:r}=e;t.domainRoles=[];var n=yield t.domainClient.groups.roles.list(r,a);t.domainRoles=n.roles}))()}assignDomainRole(e){var t=this;return(0,w.default)((function*(){var{id:a,roleId:r,domain_id:n}=e;return t.domainClient.groups.roles.update(n,a,r)}))()}deleteDomainRole(e){var t=this;return(0,w.default)((function*(){var{id:a,roleId:r,domain_id:n}=e;return t.domainClient.groups.roles.delete(n,a,r)}))()}fetchGroupUsers(e){var t=this;return(0,w.default)((function*(){var{id:a}=e,r=yield t.client.users.list(a),{users:n}=r;return t.groupUsers=n,n}))()}deleteGroupUsers(e){var t=this;return(0,w.default)((function*(){var{id:a,userId:r}=e;return t.client.users.delete(a,r)}))()}addGroupUsers(e){var t=this;return(0,w.default)((function*(){var{id:a,userId:r}=e;return t.client.users.update(a,r)}))()}listDidFetch(e,t,a){var r=this;return(0,w.default)((function*(){if(!e.length)return e;var{projectId:t,roleId:n,domainId:i,withRole:l=!0}=a,s={};t&&(s["scope.project.id"]=t),n&&(s["role.id"]=n);var[o,u,d,c]=yield b.default.all([l?r.roleAssignmentClient.list(s):null,l?r.roleClient.list():null,r.domainClient.list(),l?r.projectClient.list():null]),{roles:f=[]}=u||{},{domains:p=[]}=d,{projects:h=[]}=c||{},{role_assignments:m=[]}=o||{},g=e;return i&&(g=(0,_.default)(e).call(e,(e=>e.domain_id===i))),g=(0,S.default)(g).call(g,(e=>r.updateUserGroup(e,m,f,p,h))),t||n?(0,_.default)(g).call(g,(e=>e.projectCount)):g}))()}detailDidFetch(e){var t=this;return(0,w.default)((function*(){var{id:a}=e,[r,n]=yield b.default.all([t.domainClient.list(),t.client.users.list(a)]),{domains:i=[]}=r,{users:l=[]}=n,s=t.updateUserGroup(e,[],[],i,[]);return s.userCount=l.length,s}))()}},p=(0,D.default)(f.prototype,"systemRoles",[P.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),h=(0,D.default)(f.prototype,"domainRoles",[P.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),m=(0,D.default)(f.prototype,"groupUsers",[P.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,D.default)(f.prototype,"edit",[P.action],(0,x.default)(f.prototype,"edit"),f.prototype),(0,D.default)(f.prototype,"fetchSystemRole",[P.action],(0,x.default)(f.prototype,"fetchSystemRole"),f.prototype),(0,D.default)(f.prototype,"assignSystemRole",[P.action],(0,x.default)(f.prototype,"assignSystemRole"),f.prototype),(0,D.default)(f.prototype,"deleteSystemRole",[P.action],(0,x.default)(f.prototype,"deleteSystemRole"),f.prototype),(0,D.default)(f.prototype,"fetchDomainRole",[P.action],(0,x.default)(f.prototype,"fetchDomainRole"),f.prototype),(0,D.default)(f.prototype,"assignDomainRole",[P.action],(0,x.default)(f.prototype,"assignDomainRole"),f.prototype),(0,D.default)(f.prototype,"deleteDomainRole",[P.action],(0,x.default)(f.prototype,"deleteDomainRole"),f.prototype),(0,D.default)(f.prototype,"fetchGroupUsers",[P.action],(0,x.default)(f.prototype,"fetchGroupUsers"),f.prototype),(0,D.default)(f.prototype,"deleteGroupUsers",[P.action],(0,x.default)(f.prototype,"deleteGroupUsers"),f.prototype),(0,D.default)(f.prototype,"addGroupUsers",[P.action],(0,x.default)(f.prototype,"addGroupUsers"),f.prototype),f);t.GroupStore=N;var E=new N;t.default=E},1242:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.BackupStore=void 0;var f,p,h=c(a(81)),m=c(a(25)),g=c(a(62)),v=c(a(51)),y=c(a(71)),b=c(a(36)),_=c(a(54)),S=(c(a(72)),a(34)),x=c(a(48)),w=c(a(53)),I=a(410);function C(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function k(e){for(var t=1;t{var r;t&&a&&(e.sort=(0,h.default)(r="".concat(t,":")).call(r,"descend"===a?"desc":"asc"))}))}get client(){return x.default.cinder.backups}get listWithDetail(){return!0}get mapperBeforeFetchProject(){return e=>k(k({},e),{},{project_id:e.project_id||e["os-backup-project-attr:project_id"]})}detailDidFetch(e){return(0,v.default)((function*(){var{volume_id:t}=e;try{var a=new I.VolumeStore,r=yield a.fetchDetail({id:t});e.volume=r,e.volume_name=r.name}catch(e){}return e}))()}get paramsFuncPage(){return e=>{var{current:t,all_projects:a}=e;return k({all_tenants:a},(0,g.default)(e,["current","all_projects"]))}}restore(e,t){var a={restore:t||{}};return this.submitting(this.client.restore(e,a))}setCurrentVolume(e){var{size:t=0}=e||{};this.currentVolumeSize=t||0}},p=(0,_.default)(f.prototype,"currentVolumeSize",[S.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),(0,_.default)(f.prototype,"restore",[S.action],(0,m.default)(f.prototype,"restore"),f.prototype),(0,_.default)(f.prototype,"setCurrentVolume",[S.action],(0,m.default)(f.prototype,"setCurrentVolume"),f.prototype),f);t.BackupStore=D;var P=new D;t.default=P},1243:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.MetadataStore=void 0;var f,p,h,m=c(a(65)),g=c(a(57)),v=c(a(27)),y=c(a(25)),b=c(a(51)),_=c(a(71)),S=c(a(36)),x=c(a(54)),w=(c(a(72)),a(34)),I=c(a(48)),C=c(a(53));function k(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function D(e){for(var t=1;t{var{namespace:t}=e;return r.client.show(t,{resource_type:n})})));(0,v.default)(e).call(e,((e,t)=>{e.detail=i[t]}));var l=[];return(0,v.default)(e).call(e,(e=>{var t;e.detail.objects?(0,v.default)(t=e.detail.objects).call(t,(t=>{l.push(D(D({},e),{},{detail:t,isObject:!0,objName:t.name,objDescription:t.description}))})):l.push(e)})),l}))()}get mapper(){return e=>{var{visibility:t,namespace:a,display_name:r,resource_type_associations:n=[]}=e;return(0,v.default)(n).call(n,(e=>{e.prefix=e.prefix||""})),D(D({},e),{},{public:"public"===t,id:a,name:r,resource_type_associations:n})}}fetchDetail(e){var t=this;return(0,b.default)((function*(){var{id:a}=e;t.isLoading=!0;var r=yield t.client.show(a);return t.detail=r,t.isLoading=!1,r}))()}edit(e,t){var{id:a}=e;return this.submitting(this.client.update(a,t))}create(e){return this.submitting(this.client.create(e))}fetchResourceTypes(e){var t=this;return(0,b.default)((function*(){t.resourceTypeLoading=!0;var a=yield t.resourceTypeClient.list(),{resource_type_associations:r=[]}=e||{},{resource_types:n=[]}=a,i={};(0,v.default)(r).call(r,(e=>{i[e.name]=e.prefix||""})),(0,v.default)(n).call(n,(e=>{e.id=e.name,i[e.name]&&(e.prefix=i[e.name])})),t.resourceTypes=n,t.resourceTypeLoading=!1}))()}manageResourceTypes(e,t,a){var r=this;return(0,b.default)((function*(){return r.isSubmitting=!0,yield m.default.all((0,g.default)(t).call(t,(t=>r.client.resourceTypes.delete(e,t.name)))),r.submitting(m.default.all((0,g.default)(a).call(a,(t=>{var a={name:t.name,prefix:t.prefix};return r.client.resourceTypes.create(e,a)}))))}))()}},p=(0,x.default)(f.prototype,"resourceTypes",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),h=(0,x.default)(f.prototype,"resourceTypeLoading",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,x.default)(f.prototype,"fetchDetail",[w.action],(0,y.default)(f.prototype,"fetchDetail"),f.prototype),(0,x.default)(f.prototype,"edit",[w.action],(0,y.default)(f.prototype,"edit"),f.prototype),(0,x.default)(f.prototype,"create",[w.action],(0,y.default)(f.prototype,"create"),f.prototype),(0,x.default)(f.prototype,"fetchResourceTypes",[w.action],(0,y.default)(f.prototype,"fetchResourceTypes"),f.prototype),(0,x.default)(f.prototype,"manageResourceTypes",[w.action],(0,y.default)(f.prototype,"manageResourceTypes"),f.prototype),f);t.MetadataStore=P;var T=new P;t.default=T},1245:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.getFormDefaultValues=a.getFormItems=a.getFormItemType=a.getTemplate=a.rollbackTip=a.paramTip=a.yamlTip=a.getYaml=a.validateYaml=a.stackStatus=void 0;var p=f(r(65)),h=f(r(27)),m=f(r(33)),g=f(r(36)),v=f(r(99)),y=f(r(559)),b=f(r(1369)),_=r(334);function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}var x={INIT_IN_PROGRESS:t("Init In Progress"),INIT_COMPLETE:t("Init Complete"),INIT_FAILED:t("Init Failed"),CREATE_IN_PROGRESS:t("Create In Progress"),CREATE_COMPLETE:t("Create Complete"),CREATE_FAILED:t("Create Failed"),DELETE_IN_PROGRESS:t("Delete In Progress"),DELETE_COMPLETE:t("Delete Complete"),DELETE_FAILED:t("Delete Failed"),UPDATE_IN_PROGRESS:t("Update In Progress"),UPDATE_COMPLETE:t("Update Complete"),UPDATE_FAILED:t("Update Failed"),ROLLBACK_IN_PROGRESS:t("Rollback In Progress"),ROLLBACK_COMPLETE:t("Rollback Complete"),ROLLBACK_FAILED:t("Rollback Failed"),SUSPEND_IN_PROGRESS:t("Suspend In Progress"),SUSPEND_COMPLETE:t("Suspend Complete"),SUSPEND_FAILED:t("Suspend Failed"),RESUME_IN_PROGRESS:t("Resume In Progress"),RESUME_COMPLETE:t("Resume Complete"),RESUME_FAILED:t("Resume Failed"),ADOPT_IN_PROGRESS:t("Adopt In Progress"),ADOPT_COMPLETE:t("Adopt Complete"),ADOPT_FAILED:t("Adopt Failed"),SNAPSHOT_IN_PROGRESS:t("Snapshot In Progress"),SNAPSHOT_COMPLETE:t("Snapshot Complete"),SNAPSHOT_FAILED:t("Snapshot Failed"),CHECK_IN_PROGRESS:t("Check In Progress"),CHECK_COMPLETE:t("Check Complete"),CHECK_FAILED:t("Check Failed")};a.stackStatus=x;a.validateYaml=(e,a)=>{try{b.default.load(a)}catch(e){return p.default.reject(t("A template is a YAML file that contains configuration information, please enter the correct format."))}return p.default.resolve()};a.getYaml=e=>{try{return b.default.load(e,{schema:b.default.JSON_SCHEMA})}catch(e){return null}};var w=t("A template is a YAML file that contains configuration information.");a.yamlTip=w;var I=t("When your Yaml file is a fixed template, variable variables can be stored in an environment variable file to implement template deployment. The parameters in the environment variable file need to match the parameters defined in the template file.");a.paramTip=I;var C=t('If "Enable" fails to roll back, the resource will be deleted after the creation fails; if "Disable" fails to roll back, the resource will be retained after the creation fails.');a.rollbackTip=C;a.getTemplate=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{content:t}=e;return t};var k=e=>{switch(e){case"number":return{type:"input-number"};case"json":return{type:"input-json"};case"boolean":return{type:"radio",options:_.yesNoOptions};default:return{type:"input"}}};a.getFormItemType=k;a.getFormItems=e=>{var t=[];try{var a,r=b.default.load(e);if(!(0,v.default)(r))return t;var n=r.parameters;(0,h.default)(a=(0,m.default)(n)).call(a,(e=>{var a=n[e],{type:r="string",description:i="",label:l,hidden:f}=a,p=function(e){for(var t=1;t{var t={};try{var a,r=b.default.load(e);if(!(0,v.default)(r))return t;var n=r.parameters||{};(0,h.default)(a=(0,m.default)(n)).call(a,(e=>{var a=n[e];(0,y.default)(a,"default")?t[e]=a.default:"boolean"===a.type&&(t[e]=!1)}))}catch(e){}return t}},1253:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(r(65)),h=f(r(198)),m=f(r(1204)),g=f(r(57)),v=f(r(1335)),y=f(r(81)),b=f(r(27)),_=f(r(33)),S=f(r(90));r(1239);var x=f(r(1240)),w=f(r(409));r(589);var I=f(r(590));r(1336);var C=f(r(426)),k=f(r(62)),D=f(r(51)),P=f(r(36)),T=f(r(131)),A=f(r(1537)),M=f(r(199)),R=f(r(0)),N=r(406),E=r(34),j=(r(173),r(1193)),F=f(r(408)),L=f(r(407)),z=f(r(4)),O=r(1195),B=r(161),V=f(r(1228)),U=f(r(3485)),q=f(r(3489)),Q=f(r(3491)),G=f(r(3498)),K=f(r(1540));function H(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function W(e){for(var t=1;t{var{data:t}=this.state;this.setState({data:W(W({},t),{},{count:e})})})),(0,P.default)(this,"onSubmit",(e=>e?this.store.create(e):(this.errorMsg&&V.default.error(this.errorMsg),p.default.reject()))),(0,P.default)(this,"onOk",(()=>{var{data:e}=this.state;this.values=e;var a=this.getSubmitData(e);a?this.onSubmit(a).then((()=>{this.routing.push(this.listUrl),V.default.success(this.successText)}),(e=>{if(e&&!(0,M.default)(e)){var{response:{data:a}={}}=e||{},{forbidden:{message:r=""}={}}=a||{};r&&(0,T.default)(r)&&(0,h.default)(r).call(r,"Quota exceeded")?V.default.error(t("Quota exceeded")):V.default.errorWithDetail(a,this.errorText)}})):V.default.errorWithDetail(null,this.errorText)}))}init(){this.store=F.default,this.projectStore=L.default,this.state.quotaLoading=!0,this.getQuota(),this.status="success",this.errorMsg=""}static allowed(e,t){var{isAdminPage:a=!1}=t;return p.default.resolve(!a)}getQuota(){var e=this;return(0,D.default)((function*(){e.setState({quotaLoading:!0}),yield p.default.all([e.projectStore.fetchProjectNovaQuota(),e.projectStore.fetchProjectCinderQuota()]),e.setState({quotaLoading:!1}),e.onCountChange(1)}))()}get disableNext(){return!!this.errorMsg}get disableSubmit(){return!!this.errorMsg}get instanceQuota(){var{instances:{left:e=0}={}}=(0,E.toJS)(this.projectStore.novaQuota)||{};return-1===e?1/0:e}get name(){return t("Create instance")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get listUrl(){var{image:e,volume:t,servergroup:a}=this.locationParams;return e?this.getRoutePath("image"):t?this.getRoutePath("volume"):a?this.getRoutePath("serverGroupDetail",{id:a}):this.getRoutePath("instance")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Base Config"),component:G.default},{title:t("Network Config"),component:Q.default},{title:t("System Config"),component:q.default},{title:t("Confirm Config"),component:U.default}]}get instanceName(){var e,t,{name:a,count:r=1}=(0,m.default)(this)||{};return 1===r?this.unescape(a):this.unescape((0,g.default)(e=(0,v.default)(t=new Array(r)).call(t,r)).call(e,((e,t)=>{var r;return(0,y.default)(r="".concat(a,"-")).call(r,t+1)})).join(", "))}get successText(){return t("The creation instruction was issued successfully, 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})}get showQuota(){return!0}get quotaInfo(){var{quotaLoading:e}=this.state;if(e)return[];var{instances:a={},cores:r={},ram:n={}}=(0,E.toJS)(this.projectStore.novaQuota)||{},{data:i={}}=this.state,{count:l=1}=i,s=this.checkQuotaInput(),o=W(W({},a),{},{add:s?0:l,name:"instance",title:t("Instance")}),{newCPU:u,newRam:d}=this.getFlavorInput(),c=W(W({},r),{},{add:s?0:u,name:"cpu",title:t("CPU"),type:"line"}),f=W(W({},n),{},{add:s?0:d,name:"ram",title:t("Memory (GiB)"),type:"line"}),p=this.getVolumeQuota(),{totalNewCount:h,totalNewSize:m}=this.getVolumeInputMap(),g=W(W({},p.volumes),{},{add:s?0:h,name:"volume",title:t("Volume"),type:"line"}),v=W(W({},p.gigabytes),{},{add:s?0:m,name:"volumeSize",title:t("Volume Capacity (GiB)"),type:"line"}),y=this.getServerGroupQuota(),b=[o,c,f,g,v];if(y){var{add:_}=y,S=W(W({},(0,k.default)(y,["add"])),{},{add:s?0:_});b.push(S)}return b}get errorText(){var{status:e}=this.state;return"error"===e?t("Unable to create instance: insufficient quota to create resources."):this.ipBatchError?t("Unable to create instance: batch creation is not supported when specifying IP."):t("The creation instruction has been issued, please refresh to see the actual situation in the list.")}getVolumeQuota(){var e,t=(0,E.toJS)(this.projectStore.cinderQuota)||{},a={};return(0,b.default)(e=(0,_.default)(t)).call(e,(e=>{((0,h.default)(e).call(e,"volumes")||(0,h.default)(e).call(e,"gigabytes"))&&(a[e]=t[e])})),a}getQuotaMessage(e,a,r){var{left:n=0}=a||{};return-1===n?"":e>n?t("Insufficient {name} quota to create resources(left { quota }, input { input }).",{name:r,quota:n,input:e}):""}getVolumeInputMap(){var{data:e}=this.state,{systemDisk:t={},dataDisk:a=[],count:r=1,source:{value:n}={},instanceSnapshotDisk:i={}}=e,l={},s={},o=0,u=0;if("instanceSnapshot"===n&&i){var{size:d,typeOption:{label:c}={}}=i;c&&(l[c]=l[c]?l[c]+1:1,s[c]=s[c]?s[c]+d:d,o+=1*r,u+=d*r)}else if(t.type){var{size:f}=t,{label:p}=t.typeOption||{};l[p]=l[p]?l[p]+1:1,s[p]=s[p]?s[p]+f:f,o+=1*r,u+=f*r}return a&&(0,b.default)(a).call(a,(e=>{if(e.value&&e.value.type){var{size:t}=e.value,{label:a}=e.value.typeOption||{};l[a]=l[a]?l[a]+1*r:1*r,s[a]=s[a]?s[a]+t*r:t*r,o+=1*r,u+=t*r}})),{totalNewCount:o,totalNewSize:u,newCountMap:l,newSizeMap:s}}checkVolumeQuota(){var e,a;if(!this.enableCinder)return"";var r="",{totalNewCount:n,totalNewSize:i,newCountMap:l,newSizeMap:s}=this.getVolumeInputMap(),o=this.getVolumeQuota(),u=this.getQuotaMessage(n,o.volumes,t("volume"));if(u)return u;var d=this.getQuotaMessage(i,o.gigabytes,t("volume capacity"));return d||((0,b.default)(e=(0,_.default)(l)).call(e,(e=>{var a=this.getQuotaMessage(l[e],o["volumes_".concat(e)],t("volume type {type}",{type:e}));a&&(r=a)})),r||((0,b.default)(a=(0,_.default)(s)).call(a,(e=>{var a=this.getQuotaMessage(s[e],o["gigabytes_".concat(e)],t("volume type {type} capacity",{type:e}));a&&(r=a)})),r))}getFlavorInput(){var{data:e}=this.state,{flavor:t={},count:a=1}=e,{selectedRows:r=[]}=t,{vcpus:n=0,ram:i=0}=r[0]||{};return{newCPU:n*a,newRam:(0,B.getGiBValue)(i)*a}}checkFlavorQuota(){var{newCPU:e,newRam:a}=this.getFlavorInput(),{cores:r={},ram:n={}}=this.projectStore.novaQuota,{left:i=0}=r||{},{left:l=0}=n||{};return-1!==i&&i"$ ".concat(e).replace(/\D/g,"")};return R.default.createElement("div",{style:{display:"flex"}},R.default.createElement("div",{style:{display:"flex",alignItems:"center"}},R.default.createElement("div",{className:K.default["number-input"]},R.default.createElement("span",null,t("Count")),R.default.createElement(x.default,(0,w.default)({},n,{value:a,className:(0,z.default)(K.default.input,"instance-count")}))),this.renderExtra()),this.renderBadge())}getVolumeAndImageData(e){if("error"===this.status)return null;var{bootableVolume:t,dataDisk:a,image:r,instanceSnapshot:n,instanceSnapshotDisk:i,source:l,systemDisk:s}=e,{value:o}=l,u="bootableVolume"===o?null:"image"===o?r.selectedRowKeys[0]:n.selectedRowKeys[0];if(!this.enableCinder)return{imageRef:u};var d={};if("bootableVolume"!==o){var{deleteType:c,type:f,size:p}=s||{};d={boot_index:0,uuid:u,source_type:"image",volume_size:p,destination_type:"volume",volume_type:f,delete_on_termination:1===c},"instanceSnapshot"===o&&i&&(delete d.volume_size,delete d.volume_type,delete d.delete_on_termination)}else d={boot_index:0,uuid:t.selectedRowKeys[0],source_type:"volume",destination_type:"volume"};var h=a?(0,g.default)(a).call(a,(e=>{var{size:t,type:a,deleteType:r}=e.value||{};return{source_type:"blank",volume_size:t,destination_type:"volume",volume_type:a,delete_on_termination:1===r}})):[];return"image"===o&&"iso"===r.selectedRows[0].disk_format&&h[0]&&(h[0].boot_index=0,h[0].device_type="disk",d.boot_index=1,d.device_type="cdrom"),{volumes:[d,...h],imageRef:u}}getNetworkData(e){var{networks:t=[],ports:a={}}=e,r=!1,n=[];(0,b.default)(t).call(t,(e=>{var t={uuid:e.value.network};1===e.value.ipType&&e.value.ip&&(t.fixed_ip=e.value.ip,r=!0),n.push(t)}));var{selectedRowKeys:i=[]}=a||{};return(0,b.default)(i).call(i,(e=>{var t={port:e};n.push(t)})),{data:n,hasIp:r}}getSubmitData(e){if("error"===this.status)return null;var{volumes:t,imageRef:a}=this.getVolumeAndImageData(e),{data:r,hasIp:n}=this.getNetworkData(e),{availableZone:i,keypair:l,loginType:s,password:o,physicalNode:u,physicalNodeType:d,securityGroup:c,flavor:f,userData:p="",serverGroup:h,name:m,count:v=1}=e;if(n&&v>1)return this.ipBatchError=!0,null;var{selectedRows:y=[]}=c||{},b={security_groups:(0,g.default)(y).call(y,(e=>({name:e.id}))),name:m,flavorRef:f.selectedRowKeys[0],availability_zone:i.value,networks:r};this.enableCinder&&(b.block_device_mapping_v2=t),a&&!t&&(b.imageRef=a),"keypair"===s.value?b.key_name=l.selectedRowKeys[0]:b.adminPass=o,v>1&&(b.min_count=v,b.max_count=v,b.return_reservation_id=!0),"smart"!==d.value&&(b.hypervisor_hostname=u.selectedRows[0].hypervisor_hostname),(b.adminPass||p)&&(b.user_data=btoa((0,O.getUserData)(b.adminPass,p)));var _={server:b};return h&&h.selectedRowKeys.length>0&&(_["OS-SCH-HNT:scheduler_hints"]={group:h.selectedRowKeys[0]}),_}}a.StepCreate=Y,(0,P.default)(Y,"id","instance-create"),(0,P.default)(Y,"title",t("Create Instance")),(0,P.default)(Y,"path",((e,t)=>{var a,{detail:r,match:n}=t||{};return!r||(0,M.default)(r)?"/compute/instance/create":(0,S.default)(a=n.path).call(a,"/compute/server")>=0?"/compute/instance/create?servergroup=".concat(r.id):void 0})),(0,P.default)(Y,"policy",["os_compute_api:servers:create","os_compute_api:os-availability-zone:list"]);var Z=(0,N.inject)("rootStore")((0,N.observer)(Y));a.default=Z},1254:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.getNeutronAgentServiceStatus=a.getNeutronAgentServiceState=a.serviceState=a.serviceStatus=void 0;var n={enabled:t("Enabled"),disabled:t("Disabled")};a.serviceStatus=n;var i={up:t("Up"),down:t("Down")};a.serviceState=i;a.getNeutronAgentServiceState=e=>e?i.up:i.down;a.getNeutronAgentServiceStatus=e=>e?n.enabled:n.disabled},1262:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.AvailabilityZoneStore=void 0;var f,p=c(a(27)),h=c(a(33)),m=c(a(57)),g=c(a(25)),v=c(a(36)),y=c(a(51)),b=c(a(54)),_=c(a(1259)),S=c(a(199)),x=a(34),w=c(a(48)),I=c(a(53));function C(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function k(e){for(var t=1;t{var{available:t}=e.zoneState;return e.available=t,e}}listDidFetch(e){return(0,y.default)((function*(){var t=[];return(0,p.default)(e).call(e,(e=>{var{hosts:a}=e;if((0,_.default)(a))t.push(e);else{var r,n={};(0,p.default)(r=(0,h.default)(a)).call(r,(e=>{var t=a[e];t["nova-compute"]&&(n[e]=t)})),(0,S.default)(n)||t.push(k(k({},e),{},{host:n}))}})),t}))()}fetchListWithoutDetail(){var e=this;return(0,y.default)((function*(){var t=(yield e.client.list())[e.listResponseKey];e.list.data=(0,m.default)(t).call(t,e.mapper)}))()}},(0,b.default)(f.prototype,"fetchListWithoutDetail",[x.action],(0,g.default)(f.prototype,"fetchListWithoutDetail"),f.prototype),f);t.AvailabilityZoneStore=D;var P=new D;t.default=P},1274:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.securityGroupFilter=a.securityGroupColumns=void 0;var l=i(r(0)),s=i(r(3492)),o=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"},{title:t("Rules"),dataIndex:"rules",render:(e,t)=>l.default.createElement(s.default,{item:t})}];a.securityGroupColumns=o;var u=[{label:t("Name"),name:"name"}];a.securityGroupFilter=u},1275:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.FlavorSelectTable=void 0;var o=s(r(102)),u=s(r(32)),d=s(r(90)),c=s(r(562)),f=s(r(57));r(581);var p=s(r(423)),h=s(r(51)),m=s(r(36)),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=I(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),v=r(406),y=r(34),b=s(r(1321)),_=(r(173),s(r(1276))),S=s(r(1218)),x=r(1213),w=s(r(3499));function I(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(I=function(e){return e?a:t})(e)}class C extends g.Component{constructor(e){super(e),(0,m.default)(this,"onArchChange",(e=>{this.setState({arch:e.target.value})})),(0,m.default)(this,"onCategoryChange",(e=>{this.setState({category:e.target.value})})),(0,m.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(e)})),this.state={arch:null,category:null},this.init()}get labelStyle(){return{marginRight:16}}getSettings(){var e=this;return(0,h.default)((function*(){yield e.settingStore.fetchList(),e.initDefaultValue()}))()}getFlavors(){var e=this;return(0,h.default)((function*(){var{allProjects:t=!1}=e.props;yield e.flavorStore.fetchList({all_projects:t}),e.initDefaultValue()}))()}get architectures(){var e,t={architecture:"custom"},a={architecture:"all"},{isIronic:r=!1,filterIronic:n=!0}=this.props,i=(0,o.default)(e=this.settingStore.list.data||[]).call(e,(e=>"flavor_families"===e.key));if(!i)return[a,t];var l=[];try{var s;l=(0,u.default)(s=i.value||[]).call(s,(e=>{var{architecture:t}=e;return!!t&&(!n||(r?(0,x.isBareMetal)(t):!(0,x.isBareMetal)(t)))}))}catch(e){}return[a,...l,t]}get categories(){var e,{arch:t}=this.state;if(!t)return[];var a=(0,o.default)(e=this.architectures).call(e,(e=>e.architecture===t));return a&&a.categories||[]}get flavors(){var e,t,a,r,{flavor:n,isIronic:i=!1,filterIronic:l=!0,excludeFlavors:s=[]}=this.props,{arch:o,category:c}=this.state;return o?(0,u.default)(e=(0,u.default)(t=(0,u.default)(a=(0,u.default)(r=this.flavorStore.list.data||[]).call(r,(e=>!(s.length>0)||(0,d.default)(s).call(s,e.id)<0))).call(a,(e=>!n||e.name!==n))).call(t,(e=>!l||(i?(0,x.isBareMetalFlavor)(e):!(0,x.isBareMetalFlavor)(e))))).call(e,(e=>"all"===o||("custom"===o?e.architecture===o:e.architecture===o&&e.category===c))):[]}getBaseColumns(){var{category:e,arch:a}=this.state,r=[...(0,x.getBaseColumns)()];return r[0].title=t("Name"),(0,c.default)(r).call(r,1,1),(0,x.categoryHasIOPS)(e)||(r=(0,u.default)(r).call(r,(e=>"quota:disk_total_iops_sec"!==e.dataIndex))),(0,x.categoryHasEphemeral)(e)||(r=(0,u.default)(r).call(r,(e=>"OS-FLV-EXT-DATA:ephemeral"!==e.dataIndex))),"all"===a&&(r=[...r,{title:t("Architecture"),dataIndex:"id",render:(e,t)=>(0,x.getFlavorArchInfo)(t)}]),r}getGpuColumns(){var{category:e}=this.state;return"compute_optimized_type"===e?(0,u.default)(x.gpuColumns).call(x.gpuColumns,(e=>{var t;return(0,d.default)(t=e.dataIndex).call(t,"gpu")<0})):(0,u.default)(x.gpuColumns).call(x.gpuColumns,(e=>{var t;return(0,d.default)(t=e.dataIndex).call(t,"gpu")>=0}))}get columns(){var{arch:e}=this.state,t=this.getBaseColumns();if((0,x.isBareMetal)(e))return[...(0,u.default)(t).call(t,((e,t)=>t<3))];if("heterogeneous_computing"!==e)return t;var a=this.getGpuColumns();return[...t,...a]}initDefaultValue(){var{value:{selectedRowKeys:e=[]}={}}=this.props;if(e.length>0){var t,a=(0,o.default)(t=(0,y.toJS)(this.flavorStore.list.data)||[]).call(t,(t=>t.id===e[0]));if(a){var{architecture:r,category:n}=a;this.setState({arch:r,category:n})}}else{var i=this.architectures[0].architecture,l=null;this.architectures[0].categories&&(l=this.architectures[0].categories[0].name),this.setState({arch:i,category:l})}}init(){this.settingStore=_.default,this.flavorStore=S.default,this.getSettings(),this.getFlavors()}renderArchButtons(){var e,{arch:t}=this.state,a=(0,f.default)(e=this.architectures).call(e,(e=>{var{architecture:t}=e,a=x.flavorArchitectures[t]||t;return g.default.createElement(p.default.Button,{value:t,key:t},a)}));return g.default.createElement(p.default.Group,{id:"flavor-select-arch",onChange:this.onArchChange,value:t,buttonStyle:"solid"},a)}renderCategoryButtons(){var e,{category:t}=this.state,a=(0,f.default)(e=this.categories).call(e,(e=>{var{name:t}=e,a=x.flavorCategoryList[t]||t;return g.default.createElement(p.default.Button,{value:t,key:t},a)}));return g.default.createElement(p.default.Group,{id:"flavor-select-category",onChange:this.onCategoryChange,value:t,buttonStyle:"solid"},a)}renderArchSelect(){return g.default.createElement("div",{className:w.default["flavor-tab"]},g.default.createElement("span",{className:w.default["flavor-label"]},t("Architecture")),this.renderArchButtons())}renderCategorySelect(){var{arch:e}=this.state;return"custom"===e||"all"===e?null:g.default.createElement("div",{className:w.default["flavor-tab"]},g.default.createElement("span",{className:w.default["flavor-label"]},t("Category")),this.renderCategoryButtons())}renderTableHeader(){return g.default.createElement("div",null,this.renderArchSelect(),this.renderCategorySelect())}render(){var{value:e,disabledFunc:a}=this.props,r=this.settingStore.list.isLoading&&this.flavorStore.list.isLoading,n={columns:this.columns,data:this.flavors,tableHeader:this.renderTableHeader(),isLoading:r,filterParams:[{label:t("Name"),name:"name"}],value:e,onChange:this.onChange,disabledFunc:a};return g.default.createElement(b.default,n)}}a.FlavorSelectTable=C;var k=(0,v.inject)("rootStore")((0,v.observer)(C));a.default=k},1276:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.SettingStore=void 0;var i,l=n(a(32)),s=n(a(25)),o=n(a(51)),u=n(a(54)),d=a(34),c=n(a(48)),f=n(a(53)),p=(i=class extends f.default{get client(){return c.default.skyline.setting}listDidFetch(e){return(0,o.default)((function*(){return(0,l.default)(e).call(e,(e=>!e.hidden))}))()}update(e){return this.submitting(this.client.update(null,e))}},(0,u.default)(i.prototype,"update",[d.action],(0,s.default)(i.prototype,"update"),i.prototype),i);t.SettingStore=p;var h=new p;t.default=h},1300:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.default=void 0;var n={"anti-affinity":t("Anti-Affinity"),affinity:t("Affinity"),"soft-anti-affinity":t("Soft-Anti-Affinity"),"soft-affinity":t("Soft-Affinity")};a.default=n},1301:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.volumeTypeSelectProps=a.volumeTypeFilters=a.volumeTypeColumns=a.controls=a.creationMethod=a.consumerTypes=void 0;var n=r(557),i={"front-end":t("Frontend"),"back-end":t("Backend"),both:t("Both of Frontend and Backend")};a.consumerTypes=i;var l={manu:t("Manu"),auto:t("Auto")};a.creationMethod=l;var s={"front-end":t("Front End"),"back-end":t("Back End")};a.controls=s;var o=[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description",isHideable:!0,valueRender:"noValue"},{title:t("Public"),dataIndex:"is_public",valueRender:"yesNo"},{title:t("Shared"),dataIndex:"multiattach",valueRender:"yesNo",titleTip:n.multiTip,width:120}];a.volumeTypeColumns=o;var u=[{label:t("Name"),name:"name"}];a.volumeTypeFilters=u;var d={columns:o,filterParams:u};a.volumeTypeSelectProps=d},1302:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.fetchQuota=function(e){return C.apply(this,arguments)},a.checkQuotaDisable=a.getQuotaInfo=a.getAdd=a.getQuota=a.restoreTip=a.modeTip=a.backupModeList=a.createTip=a.backupStatus=void 0;var p=f(r(36)),h=f(r(51)),m=f(r(0)),g=f(r(407)),v=f(r(1242));function y(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function b(e){for(var t=1;t{var{backups:t={},backup_gigabytes:a={}}=e||{};return{backups:t,gigabytes:a}};a.getQuota=k;var D=e=>{var{backups:t,gigabytes:a}=k(e),{left:r=0}=t||{},{left:n=0,limit:i}=a||{},{currentVolumeSize:l=0}=v.default,s=0!==r&&(0!==n&&(-1===i||n>=l))?1:0;return{add:s,addSize:1===s?l:0}};a.getAdd=D;a.getQuotaInfo=e=>{var{quota:a={},quotaLoading:r}=e.state;if(r)return[];var{backups:n={},gigabytes:i={}}=k(a),{add:l,addSize:s}=D(a);return[b(b({},n),{},{add:l,name:"backup",title:t("Volume Backup")}),b(b({},i),{},{add:s,name:"gigabytes",title:t("Volume Backup Capacity (GiB)"),type:"line"})]};a.checkQuotaDisable=()=>{var{cinderQuota:e={}}=g.default,{add:t}=D(e);return 0===t}},1303:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.getQoSPolicyTabs=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=w({backendPageStore:this.qosPolicyStore},e),r=[{title:t("Current Project QoS Policies"),key:"project",props:(0,b.default)({},a,w(w({},P({self:this})),{},{extraParams:{project_id:this.currentProjectId}}))},{title:t("Shared QoS Policies"),key:"shared",props:(0,b.default)({},a,w(w({},P({shared:!0,self:this})),{},{extraParams:{shared:!0}}))}];this.hasAdminRole&&r.push({title:t("All QoS Policies"),key:"all",props:(0,b.default)({},a,w(w({},P({all:!0,self:this})),{},{extraParams:{all_projects:!0}}))});return r},a.getQosPolicySelectTableProps=a.qosPolicySortProps=a.getQosPolicyFilters=a.getQosPolicyColumns=void 0;var p=f(r(81)),h=f(r(57)),m=f(r(562)),g=f(r(36));r(1198);var v=f(r(1199));r(1196);var y=f(r(1197)),b=f(r(593)),_=f(r(0)),S=(r(173),r(334));function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var a,r,n,i,l,s,o,u,d;return"egress"===e.direction?(0,p.default)(s=(0,p.default)(o=(0,p.default)(u=(0,p.default)(d="".concat(t("Egress"),": ")).call(d,t("Max BandWidth"),": ")).call(u,e.max_kbps/1024," Mbps; ")).call(o,t("Max Burst"),": ")).call(s,e.max_burst_kbps/1024," Mbps"):"ingress"===e.direction?(0,p.default)(a=(0,p.default)(r=(0,p.default)(n=(0,p.default)(i="".concat(t("Ingress"),": ")).call(i,t("Max BandWidth"),": ")).call(n,e.max_kbps/1024," Mbps; ")).call(r,t("Max Burst"),": ")).call(a,e.max_burst_kbps/1024," Mbps"):(0,p.default)(l="".concat(t("DSCP Marking"),": ")).call(l,e.dscp_mark)},C=e=>{var{self:a,all:r=!1}=e,n=[{title:t("ID/Name"),dataIndex:"name",routeName:a.getRouteName("networkQosDetail")},{title:t("Description"),dataIndex:"description",sorter:!1},{title:t("Rules Number"),dataIndex:"rulesNumber",render:(e,t)=>t.rules.length,isHideable:!0,sorter:!1},{title:t("Rules"),dataIndex:"rules",render:e=>_.default.createElement(v.default,null,(0,h.default)(e).call(e,(e=>_.default.createElement(y.default,{span:24,key:e.direction},I(e))))),stringify:e=>(0,h.default)(e).call(e,(e=>I(e))).join("\n")},{title:t("Shared"),dataIndex:"shared",valueRender:"yesNo",width:80,sorter:!1},{title:t("Default Policy"),dataIndex:"is_default",valueRender:"yesNo",isHideable:!0,width:100,sorter:!1},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0,sorter:!1}];return r&&(0,m.default)(n).call(n,2,0,{title:t("Project ID/Name"),dataIndex:"project_name",sortKey:"project_id"}),n};a.getQosPolicyColumns=C;var k=e=>{var{self:a,shared:r=!1}=e,n=[{label:t("Name"),name:"name"},{label:t("Description"),name:"description"}];return r||n.push({label:t("Shared"),name:"shared",options:S.yesNoOptions}),a.hasAdminRole&&n.push({label:t("Project ID"),name:"tenant_id"}),n};a.getQosPolicyFilters=k;var D={isSortByBack:!0,defaultSortKey:"name",defaultSortOrder:"descend"};a.qosPolicySortProps=D;var P=e=>{var{self:t,all:a,shared:r}=e;return w(w({},D),{},{columns:C({self:t,all:a}),filterParams:k({self:t,shared:r})})};a.getQosPolicySelectTableProps=P},1316:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var s=l(a(198)),o=l(a(27)),u=l(a(33)),d=l(a(335)),c=l(a(409)),f=l(a(36)),p=l(a(131)),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=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),m=l(a(16)),g=l(a(4)),v=a(1679),y=l(a(1680)),b=l(a(1682));function _(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(_=function(e){return e?a:t})(e)}var S=e=>{if(!(0,p.default)(e))return e;if((0,s.default)(e).call(e,"")){var t=/<\/h1>[\r\n]([\s\S]*)<\/body>/.exec(e);if(t)return t[1].replace(/
/g,"")}try{return JSON.parse(e)}catch(t){return e}},x=(e,t)=>{var a;return(0,p.default)(e)?S(e):((0,o.default)(a=(0,u.default)(e)).call(a,(t=>{(0,p.default)(e[t])&&(e[t]=S(e[t]))})),"json"===t?(0,d.default)(e,null,2):"yaml"===t?(0,v.getValue)(e):e)};class w extends h.PureComponent{constructor(e){super(e),(0,f.default)(this,"handleChange",(e=>{var{onChange:t}=this.props;t(e)})),this.state={value:x(e.value,e.mode),originValue:e.value}}static getDerivedStateFromProps(e,t){var{value:a,mode:r}=e;return a!==t.originValue?{value:x(a,r),originValue:a}:null}render(){var{className:e,mode:t,options:a}=this.props;return h.default.createElement(b.default,(0,c.default)({},a,{className:(0,g.default)(y.default.editor,e),value:this.state.value,mode:t,onChange:this.handleChange}))}}(0,f.default)(w,"propTypes",{value:m.default.oneOfType([m.default.string,m.default.object,m.default.array]),mode:m.default.string,options:m.default.object,onChange:m.default.func}),(0,f.default)(w,"defaultProps",{value:{},mode:"yaml",options:{},onChange(){}});var I=w;t.default=I},1333:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var s=l(a(57)),o=l(a(409)),u=l(a(51)),d=l(a(36)),c=l(a(202)),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=v(t);if(a&&a.has(e))return a.get(e);var r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),p=l(a(16)),h=a(161),m=l(a(1375)),g=a(1374);function v(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(v=function(e){return e?a:t})(e)}class y extends f.Component{static propTypes(){return{visibleButtonNumber:p.default.number,primaryActions:p.default.array,onFinishAction:p.default.func,onCancelAction:p.default.func,routing:p.default.object.isRequired,containerProps:p.default.object,onClickAction:p.default.func,primaryActionsExtra:p.default.any}}constructor(e){super(e),(0,d.default)(this,"onClickAction",(()=>{var{onClickAction:e}=this.props;e&&e()})),this.state={primaryAllowedResults:[]},this.actionList=this.getActionList(e)}componentDidMount(){this.getActionsAllowed()}componentDidUpdate(e){(0,c.default)(e,this.props)||this.getActionsAllowed()}getActionsAllowed(){var e=this;return(0,u.default)((function*(){var{containerProps:t,primaryActionsExtra:a,isAdminPage:r}=e.props,{detail:n=null}=t,i=yield(0,g.getAllowedResults)({actions:e.actionList,data:n,containerProps:t,key:null,extra:a,isAdminPage:r});e.setState({primaryAllowedResults:i})}))()}getActionList(e){var{primaryActions:t,containerProps:a}=e;return(0,s.default)(t).call(t,(e=>(0,g.getAction)(e,null,a)))}render(){var e,{primaryAllowedResults:t}=this.state,{onFinishAction:a,routing:r,containerProps:n,onCancelAction:i,onClickAction:l}=this.props,u=(0,s.default)(e=this.actionList).call(e,((e,s)=>{var u="primary-".concat((0,h.generateId)()),{id:d,title:c,buttonType:p,actionType:g,buttonText:v,isDanger:y}=e,b={id:d,title:c,name:v||c,buttonType:p,isDanger:y,actionType:g,action:e};return f.default.createElement(m.default,(0,o.default)({},b,{key:u,isAllowed:t[s],onFinishAction:a,routing:r,containerProps:n,onClickAction:l,onCancelAction:i}))}));return f.default.createElement(f.default.Fragment,null,u)}}t.default=y,(0,d.default)(y,"defaultProps",{visibleButtonNumber:3,primaryActions:[],onFinishAction:null,onCancelAction:null,containerProps:{},primaryActionsExtra:null})},1334:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.InstanceVolumeStore=void 0;var f=c(a(57)),p=c(a(65)),h=c(a(27)),m=c(a(51)),g=c(a(62)),v=c(a(36)),y=c(a(48)),b=c(a(53)),_=a(161),S=a(557);function x(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function w(e){for(var t=1;te.serverId))}get client(){return y.default.nova.servers.volumeAttachments}get isSubResource(){return!0}get paramsFunc(){return e=>{var{id:t,serverId:a,all_projects:r,projectId:n,serverName:i}=e;return(0,g.default)(e,["id","serverId","all_projects","projectId","serverName"])}}get mapperBeforeFetchProject(){return(e,t)=>{var{projectId:a}=t;return w(w({},e),{},{project_id:a})}}get mapper(){return e=>(0,S.updateVolume)(e)}get groupArraySize(){return 10}listDidFetch(e,t){var a=this;return(0,m.default)((function*(){if(0===e.length)return e;var r=(0,f.default)(e).call(e,(e=>e.volumeId)),n=(0,_.groupArray)(r,a.groupArraySize),i=yield p.default.all((0,f.default)(n).call(n,(e=>{var r={uuid:e,all_projects:t};return a.skylineClient.extension.volumes(r)}))),l=[];return(0,h.default)(i).call(i,(e=>{l.push(...e.volumes)})),l}))()}}t.InstanceVolumeStore=I;var C=new I;t.default=C},1337:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.hypervisorFilters=a.hypervisorColumns=void 0;var l=i(r(81));r(411);var s=i(r(227)),o=i(r(0)),u=i(r(1398)),d=(r(173),[{title:t("Hostname"),dataIndex:"service_host"},{title:t("Type"),dataIndex:"hypervisor_type"},{title:t("VCPU (Core)"),dataIndex:"vcpus_used_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?o.default.createElement(s.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},o.default.createElement("span",null,"-")):o.default.createElement(u.default,{value:e,label:(0,l.default)(r="".concat(a.vcpus_used," / ")).call(r,a.vcpus)})},width:180,stringify:(e,a)=>{var r,n,i,s;return(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.vcpus_used," / ")).call(n,t("Total"),": ")).call(r,a.vcpus,")")}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_mb_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?o.default.createElement(s.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},o.default.createElement("span",null,"-")):o.default.createElement(u.default,{value:e,label:(0,l.default)(r="".concat(a.memory_mb_used_gb," / ")).call(r,a.memory_mb_gb)})},width:180,stringify:(e,a)=>{var r,n,i,s;return(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.memory_mb_used_gb," / ")).call(n,t("Total"),": ")).call(r,a.memory_mb_gb,")")}},{title:t("Instances"),dataIndex:"running_vms"}]);a.hypervisorColumns=d;var c=[{label:t("Hostname"),name:"service_host"},{label:t("Type"),name:"hypervisor_type"}];a.hypervisorFilters=c},1339:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.InstanceSnapshotStore=void 0;var f=c(a(32)),p=c(a(65)),h=c(a(27)),m=c(a(102)),g=c(a(51)),v=c(a(62)),y=c(a(36)),b=c(a(48)),_=a(563),S=c(a(53));function x(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function w(e){for(var t=1;t{t&&a&&(e.sort_key=t,e.sort_dir="descend"===a?"desc":"asc")})),(0,y.default)(this,"updateParamsSort",this.updateParamsSortPage)}get client(){return b.default.glance.images}get listFilterByProject(){return!0}get fetchListByLimit(){return!0}get paramsFunc(){return this.paramsFuncPage}get paramsFuncPage(){return(e,t)=>{var{id:a,current:r,owner:n}=e,i=w({},(0,v.default)(e,["id","current","owner"]));return n?i.owner=n:t||(i.owner=this.currentProjectId),i}}get mapperBeforeFetchProject(){return e=>w(w({},e),{},{project_name:e.owner_project_name||e.project_name,project_id:e.owner||e.project_id})}listDidFetch(e,t,a){return(0,g.default)((function*(){if(0===e.length)return e;var r=(0,f.default)(e).call(e,_.isSnapshot),{id:n}=a;if(!n)return r;var i={all_tenants:t},l=yield p.default.all([b.default.cinder.snapshots.list(i),b.default.nova.servers.volumeAttachments.list(n,{})]),s=l[0].snapshots,o=l[1].volumeAttachments,u=[];return(0,h.default)(r).call(r,(e=>{var{block_device_mapping:t="[]",instance_id:a}=e;if(a===n)u.push(e);else{var r,i=(0,m.default)(r=JSON.parse(t)).call(r,(e=>0===e.boot_index));if(i){e.snapshotId=i.snapshot_id;var l=(0,m.default)(s).call(s,(e=>e.id===i.snapshot_id));if(l){var d=l.volume_id;(0,m.default)(o).call(o,(e=>e.volumeId===d))&&u.push(e)}}else{var{instance_uuid:c}=e;n===c&&u.push(e)}}})),u}))()}detailDidFetch(e){return(0,g.default)((function*(){var t;e.originData=w({},e);var{block_device_mapping:a="[]"}=e,r=(0,m.default)(t=JSON.parse(a)).call(t,(e=>0===e.boot_index)),n=null,i="";if(r){var{snapshot_id:l}=r;e.snapshotId=l;var s=(yield b.default.cinder.snapshots.show(l)).snapshot;e.snapshotDetail=s;var{volume_id:o}=s,u=(yield b.default.cinder.volumes.show(o)).volume;e.volumeDetail=u,n=u.attachments.length>0?u.attachments[0].server_id:""}else{var{instance_uuid:d}=e;n=d}var c={};try{if(n){c=yield b.default.nova.servers.show(n);var{server:{name:f}={}}=c;i=f}}catch(e){}return e.instance={server_id:n,server_name:i},e.instanceDetail=c.server||{},e}))()}}t.InstanceSnapshotStore=I;var C=new I;t.default=C},1340:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.enablePFW=function(){var{neutronExtensions:e}=s.default,t=!1,a=!1;return(0,l.default)(e).call(e,(e=>{"floating-ip-port-forwarding"===e.alias?t=!0:"expose-port-forwarding-in-fip"===e.alias&&(a=!0)})),t&&a},a.availabilityZoneResource=a.availabilityZoneState=void 0;var l=i(r(27)),s=i(r(140)),o={available:t("Available"),unavailable:t("Unavailable")};a.availabilityZoneState=o;var u={router:t("Router"),network:t("Network")};a.availabilityZoneResource=u},1341:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Port=void 0;var p=f(r(81)),h=f(r(198)),m=f(r(57)),g=f(r(32)),v=f(r(562)),y=f(r(62)),b=f(r(36)),_=f(r(0)),S=r(406),x=f(r(1194)),w=r(561),I=r(1210),C=r(334),k=f(r(1549));function D(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function P(e){for(var t=1;t{var{id:t}=e,a=P({},(0,y.default)(e,["id"]));return this.isInstanceDetail?a.device_id=t:this.isNetworkDetail&&(a.network_id=t),a})),(0,b.default)(this,"updateFetchParams",(e=>{var{id:t,networkId:a}=e;return P({network_id:a,subnetId:t},(0,y.default)(e,["id","networkId"]))})),(0,b.default)(this,"renderResource",((e,t)=>{var a,{device_id:r,device_owner:n}=t;if(!n)return r||"-";var i,l=r,s=null;"compute:nova"===n?(l=e?(0,p.default)(i="".concat(r," (")).call(i,e,")"):r,s=this.getLinkRender("instanceDetail",l,{id:r},{tab:"interface"})):(0,h.default)(a=["network:router_interface","network:ha_router_replicated_interface","network:router_ha_interface"]).call(a,n)?s=this.getLinkRender("routerDetail",l,{id:r}):"network:floatingip"===n&&(s=this.getLinkRender("fipDetail",l,{id:r}));return s?_.default.createElement(_.default.Fragment,null,n,_.default.createElement("br",null),s):_.default.createElement(_.default.Fragment,null,n,_.default.createElement("br",null),r||"-")})),(0,b.default)(this,"getPortDetailRoute",(()=>this.isSubnetDetail?{routeName:this.getRouteName("subnetPortDetail"),routeParamsFunc:e=>({networkId:e.network_id,subnetId:e.subnet_id,id:e.id})}:this.isNetworkDetail?{routeName:this.getRouteName("networkPortDetail"),routeParamsFunc:e=>({networkId:e.network_id,id:e.id})}:this.isInstanceDetail?{routeName:this.getRouteName("instancePortDetail"),routeParamsFunc:e=>({instanceId:e.device_id,id:e.id})}:{routeName:this.getRouteName("portDetail")})),(0,b.default)(this,"getColumns",(()=>{var e=[P({title:t("ID/Name"),dataIndex:"name"},this.getPortDetailRoute()),{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,isHideable:!0,sortKey:"project_id"},{title:t("Bind Resource"),dataIndex:"server_name",stringify:(e,t)=>{var a,r,n,i,{device_id:l,device_owner:s}=t;return l&&"compute:nova"===s&&e?(0,p.default)(n=(0,p.default)(i="".concat(s," \n ")).call(i,l," (")).call(n,e,")"):(0,p.default)(a=(0,p.default)(r="\n ".concat(s," ")).call(r,s&&"\n","\n ")).call(a,l||"-","\n ")},render:this.renderResource,isHideable:!0,sorter:!1},{title:t("Owned Network"),dataIndex:"network_name",isLink:!0,routeName:this.getRouteName("networkDetail"),idKey:"network_id",sorter:!1},{title:t("IPv4 Address"),dataIndex:"ipv4",render:e=>(0,m.default)(e).call(e,(e=>_.default.createElement("div",{key:e},e))),isHideable:!0,stringify:e=>e.join(","),sorter:!1},{title:t("IPv6 Address"),dataIndex:"ipv6",render:e=>(0,m.default)(e).call(e,(e=>_.default.createElement("div",{key:e},e))),isHideable:!0,stringify:e=>e.join(","),sorter:!1},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:I.portStatus}];return this.isInstanceDetail?(0,g.default)(e).call(e,(e=>"server_name"!==e.dataIndex)):this.isNetworkDetail?(0,g.default)(e).call(e,(e=>"network_name"!==e.dataIndex)):e}))}init(){this.store=new w.PortStore,this.downloadStore=new w.PortStore}get isInstanceDetail(){var e,t;return this.inDetailPage&&((0,h.default)(e=this.path).call(e,"compute/instance")||(0,h.default)(t=this.path).call(t,"management/recycle-bin"))}get isNetworkDetail(){var e,t;return this.inDetailPage&&((0,h.default)(e=this.path).call(e,"networks/detail")||(0,h.default)(t=this.path).call(t,"networks-admin/detail"))&&!this.isSubnetDetail}get isSubnetDetail(){var e;return this.inDetailPage&&(0,h.default)(e=this.path).call(e,"subnet")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,h.default)(e=this.path).call(e,"recycle-bin")}get isFilterByBackend(){return!this.isSubnetDetail}get isSortByBackend(){return this.isFilterByBackend}get defaultSortKey(){return this.isFilterByBackend?"status":""}get policy(){return"get_port"}get name(){return t("ports")}get adminPageHasProjectFilter(){return!0}get actionConfigs(){return this.isRecycleBinDetail?C.emptyActionConfig:this.isAdminPage?k.default.adminActions:this.inDetailPage?this.isInstanceDetail?k.default.actionConfigsInDetail:k.default.noActions:k.default.actionConfigs}get searchFilters(){var e=[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:[{label:t("Active"),key:"ACTIVE"},{label:t("Down"),key:"DOWN"},{label:t("Error"),key:"ERROR"},{label:t("Build"),key:"BUILD"},{label:t("N/A"),key:"N/A"}]}];this.isNetworkDetail||(0,v.default)(e).call(e,1,0,{label:t("Owned Network"),name:"network_name"});var a={label:t("Device Owner"),name:"device_owner",options:[{label:t("Instance"),key:"compute:nova",checkLabel:t("View virtual adapters"),isQuick:!0},{label:t("Router"),key:"network:router_ha_interface,network:ha_router_replicated_interface,network:router_interface,network:router_gateway,network:router_interface_distributed,network:router_centralized_snat"},{label:t("Floating IP"),key:"network:floatingip,network:floatingip_agent_gateway"},{label:t("DHCP Agent"),key:"network:dhcp"},{label:t("Others"),key:"network:local_ip,network:routed,network:distributed,compute:kuryr,Octavia"},{label:t("Unbounded"),key:"none"}]};return this.isSubnetDetail&&(a.filterFunc=(e,t)=>"none"===t?!e:e&&(0,h.default)(t).call(t,e)),this.isInstanceDetail||e.push(a),e}}a.Port=T;var A=(0,S.inject)("rootStore")((0,S.observer)(T));a.default=A},1392:function(e,t,a){var r=a(2010);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},1393:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.QuotaOverview=a.getVolumeTypeCards=a.troveQuotaCard=a.zunQuotaCard=a.shareQuotaCard=a.quotaCardList=void 0;var o=s(r(57)),u=s(r(32)),d=s(r(81)),c=s(r(65)),f=s(r(33));r(589);var p=s(r(590)),h=s(r(51));r(1394);var m=s(r(1329));r(337);var g=s(r(338));r(1196);var v=s(r(1197));r(1229);var y=s(r(1230));r(1198);var b=s(r(1199));r(1222);var _=s(r(1223)),S=s(r(36));r(411);var x=s(r(227)),w=s(r(1248)),I=s(r(343)),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),k=(r(173),r(555),r(406)),D=s(r(566)),P=s(r(407)),T=s(r(140)),A=s(r(1392));function M(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(M=function(e){return e?a:t})(e)}var R={normal:{color:"#4CC9F0",text:t("Normal")},danger:{color:"#4361EE",text:t("Danger")},full:{color:"#E8684A",text:t("Full")}},N=C.default.createElement("span",null,t("Key Pairs"),C.default.createElement(x.default,{title:t("The number of allowed key pairs for each user.")},C.default.createElement(w.default,{style:{marginLeft:4}}))),E=[{text:t("Compute"),type:"compute",value:[{text:t("Instances"),key:"instances"},{text:t("vCPUs"),key:"cores"},{text:t("Memory (GiB)"),key:"ram"},{text:N,key:"key_pairs"},{text:t("Server Groups"),key:"server_groups"}]},{text:t("Storage"),type:"storage",value:[{text:t("Volumes"),key:"volumes"},{text:t("Volume Capacity (GiB)"),key:"gigabytes"},{text:t("Volume Snapshots"),key:"snapshots"},{text:t("Volume Backups"),key:"backups"},{text:t("Volume Backup Capacity (GiB)"),key:"backup_gigabytes"}]},{text:t("Network"),type:"networks",value:[{text:t("Routers"),key:"router"},{text:t("Networks"),key:"network"},{text:t("Subnets"),key:"subnet"},{text:t("Floating IPs"),key:"floatingip"},{text:t("Ports"),key:"port"},{text:t("Security Groups"),key:"security_group"},{text:t("Security Group Rules"),key:"security_group_rule"}]}];a.quotaCardList=E;var j={text:t("Share"),type:"share",value:[{text:t("Shares"),key:"shares"},{text:t("Share Capacity (GiB)"),key:"share_gigabytes"},{text:t("Share Networks"),key:"share_networks"},{text:t("Share Groups"),key:"share_groups"}]};a.shareQuotaCard=j;var F={text:t("Containers Management"),type:"zun",value:[{text:t("Containers"),key:"zun_containers"},{text:t("CPUs"),key:"zun_cpu"},{text:t("Memory (MiB)"),key:"zun_memory"},{text:t("Containers Disk (GiB)"),key:"zun_disk"}]};a.zunQuotaCard=F;var L={text:t("Database"),type:"trove",value:[{text:t("Database Instance"),key:"trove_instances"},{text:t("Database Disk (GiB)"),key:"trove_volumes"}]};a.troveQuotaCard=L;var z=e=>{var a=(0,o.default)(e).call(e,((e,a)=>({index:a,value:[{text:t("{name} type",{name:e.name}),key:"volumes_".concat(e.name)},{text:t("{name} type capacity (GiB)",{name:e.name}),key:"gigabytes_".concat(e.name)},{text:t("{name} type snapshots",{name:e.name}),key:"snapshots_".concat(e.name)}]})));return{text:t("Storage Types"),type:"volumeTypes",value:a}};a.getVolumeTypeCards=z;class O extends C.Component{constructor(e){var a;super(e),a=this,(0,S.default)(this,"getFilteredValue",(e=>(0,u.default)(e).call(e,(e=>!e.hidden)))),(0,S.default)(this,"getItemInfo",((e,a)=>{var r=0;e[a.key]&&(0,I.default)(e[a.key].used)&&-1!==e[a.key].limit&&(r=e[a.key].used/e[a.key].limit*100);var n,i="-";e[a.key]&&(0,I.default)(e[a.key].used)&&(i=(0,d.default)(n="".concat(e[a.key].used," / ")).call(n,-1===e[a.key].limit?t("Unlimit"):e[a.key].limit));var l=r>=90&&R.full.color||r>=80&&R.danger.color||R.normal.color,s=C.default.createElement("span",null,a.text," : ",i),{server_group_members:o}=e;return"server_groups"===a.key&&o&&(s=C.default.createElement("span",null,s," (",t("Members of Each Group")," :",-1===o.limit?t("Unlimit"):o.limit,")")),C.default.createElement(C.default.Fragment,null,C.default.createElement("div",{className:A.default["progress-title"]},s),C.default.createElement(x.default,{title:s,placement:"top",getPopupContainer:e=>e.parentNode},C.default.createElement(_.default,{style:{marginTop:13,marginBottom:13},percent:r,showInfo:!1,strokeColor:l})))})),(0,S.default)(this,"renderQuotaCardList",(()=>{var e,{isLoading:t}=this.state;return C.default.createElement(b.default,{className:A.default.content},(0,o.default)(e=this.quotaCardList).call(e,(e=>C.default.createElement(v.default,{className:A.default.card,span:24,key:e.type},C.default.createElement(y.default,{title:e.text,bordered:!1,loading:t,size:"small"},C.default.createElement(b.default,{gutter:24},this.renderQuotaCardContent(e)))))),this.enableCinder?C.default.createElement(v.default,{className:A.default.card,span:24,key:this.volumeTypesQuota.type},C.default.createElement(y.default,{title:this.volumeTypesQuota.text,bordered:!1,loading:t,size:"small"},this.renderVolumeTypes())):null)})),(0,S.default)(this,"renderQuotaCard",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return(0,o.default)(t).call(t,(t=>C.default.createElement(v.default,{key:t.text,span:12},a.getItemInfo(e,t))))})),(0,S.default)(this,"renderVolumeTypes",(()=>{var{isLoading:e}=this.state;return e?C.default.createElement(g.default,null):C.default.createElement(m.default,{itemLayout:"vertical",size:"large",pagination:{hideOnSinglePage:!0,pageSize:5,size:"small"},dataSource:this.volumeTypesQuota.value,renderItem:e=>{var t;return C.default.createElement(b.default,{key:e.index,gutter:[16]},(0,o.default)(t=e.value).call(t,(e=>C.default.createElement(v.default,{span:8,key:e.text},this.getItemInfo(this.projectStore.quota,e)))))}})})),this.state={isLoading:!0};var{projectStore:r,volumeTypeStore:n}=e;this.projectStore=r||P.default,this.volumeTypeStore=n||D.default}componentDidMount(){this.getData()}getData(){var e=this;return(0,h.default)((function*(){var{getData:t}=e.props;if(t)yield t();else{var{user:a}=e.props.rootStore,{project:{id:r=""}={}}=a,n=[e.projectStore.fetchProjectQuota({project_id:r,withKeyPair:!0})];e.enableCinder&&n.push(e.volumeTypeStore.fetchList()),yield c.default.all(n)}e.setState({isLoading:!1})}))()}get enableCinder(){return T.default.checkEndpoint("cinder")}get enableShare(){return T.default.checkEndpoint("manilav2")}get enableZun(){return T.default.checkEndpoint("zun")}get enableTrove(){return T.default.checkEndpoint("trove")&&T.default.hasAdminOnlyRole}get volumeTypeData(){var{volumeTypeData:e}=this.props;return e||this.volumeTypeStore.list.data}get volumeTypesQuota(){return z(this.volumeTypeData)}get quotaCardList(){var e=[...this.props.quotaCardList||E];return this.enableCinder||(e=(0,u.default)(e).call(e,(e=>"storage"!==e.type))),this.enableShare&&e.push(j),this.enableZun&&e.push(F),this.enableTrove&&e.push(L),e}get quotaAction(){return this.props.quotaAction}renderQuotaCardContent(e){var{isLoading:t}=this.state;return t?C.default.createElement(g.default,null):this.renderQuotaCard(this.projectStore.quota,this.getFilteredValue(e.value))}render(){var e,{isLoading:a}=this.state;return C.default.createElement(y.default,{className:A.default.bottom,bodyStyle:{padding:0},loading:a,headStyle:{paddingLeft:"20px"},title:C.default.createElement("div",{className:A.default.title},C.default.createElement("span",{className:A.default.text},t("Quota Overview")),(0,o.default)(e=(0,f.default)(R)).call(e,(e=>C.default.createElement("span",{key:e,className:A.default.badge},C.default.createElement(p.default,{color:R[e].color,text:R[e].text}))))),extra:this.quotaAction},this.renderQuotaCardList())}}a.QuotaOverview=O;var B=(0,k.inject)("rootStore")((0,k.observer)(O));a.default=B},1397:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ServerGroupInstanceStore=void 0;var f=c(a(65)),p=c(a(57)),h=c(a(27)),m=c(a(36)),g=c(a(51)),v=c(a(62)),y=a(161),b=c(a(53));function _(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function S(e){for(var t=1;t{var{all_projects:t,members:a,isServerGroup:r}=e;return(0,v.default)(e,["all_projects","members","isServerGroup"])}}get groupArraySize(){return 1}requestList(e,t){var a=this;return(0,g.default)((function*(){var{members:r,isServerGroup:n,all_projects:i}=t;if(r&&n&&0===r.length)return[];var l=(0,y.groupArray)(r,a.groupArraySize),s=yield f.default.all((0,p.default)(l).call(l,(t=>{var r=S(S({},e),{},{uuid:t,all_projects:i});return a.skylineClient.extension.servers(r)}))),o=[];return(0,h.default)(s).call(s,(e=>{o.push(...e[a.listResponseKey])})),o}))()}listDidFetch(e){return(0,g.default)((function*(){return 0===e.length?e:(0,p.default)(e).call(e,(e=>S(S({},e),{},{tags:(e.origin_data||{}).tags||[]})))}))()}}t.ServerGroupInstanceStore=x;var w=new x;t.default=w},1398:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0,a(411);var s=l(a(227));a(1222);var o=l(a(1223)),u=l(a(36)),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 r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),c=(a(173),l(a(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,"getColor",(()=>{var{value:e,wanValue:t,dangerValue:a,infoColor:r,warnColor:n,dangerColor:i}=this.props;return e(0,_.getVolumeColumnsList)(this))),(0,v.default)(this,"updateFetchParams",(e=>{if(this.isVolumeSnapshotDetail){var{child_volumes:t=[]}=this.props.detail||{},a=(0,h.default)(t).call(t,(e=>e.volume_id)),{id:r}=e;return P(P({},(0,g.default)(e,["id"])),{},{volumeIds:a})}if(this.inDetailPage){var{id:n}=e;return P(P({},(0,g.default)(e,["id"])),{},{serverId:n})}return e}))}init(){this.isVolumeSnapshotDetail?this.store=new x.SnapshotVolumeStore:this.inDetailPage?(this.store=new w.InstanceVolumeStore,this.downloadStore=this.store):(this.store=S.default,this.downloadStore=new S.VolumeStore)}get policy(){return"volume:get_all"}get name(){return t("volumes")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,m.default)(e=this.path).call(e,"recycle-bin")}get isVolumeSnapshotDetail(){var e;return this.inDetailPage&&(0,m.default)(e=this.path).call(e,"storage/snapshot")}get isInstanceDetail(){var e;return this.inDetailPage&&(0,m.default)(e=this.path).call(e,"compute/instance")}get actionConfigs(){return this.isRecycleBinDetail?I.emptyActionConfig:this.isAdminPage?this.inDetailPage&&!this.isVolumeSnapshotDetail?C.default.instanceDetailAdminConfig:C.default.adminConfig:this.inDetailPage?C.default.instanceDetailConfig:C.default.actionConfigs}get transitionStatusList(){return _.volumeTransitionStatuses}get isFilterByBackend(){return!this.inDetailPage}get isSortByBackend(){return this.isFilterByBackend}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"created_at"}get searchFilters(){return _.volumeFilters}}a.Volume=T;var A=(0,y.inject)("rootStore")((0,y.observer)(T));a.default=A},1401:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.poolColumns=void 0;var l=i(r(81)),s=i(r(0)),o=i(r(1398)),u=[{title:t("Name"),dataIndex:"name"},{title:t("Protocol"),dataIndex:"storage_protocol"},{title:t("Backend Name"),dataIndex:"volume_backend_name",isHideable:!0},{title:t("Storage Capacity(GiB)"),dataIndex:"usedGBPercent",isHideable:!0,render:(e,t)=>{var a;return e?s.default.createElement(o.default,{value:e,label:(0,l.default)(a="".concat(t.usedGB," / ")).call(a,t.total_capacity_gb)}):"-"},stringify:(e,a)=>{var r,n,i,s;return e?(0,l.default)(r=(0,l.default)(n=(0,l.default)(i=(0,l.default)(s="".concat(e,"% (")).call(s,t("Used"),": ")).call(i,a.usedGB," / ")).call(n,t("Total"),": ")).call(r,a.total_capacity_gb,")"):"-"}}];a.poolColumns=u;var d=u;a.default=d},1402:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.FloatingIps=void 0;var p=f(r(198)),h=f(r(27)),m=f(r(33)),g=f(r(57)),v=f(r(32)),y=f(r(588)),b=f(r(339));r(576);var _=f(r(577)),S=f(r(595));r(1394);var x=f(r(1329)),w=f(r(51)),I=f(r(62)),C=f(r(36)),k=f(r(199)),D=f(r(0)),P=r(406),T=f(r(1194)),A=r(1224),M=r(336),R=r(334),N=(r(173),r(555),r(76)),E=r(161),j=f(r(1548));function F(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function L(e){for(var t=1;t{if(this.inQosDetail){var{id:t}=e;return L({qos_policy_id:t},(0,I.default)(e,["id"]))}return e})),(0,C.default)(this,"fetchDataByPage",function(){var t=(0,w.default)((function*(t){yield e.store.fetchListWithResourceName(t),e.list.silent=!1}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new M.FloatingIpStore,this.downloadStore=new M.FloatingIpStore}get qosEndpoint(){return(0,N.qosEndpoint)()}get isFilterByBackend(){return!this.inQosDetail}get isSortByBackend(){return!this.inQosDetail}get defaultSortKey(){return"status"}get inQosDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"qos")}get isRecycleBinDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"recycle-bin")}get inInstanceDetail(){var e;return this.inDetailPage&&(0,p.default)(e=this.path).call(e,"instance")}getData(){var e=arguments,t=()=>super.getData,a=this;return(0,w.default)((function*(){var r=e.length>0&&void 0!==e[0]?e[0]:{},{silent:n}=r,i=(0,I.default)(r,["silent"]);if(a.inDetailPage&&!a.inQosDetail){var l;n&&(a.list.silent=!0);var{detail:{addresses:s=[]}={}}=a.props,o=[];(0,h.default)(l=(0,m.default)(s)).call(l,(e=>{var t,a;o.push(...(0,g.default)(t=(0,v.default)(a=s[e]).call(a,(e=>"fixed"===e["OS-EXT-IPS:type"]))).call(t,(e=>e.addr)))})),i.fixed_ip_address=o,i.all_projects=a.isAdminPage,o.length>0?yield a.store.fetchListWithResourceName(i):a.list.isLoading=!1}else t().call(a,L({silent:n},i))}))()}get fetchDataByCurrentProject(){return!0}get policy(){return"get_floatingip"}get name(){return t("floating ips")}get actionConfigs(){return this.isRecycleBinDetail?R.emptyActionConfig:this.inInstanceDetail?this.isAdminPage?j.default.instanceDetailAdminConfigs:j.default.instanceDetailConfigs:this.inQosDetail?this.isAdminPage?j.default.qosDetailAdminConfigs:j.default.qosDetailConfigs:this.isAdminPage?j.default.adminConfigs:j.default.actionConfigs}get transitionStatusList(){return A.transitionStatuses}get adminPageHasProjectFilter(){return!0}getRecordPortForwarding(e){var t;return(0,y.default)(t=e.port_forwardings||[]).call(t,((e,t)=>e.external_port-t.external_port))}getPortForwardingDetail(e,t){var{key:a}=t,r=(0,I.default)(t,["key"]);if((0,k.default)(r))return"";var{floating_ip_address:n}=e;return(0,A.getPortForwardingName)(r,n)}get portForwardingResourcesName(){return t("Port Forwardings")}getPortForwardingRender(e){var a=this.getRecordPortForwarding(e),{length:r}=a;if(!r)return null;var n=0;r>10&&r%10&&(n=10-r%10);var i=(0,b.default)({length:n},(e=>({key:"zero-".concat(e)}))),l=[...(0,g.default)(a).call(a,(e=>L(L({},e),{},{key:e.external_port||e.external_port_range}))),...i],s=D.default.createElement(x.default,{itemLayout:"vertical",size:"small",pagination:{hideOnSinglePage:!0,pageSize:10,size:"small",showSizeChanger:!1},dataSource:l,renderItem:t=>D.default.createElement("div",{style:{height:"30px",lineHeight:"30px"}},this.getPortForwardingDetail(e,t))});return D.default.createElement(_.default,{content:s,title:this.portForwardingResourcesName,destroyTooltipOnHide:!0,placement:"right"},t("{number} {resource}",{number:a.length,resource:this.portForwardingResourcesName})," ",D.default.createElement(S.default,null))}getPortForwardingStringify(e){var a=this.getRecordPortForwarding(e);if(!a.length)return"";var r=(0,g.default)(a).call(a,(t=>this.getPortForwardingDetail(e,t)));return[t("{number} {resource}",{number:a.length,resource:this.portForwardingResourcesName}),...r].join("\n")}getResourceRender(e,t){return e&&"-"!==e?e:this.getPortForwardingRender(t)||"-"}geResourceStringify(e,t){return e&&"-"!==e?e:this.getPortForwardingStringify(t)||"-"}getColumns(){return[{title:t("ID/Floating IP"),dataIndex:"floating_ip_address",isLink:!0,routeName:this.getRouteName("fipDetail")},{title:t("QoS Policy"),dataIndex:"qos_policy_name",isLink:!0,routeName:this.getRouteName("networkQosDetail"),idKey:"qos_policy_id",hidden:!this.qosEndpoint||this.inQosDetail,sorter:!1},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Description"),dataIndex:"description",render:e=>e||"-",isHideable:!0,sorter:!1},{title:t("Associated Resource"),dataIndex:"resource_name",render:(e,t)=>this.getResourceRender(e,t),stringify:(e,t)=>this.geResourceStringify(e,t),isHideable:!0,sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:A.floatingIpStatus},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime",isHideable:!0,sorter:!1}]}get searchFilters(){return[{label:t("Floating IP"),name:"floating_ip_address"},{label:t("Status"),name:"status",options:(0,E.getOptions)(A.floatingIpStatus)}]}}a.FloatingIps=z;var O=(0,P.inject)("rootStore")((0,P.observer)(z));a.default=O},1403:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreatePortForwarding=void 0;var p=f(r(57)),h=f(r(65)),m=f(r(229)),g=f(r(102)),v=f(r(81)),y=f(r(339)),b=f(r(32)),_=f(r(198)),S=f(r(1204)),x=f(r(562)),w=f(r(51)),I=f(r(62)),C=f(r(36)),k=f(r(99)),D=f(r(1259)),P=f(r(0)),T=r(406),A=r(1193),M=r(1219),R=r(561),N=r(1210),E=r(1224),j=f(r(598)),F=r(1340),L=r(556),z=r(161);function O(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function B(e){for(var t=1;t0===e.fixed_ips.length)),(0,C.default)(this,"onSubmit",(e=>{var{external_port_range:t,internal_port_range:a}=e,r=(0,I.default)(e,["external_port_range","internal_port_range"]);if(!t||this.supportRange)return j.default.create({id:this.item.id,data:e});var n=this.getPortsByInput(t),i=this.getPortsByInput(a),l=(0,p.default)(n).call(n,((e,t)=>j.default.create({id:this.item.id,data:B(B({},r),{},{external_port:e,internal_port:i[t]})})));return h.default.all(l)})),(0,C.default)(this,"handlePortSelect",function(){var t=(0,w.default)((function*(t){e.setState({fixedIpLoading:!0});var{canReachSubnetIdsWithRouterId:a}=e.state,r=yield(0,E.getInterfaceWithReason)(t.selectedRows),n=(0,N.getPortsAndReasons)(r,a,!0);e.setState({portFixedIPs:n,fixed_ip_address:void 0,fixedIpLoading:!1}),e.formRef.current&&e.formRef.current.resetFields(["fixed_ip_address","internal_port"])}));return function(e){return t.apply(this,arguments)}}()),(0,C.default)(this,"checkPortUsedBase",((e,t,a,r)=>{var{external_port:n,internal_port:i,external_port_range:l,internal_port_range:s}=e,o="external"===t?l:s;if(o){var[u,d]=this.getRangeFromString(o);return a>=u&&a<=d&&e.protocol===r}return a===("external"===t?n:i)&&e.protocol===r})),(0,C.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,n=a.virtual_adapter.selectedRows[0].id;return t.internal_port_id===n&&t.internal_ip_address===r})),(0,C.default)(this,"checkPortUsed",((e,t)=>{var{alreadyUsedPorts:a,protocol:r}=this.state,n=(0,m.default)(e,10);return(0,g.default)(a).call(a,(e=>{var a=this.checkPortUsedBase(e,t,n,r);return"external"===t?a:this.checkPortUsedInternal(a,e)}))})),(0,C.default)(this,"checkExtPortUsed",(e=>this.checkPortUsed(e,"external"))),(0,C.default)(this,"getRangeFromString",(e=>{var t=(e||"").split(":");return!t.length||t.length>2?[]:[(0,m.default)(t[0],10),(0,m.default)(t[1],10)]})),(0,C.default)(this,"getPortForwardingContent",(e=>{var t,a,{external_port:r,external_port_range:n,internal_ip_address:i,internal_port:l,internal_port_range:s}=e;return(0,v.default)(t=(0,v.default)(a="".concat(r||n," => ")).call(a,i,":")).call(t,l||s)})),(0,C.default)(this,"getUsedError",((e,a)=>1===e.length&&(0,k.default)(e[0])?t("The {name} has already been used by other {resource}({content}), please change.",{name:a,resource:this.resource,content:this.getPortForwardingContent(e[0])}):t("The {name} {ports} have already been used, please change.",{name:a,ports:e.join(",")}))),(0,C.default)(this,"checkRangeInput",(e=>{var[a,r]=this.getRangeFromString(e),n=r-a+1;return n<=1?{error:t("The value of the upper limit of the range must be greater than the value of the lower limit of the range.")}:n>this.maxRangeSize?{error:this.maxRangeSizeTip}:{length:n,start:a,end:r}})),(0,C.default)(this,"getPortsByRange",((e,t)=>(0,y.default)({length:t},((t,a)=>e+a)))),(0,C.default)(this,"getPortsByInput",(e=>{var{length:t,start:a}=this.checkRangeInput(e);return this.getPortsByRange(a,t)})),(0,C.default)(this,"checkPortRangeUsed",((e,a,r)=>{var n=this.getPortsByRange(e,a),i=(0,b.default)(n).call(n,(e=>"external"===r?this.checkExtPortUsed(e):this.checkInternalPortUsed(e)));if(i.length){var l="external"===r?t("external ports"):t("internal ports");return{error:this.getUsedError(i,l)}}return{ports:n,length:a}})),(0,C.default)(this,"checkTwoRangeLength",((e,a)=>e!==a?t("The size of the external port range is required to be the same as the size of the internal port range"):"")),(0,C.default)(this,"checkExternalPortInput",((e,a)=>{var r=(0,_.default)(e).call(e,":"),n=(0,_.default)(a).call(a,":");if(a&&r!==n)return t("Ports are either single values or ranges");if(!r){var i=this.checkExtPortUsed(e);return i?this.getUsedError([i],t("external port")):""}var{start:l,length:s,error:o}=this.checkRangeInput(e);if(o)return o;var{error:u}=this.checkPortRangeUsed(l,s,"external");if(u)return u;if(!V.test(a))return"";var{length:d}=this.checkRangeInput(a);return d?this.checkTwoRangeLength(s,d):""})),(0,C.default)(this,"validateExternalPort",((e,t)=>{var a=null==t?"":"".concat(t),{internal_port:r}=this.formRef.current.getFieldsValue(["internal_port"]);if(!V.test(a))return h.default.resolve(!0);var n=this.checkExternalPortInput(a,(r||"").toString()||"");return n?h.default.reject(n):h.default.resolve(!0)})),(0,C.default)(this,"checkInternalPortUsed",(e=>this.checkPortUsed(e,"internal"))),(0,C.default)(this,"checkInternalPortInput",((e,a)=>{var r=(0,_.default)(e).call(e,":"),n=(0,_.default)(a).call(a,":");if(e&&r!==n)return t("Ports are either single values or ranges");if(!n){var i=this.checkInternalPortUsed(a);return i?this.getUsedError([i],t("internal port")):""}var{start:l,length:s,error:o}=this.checkRangeInput(a);if(o)return o;var{error:u}=this.checkPortRangeUsed(l,s,"internal");if(u)return u;if(!V.test(e))return"";var{length:d}=this.checkRangeInput(e);return d?this.checkTwoRangeLength(s,d):""})),(0,C.default)(this,"validateInternalPort",((e,t)=>{var a=null==t?"":"".concat(t);if(!V.test(a))return h.default.resolve(!0);var{external_port:r}=this.formRef.current.getFieldsValue(["external_port"]),n=this.checkInternalPortInput((r||"").toString()||"",a);return n?h.default.reject(n):h.default.resolve()})),(0,C.default)(this,"onFixedIpChange",(e=>{this.setState({fixed_ip_address:e},(()=>{this.formRef.current.resetFields(["internal_port"])}))}))}get name(){return t("Create Port Forwarding")}get resource(){return t("port forwarding")}get resources(){return t("port forwardings")}init(){this.portStore=new R.PortStore,this.state=B(B({},this.state),{},{alreadyUsedPorts:[],portFixedIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[],supportRange:!0}),this.getPorts(),this.getRangeSupport(),this.getFipAlreadyUsedPorts(),this.getExtraInfo()}getExtraInfo(){M.getCanReachSubnetIdsWithRouterIdInComponent.call(this,(e=>{var{item:t}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id}))}get fipId(){return this.item.id}getFipAlreadyUsedPorts(){var e=this;return(0,w.default)((function*(){var t=yield j.default.fetchList({fipId:e.fipId});e.setState({alreadyUsedPorts:t||[]})}))()}get instanceName(){return(0,E.getPortForwardingName)(this.submitData||(0,S.default)(this),this.item.floating_ip_address)}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{floating_ip_address:e}=this.item;return{floatingIp:e}}getSubmitData(e){var{floatingIp:t,virtual_adapter:{selectedRows:a=[]}={},fixed_ip_address:{selectedRows:r=[]}={},external_port:n,internal_port:i}=e,l=B({},(0,I.default)(e,["floatingIp","virtual_adapter","fixed_ip_address","external_port","internal_port"]));return(0,_.default)(n).call(n,":")?l.external_port_range=n:l.external_port=n,(0,_.default)(i).call(i,":")?l.internal_port_range=i:l.internal_port=i,l.internal_ip_address=r[0].fixed_ip_address,l.internal_port_id=a[0].id,this.submitData=l,l}get nameForStateUpdate(){return["protocol"]}get portDeviceOwner(){return["compute:nova",""]}getPorts(){N.getPortsForPortFormItem.call(this,this.portDeviceOwner)}getRangeSupport(){var e=this;return(0,w.default)((function*(){try{yield j.default.fetchListByPage({limit:1,fipId:e.fipId,external_port_range:"80:81"}),e.setState({supportRange:!0})}catch(t){e.setState({supportRange:!1})}}))()}get supportRange(){var{supportRange:e}=this.state;return e}get maxRangeSize(){return this.supportRange?1/0:20}get maxRangeSizeTip(){return t("The maximum batch size is {size}, that is, the size of the port range cannot exceed {size}.",{size:this.maxRangeSize})}get tips(){return P.default.createElement("div",null,P.default.createElement("p",null,t("1. You can create {resources} using ports or port ranges.",{resources:this.resources})),P.default.createElement("p",null,t("2. In the same protocol, you cannot create multiple {resources} for the same source port or source port range.",{resources:this.resources})),P.default.createElement("p",null,t("3. When using a port range to create a port mapping, the size of the external port range is required to be the same as the size of the internal port range. For example, the external port range is 80:90 and the internal port range is 8080:8090.")),!this.supportRange&&P.default.createElement("p",null,t("4. When you use a port range to create {resources}, multiple {resources} will be created in batches. ",{resources:this.resources})+this.maxRangeSizeTip))}get formItems(){var{fixed_ip_address:e={selectedRows:[]}}=this.state,a=t("Input external port or port range(example: 80 or 80:160)"),r=t("Input internal port or port range(example: 80 or 80:160)"),n=[{name:"floatingIp",label:t("Floating Ip"),type:"label",iconType:"floatingIp"},{name:"description",label:t("Description"),type:"textarea"},{name:"protocol",label:t("Protocol"),type:"select",options:(0,z.getOptions)(E.portForwardingProtocols),required:!0},{name:"external_port",label:t("External Port/Port Range"),type:"port-range",required:!0,validator:this.validateExternalPort,dependencies:["protocol","internal_port"],placeholder:a,extra:a,hasRequiredCheck:!1},{name:"internal_port",label:t("Internal Port/Port Range"),type:"port-range",hidden:0===e.selectedRows.length,required:!0,validator:this.validateInternalPort,dependencies:["protocol","external_port"],placeholder:r,extra:r,hasRequiredCheck:!1}],[i,l]=N.getPortFormItem.call(this);return i.label=t("Target Port"),l.label=t("Target IP Address"),l.onChange=this.onFixedIpChange,(0,x.default)(n).call(n,4,0,i,l),n}}a.CreatePortForwarding=U,(0,C.default)(U,"id","create-port-forwarding"),(0,C.default)(U,"title",t("Create Port Forwarding")),(0,C.default)(U,"policy","create_floatingip_port_forwarding"),(0,C.default)(U,"allowed",(e=>h.default.resolve((0,D.default)(e.fixed_ip_address)&&(0,F.enablePFW)())));var q=(0,T.inject)("rootStore")((0,T.observer)(U));a.default=q},1410:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.CredentialStore=void 0;var i,l=n(a(3929)),s=n(a(27)),o=n(a(25)),u=n(a(51)),d=n(a(62)),c=n(a(54)),f=a(34),p=n(a(48)),h=n(a(140)),m=n(a(1207)),g=n(a(53)),v=(i=class extends g.default{get isSubResource(){return!0}get client(){return p.default.keystone.users.applicationCredentials}get paramsFunc(){return e=>{var{current:t,id:a,all_projects:r}=e;return(0,d.default)(e,["current","id","all_projects"])}}create(e){var t={};return t[this.responseKey]=e,this.submitting(this.client.create(h.default.user.user.id,t))}listDidFetch(e,t){return(0,u.default)((function*(){if(!t)try{var a=yield m.default.getUserProjects(),r=new l.default;(0,s.default)(a).call(a,(e=>{r.set(e.id,e.name)})),(0,s.default)(e).call(e,(e=>{e.project_name=r.get(e.project_id)||"-"}))}catch(t){return e}return e}))()}},(0,c.default)(i.prototype,"create",[f.action],(0,o.default)(i.prototype,"create"),i.prototype),i);t.CredentialStore=v;var y=new v;t.default=y},1436:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(65));r(333);var u=s(r(332));r(1317);var d=s(r(1318)),c=s(r(36)),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={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),p=(r(173),s(r(16))),h=r(161);function m(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(m=function(e){return e?a:t})(e)}class g extends f.Component{static propTypes(){return{title:p.default.string.isRequired,buttonType:p.default.string,render:p.default.func,component:p.default.node,item:p.default.any,modalSize:p.default.string,okText:p.default.string,cancelText:p.default.string,handleOk:p.default.func,className:p.default.func,buttonText:p.default.string,buttonClassName:p.default.string,showCancelButton:p.default.bool,style:p.default.object,onClickButton:p.default.func,onFinishAction:p.default.func,onCancelAction:p.default.func}}constructor(e){super(e),(0,c.default)(this,"getModalWidth",(e=>{switch(e){case"small":return 520;case"middle":return 720;case"large":return 1200;default:return 520}})),(0,c.default)(this,"onClick",(e=>{e&&e.stopPropagation();var{onClickButton:t}=this.props;t&&t(),this.showModal()})),(0,c.default)(this,"onFinishAction",(()=>{var{onFinishAction:e}=this.props;e&&e()})),(0,c.default)(this,"handleOk",(()=>{var{handleOk:e}=this.props;e?(this.setState({submitLoading:!0}),e()instanceof o.default?e().finally((()=>{this.hideModal(),this.onFinishAction(),this.setState({submitLoading:!1})})):(this.hideModal(),this.onFinishAction(),this.setState({submitLoading:!1}))):(this.hideModal(),this.onFinishAction())})),(0,c.default)(this,"handleCancel",(()=>{var{onCancelAction:e}=this.props;e&&e(),this.hideModal()})),(0,c.default)(this,"hideModal",(()=>{this.setState({visible:!1})})),(0,c.default)(this,"showModal",(()=>{this.setState({visible:!0})})),this.state={visible:!1,submitLoading:!1}}renderModal(){var{visible:e,submitLoading:t}=this.state;if(!e)return null;var{title:a,item:r,modalSize:n,className:i,okText:l,cancelText:s,render:o,component:u,showCancelButton:c}=this.props,p=this.getModalWidth(n),m=o?o(r):u,g={visible:e,title:a,key:"modal-".concat((0,h.generateId)()),className:i,width:p,onOk:this.handleOk,onCancel:this.handleCancel,okText:l,cancelText:s,confirmLoading:t};return c||(g.cancelButtonProps={style:{display:"none"}}),f.default.createElement(d.default,g,m)}render(){var{buttonText:e,title:t,danger:a,style:r,buttonType:n,buttonClassName:i}=this.props;return f.default.createElement(f.default.Fragment,null,f.default.createElement(u.default,{type:n,danger:a,onClick:this.onClick,className:i,style:r},e||t),this.renderModal())}}a.default=g,(0,c.default)(g,"defaultProps",{buttonType:"primary",render:null,component:null,item:null,okText:t("Confirm"),cancelText:t("Cancel"),handleOk:null,className:"",buttonClassName:"",showCancelButton:!1,style:{},onClickButton:null,onFinishAction:null,onCancelAction:null})},1530:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseTable=void 0;var p=f(r(57)),h=f(r(32)),m=f(r(198)),g=f(r(81)),v=f(r(27)),y=f(r(90));r(572);var b=f(r(574)),_=f(r(1525)),S=f(r(1523)),x=f(r(1273));r(573);var w=f(r(421)),I=f(r(1368));r(1205);var C=f(r(1206));r(333);var k=f(r(332)),D=f(r(62));r(1270);var P=f(r(1271)),T=f(r(1248));r(411);var A=f(r(227)),M=f(r(595)),R=f(r(36)),N=f(r(131)),E=f(r(91)),j=f(r(111)),F=f(r(1531)),L=f(r(0)),z=f(r(16)),O=f(r(4)),B=f(r(1396)),V=r(34),U=(r(173),f(r(1450))),q=f(r(1452)),Q=(r(555),f(r(3451))),G=r(578),K=r(161),H=r(243),W=r(558),Y=r(406),Z=f(r(140)),J=f(r(3454)),X=f(r(1249)),$=f(r(1333)),ee=f(r(3461)),te=f(r(3464)),ae=f(r(3468));function re(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function ne(e){for(var t=1;t(0,E.default)(e)?e.join(","):e)),(0,R.default)(this,"getSortKey",(e=>{var{field:t,column:a}=e;return t&&a?a.sortKey||a.dataIndex:null})),(0,R.default)(this,"handleChange",((e,t,a,r)=>{var{action:n}=r,i=ne({limit:e.pageSize,page:e.current,current:e.current,sortKey:this.getSortKey(a),sortOrder:a.order},t),{ableSkipPageByBackend:l,isPageByBack:s}=this.props;if("sort"===n){if(s&&!l){var{pagination:o}=this.props;i=ne(ne({},i),{},{limit:o.pageSize,page:o.current,current:o.current})}this.sortKey=this.getSortKey(a),this.sortOrder=a.order,this.props.onFetchBySort(i)}else this.props.onFetch(i)})),(0,R.default)(this,"handlePageChange",((e,t)=>{var{filters:a}=this.state,{onFetch:r,defaultSortKey:n,defaultSortOrder:i}=this.props;r&&r(ne({limit:t,page:e,current:e,sortKey:this.sortKey||n,sortOrder:this.sortOrder||i},a))})),(0,R.default)(this,"handleRefresh",(()=>{this.props.onRefresh(!0)})),(0,R.default)(this,"handleRowHide",(e=>{var t,a=(0,p.default)(t=this.hideableRows).call(t,(e=>e.value));this.setState({hideRow:(0,h.default)(a).call(a,(t=>!(0,m.default)(e).call(e,t)))},(()=>{var e;(0,H.setLocalStorageItem)((0,g.default)(e="".concat(this.useId,"-")).call(e,this.props.resourceName),this.state.hideRow)}))})),(0,R.default)(this,"handleCancelSelect",(()=>{this.props.onSelectRowKeys([])})),(0,R.default)(this,"handleFilterChange",((e,t)=>{if(!(0,B.default)(e,this.props.filters)||!(0,B.default)(t,this.props.timeFilter)){this.setState({filters:e,timeFilter:t});var{pageSize:a}=this.props.pagination,{sortKey:r,sortOrder:n,onFilterChange:i}=this.props;i&&i(ne({limit:a,page:1,sortKey:r,sortOrder:n},e),t)}})),(0,R.default)(this,"handleTimeChange",(e=>{this.handleFilterChange(this.state.filters,e)})),(0,R.default)(this,"handleFilterInput",(e=>{var t={};(0,v.default)(e).call(e,(e=>{t[(0,h.default)(e).name]=e.value})),this.handleFilterChange(t,this.state.timeFilter)})),(0,R.default)(this,"handleInputFocus",(e=>{var{handleInputFocus:t}=this.props;t&&t(e)})),(0,R.default)(this,"handleFilterInputText",(e=>{var t={},{value:a}=e.currentTarget;a&&(t.keywords=a),this.handleFilterChange(t,this.state.timeFilter)})),(0,R.default)(this,"hasItemActions",(()=>{var{firstAction:e,moreActions:t,actionList:a}=this.itemActions;return!!e||(!(!t||!t.length)||a&&a.length>0)})),(0,R.default)(this,"getProjectId",(e=>e.project_id||e.owner||e.fingerprint||e.tenant)),(0,R.default)(this,"getProjectRender",(e=>e||((e,t)=>{var a=this.getProjectId(t);if(!a)return"-";var r=(0,W.getLinkRender)({key:"projectDetailAdmin",params:{id:a},value:a});return L.default.createElement(L.default.Fragment,null,L.default.createElement("div",null,Z.default.hasAdminRole?r:a),L.default.createElement("div",null,e||"-"))}))),(0,R.default)(this,"getNoValueRender",(e=>e||(e=>(0,K.getNoValue)(e)))),(0,R.default)(this,"getPriceRender",((e,t)=>e||(e=>{var t=(0,N.default)(e)?e:(e||0).toFixed(2);return L.default.createElement("span",{style:{color:"#f50"}},t)}))),(0,R.default)(this,"getTipRender",(function(e,t,a){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:M.default,n=(n,i)=>{var l=e(n,i),s=t?t(n,i):(0,j.default)(i,a);return l?L.default.createElement("div",null,s,L.default.createElement(A.default,{title:l},L.default.createElement(r,{style:{marginLeft:8}}))):s};return n})),(0,R.default)(this,"getColumnTitle",(e=>{var{title:t,titleTip:a}=e;return a?L.default.createElement("span",null,t,L.default.createElement(A.default,{title:a},L.default.createElement(T.default,{style:{marginLeft:8}}))):t})),(0,R.default)(this,"getBaseColumns",(e=>(0,p.default)(e).call(e,(e=>{var{Paragraph:t}=P.default,{sortable:a,dataIndex:r,valueRender:n,sorter:i,sortOrder:l,render:s,copyable:o,tip:u,isStatus:d,isName:c,isLink:f,routeName:p,linkPrefix:h,isPrice:m,valueMap:g,unit:v}=e,y=(0,D.default)(e,["sortable","dataIndex","valueRender","sorter","sortOrder","render","copyable","tip","isStatus","isName","isLink","routeName","linkPrefix","isPrice","valueMap","unit"]),b=(0,G.getColumnSorter)(e,this.props),_=l||b?(0,G.getSortOrder)(r,this.props):null,S=s||(0,G.getRender)(n);if(g&&(S=(0,G.getValueMapRender)(e)),v&&(S=(0,G.getUnitRender)(e)),(0,G.checkIsStatusColumn)(r,d)&&(S=(0,G.getStatusRender)(S)),"description"===r&&(S=this.getNoValueRender(S)),"project_name"===r&&(S=this.getProjectRender(S)),"name"===r&&p||f){var{rowKey:x}=this.props;S=(0,G.getNameRenderByRouter)(S,e,x)}if("name"===r&&h||c){var{rowKey:w}=this.props;S=(0,G.getNameRender)(S,e,w)}if(("cost"===r||m)&&(S=this.getPriceRender(S,e)),o&&(S=e=>e&&"-"!==e?L.default.createElement(t,{copyable:!0},e):"-"),u){var{tipIcon:I}=e;S=this.getTipRender(u,S,r,I)}var C=ne(ne({},y),{},{title:this.getColumnTitle(e),dataIndex:r,align:e.align||"left"});return b&&(C.sorter=b),l&&(C.sortOrder=_),(0,G.updateColumnSort)(C,this.props),S&&(C.render=S),ne(ne({},C),{},{render:(e,t)=>(0,G.columnRender)(C.render,e,t)})})))),(0,R.default)(this,"getColumns",(()=>{var e,{columns:a,containerProps:r,onClickAction:n,onFinishAction:i,onCancelAction:l,isAdminPage:s}=this.props,{hideRow:o}=this.state,u=(0,h.default)(e=(0,h.default)(a).call(a,(e=>!e.hidden))).call(e,(e=>!(0,F.default)(o,this.getDataIndex(e.dataIndex)))),d=this.getBaseColumns(u);return this.hasItemActions()?[...d,{title:t("Action"),key:"operation",width:150,render:(e,t,a)=>L.default.createElement(X.default,{isAdminPage:s,actions:this.itemActions,onFinishAction:i,onCancelAction:l,item:t,index:a,containerProps:r,onClickAction:n})}]:d})),(0,R.default)(this,"stopRefreshAuto",(()=>{this.setState({autoRefresh:!1});var{stopRefreshAuto:e}=this.props;e&&e()})),(0,R.default)(this,"startRefreshAuto",(()=>{this.setState({autoRefresh:!0});var{startRefreshAuto:e}=this.props;e&&e()})),(0,R.default)(this,"renderSelectedTitle",(()=>L.default.createElement("div",{className:ae.default["select-title"]},L.default.createElement("div",null,this.renderBatchActions()),L.default.createElement("div",null,L.default.createElement(k.default,{type:"flat",className:ae.default["cancel-select"],onClick:this.handleCancelSelect},t("Cancel Select")))))),(0,R.default)(this,"renderTableTitle",(()=>this.renderNormalTitle())),(0,R.default)(this,"renderRowMenu",(()=>{var{hideRow:e}=this.state;return L.default.createElement(J.default,{className:ae.default["column-menu"],options:this.hideableRows,value:(e=>{var t,a=[];return(0,v.default)(t=this.hideableRows).call(t,(t=>{-1===(0,y.default)(e).call(e,t.value)&&a.push(t.value)})),a})(e),onChange:this.handleRowHide})})),(0,R.default)(this,"renderTableFooter",(e=>{var{page:t,current:a,pageSize:r,total:n,pageSizeOptions:i}=this.props.pagination,{isLoading:l,hideTotal:s}=this.props;return L.default.createElement(q.default,{current:t||a||1,pageSize:r,onChange:this.handlePageChange,currentDataSize:e.length,pageSizeOptions:i||[10,20,50,100],total:n,isLoading:l,onFocusChange:this.handleInputFocus,hideTotal:s})})),this.state={hideRow:(0,H.getLocalStorageItem)((0,g.default)(a="".concat(this.useId,"-")).call(a,this.props.resourceName))||[],filters:[],timeFilter:{},autoRefresh:e.autoRefresh},this.sortKey=e.defaultSortKey,this.sortOrder=e.defaultSortOrder,this.suggestions=(0,p.default)(r=(0,h.default)(n=e.columns).call(n,(e=>e.search&&e.dataIndex))).call(r,(e=>{var t;return{label:e.title,key:e.dataIndex,options:e.filters&&(0,p.default)(t=e.filters).call(t,(e=>({label:e.text,key:e.value})))}}))}get hideableRows(){var e,t,a;return(0,p.default)(e=(0,h.default)(t=(0,h.default)(a=this.props.columns).call(a,(e=>!e.hidden))).call(t,(e=>e.isHideable))).call(e,(e=>({label:e.title,value:this.getDataIndex(e.dataIndex)||e.key})))}get useId(){var{user:e={}}=(0,V.toJS)(this.props.rootStore)||{},{user:{id:t}={}}=e||{};return t}get itemActions(){var{itemActions:e={}}=this.props;return e}filterDownloadColumns(e){var a,r,{rowKey:n}=this.props,i=(0,p.default)(a=(0,h.default)(e).call(e,(e=>!e.hidden))).call(a,(e=>{var{title:a,splitColumnForDownload:r=!0}=e;if((0,m.default)(a).call(a,"/")&&r){var i,l,[s,o]=e.title.split("/"),u=o;if(s.length>2)u=(0,g.default)(l="".concat(s.split("ID")[0])).call(l,o);var d=e.idKey||n,c=null;return(0,m.default)(i=e.title).call(i,t("Project"))&&"project_name"===e.dataIndex&&(d="project_id",c=(e,t)=>this.getProjectId(t)),[{title:s,dataIndex:d,render:c},ne(ne({},e),{},{title:u})]}return e}));return(0,g.default)(r=[]).call(r,...i)}renderBatchActions(){var{batchActions:e,selectedRowKeys:t,data:a,rowKey:r,containerProps:n,onClickAction:i,onFinishAction:l,onCancelAction:s,resourceName:o,isAdminPage:u}=this.props,d=(0,h.default)(a).call(a,(e=>(0,y.default)(t).call(t,e[r])>=0));return e?L.default.createElement(ee.default,{isAdminPage:u,visibleButtonNumber:3,selectedItemKeys:t,selectedItems:d,batchActions:e,onFinishAction:l,onCancelAction:s,containerProps:n,onClickAction:i,resourceName:o}):null}renderTimeFilter(){var{showTimeFilter:e,filterTimeDefaultValue:t}=this.props;if(!e)return null;var a={onChange:this.handleTimeChange,className:ae.default.timer};return void 0!==t&&(a.defaultValue=t),L.default.createElement(Q.default,a)}renderSearch(){var{hideSearch:e,searchFilters:a,initFilter:r={}}=this.props;return e?null:a.length>0?L.default.createElement("div",{className:ae.default["search-row"]},L.default.createElement(U.default,{filterParams:a,initValue:r,onInputChange:this.handleFilterInput,onInputFocus:this.handleInputFocus,placeholder:t("Multiple filter tags are separated by enter")})):L.default.createElement("div",{className:ae.default["search-row"]},L.default.createElement(C.default,{placeholder:t("Enter query conditions to filter"),onChange:this.handleFilterInputText}))}renderActions(){var{isAdminPage:e,primaryActions:t,containerProps:a,onClickAction:r,onFinishAction:n,onCancelAction:i,primaryActionsExtra:l}=this.props;return t?L.default.createElement($.default,{isAdminPage:e,primaryActions:t,containerProps:a,onClickAction:r,onFinishAction:n,onCancelAction:i,primaryActionsExtra:l}):null}renderCustomButton(){var{hideCustom:e}=this.props;return e?null:L.default.createElement(w.default,{overlay:this.renderRowMenu()},L.default.createElement(k.default,{className:ae.default["custom-button"],type:"default",icon:L.default.createElement(I.default,null)}))}renderDownload(){var{pagination:e,data:t,columns:a,resourceName:r,detailName:n,getDownloadData:i,onClickAction:l,onCancelAction:s,hideDownload:o}=this.props;if(o)return null;var{total:u}=e,d={data:t,columns:this.filterDownloadColumns(a),total:u,getValueRenderFunc:G.getValueRenderFunc,resourceName:r,extraName:n,getData:i,onBeginDownload:l,onFinishDownload:s,onCancelDownload:s};return L.default.createElement(te.default,d)}renderRefresh(){var{hideRefresh:e}=this.props;return e?null:L.default.createElement(k.default,{type:"default",icon:L.default.createElement(x.default,null),onClick:this.handleRefresh})}renderRefreshAuto(){var{hideAutoRefresh:e}=this.props;if(e)return null;var{autoRefresh:a}=this.state;if(a){var r=t("Stop auto refreshing data");return L.default.createElement(A.default,{title:r},L.default.createElement(k.default,{type:"primary",icon:L.default.createElement(S.default,null),onClick:this.stopRefreshAuto}))}var n=t("Start auto refreshing data");return L.default.createElement(A.default,{title:n},L.default.createElement(k.default,{type:"default",icon:L.default.createElement(_.default,null),onClick:this.startRefreshAuto}))}renderNormalTitle(){return L.default.createElement("div",{className:ae.default["table-header"],id:"sl-table-header-search"},L.default.createElement("div",{className:(0,O.default)(ae.default["table-header-btns"],"table-header-btns")},this.renderRefresh(),this.renderActions(),this.renderBatchActions(),this.renderCustomButton(),this.renderDownload(),this.renderRefreshAuto()),this.renderTimeFilter(),this.renderSearch())}render(){var{className:e,data:t,isLoading:a,silentLoading:r,rowKey:n,selectedRowKeys:i,onSelectRowKeys:l,hideHeader:s,getCheckboxProps:o,pagination:u,scrollY:d,expandable:c,isPageByBack:f=!0,ableSkipPageByBackend:p,childrenColumnName:h}=this.props,m=null,g=!(!p&&f)&&ne(ne({},u),{},{size:"small"});s||this.renderTableTitle;var v=!p&&f?this.renderTableFooter:null;l&&(m={selectedRowKeys:i,getCheckboxProps:o,onChange:l});var y=this.renderTableTitle(),_=this.getColumns(),S={};return d>0&&(S.y=d||400),L.default.createElement("div",null,y,L.default.createElement(b.default,{className:(0,O.default)(ae.default.table,"sl-table",e),rowKey:n,columns:_,dataSource:(0,V.toJS)(t),loading:!r&&a,onChange:this.handleChange,pagination:g,rowSelection:m,sortDirections:["ascend","descend","ascend"],scroll:S,showSorterTooltip:!1,expandable:c,footer:v,childrenColumnName:h}))}}a.BaseTable=ie,(0,R.default)(ie,"propTypes",{data:z.default.oneOfType([z.default.array,z.default.object]).isRequired,columns:z.default.array.isRequired,selectedRowKeys:z.default.array,isLoading:z.default.bool,pagination:z.default.object,filters:z.default.object,keyword:z.default.string,rowKey:z.default.any,onFetch:z.default.func,onFilterChange:z.default.func,onSelectRowKeys:z.default.func,getCheckboxProps:z.default.func,hideHeader:z.default.bool,hideSearch:z.default.bool,hideCustom:z.default.bool,batchActions:z.default.array,alwaysUpdate:z.default.bool,emptyText:z.default.oneOfType([z.default.string||z.default.func]),resourceName:z.default.string,detailName:z.default.string,expandable:z.default.object,showTimeFilter:z.default.bool,timeFilter:z.default.any,isPageByBack:z.default.bool,isSortByBack:z.default.bool,ableSkipPageByBackend:z.default.bool,autoRefresh:z.default.bool,hideRefresh:z.default.bool,hideAutoRefresh:z.default.bool,startRefreshAuto:z.default.func,stopRefreshAuto:z.default.func,dataDurationAuto:z.default.number,defaultSortKey:z.default.string,defaultSortOrder:z.default.string,hideTotal:z.default.bool,hideDownload:z.default.bool,primaryActionsExtra:z.default.any,isAdminPage:z.default.bool,containerProps:z.default.any}),(0,R.default)(ie,"defaultProps",{rowKey:"name",selectedRowKeys:[],onFetch(){},hideHeader:!1,hideSearch:!1,hideCustom:!1,resourceName:"",detailName:"",expandable:void 0,showTimeFilter:!1,isPageByBack:!1,isSortByBack:!1,autoRefresh:!0,hideRefresh:!1,hideAutoRefresh:!1,dataDurationAuto:15,defaultSortKey:"",defaultSortOrder:"",hideTotal:!1,hideDownload:!1,primaryActionsExtra:null,isAdminPage:!1,ableSkipPageByBackend:!1});var le=(0,Y.inject)("rootStore")(ie);a.default=le},1533:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.ActionLogStore=void 0;var i=n(a(48)),l=n(a(53));class s extends l.default{get client(){return i.default.nova.servers.instanceActions}get isSubResource(){return!0}get paramsFunc(){return()=>({})}detailFetchByClient(e){var{id:t,requestId:a}=e;return this.client.show(t,a)}}t.ActionLogStore=s;var o=new s;t.default=o},1534:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=function(e){var{id:a,requestId:r,store:n,actionEvent:i}=e,f=[{title:t("Operation Name"),dataIndex:"event",key:"event",render:e=>i[e]||e},{title:t("Start Time"),dataIndex:"start_time",key:"start_time",render:e=>(0,d.getLocalTimeStr)(e)},{title:t("End Time"),dataIndex:"finish_time",key:"finish_time",render:e=>e?(0,d.getLocalTimeStr)(e):"-"},{title:t("Execution Result"),dataIndex:"result",key:"result",render:e=>"Success"===e?t("Success"):"-"}],p=function(){var e=(0,o.default)((function*(){var e,t=(yield n.fetchDetail({id:a,requestId:r}))||{},{events:i=[]}=t;return(0,l.default)(e=(0,s.default)(i).call(i)).call(e)}));return function(){return e.apply(this,arguments)}}();return u.default.createElement(c.default,{columns:f,getData:p})};var l=i(r(647)),s=i(r(200)),o=i(r(51)),u=i(r(0)),d=r(569),c=i(r(623))},1539:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateKeypair=void 0;var p=f(r(65)),h=f(r(51)),m=f(r(36)),g=r(406),v=r(1193),y=f(r(420)),b=f(r(407)),_=f(r(1298));function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function x(e){for(var t=1;t{var{total:e=0,data:t=[]}=y.default.list||{};return e||t.length},I=e=>{var{limit:t=0}=e||{};return-1===t||t>w()?1:0};class C extends v.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"onSubmit",(e=>{var{name:t,public_key:a}=e,r={name:t,public_key:a,type:"ssh"};return y.default.create(r).then((e=>{if(!a){var{keypair:{private_key:r}}=e,n="".concat(t,".pem"),i=new Blob([r],{type:"text/plain;charset=utf-8"});_.default.saveAs(i,n)}}))}))}get name(){return t("Create Keypair")}init(){this.state.quota={},this.state.quotaLoading=!0,this.projectStore=b.default,this.getQuota()}get tips(){return t("Quota of key pair means: the number of allowed key pairs for each user.")}static get disableSubmit(){var{novaQuota:{key_pairs:e={}}}=b.default;return 0===I(e)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,h.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectNovaQuota(),{key_pairs:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var r=I(e),n=w();return[x(x({},e),{},{add:r,used:n,name:"key_pair",title:t("Key Pair")})]}get defaultValue(){return{type:"create"}}get createTypeList(){return[{value:"create",label:t("Create Keypair")},{value:"import",label:t("Import Keypair")}]}get formItems(){var{type:e}=this.state,a="create"===e;return[{name:"type",label:t("Create Type"),type:"radio",options:this.createTypeList},{name:"name",label:t("Name"),type:"input-name",required:!0,isKeypair:!0},{name:"public_key",label:t("Public Key"),type:"textarea-from-file",hidden:a,required:!a}]}}a.CreateKeypair=C,(0,m.default)(C,"id","create-keypair"),(0,m.default)(C,"title",t("Create Keypair")),(0,m.default)(C,"policy","os_compute_api:os-keypairs:create"),(0,m.default)(C,"allowed",(()=>p.default.resolve(!0)));var k=(0,g.inject)("rootStore")((0,g.observer)(C));a.default=k},1540:function(e,t,a){var r=a(3490);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},1543:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0,r(1198);var o=s(r(1199)),u=s(r(1294));r(1196);var d=s(r(1197));r(411);var c=s(r(227));r(1266);var f=s(r(1267));r(1205);var p=s(r(1206)),h=s(r(409)),m=s(r(32)),g=s(r(226)),v=s(r(57)),y=s(r(200)),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),_=(r(173),r(555),r(334)),S=s(r(16));function x(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(x=function(e){return e?a:t})(e)}var w=e=>{var{tags:a,onChange:r,maxLength:n,maxCount:i}=e,[l,s]=(0,b.useState)(a),[S,x]=(0,b.useState)(!1),[w,I]=(0,b.useState)(""),[C,k]=(0,b.useState)(-1),[D,P]=(0,b.useState)(""),T=n&&n>0?{maxLength:n}:{},A=i&&i>0||-1;var M=null,R=null,N=e=>{M=e};function E(e){P(e.target.value)}function j(){var e=[...l];e[C]=D,s(e),P(""),k(-1)}function F(){var e=w.toLocaleLowerCase();w&&!(0,g.default)(l).call(l,(t=>t.toLowerCase()===e))&&(-1!==A&&l.length{R&&R.focus()}),[S]),(0,b.useEffect)((()=>{M&&M.focus()}),[C]),(0,b.useEffect)((()=>{r(l)}),[l]),b.default.createElement(o.default,{gutter:[0,8]},(0,v.default)(l).call(l,((e,t)=>{if(C===t)return b.default.createElement(p.default,(0,h.default)({ref:N,style:{width:78,marginRight:8,verticalAlign:"top"},key:e,size:"small",value:D,onChange:E,onBlur:j,onPressEnter:j},T));var a=e.length>20,r=a?"".concat((0,y.default)(e).call(e,0,20),"..."):e,n=b.default.createElement(f.default,{key:e,closable:!0,onClose:()=>{return t=e,void s((0,m.default)(l).call(l,(e=>e!==t)));var t},color:_.projectTagsColors[t%10]},b.default.createElement("span",{style:{whiteSpace:"pre-wrap"},onDoubleClick:a=>{k(t),P(e),a.preventDefault()}},r));return b.default.createElement(d.default,{span:24,key:e},a?b.default.createElement(c.default,{title:b.default.createElement("span",{style:{whiteSpace:"pre-wrap"}},e)},n):n)})),b.default.createElement(d.default,{span:24},S&&b.default.createElement(p.default,(0,h.default)({ref:e=>{R=e},style:{width:78,marginRight:8,verticalAlign:"top"},type:"text",size:"small",value:w,onChange:function(e){I(e.target.value)},onBlur:F,onPressEnter:F},T)),!S&&b.default.createElement(f.default,{onClick:function(){x(!0)}},b.default.createElement(u.default,null)," ",t("New Tag"))))};w.propTypes={tags:S.default.array,onChange:S.default.func,maxLength:S.default.number,maxCount:S.default.number};var I=w;a.default=I},1544:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(1545)),s=i(r(3548)),o=i(r(3549)),u=i(r(3550)),d=i(r(3551)),c=i(r(3552)),f=i(r(3553)),p=i(r(3554)),h=i(r(3555)),m=i(r(3556)),g=i(r(1546)),v=i(r(3557)),y=i(r(3558)),b=i(r(3559)),_=i(r(3560)),S=i(r(3561)),x=i(r(3562)),w=i(r(3563)),I=i(r(3564)),C={title:t("Data Protection"),actions:[f.default,g.default,b.default,m.default,u.default]},k={title:t("Instance Related"),actions:[I.default,w.default,d.default,c.default]},D={title:t("Capacity & Type"),actions:[p.default,h.default]},P={rowActions:{firstAction:s.default,moreActions:[C,k,D,{action:o.default},{action:S.default},{action:x.default}]},batchActions:[o.default],primaryActions:[l.default,_.default]},T={rowActions:{firstAction:s.default,moreActions:[C,k,D,{action:o.default},{action:S.default},{action:x.default}]},batchActions:[],primaryActions:[]},A={actionConfigs:P,adminConfig:{rowActions:{firstAction:o.default,moreActions:[{action:v.default},{action:y.default}]},batchActions:[o.default],primaryActions:[]},instanceDetailConfig:T,instanceDetailAdminConfig:{rowActions:{firstAction:v.default,moreActions:[{action:y.default}]},batchActions:[],primaryActions:[]}};a.default=A},1545:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(102)),h=f(r(65)),m=f(r(1400)),g=f(r(57)),v=f(r(1335)),y=f(r(81)),b=f(r(1204)),_=f(r(27)),S=f(r(32));r(1239);var x=f(r(1240)),w=f(r(409));r(1336);var I=f(r(426)),C=f(r(51)),k=f(r(36)),D=f(r(0)),P=r(406),T=f(r(1376)),A=r(569),M=r(557),R=f(r(582)),N=f(r(565)),E=f(r(410)),j=f(r(566)),F=f(r(407)),L=f(r(1242)),z=(r(173),r(34)),O=r(1193),B=f(r(4)),V=r(563),U=r(1301),q=r(161),Q=f(r(3546));function G(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function K(e){for(var t=1;t{this.setState({imageTab:e})})),(0,k.default)(this,"onConfirmCancel",(()=>{var{initVolumeType:e}=this.state,{selectedRows:t,selectedRowKeys:a,snapshotId:r}=e,n={selectedRows:t,selectedRowKeys:a,snapshotId:"".concat(r,"-1")};this.setState({initVolumeType:n})})),(0,k.default)(this,"onVolumeTypeChange",(e=>{var{selectedRows:a=[]}=e;if(0===a.length)return(0,M.setCreateVolumeType)(""),void this.setState({multiattach:!1});var{id:r,extra_specs:{multiattach:n="False"}={},name:i}=a[0];if((0,M.setCreateVolumeType)(i),this.sourceTypeIsSnapshot){var{initVolumeType:{selectedRowKeys:l=[]},confirmCount:s=0}=this.state;r!==l[0]&&s<1&&(T.default.warn({title:t("Note: Are you sure you need to modify the volume type?"),content:M.snapshotTypeTip,onCancel:this.onConfirmCancel}),this.setState({confirmCount:1}))}this.setState({multiattach:" True"===n})})),(0,k.default)(this,"onSnapshotChange",function(){var t=(0,C.default)((function*(t){var{selectedRows:a=[]}=t||{},r="",n=null;if(a.length){var i,{origin_data:{volume_type_id:l}={},id:s}=a[0]||{};if(l)r=l,n=(0,p.default)(i=e.volumeTypes).call(i,(e=>e.id===r));else try{var o,u=yield e.snapshotStore.fetchDetail({id:s}),{volume:{volume_type:d}}=u||{};n=(0,p.default)(o=e.volumeTypes).call(o,(e=>e.name===d)),r=n.id}catch(e){}if(n){var c={selectedRowKeys:[r],selectedRows:[n],snapshotId:s};e.setState({initVolumeType:c})}}}));return function(e){return t.apply(this,arguments)}}()),(0,k.default)(this,"onCountChange",(e=>{(0,M.setCreateVolumeCount)(e),this.setState({count:e},(()=>{this.onCountChangeCallback&&this.onCountChangeCallback()}))})),(0,k.default)(this,"getCountMax",(()=>{var{volumes:{left:e=0}={}}=this.getVolumeQuota();return-1===e?1/0:e})),(0,k.default)(this,"onSubmit",(e=>{var t,a,{count:r}=this.state;if(this.message)return h.default.reject(this.message);var{backup:n,image:i,snapshot:l,size:s,availableZone:o,shared:u,name:d,volume_type:c}=e,f={name:d,size:s,availability_zone:"noSelect"!==o?o:null,multiattach:u,volume_type:c.selectedRowKeys[0]};return n&&(0,m.default)(n.selectedRowKeys)&&n.selectedRowKeys.length&&(f.backup_id=n.selectedRowKeys[0]),i&&(0,m.default)(i.selectedRowKeys)&&i.selectedRowKeys.length&&(f.imageRef=i.selectedRowKeys[0]),l&&(0,m.default)(l.selectedRowKeys)&&l.selectedRowKeys.length&&(f.snapshot_id=l.selectedRowKeys[0]),1===r?this.volumeStore.create(f):(0,q.allSettled)((0,g.default)(t=(0,v.default)(a=new Array(r)).call(a,r)).call(t,((e,t)=>{var a,r=K(K({},f),{},{name:(0,y.default)(a="".concat(f.name,"-")).call(a,t+1)});return this.volumeStore.create(r)})))}))}init(){this.state=K(K({},this.state),{},{quotaLoading:!0,count:1,sharedDisabled:!1,confirmCount:0}),this.message="",this.snapshotStore=R.default,this.imageStore=N.default,this.volumeStore=E.default,this.volumeTypeStore=j.default,this.backupStore=L.default,this.getQuota(),this.getAvailZones(),this.getImages(),this.getVolumeTypes()}get listUrl(){return this.getRoutePath("volume")}get name(){return t("create volume")}static allowed(){return h.default.resolve(!0)}get disableSubmit(){var{quotaLoading:e}=this.state;if(e)return!0;var{cinderQuota:t={}}=F.default,{add:a,error:r}=(0,M.getAdd)(t),n=0===a;return n?r!==this.message&&(I.default.error(r),this.message=r):this.message="",n}get instanceName(){var e,t,{name:a}=(0,b.default)(this)||{},{count:r=1}=this.state;return 1===r?a:(0,g.default)(e=(0,v.default)(t=new Array(r)).call(t,r)).call(e,((e,t)=>{var r;return(0,y.default)(r="".concat(a,"-")).call(r,t+1)})).join(", ")}get errorText(){return this.message?t("Unable to create volume: insufficient quota to create resources."):super.errorText}get showQuota(){return!0}getVolumeQuota(){var{quota:e={}}=this.state;return(0,M.getQuota)(e)}get quotaInfo(){return(0,M.getQuotaInfo)(this)}get defaultSize(){return this.quotaIsLimit&&this.maxSize<10?this.maxSize:10}get defaultValue(){var{initVolumeType:e}=this.state;return{source:this.sourceTypes[0],size:this.defaultSize,project:this.currentProjectName,availableZone:(this.availableZones[0]||[]).value,volume_type:e}}get availableZones(){var e,a,r=[{label:t("Not select"),value:"noSelect"}];return(0,_.default)(e=(0,S.default)(a=this.volumeStore.availabilityZones||[]).call(a,(e=>e.zoneState.available))).call(e,(e=>{r.push({value:e.zoneName,label:e.zoneName})})),r}get images(){var e,{imageTab:t}=this.state,a=(0,S.default)(e=this.imageStore.list.data||[]).call(e,(e=>!(!(0,V.canImageCreateInstance)(e)&&!(0,V.canImageCreateIronicInstance)(e))&&(t?(0,V.getImageOS)(e)===t&&"active"===e.status:e)));return(0,g.default)(a).call(a,(e=>K(K({},e),{},{key:e.id})))}get volumeTypes(){return(0,z.toJS)(this.volumeTypeStore.list.data||[])}get backups(){var e;return(0,g.default)(e=this.backupStore.list.data||[]).call(e,(e=>K(K({},e),{},{key:e.id})))}get sourceTypes(){return[{label:t("Blank Volume"),value:"blank-volume"},{label:t("Image"),value:"image"},{label:t("Volume Snapshot"),value:"snapshot"}]}get quotaIsLimit(){var{gigabytes:{limit:e}={}}=this.getVolumeQuota();return-1!==e}get maxSize(){var{gigabytes:{left:e=0}={}}=this.getVolumeQuota();return-1===e?1e3:e}getAvailZones(){this.volumeStore.fetchAvailabilityZoneList()}getImages(){this.imageStore.fetchList({all_projects:this.hasAdminRole})}getVolumeTypes(){var e=this;return(0,C.default)((function*(){var t=yield e.volumeTypeStore.fetchList();if(t.length>0){var a=t[0],{id:r,name:n}=a,i={selectedRowKeys:[r],selectedRows:[a]};(0,M.setCreateVolumeType)(n),e.setState({initVolumeType:i,volume_type:a},(()=>{e.updateFormValue("volume_type",i),e.updateDefaultValue()}))}}))()}getQuota(){var e=this;return(0,C.default)((function*(){yield(0,M.fetchQuota)(e,0),(0,M.setCreateVolumeSize)(e.defaultSize),e.onCountChange(1),e.updateDefaultValue()}))()}get systemTabs(){return(0,V.getImageSystemTabs)()}getVolumeTypeExtra(){if(this.sourceTypeIsSnapshot)return M.snapshotTypeTip;var{multiattach:e=!1}=this.state;return e?M.multiTip:void 0}get sourceTypeIsImage(){var{source:e}=this.state;return e===this.sourceTypes[1].value}get sourceTypeIsSnapshot(){var{source:e}=this.state;return e===this.sourceTypes[2].value}getDiskMinSize(){var e=0;if(this.sourceTypeIsImage){var{min_disk:t=0,size:a=0}=this.state.image||{},r=Math.ceil(a/1024/1024/1024);e=Math.max(t,r,1)}else if(this.sourceTypeIsSnapshot){var{size:n=0}=this.state.snapshot||{};e=n}return Math.max(e,1)}get nameForStateUpdate(){return["source","image","snapshot","size","volume_type"]}get formItems(){var e,{initVolumeType:a}=this.state,r=this.getDiskMinSize();return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),options:this.availableZones,tip:t("Unless you know clearly which AZ to create the volume in, you don not need to fill in here.")},{type:"divider"},{name:"source",label:t("Data Source Type"),type:"radio",options:this.sourceTypes,required:!0,isWrappedValue:!0},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:this.imageStore.list.isLoading,required:this.sourceTypeIsImage,isMulti:!1,hidden:!this.sourceTypeIsImage,filterParams:[{label:t("Name"),name:"name"}],columns:(0,V.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange},{name:"snapshot",label:t("Volume Snapshot"),type:"select-table",backendPageStore:this.snapshotStore,required:this.sourceTypeIsSnapshot,isMulti:!1,hidden:!this.sourceTypeIsSnapshot,isSortByBack:!0,defaultSortKey:"created_at",defaultSortOrder:"descend",onChange:this.onSnapshotChange,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",unit:"GiB",sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:M.volumeStatus},{title:t("Description"),dataIndex:"description",sorter:!1},{title:t("Created At"),dataIndex:"created_at",render:e=>(0,A.getSinceTime)(e)}]},{type:"divider"},K(K({name:"volume_type",label:t("Volume Type"),type:"select-table",tip:t('The volume type needs to set "multiattach" in the metadata to support shared volume attributes.')},U.volumeTypeSelectProps),{},{data:this.volumeTypes,isLoading:this.volumeTypeStore.list.isLoading,required:!0,extra:this.getVolumeTypeExtra(),onChange:this.onVolumeTypeChange,initValue:a}),{name:"size",label:t("Capacity (GiB)"),type:"slider-input",max:this.maxSize,min:r,description:(0,y.default)(e="".concat(r,"GiB-")).call(e,this.maxSize,"GiB"),required:this.quotaIsLimit,hidden:!this.quotaIsLimit,onChange:M.onVolumeSizeChange},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:r,hidden:this.quotaIsLimit,required:!this.quotaIsLimit,onChange:M.onVolumeSizeChange},{type:"divider"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{title:t("Description"),dataIndex:"description"}]}onCountChangeCallback(){}renderFooterLeft(){var{count:e=1}=this.state,a={min:1,max:this.getCountMax(),precision:0,onChange:this.onCountChange,formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return D.default.createElement("div",null,D.default.createElement("span",null,t("Count")),D.default.createElement(x.default,(0,w.default)({},a,{value:e,className:(0,B.default)(Q.default.input,"volume-count")})))}}a.Create=H,(0,k.default)(H,"id","volume-create"),(0,k.default)(H,"title",t("Create Volume")),(0,k.default)(H,"path","/storage/volume/create"),(0,k.default)(H,"policy","volume:create");var W=(0,P.inject)("rootStore")((0,P.observer)(H));a.default=W},1546:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateBackup=void 0;var l=i(r(81)),s=i(r(65)),o=i(r(36)),u=r(406),d=r(1193),c=i(r(1242)),f=r(557),p=r(1302);class h extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{name:a,incremental:r}=e,n={name:a,incremental:r,volume_id:t,force:(0,f.isInUse)(this.item)};return this.store.create(n)}))}get name(){return t("Create volume backup")}get tips(){return p.createTip}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),incremental:!1}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Volume Backup Name"),type:"input-name",required:!0},{name:"incremental",label:t("Backup Mode"),type:"radio",options:p.backupModeList,tip:p.modeTip}]}init(){this.store=c.default,c.default.setCurrentVolume(this.item),(0,p.fetchQuota)(this)}static get disableSubmit(){return(0,p.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,p.getQuotaInfo)(this)}}a.CreateBackup=h,(0,o.default)(h,"id","create-backup"),(0,o.default)(h,"title",t("Create Volume Backup")),(0,o.default)(h,"buttonText",t("Create Backup")),(0,o.default)(h,"policy","backup:create"),(0,o.default)(h,"aliasPolicy","cinder:backup:create"),(0,o.default)(h,"allowed",(e=>s.default.resolve((0,f.isAvailableOrInUse)(e))));var m=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=m},1547:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.PoolStore=void 0;var f=c(a(36)),p=c(a(62)),h=c(a(343)),m=c(a(48)),g=c(a(53));function v(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}function y(e){for(var t=1;t{var{keywords:t}=e;return y(y({},(0,p.default)(e,["keywords"])),{},{detail:!0})}}get mapper(){return e=>{var{name:t,capabilities:a={}}=e,r=y({name:t},a),{total_capacity_gb:n,free_capacity_gb:i}=a;return(0,h.default)(n)&&(0,h.default)(i)&&(r.usedGB=(n-i).toFixed(2),r.usedGBPercent=100*(r.usedGB/n).toFixed(2)),r}}}t.PoolStore=b;var _=new b;t.default=_},1548:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(334),l=n(a(3565)),s=n(a(3566)),o=n(a(3567)),u=n(a(3568)),d=n(a(3569)),c=n(a(1403)),f={firstAction:d.default,moreActions:[{action:s.default},{action:u.default},{action:c.default},{action:o.default}]},p={actionConfigs:{rowActions:f,batchActions:[o.default],primaryActions:[l.default]},adminConfigs:{rowActions:{firstAction:o.default},batchActions:[o.default],primaryActions:[l.default]},instanceDetailConfigs:{rowActions:{firstAction:u.default}},instanceDetailAdminConfigs:i.emptyActionConfig,qosDetailConfigs:{rowActions:f},qosDetailAdminConfigs:{rowActions:{firstAction:o.default}}};t.default=p},1549:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3570)),l=n(a(3571)),s=n(a(3572)),o=n(a(3573)),u=n(a(3574)),d=n(a(3575)),c=n(a(3576)),f=n(a(3577)),p=n(a(1550)),h={actionConfigs:{rowActions:{firstAction:s.default,moreActions:[{action:o.default},{action:c.default},{action:f.default},{action:u.default},{action:d.default},{action:p.default},{},{action:l.default}]},batchActions:[l.default],primaryActions:[i.default]},actionConfigsInDetail:{rowActions:{firstAction:u.default,moreActions:[{action:d.default}]},batchActions:[],primaryActions:[]},noActions:{rowActions:{firstAction:null,moreActions:[]},batchActions:[],primaryActions:[]},adminActions:{rowActions:{firstAction:l.default,moreActions:[]},batchActions:[l.default],primaryActions:[]}};t.default=h},1550:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var l=i(r(65)),s=i(r(57)),o=i(r(51)),u=i(r(36)),d=i(r(111)),c=r(406),f=r(1193),p=i(r(561)),h=r(416),m=r(1274),g=r(34);class v extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={},port_security_enabled:a}=e,{id:r}=this.item,n={port:{security_groups:a?t:[],port_security_enabled:a}};return this.securityGroupStore.updatePortSecurityGroup({id:r,reqBody:n})}))}get name(){return t("Manage Security Group")}init(){this.securityGroupStore=new h.SecurityGroupStore,this.currentSecurityGroups=[],this.state.sgInitValue={selectedRowKeys:[],selectedRows:[]},this.detail=null,this.getPortDetail()}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{sgInitValue:e}=this.state,{selectedRowKeys:t=[]}=e||{};return t.length?{port_security_enabled:this.item.port_security_enabled,securityGroup:e}:{}}getPortDetail(){var e=this;return(0,o.default)((function*(){var{id:t,security_groups:a,port_security_enabled:r}=e.item,n=a;a||(n=(yield p.default.fetchDetail({id:t})).security_groups);var i=yield l.default.all((0,s.default)(n).call(n,(t=>e.securityGroupStore.fetchDetail({id:t})))),o={selectedRowKeys:(0,s.default)(n).call(n,(e=>(0,g.toJS)(e))),selectedRows:(0,s.default)(i).call(i,(e=>(0,g.toJS)(e)))};e.setState({sgInitValue:o,port_security_enabled:r}),e.updateFormValue("securityGroup",o),e.updateFormValue("port_security_enabled",r)}))()}get messageHasItemName(){var{item:e}=this.props;return!!e&&e.name}get formItems(){var{sgInitValue:e,port_security_enabled:a}=this.state;return[{name:"port_security_enabled",label:t("Port Security"),type:"switch",onChange:e=>{this.setState({port_security_enabled:e})},required:!0},{name:"securityGroup",label:t("Security Group"),type:"select-table",tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},initValue:e,isMulti:!0,filterParams:m.securityGroupFilter,columns:m.securityGroupColumns,onRow:()=>{},hidden:!a}]}}a.ManageSecurityGroup=v,(0,u.default)(v,"id","manage-security-group"),(0,u.default)(v,"title",t("Manage Security Group")),(0,u.default)(v,"policy","update_port:port_security_enabled"),(0,u.default)(v,"allowed",(e=>l.default.resolve(0===(0,d.default)(e,"origin_data.allowed_address_pairs",[]).length)));var y=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=y},1567:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Storage=void 0;var l=i(r(62)),s=i(r(36)),o=r(406),u=i(r(1194)),d=i(r(1547)),c=r(1401);class f extends u.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>c.poolColumns)),(0,s.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=d.default}get policy(){return"scheduler_extension:scheduler_stats:get_pools"}get name(){return t("storage backend")}get rowKey(){return"name"}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Protocol"),name:"storage_protocol"},{label:t("Backend Name"),name:"volume_backend_name"}]}}a.Storage=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},1598:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Credentials=void 0;var p=f(r(57)),h=f(r(198)),m=f(r(36)),g=f(r(0)),v=r(406),y=f(r(1194)),b=r(1410),_=f(r(140)),S=r(3954);function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t[{title:t("ID/Name"),dataIndex:"name",isName:!0,hasNoDetail:!0},{title:t("Project ID/Name"),dataIndex:"project_name"},{title:t("Description"),dataIndex:"description",isHideable:!0},{title:t("Expires At"),dataIndex:"expires_at",valueRender:"toLocalTime",isHideable:!0},{title:t("Roles"),dataIndex:"roles",render:e=>{var t;return(0,p.default)(t=e||[]).call(t,(e=>g.default.createElement("div",{key:e.id},e.name)))},stringify:e=>(0,p.default)(e).call(e,(e=>e.name)).join("\n")}])),(0,m.default)(this,"updateFetchParams",(e=>this.isUserDetail?e:w(w({},e),{},{id:_.default.user.user.id})))}init(){this.store=new b.CredentialStore,this.downloadStore=new b.CredentialStore}get isUserDetail(){var e;return this.inDetailPage&&(0,h.default)(e=this.path).call(e,"user-admin/detail")}get policy(){return"identity:get_application_credential"}get name(){return t("application credential")}get actionConfigs(){return this.isUserDetail?S.detailConfigs:S.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Credentials=I;var C=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=C},1679:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.getValue=void 0;var i=n(a(335)),l=n(a(99)),s=n(a(1369));t.getValue=e=>{if((0,l.default)(e))try{return s.default.safeDump(e,{noRefs:!0})}catch(t){return(0,i.default)(e,null,2)}return String(e)}},1680:function(e,t,a){var r=a(1681);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},1681:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__editor--3eLoM {\n min-height: 60vh;\n border-radius: 4px;\n}\n",""]),t.locals={editor:"index__editor--3eLoM"}},1682:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(409)),l=n(a(0)),s=n(a(1370)),o=n(a(1292));a(1688),a(1689),a(1690);var u=a(1692);o.default.config.setModuleUrl("ace/mode/json_worker",u);class d extends l.default.Component{render(){return l.default.createElement(s.default,(0,i.default)({theme:"github",width:"auto",height:"100%",tabSize:2,debounceChangePeriod:200,editorProps:{$blockScrolling:!0},showPrintMargin:!1,wrapEnabled:!0},this.props))}}t.default=d},1690:function(e,t,a){var r=a(1691);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},1691:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* stylelint-disable selector-class-pattern */\n.custom__ace_editor--2x9Bb {\n font-family: Monaco, Menlo, Consolas, 'Courier New', monospace;\n line-height: 20px !important;\n -webkit-font-smoothing: auto;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L {\n color: #fff;\n background-color: #242e42;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_gutter--1cP4P {\n color: #537f7e;\n background-color: #242e42;\n border-right: 1px solid #4a5974;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_variable--ViPst,\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_identifier--249iw,\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_meta--2PQjL.custom__ace_tag--2I4Xk {\n color: #75e0f2;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_keyword--TdUSy {\n color: #fff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_string--3lFMH {\n color: #ebe087;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_constant--bDEu2.custom__ace_numeric--2gqBl {\n color: #bd99ff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_marker-layer--6Ofnc .custom__ace_active-line--3gBy- {\n background-color: #36435c;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_indent-guide--2YcVM {\n padding: 2px 0;\n border-right: 1px dotted #777;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_marker-layer--6Ofnc .custom__ace_selection--1U_DQ {\n background-color: #4a5974;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_comment--1foUc {\n color: #aaa;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_fold--3dVBm:hover {\n background-color: #fff;\n}\n.custom__ace_editor--2x9Bb.custom__ace-chaos--NJP1L .custom__ace_line--3FuBW .custom__ace_fold--3dVBm {\n height: auto;\n}\n",""]),t.locals={ace_editor:"custom__ace_editor--2x9Bb","ace-chaos":"custom__ace-chaos--NJP1L",ace_gutter:"custom__ace_gutter--1cP4P",ace_variable:"custom__ace_variable--ViPst",ace_identifier:"custom__ace_identifier--249iw",ace_meta:"custom__ace_meta--2PQjL",ace_tag:"custom__ace_tag--2I4Xk",ace_keyword:"custom__ace_keyword--TdUSy",ace_string:"custom__ace_string--3lFMH",ace_constant:"custom__ace_constant--bDEu2",ace_numeric:"custom__ace_numeric--2gqBl","ace_marker-layer":"custom__ace_marker-layer--6Ofnc","ace_active-line":"custom__ace_active-line--3gBy-","ace_indent-guide":"custom__ace_indent-guide--2YcVM",ace_selection:"custom__ace_selection--1U_DQ",ace_comment:"custom__ace_comment--1foUc",ace_fold:"custom__ace_fold--3dVBm",ace_line:"custom__ace_line--3FuBW"}},1699:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.statusMap=void 0;var n={500:t("Internal Server Error (code: 500) "),501:t("Not Implemented (code: 501) "),502:t("Bad Gateway (code: 502) "),503:t("Service Unavailable (code: 503) "),504:t("Gateway Time-out (code: 504) "),505:t("HTTP Version not supported (code: 505) ")};a.statusMap=n},1700:function(e,t,a){var r=a(1701);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},1701:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__notify--2uuPy .ant-notification-notice-icon {\n font-size: 18px;\n}\n.index__notify--2uuPy .ant-notification-notice-message {\n font-size: 12px;\n word-break: break-all;\n}\n.index__notify--2uuPy .ant-notification-notice-with-icon .ant-notification-notice-message {\n margin-left: 32px;\n}\n.index__code-editor--D2lB7 {\n height: 400px !important;\n min-height: 400px !important;\n}\n",""]),t.locals={notify:"index__notify--2uuPy","code-editor":"index__code-editor--D2lB7"}},2010:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\n/* stylelint-disable no-duplicate-selectors */\n/* stylelint-disable */\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.style__container--3Y09L {\n height: 100%;\n padding: 44px;\n overflow: auto;\n}\n.style__container--3Y09L .style__main-icon--1ECQa {\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: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.style__container--3Y09L .style__action-button--2uJsF {\n color: #a3a3a3;\n font-size: 18px;\n line-height: 88px;\n background: #fff;\n border-radius: 4px;\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 opacity: 0.9;\n}\n.style__container--3Y09L .style__action-icon--3cQV7 {\n display: block;\n width: 50px;\n height: 50px;\n margin-left: 60px;\n}\n.style__container--3Y09L .ant-card {\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.style__container--3Y09L .ant-card-head {\n font-size: 16px;\n}\n.style__container--3Y09L .style__left--2FbNm {\n height: 100%;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB {\n display: table-cell;\n vertical-align: bottom;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB .style__text--2ZnVb {\n color: #252525;\n font-size: 21px;\n}\n.style__container--3Y09L .style__left--2FbNm .style__top--3UBpB .style__title--18DKB .style__action--1T3zl {\n margin-left: 40px;\n color: #000;\n font-size: 16px;\n}\n.style__container--3Y09L .style__right--18Zal {\n height: 100%;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ {\n position: relative;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ .style__meta--VzBqf {\n margin-bottom: 16px;\n padding-bottom: 16px;\n border-bottom: 1px dashed #e8e8e8;\n}\n.style__container--3Y09L .style__right--18Zal .style__project--2WhsJ .ant-descriptions-item-label {\n width: 130px;\n}\n.style__outer--GK3KD {\n position: relative;\n width: 100%;\n height: 10rem;\n overflow: hidden;\n font-size: 12px;\n}\n.style__outer--GK3KD .style__inner--19_DW {\n position: absolute;\n left: 0;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: scroll;\n}\n.style__outer--GK3KD .style__inner--19_DW::-webkit-scrollbar {\n display: none;\n}\n.style__bottom--1cuhB {\n border-radius: 4px;\n}\n.style__bottom--1cuhB .ant-card {\n -webkit-box-shadow: unset;\n box-shadow: unset;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__text--2ZnVb {\n color: #252525;\n font-size: 16px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 {\n margin-left: 22px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 .ant-badge-status-dot {\n width: 10px;\n height: 10px;\n}\n.style__bottom--1cuhB .style__title--18DKB .style__badge--1KS_6 .ant-badge-status-text {\n font-size: 14px;\n}\n.style__bottom--1cuhB .style__action--1T3zl {\n float: right;\n margin-top: 6px;\n color: #0068ff;\n font-size: 12px;\n cursor: pointer;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 {\n padding: 8px;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .ant-card-head {\n border-bottom: none;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .ant-card-head .ant-card-head-title {\n padding-bottom: 0;\n color: #565656;\n font-weight: 500;\n font-size: 16px;\n}\n.style__bottom--1cuhB .style__content--1BVOG .style__card--3BNS7 .style__progress-title--1khEP {\n overflow: hidden;\n font-size: 14px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n",""]),t.locals={container:"style__container--3Y09L","main-icon":"style__main-icon--1ECQa","action-button":"style__action-button--2uJsF","action-icon":"style__action-icon--3cQV7",left:"style__left--2FbNm",top:"style__top--3UBpB",title:"style__title--18DKB",text:"style__text--2ZnVb",action:"style__action--1T3zl",right:"style__right--18Zal",project:"style__project--2WhsJ",meta:"style__meta--VzBqf",outer:"style__outer--GK3KD",inner:"style__inner--19_DW",bottom:"style__bottom--1cuhB",badge:"style__badge--1KS_6",content:"style__content--1BVOG",card:"style__card--3BNS7","progress-title":"style__progress-title--1khEP"}},3451:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=void 0,r(581);var h=p(r(423)),m=p(r(36));r(1319);var g=p(r(1320)),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=S(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(0)),y=(r(173),r(334)),b=r(569),_=p(r(3452));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 x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var t={value:e};1!==e&&(t.start=void 0,t.end=void 0),this.setState(w({},t),(()=>{this.onChange(t)}))})),(0,m.default)(this,"onChange",(e=>{var{onChange:t}=this.props;t&&t(w(w({},this.state),e))})),(0,m.default)(this,"onDateChange",(e=>{var t={start:e?e[0]:null,end:e?e[1]:null};this.setState(w({},t),(()=>{this.onChange(t)}))}));var{defaultValue:t}=e;this.state={defaultValue:void 0!==t?t:C,value:null,start:null,end:null}}componentDidMount(){var{defaultValue:e,value:t}=this.state;this.onChangeType(t||e)}get options(){return[{label:t("All"),value:0},{label:t("In the last hour"),value:C},{label:t("Recently a day"),value:k},{label:t("In the last 7 days"),value:D},{label:t("In the last 30 days"),value:30*k},{label:t("Custom"),value:1}]}render(){var{defaultValue:e,value:t}=this.state;return v.default.createElement("div",{className:_.default.wrapper},v.default.createElement(h.default.Group,{defaultValue:e,value:t,options:this.options,buttonStyle:"solid",optionType:"button",onChange:e=>this.onChangeType(e.target.value)}),1===t&&v.default.createElement(I,{onCalendarChange:this.onDateChange,format:b.timeFormatStr.YMDHm,showTime:!0}))}}a.default=P},3452:function(e,t,a){var r=a(3453);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3453:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__wrapper--2C8q2 {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n min-width: 450px;\n}\n",""]),t.locals={wrapper:"index__wrapper--2C8q2"}},3454:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=void 0;var s=l(a(57)),o=l(a(628));a(1227);var u=l(a(418)),d=l(a(36)),c=l(a(592)),f=l(a(3455)),p=l(a(1531)),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=v(t);if(a&&a.has(e))return a.get(e);var r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=l?i(e,s):null;o&&(o.get||o.set)?n(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),m=l(a(16)),g=(a(173),a(555),l(a(3459)));function v(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(v=function(e){return e?a:t})(e)}class y extends h.Component{constructor(){super(...arguments),(0,d.default)(this,"changeVisibleList",(e=>{var t=e.key,{value:a,onChange:r}=this.props,[...n]=a;(0,p.default)(n,t)?(0,f.default)(n,(e=>e===t)):n.push(t),r(n)}))}isVisibleOption(e){var{value:t}=e,{value:a}=this.props;return(0,p.default)(a,t)}renderHeader(){var{title:e}=this.props;return(0,c.default)(e)?null:h.default.createElement("header",null,e)}renderOptions(){var{options:e}=this.props,t=(0,s.default)(e).call(e,(e=>this.renderOption(e)));return h.default.createElement(u.default,{onClick:this.changeVisibleList,theme:"light"},t)}renderOption(e){var t=this.isVisibleOption(e),{value:a,label:r}=e,n=t?h.default.createElement(o.default,null):h.default.createElement("span",{className:g.default.empty});return h.default.createElement(u.default.Item,{key:a},n,r)}render(){var{className:e}=this.props;return h.default.createElement("div",{className:e},this.renderHeader(),this.renderOptions())}}(0,d.default)(y,"propTypes",{value:m.default.array,onChange:m.default.func.isRequired,className:m.default.string,title:m.default.node,options:m.default.array.isRequired}),(0,d.default)(y,"defaultProps",{value:[]});var b=y;t.default=b},3459:function(e,t,a){var r=a(3460);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3460:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__empty--2DMK4 {\n display: inline-block;\n width: 24px;\n}\n",""]),t.locals={empty:"index__empty--2DMK4"}},3461:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=x,r(411);var l=i(r(227));r(573);var s=i(r(421));r(333);var o=i(r(332)),u=i(r(596)),d=i(r(409));r(1227);var c=i(r(418)),f=i(r(57)),p=i(r(200)),h=i(r(0)),m=(r(173),r(555),i(r(16))),g=r(161),v=i(r(1375)),y=r(1374),b=i(r(3462)),_=(e,t)=>{var{id:a,title:r,actionType:n,buttonType:i,buttonText:l,isDanger:s}=e;return{id:a,title:r,name:l||r,actionType:n,buttonType:i,isDanger:s,action:e,isAllowed:t.length>0,items:t,isBatch:!0,needHide:!1}};function S(e){var{actions:a,selectedItems:r,onFinishAction:n,containerProps:i,onClickAction:l,onCancelAction:p}=e;if(a.length<1)return null;var m=(0,f.default)(a).call(a,(e=>{var t="table-batch-more-".concat((0,g.generateId)()),a=_(e,r),{isDanger:s,name:o}=a;return a.onFinishAction=n,a.isDanger=!!s,r.length?h.default.createElement(c.default.Item,{key:t},h.default.createElement(v.default,(0,d.default)({},a,{buttonType:"link",onFinishAction:n,containerProps:i,onClickAction:l,onCancelAction:p,buttonClassName:b.default["more-action-btn"]}))):h.default.createElement(c.default.Item,{key:t,disabled:!0,style:{textAlign:"center"}},o)})),y=h.default.createElement(c.default,null,m);return h.default.createElement(s.default,{overlay:y,overlayClassName:b.default["table-batch-menu"]},h.default.createElement(o.default,{type:"primary"},t("More Actions")," ",h.default.createElement(u.default,null)))}function x(e){var a,r,{selectedItems:n,visibleButtonNumber:i,batchActions:s,onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b,resourceName:x,isAdminPage:w}=e,I=[],C=[],k=(0,y.getActionsByPolicy)({actions:s,containerProps:c,isAdminPage:w});return i{var{isDanger:a=!1,buttonType:r="default"}=e;return n&&0!==n.length?h.default.createElement(v.default,(0,d.default)({},_(e,n),{key:"table-batch-action-".concat((0,g.generateId)()),onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b})):h.default.createElement(l.default,{title:t("Please select {name} first",{name:x}),key:"tooltip-".concat((0,g.generateId)())},h.default.createElement(o.default,{type:r,disabled:!0,danger:a},e.buttonText||e.title))})),a=h.default.createElement(S,{actions:C,selectedItems:n,onFinishAction:u,containerProps:c,onClickAction:m,onCancelAction:b}),h.default.createElement(h.default.Fragment,null,r,a)}x.defaultProps={visibleButtonNumber:1},x.prototypes={visibleButtonNumber:m.default.number}},3462:function(e,t,a){var r=a(3463);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3463:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__table-action--1o0Rg {\n margin-right: 5px;\n}\n.index__more-action-btn--oi5mL {\n width: 100%;\n text-align: center;\n}\n.index__table-batch-menu--39tMs .ant-dropdown-menu-item {\n padding-right: 0;\n padding-left: 0;\n}\n",""]),t.locals={"table-action":"index__table-action--1o0Rg","more-action-btn":"index__more-action-btn--oi5mL","table-batch-menu":"index__table-batch-menu--39tMs"}},3464:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(57)),u=s(r(198)),d=s(r(81)),c=s(r(27)),f=s(r(65));r(573);var p=s(r(421));r(1227);var h=s(r(418)),m=s(r(601));r(1222);var g=s(r(1223));r(411);var v=s(r(227));r(333);var y=s(r(332)),b=s(r(1382)),_=s(r(51)),S=s(r(36)),x=s(r(91)),w=s(r(99)),I=s(r(111)),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=N(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),k=s(r(16)),D=s(r(1298)),P=(r(555),r(173),r(3465)),T=r(161),A=s(r(1228)),M=s(r(1376)),R=s(r(3466));function N(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(N=function(e){return e?a:t})(e)}class E extends C.Component{constructor(e){var a;super(e),a=this,(0,S.default)(this,"getSimpleValue",((e,t,a)=>{var r,n;return(0,x.default)(e)?(0,o.default)(e).call(e,((e,r)=>{if(C.default.isValidElement(e))try{return t[a][r]}catch(e){return""}return e})).join("\n"):(0,w.default)(e)?C.default.isValidElement(e)?(0,u.default)(n=[void 0,"",null]).call(n,t[a])?"-":t[a].toString():t[a]:(0,u.default)(r=[void 0,"",null]).call(r,e)?"-":e})),(0,S.default)(this,"getColumnData",((e,t)=>{var a,{dataIndex:r,render:n,valueRender:i,stringify:l,valueMap:s,unit:o}=t,{getValueRenderFunc:u}=this.props,c=(0,I.default)(e,r);if(l)return l(c,e);if(i){var f=u("sinceTime"===i?"toLocalTime":i);return this.getSimpleValue(f(c,e),e,r)}return n?this.getSimpleValue(n(c,e),e,r):o?(0,d.default)(a="".concat(c)).call(a,o):s?s[c]||c:this.getSimpleValue(c,e,r)})),(0,S.default)(this,"confirmExportMax",(()=>{var{totalMax:e,total:a}=this.props;M.default.warn({title:t("Are you sure to download data?"),content:t("The total amount of data is { total }, and the interface can support downloading { totalMax } pieces of data. If you need to download all the data, please contact the administrator.",{totalMax:e,total:a}),onCancel:this.onConfirmCancel,onOk:this.beginDownload})})),(0,S.default)(this,"downloadAllData",(()=>{var{total:e,totalMax:t}=this.props;e&&e>t?this.confirmExportMax():this.beginDownload()})),(0,S.default)(this,"getFileName",(e=>{var a,r,n,i,l=(0,T.toLocalTimeFilter)((new Date).getTime()),{resourceName:s,extraName:o}=this.props,u=o?(0,d.default)(a="".concat(o,"-")).call(a,s):s;return e?(0,d.default)(r=(0,d.default)(n="".concat(u,"-")).call(n,t("all"),"-")).call(r,l,".csv"):(0,d.default)(i="".concat(u,"-")).call(i,l,".csv")})),(0,S.default)(this,"exportCurrentData",((e,a)=>{var r=this.getDownloadHeader(),n=this.getDownloadData(),i=new P.Parser({fields:r}).parse(n),l=new Blob(["\ufeff"+i],{type:"text/plain;charset=utf-8"}),s=a?this.getFileName("all"):this.getFileName();D.default.saveAs(l,s),a?A.default.success(t("All data downloaded.")):A.default.success(t("Current data downloaded."))})),(0,S.default)(this,"exportCurrentDataAll",(()=>{this.exportCurrentData(null,!0)})),(0,S.default)(this,"exportAllData",(()=>{var e=this.getDownloadHeader(),a=this.getDownloadDataAll(),r=new P.Parser({fields:e}).parse(a),n=new Blob(["\ufeff"+r],{type:"text/plain;charset=utf-8"}),i=this.getFileName("all");D.default.saveAs(n,i),A.default.success(t("All data downloaded."))})),(0,S.default)(this,"cancelDownload",(()=>{this.setState({isDownloading:!1},(()=>{var{onFinishDownload:e}=this.props;e&&e()})),A.default.warn(t("Download canceled!"))})),(0,S.default)(this,"beginDownload",(()=>{this.setState({isDownloading:!0,percent:0,current:1,allData:[]},(()=>{var{onBeginDownload:e}=this.props;e&&e(),this.getDownloadDataForAll()}))})),(0,S.default)(this,"finishDownload",(()=>{this.setState({isDownloading:!1},(()=>{this.exportAllData();var{onFinishDownload:e}=this.props;e&&e()}))})),(0,S.default)(this,"getDownloadDataForAll",(0,_.default)((function*(){var{current:e,allData:t,isDownloading:r}=a.state,{totalMax:n}=a.props,i=Math.min(a.total||0,n);if(r){var{getData:l}=a.props,s=yield l({page:e,limit:a.pageSize}),o=[...t,...s];if(s.length=i)a.setState({allData:o,percent:100},(()=>{a.finishDownload()}));else{var u=0;(u=i?Math.floor(o.length/i*100):10*e)>100&&(u=100),a.setState({allData:o,current:e+1,percent:u},(()=>{a.getDownloadDataForAll()}))}}}))),this.state={isDownloading:!1,current:1,allData:[]}}get pageSize(){return 100}get total(){return this.props.total}getDownloadHeader(){var{columns:e}=this.props;return(0,o.default)(e).call(e,(e=>({label:e.title,value:e.dataIndex,default:""})))}getDownloadData(){var{columns:e,data:t}=this.props;return(0,o.default)(t).call(t,(t=>{var a={};return(0,c.default)(e).call(e,(e=>{var r=this.getColumnData(t,e);a[e.dataIndex]=r})),a}))}getDownloadDataAll(){var{columns:e}=this.props,{allData:t}=this.state;return(0,o.default)(t).call(t,(t=>{var a={};return(0,c.default)(e).call(e,(e=>{var r=this.getColumnData(t,e);a[e.dataIndex]=r})),a}))}renderDownloadCurrent(){return C.default.createElement(v.default,{title:t("Download all data")},C.default.createElement(y.default,{type:"default",onClick:this.exportCurrentDataAll,icon:C.default.createElement(b.default,null)}))}renderProgress(){var{isDownloading:e,percent:t}=this.state;return e?C.default.createElement(g.default,{percent:t,status:"active",className:R.default.progress}):null}renderCancelBtn(){var{isDownloading:e}=this.state;return e?C.default.createElement(v.default,{title:t("Cancel Download")},C.default.createElement(y.default,{type:"danger",shape:"circle",onClick:this.cancelDownload,icon:C.default.createElement(m.default,null),size:"small"})):null}renderDownloadAll(){var e=C.default.createElement(h.default,null,C.default.createElement(h.default.Item,{key:"current",onClick:this.exportCurrentData},t("Download current data")),C.default.createElement(h.default.Item,{key:"all",onClick:this.downloadAllData},t("Download all data")));return C.default.createElement(C.default.Fragment,null,C.default.createElement(p.default,{overlay:e},C.default.createElement(y.default,{type:"default",icon:C.default.createElement(b.default,null)})),this.renderProgress(),this.renderCancelBtn())}render(){var{total:e,data:t}=this.props;return e===t.length?this.renderDownloadCurrent():this.renderDownloadAll()}}a.default=E,(0,S.default)(E,"propTypes",{columns:k.default.array,data:k.default.array,total:k.default.number,getValueRenderFunc:k.default.func.isRequired,resourceName:k.default.string,extraName:k.default.string,getData:k.default.func,totalMax:k.default.number}),(0,S.default)(E,"defaultProps",{columns:[],data:[],total:0,totalMax:1e4,resourceName:"",extraName:"",getData:()=>f.default.resolve({data:{items:[],count:0}})})},3466:function(e,t,a){var r=a(3467);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3467:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__progress--1I8an {\n width: 100px;\n margin-right: 10px;\n}\n",""]),t.locals={progress:"index__progress--1I8an"}},3468:function(e,t,a){var r=a(3469);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3469:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__table--33j8W {\n overflow: hidden;\n background-color: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 4px 8px 0 rgba(36, 46, 66, 0.06);\n box-shadow: 0 4px 8px 0 rgba(36, 46, 66, 0.06);\n}\n.index__table--33j8W .ant-table-container {\n -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n}\n.index__table--33j8W .ant-table-pagination.ant-pagination {\n margin: 0;\n padding: 8px 16px;\n}\n.index__button--3bdor {\n min-width: 96px;\n margin-left: 10px;\n}\n.index__select-title--1m-fB {\n padding: 2px;\n}\n.index__cancel-select--1WxJX {\n color: #fff;\n}\n.index__create--2BjrH {\n min-width: 96px;\n margin-left: 12px;\n}\n.index__action--2MndJ {\n padding: 0 4px;\n color: #329dce;\n font-weight: 600;\n cursor: pointer;\n}\n.index__column-menu--3pO2n {\n width: 160px;\n overflow: hidden;\n border-radius: 4px;\n -webkit-box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.2);\n box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.2);\n}\n.index__column-menu--3pO2n .ant-menu-vertical > .ant-menu-item {\n height: 30px;\n line-height: 30px;\n}\n.index__custom-button--3b70- {\n margin-left: 0;\n}\n.index__table-header--3WB0r {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.index__table-header-btns--2QPSM {\n position: relative;\n display: inline-block;\n margin-bottom: 16px;\n}\n.index__table-header-btns--2QPSM button {\n margin-right: 10px;\n}\n.index__table-header-btns--2QPSM .ant-btn[disabled] {\n -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.045);\n box-shadow: 0 2px 0 rgba(0, 0, 0, 0.045);\n}\n.index__search-row--7P1c7 {\n float: right;\n min-width: 350px;\n}\n.index__search-input--1izmf {\n width: 288px;\n height: 32px;\n}\n",""]),t.locals={table:"index__table--33j8W",button:"index__button--3bdor","select-title":"index__select-title--1m-fB","cancel-select":"index__cancel-select--1WxJX",create:"index__create--2BjrH",action:"index__action--2MndJ","column-menu":"index__column-menu--3pO2n","custom-button":"index__custom-button--3b70-","table-header":"index__table-header--3WB0r","table-header-btns":"index__table-header-btns--2QPSM","search-row":"index__search-row--7P1c7","search-input":"index__search-input--1izmf"}},3470:function(e,t,a){var r=a(3471);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3471:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--3q1S2 {\n min-height: calc(100vh - 108px);\n margin-top: 16px;\n padding: 0 16px;\n}\n.index__hint--3yEH0 {\n margin-bottom: 16px;\n}\n.index__hints--1QRzH .ant-alert-warning {\n background-color: #fffbe6;\n border: 1px solid #ffe58f;\n}\n.index__hints--1QRzH .ant-alert-warning .ant-alert-icon {\n color: #faad14;\n}\n",""]),t.locals={wrapper:"index__wrapper--3q1S2",hint:"index__hint--3yEH0",hints:"index__hints--1QRzH"}},3472:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMThweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMTggMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+bG9jazwvdGl0bGU+CiAgICA8ZyBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ibG9jayIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTAuMDAwMDAwLCAwLjAwMDAwMCkiIGZpbGw9IiNFQjM1NEQiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMi4zOTk0MDY2LDkuNzYzMzE4ODEgTDE1LjA2MjEzMTksOS43OTg4MTMxIEwxNS4wNjIxMzE5LDcuMDI2OTIzMDggQzE1LjA2MjEzMTksMi43NTc2OTIzMSAxMi42MjMwNTQ0LDAgOC44NDkwOTg1NiwwIEM1LjA3NTE0MjczLDAgMi42MzYwODc3NCwyLjc1NzY5MjMxIDIuNjM2MDg3NzQsNy4wMjY5MjMwOCBMMi42MzYwODc3NCw5Ljc2MzMxODgxIEw1LjI5ODgxMzEsOS43NjMzMTg4MSBMNS4yOTg4MTMxLDcuMDI2OTIzMDggQzUuMjk4ODEzMSw1LjcxNDE5NzcyIDUuNjQ0OTY2OTUsMi42NjI3MjUzNiA4Ljg0OTA5ODU2LDIuNjYyNzI1MzYgQzExLjkzNzg2ODEsMi42NjI3MjUzNiAxMi4zOTk0MDY2LDUuMzk3MzQwNzUgMTIuMzk5NDA2Niw3LjAyNjkyMzA4IEwxMi4zOTk0MDY2LDkuNzYzMzE4ODEgWiIgaWQ9InBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgPHBhdGggZD0iTTE1LjA4ODc0Nyw5Ljc5ODgxMzEgTDIuNjYyNzI1MzYsOS43OTg4MTMxIEMxLjE5MjkwMTE1LDkuNzk4ODEzMSAwLDEwLjk5MTcxNDIgMCwxMi40NjE1Mzg1IEwwLDIxLjMzNzI3NDYgQzAsMjIuODA3MDk4OSAxLjE5MjkwMTE1LDI0IDIuNjYyNzI1MzYsMjQgTDE1LjA4ODc0NywyNCBDMTYuNTU4NTcxMiwyNCAxNy43NTE0NzI0LDIyLjgwNzA5ODkgMTcuNzUxNDcyNCwyMS4zMzcyNzQ2IEwxNy43NTE0NzI0LDEyLjQ2MTUzODUgQzE3Ljc1MTQ3MjQsMTAuOTkxNzM2OCAxNi41NTg1NzEyLDkuNzk4ODEzMSAxNS4wODg3NDcsOS43OTg4MTMxIFogTTkuNzYzMjk2MjgsMTcuNTQxMTIwOCBMOS43NjMyOTYyOCwxOS41NjIxMzE5IEM5Ljc2MzI5NjI4LDIwLjA1MTE2NDQgOS4zNjQ3OTExNywyMC40NDk3MTQ1IDguODc1NzM2MTgsMjAuNDQ5NzE0NSBDOC4zODY2ODExOSwyMC40NDk3MTQ1IDcuOTg4MTUzNTUsMjAuMDUxMTg2OSA3Ljk4ODE1MzU1LDE5LjU2MjEzMTkgTDcuOTg4MTUzNTUsMTcuNTQxMTIwOCBDNy40NTkxNjQ2NywxNy4yMzMxNDMgNy4xMDA1OTM0NSwxNi42Njc3NTg0IDcuMTAwNTkzNDUsMTYuMDExODIzOSBDNy4xMDA1OTM0NSwxNS4wMzE5NTYxIDcuODk1ODQ1ODYsMTQuMjM2NjgxMiA4Ljg3NTczNjE4LDE0LjIzNjY4MTIgQzkuODU1NjI2NTEsMTQuMjM2NjgxMiAxMC42NTA5MDE1LDE1LjAzMTk1NjEgMTAuNjUwOTAxNSwxNi4wMTE4NDY1IEMxMC42NTA5MDE1LDE2LjY2Njg1NyAxMC4yOTIzMDc3LDE3LjIzMzE0MyA5Ljc2MzI5NjI4LDE3LjU0MTE0MzMgTDkuNzYzMjk2MjgsMTcuNTQxMTIwOCBaIiBpZD0ic2hhcGUiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg=="},3473:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+dW5sb2NrPC90aXRsZT4KICAgIDxnIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSIzLi1JY29uIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNzguMDAwMDAwLCAtNzI5LjAwMDAwMCkiIGZpbGw9IiM1MTUxNTEiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJ1bmxvY2siIHRyYW5zZm9ybT0idHJhbnNsYXRlKDc4LjAwMDAwMCwgNzI5LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTEwLjE1MzgyODEsNy4zMDggTDEwLjE1MzgyODEsOC4zMDc3MDMxMiBMMTIuOTIzMDg1OSw4LjMwNzcwMzEyIEwxMi45MjMwODU5LDcuMzA4IEMxMi45MjMwODU5LDIuODY4IDEwLjM4NjQ0NTMsMCA2LjQ2MTUzMTI1LDAgQzIuNTM2NjE3MTksMCAwLDIuODY4IDAsNy4zMDggTDAsMTAuMTUzODUxNiBMMi43NjkyMzQzNywxMC4xNTM4NTE2IEwyLjc2OTIzNDM3LDcuMzA4IEMyLjc2OTIzNDM3LDUuOTQyNzY1NjIgMy4xMjkyMzQzOCwyLjc2OTIzNDM3IDYuNDYxNTMxMjUsMi43NjkyMzQzNyBDOS42NzM4NTE1NiwyLjc2OTIzNDM3IDEwLjE1Mzg1MTYsNS42MTMyMzQzOCAxMC4xNTM4NTE2LDcuMzA4IEwxMC4xNTM4MjgxLDcuMzA4IFoiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0yMS4yMzA3NjU2LDkuMjMwNzY1NjMgTDguMzA3NzAzMTIsOS4yMzA3NjU2MyBDNi43NzkwODU5NCw5LjIzMDc2NTYzIDUuNTM4NDY4NzUsMTAuNDcxMzgyOCA1LjUzODQ2ODc1LDEyIEw1LjUzODQ2ODc1LDIxLjIzMDc2NTYgQzUuNTM4NDY4NzUsMjIuNzU5MzgyOCA2Ljc3OTA4NTk0LDI0IDguMzA3NzAzMTIsMjQgTDIxLjIzMDc2NTYsMjQgQzIyLjc1OTM4MjgsMjQgMjQsMjIuNzU5MzgyOCAyNCwyMS4yMzA3NjU2IEwyNCwxMiBDMjQsMTAuNDcxNDA2MyAyMi43NTkzODI4LDkuMjMwNzY1NjMgMjEuMjMwNzY1Niw5LjIzMDc2NTYzIFogTTE1LjY5MjI5NjksMTcuMjgyNzY1NiBMMTUuNjkyMjk2OSwxOS4zODQ2MTcyIEMxNS42OTIyOTY5LDE5Ljg5MzIxMDkgMTUuMjc3ODUxNiwyMC4zMDc3MDMxIDE0Ljc2OTIzNDQsMjAuMzA3NzAzMSBDMTQuMjYwNjE3MiwyMC4zMDc3MDMxIDEzLjg0NjE0ODQsMTkuODkzMjM0NCAxMy44NDYxNDg0LDE5LjM4NDYxNzIgTDEzLjg0NjE0ODQsMTcuMjgyNzY1NiBDMTMuMjk2LDE2Ljk2MjQ2ODcgMTIuOTIzMDg1OSwxNi4zNzQ0Njg4IDEyLjkyMzA4NTksMTUuNjkyMjk2OSBDMTIuOTIzMDg1OSwxNC42NzMyMzQ0IDEzLjc1MDE0ODQsMTMuODQ2MTQ4NCAxNC43NjkyMzQ0LDEzLjg0NjE0ODQgQzE1Ljc4ODMyMDMsMTMuODQ2MTQ4NCAxNi42MTU0MDYyLDE0LjY3MzIzNDQgMTYuNjE1NDA2MiwxNS42OTIzMjAzIEMxNi42MTU0MDYyLDE2LjM3MzUzMTMgMTYuMjQyNDY4OCwxNi45NjI0Njg3IDE1LjY5MjI5NjksMTcuMjgyNzg5MSBMMTUuNjkyMjk2OSwxNy4yODI3NjU2IFoiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+"},3485:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ConfirmStep=void 0;var l=i(r(65)),s=i(r(81)),o=i(r(57)),u=i(r(1538)),d=i(r(32)),c=i(r(198));r(1198);var f=i(r(1199));r(1196);var p=i(r(1197)),h=i(r(36)),m=i(r(0)),g=r(406),v=i(r(1201)),y=r(1195);r(173);class b extends v.default{constructor(){super(...arguments),(0,h.default)(this,"allowed",(()=>l.default.resolve()))}init(){}get title(){return"ConfirmStep"}get name(){return"ConfirmStep"}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}getDisk(e){var t,a,{size:r,typeOption:n,deleteTypeLabel:i}=e;return(0,s.default)(t=(0,s.default)(a="".concat(n.label," ")).call(a,r,"GiB ")).call(t,i)}getBootableVolumeDisk(){var e,{bootableVolume:t}=this.props.context,{size:a,volume_type:r}=t.selectedRows[0];return(0,s.default)(e="".concat(r," ")).call(e,a,"GiB")}getSystemDisk(){if(!this.enableCinder)return null;var{context:e}=this.props,{systemDisk:t,source:{value:a}={},instanceSnapshotDisk:r}=e;return"bootableVolume"===a?this.getBootableVolumeDisk():"instanceSnapshot"===a&&null!==r?this.getDisk(r):this.getDisk(t)}getDataDisk(){if(!this.enableCinder)return null;var{context:e}=this.props,{dataDisk:t=[]}=e;return(0,o.default)(t).call(t,(e=>this.getDisk(e.value)))}getFlavor(){var e,t,a,{context:r}=this.props,{flavor:n}=r,{disk:i,ram:l,vcpus:o}=n.selectedRows[0];return i?(0,s.default)(e=(0,s.default)(t="".concat(o,"VCPU/")).call(t,i,"GiB/")).call(e,(0,u.default)(l/1024,10),"GiB"):(0,s.default)(a="".concat(o,"VCPU/")).call(a,(0,u.default)(l/1024,10),"GiB")}getSourceValue(){var{context:e}=this.props,{source:t}=e,{selectedRows:a=[],selectedRowKeys:r=[]}=e[t.value];return a.length?a[0].name:r[0]}getVirtualLANs(){var{context:e}=this.props,{networks:t=[]}=e,a=(0,o.default)(t).call(t,(e=>{var t,a,r,{networkOption:n,subnetOption:i,ipTypeOption:l,ip:o}=e.value,u=1===l.value?i.name||i.label:"";return(0,s.default)(t=(0,s.default)(a=(0,s.default)(r="".concat(n.name||n.label," ")).call(r,l.label," ")).call(a,u," ")).call(t,1===l.value?o:"")}));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getPorts(){var{context:e}=this.props,{ports:{selectedRows:t=[]}={}}=e,a=(0,o.default)(t).call(t,(e=>e.name||e.id));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getSecurityGroups(){var{context:e}=this.props,{securityGroup:{selectedRows:t=[]}={}}=e,a=(0,o.default)(t).call(t,(e=>e.name));return m.default.createElement(f.default,null,(0,o.default)(a).call(a,(e=>m.default.createElement(p.default,{span:24,key:e},e))))}getLoginType(){var e,{context:t}=this.props,{loginType:a,keypair:r}=t,{value:n,label:i}=a;return(0,s.default)(e="".concat(i," ")).call(e,"keypair"===n?r.selectedRows[0].name:"")}getPhysicalNode(){var{context:e}=this.props,{physicalNodeType:t,physicalNode:a}=e;return t?"smart"===t.value?t.label:a.selectedRows[0].hypervisor_hostname:y.physicalNodeTypes[0].label}getServerGroup(){var{context:e}=this.props,{serverGroup:t}=e;return t&&t.selectedRows.length?t.selectedRows[0].name:"-"}getIso(){var{context:e}=this.props,{iso:t}=e;return t&&0!==t.length?(0,o.default)(t).call(t,(e=>e.value)).join(" "):"-"}goStep(e){var{goStep:t}=this.props;t&&t(e)}get defaultValue(){return{}}get formItems(){var e,a,{context:r}=this.props,n=[{label:t("Start Source"),value:r.source.label},{label:t("System Disk"),value:this.getSystemDisk()},{label:t("Available Zone"),value:r.availableZone.label},{label:t("Start Source Name"),value:this.getSourceValue()},{label:t("Data Disk"),value:this.getDataDisk()},{label:t("Project"),value:r.project},{label:t("Flavor"),value:this.getFlavor()}];return this.enableCinder||(n=(0,d.default)(n).call(n,(e=>{var a;return!(0,c.default)(a=[t("System Disk"),t("Data Disk")]).call(a,e.label)}))),[{name:"confirm-count",label:t("Count"),type:"label",content:r.count||1},{name:"confirm-config",label:t("Config Overview"),type:"descriptions",title:t("Base Config"),onClick:()=>{this.goStep(0)},items:n},{type:"short-divider"},{name:"confirm-config-network",label:" ",type:"descriptions",title:t("Network Config"),onClick:()=>{this.goStep(1)},items:[{label:(0,s.default)(e="".concat(t("Virtual LAN"),"(")).call(e,t("New"),")"),value:this.getVirtualLANs(),span:1},{label:(0,s.default)(a="".concat(t("Virtual LAN"),"(")).call(a,t("Created"),")"),value:this.getPorts(),span:1},{label:t("Security Group"),value:this.getSecurityGroups(),span:1}]},{type:"short-divider"},{name:"confirm-config-system",label:" ",type:"descriptions",title:t("System Config"),onClick:()=>{this.goStep(2)},items:[{label:t("Name"),value:r.name},{label:t("Login Type"),value:this.getLoginType()},{label:t("Physical Node"),value:this.getPhysicalNode()},{label:t("Server Group"),value:this.getServerGroup()}]}]}}a.ConfirmStep=b;var _=(0,g.inject)("rootStore")((0,g.observer)(b));a.default=_},3489:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SystemStep=void 0;var p=f(r(65)),h=f(r(102)),m=f(r(57)),g=f(r(32)),v=f(r(51)),y=f(r(36)),b=f(r(559)),_=f(r(0)),S=r(406),x=f(r(420)),w=f(r(408)),I=f(r(586)),C=f(r(585)),k=f(r(1300)),D=f(r(1201)),P=r(556),T=r(1337),A=r(1195),M=r(161),R=f(r(1539)),N=f(r(1249)),E=f(r(1540));function j(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function F(e){for(var t=1;tp.default.resolve())),(0,y.default)(this,"onFinishCreateKeyPair",(0,v.default)((function*(){var{createdItem:t}=e.keyPairStore,a=yield e.getKeypairs(),r=(0,h.default)(a).call(a,(e=>e.name===(t||{}).name));if(r){var n={selectedRowKeys:[r.id],selectedRows:[r]};e.setState({initKeyPair:n},(()=>{e.updateDefaultValue()}))}}))),(0,y.default)(this,"onValuesChange",(e=>{(0,b.default)(e,"serverGroup")&&this.onServerGroupChange(e.serverGroup)})),(0,y.default)(this,"onServerGroupChange",(e=>{var{selectedRows:t=[]}=e||{};this.updateContext({serverGroupRow:t[0]||null})}))}init(){this.keyPairStore=x.default,this.serverStore=w.default,this.hypervisorStore=I.default,this.serverGroupStore=C.default,this.getKeypairs(),this.hasAdminRole&&this.getHypervisors(),this.getServerGroups()}get hypervisorColumns(){var e=[...T.hypervisorColumns];return e[0]={title:t("Hostname"),dataIndex:"hypervisor_hostname"},e}get hypervisorFilters(){var e=[...T.hypervisorFilters];return e[0]={label:t("Hostname"),name:"hypervisor_hostname"},e}get title(){return"SystemStep"}get name(){return"SystemStep"}get keypairs(){var e;return(0,m.default)(e=this.keyPairStore.list.data||[]).call(e,(e=>F(F({},e),{},{key:e.name,id:e.name})))}get hypervisors(){var e;return(0,m.default)(e=this.hypervisorStore.list.data||[]).call(e,(e=>F(F({},e),{},{key:e.id,name:e.hypervisor_hostname})))}get serverGroups(){var e;return(0,g.default)(e=this.serverGroupStore.list.data||[]).call(e,(e=>{var{servergroup:t}=this.locationParams;return!t||e.id===t}))}get serverGroupRequired(){var{more:e}=this.state,{servergroup:t}=this.locationParams;return!!t&&e}get inputHelp(){var{input:e=""}=this.state;return t("Entered: {length, plural, =1 {one character} other {# characters} }(maximum {maxCount} characters)",{length:e.length,maxCount:1e3})}get sourceInfo(){var{context:e={}}=this.props,{source:t={},image:a={},bootableVolume:r={},instanceSnapshot:n={}}=e;if("image"===t.value){var{selectedRows:i=[]}=a;return i.length&&i[0]}if("bootableVolume"===t.value){var{selectedRows:l=[]}=r,s=l.length&&l[0].origin_data||{},o=l.length&&l[0].volume_image_metadata;return s.volume_image_metadata||o}if("instanceSnapshot"===t.value){var{selectedRows:u=[]}=n;return u.length&&u[0]}return!1}get isWindowsImage(){return this.sourceInfo&&"windows"===this.sourceInfo.os_distro}get defaultValue(){var e,{servergroup:t}=this.locationParams,{context:a={}}=this.props,r={loginType:a.loginType||(this.isWindowsImage?this.loginTypes[1]:this.loginTypes[0]),more:!1,physicalNodeType:A.physicalNodeTypes[0],userData:""};t&&(r.serverGroup={selectedRowKeys:[t],selectedRows:(0,g.default)(e=this.serverGroups).call(e,(e=>e.id===t))});var{initKeyPair:n,name:i}=this.state;return n&&(r.keypair=n),i&&(r.name=i),r}get loginTypes(){return[{label:t("Keypair"),value:"keypair",disabled:this.isWindowsImage},{label:t("Password"),value:"password"}]}getKeypairs(){var e=this;return(0,v.default)((function*(){return e.keyPairStore.fetchList()}))()}getHypervisors(){this.hypervisorStore.fetchList()}getServerGroups(){var e=this;return(0,v.default)((function*(){yield e.serverGroupStore.fetchList(),e.updateDefaultValue();var{servergroup:t}=e.locationParams;t&&e.onServerGroupChange({selectedRows:e.serverGroups})}))()}get nameForStateUpdate(){return["name","loginType","password","confirmPassword","more","physicalNodeType","serverGroup"]}get loginUserName(){return this.sourceInfo&&this.sourceInfo.os_admin_user}getKeyPairHeader(){var{isLoading:e}=this.keyPairStore.list||{};return e?null:_.default.createElement("div",{style:{marginBottom:10}},_.default.createElement("span",null,t("The key pair allows you to SSH into your newly created instance. You can select an existing key pair, import a key pair, or generate a new key pair.")),_.default.createElement("span",{className:E.default["action-wrapper"]},_.default.createElement(N.default,{actions:{moreActions:[{action:R.default}]},onFinishAction:this.onFinishCreateKeyPair})))}get formItems(){var{loginType:e,more:a=!1,physicalNodeType:r}=this.state,n=e===this.loginTypes[1].value,i=r===A.physicalNodeTypes[1].value,{initKeyPair:l}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,isInstance:!0},{name:"loginType",label:t("Login Type"),type:"radio",options:this.loginTypes,isWrappedValue:!0},{name:"username",label:t("Login Name"),content:this.loginUserName||"-",extra:this.loginUserName?"":t("The feasible configuration of cloud-init or cloudbase-init service in the image is not synced to image's properties, so the Login Name is unknown."),tip:t("Whether the Login Name can be used is up to the feasible configuration of cloud-init or cloudbase-init service in the image.")},{name:"keypair",label:t("Keypair"),type:"select-table",data:this.keypairs,isLoading:this.keyPairStore.list.isLoading,required:!n,hidden:n,header:this.getKeyPairHeader(),initValue:l,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}],selectedLabel:t("Keypair")},{name:"password",label:t("Login Password"),type:"input-password",required:n,hidden:!n,otherRule:(0,P.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:n,hidden:!n,otherRule:(0,P.getPasswordOtherRule)("confirmPassword","instance")},{type:"divider"},{name:"more",label:t("Advanced Options"),type:"more"},{name:"physicalNodeType",label:t("Physical Node"),type:"radio",hidden:!a||!this.hasAdminRole,options:A.physicalNodeTypes,isWrappedValue:!0},{name:"physicalNode",label:" ",type:"select-table",hidden:!this.hasAdminRole||!a||!i,required:i,data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,extra:t("You can manually specify a physical node to create an instance."),columns:this.hypervisorColumns,filterParams:this.hypervisorFilters},{name:"serverGroup",label:t("Server Group"),type:"select-table",hidden:!a,data:this.serverGroups,isLoading:this.serverGroupStore.list.isLoading,required:this.serverGroupRequired,extra:t("Using server groups, you can create cloud hosts on the same/different physical nodes as much as possible to meet the affinity/non-affinity requirements of business applications."),columns:[{title:t("Name"),dataIndex:"name"},{title:t("Member Count"),dataIndex:"members",render:e=>e.length},{title:t("Policy"),dataIndex:"policy",valueMap:k.default}],filterParams:[{label:t("Name"),name:"name"},{label:t("Policy"),name:"policy",options:(0,M.getOptions)(k.default)}]},{name:"userData",label:t("User Data"),type:"textarea-from-file",validator:P.asciiValidator,hidden:!a,extra:t("The user needs to ensure that the input is a shell script that can run completely and normally.")}]}}a.SystemStep=L;var z=(0,S.inject)("rootStore")((0,S.observer)(L));a.default=z},3490:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__input--2eKC2 {\n margin-right: 32px;\n margin-left: 16px;\n}\n.index__number-input--3TVxi {\n min-width: 165px;\n}\n.index__action-wrapper--2DjKP {\n margin-left: 8px;\n}\n.index__action-wrapper--2DjKP .ant-btn-link {\n padding: 5.6px 15px !important;\n border-color: #0068FF;\n}\n",""]),t.locals={input:"index__input--2eKC2","number-input":"index__number-input--3TVxi","action-wrapper":"index__action-wrapper--2DjKP"}},3491:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.NetworkStep=void 0;var l=i(r(65)),s=i(r(102)),o=i(r(57)),u=i(r(27)),d=i(r(90)),c=i(r(1233)),f=i(r(51)),p=i(r(36)),h=i(r(91)),m=i(r(199)),g=i(r(0)),v=r(406),y=r(228),b=r(414),_=r(416),S=r(561),x=r(556),w=i(r(1201)),I=i(r(1383)),C=r(564),k=r(1274),D=r(1210),P=r(558),{isIPv4:T,isIpv6:A}=x.ipValidate;class M extends w.default{constructor(){var e;super(...arguments),e=this,(0,p.default)(this,"allowed",(()=>l.default.resolve())),(0,p.default)(this,"getSubnetPromise",function(){var t=(0,f.default)((function*(t){if(!e.subnetMap[t]){var a=yield e.subnetStore.fetchList({network_id:t});e.subnetMap[t]=a}return e.subnetMap[t]}));return function(e){return t.apply(this,arguments)}}()),(0,p.default)(this,"checkNetworks",(e=>!(!(0,h.default)(e)||(0,m.default)(e)||(0,m.default)(e[0].value))&&(!(0,s.default)(e).call(e,(e=>!e.value||!e.value.network))&&!(0,s.default)(e).call(e,(e=>1===e.value.ipType&&!T(e.value.ip)&&!A(e.value.ip)))))),(0,p.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,p.default)(this,"onNetworkChange",(e=>{var{selectedRows:t}=e;this.setState({networkSelectRows:t},(()=>{this.getSubnets()})),this.updateContext({networkSelectRows:t})})),(0,p.default)(this,"checkNetworkAndPort",(e=>{var{getFieldValue:a}=e;return{validator(){var e=a("networkSelect"),r=a("ports"),{selectedRowKeys:n=[]}=e||{},{selectedRowKeys:i=[]}=r||{};return 0===n.length&&0===i?l.default.reject(t("Please select")):l.default.resolve()}}})),(0,p.default)(this,"onPortChange",(e=>{var{selectedRows:t=[]}=e||{};this.updateContext({portSelectRows:t})}))}init(){this.networkStore=new y.NetworkStore,this.subnetStore=new b.SubnetStore,this.securityGroupStore=new _.SecurityGroupStore,this.portStore=new S.PortStore,this.subnetMap={}}get title(){return"NetworkStep"}get name(){return"NetworkStep"}get defaultValue(){return{networks:[]}}getSubnets(){var e=this;return(0,f.default)((function*(){var{networkSelectRows:t,networks:a=[]}=e.state,r=yield l.default.all((0,o.default)(t).call(t,(t=>e.getSubnetPromise(t.id)))),n=[];(0,u.default)(r).call(r,(e=>{n.push(...e)}));var i=[],c=(0,o.default)(t).call(t,((e,t)=>{var r=(0,s.default)(n).call(n,(t=>t.network_id===e.id)),l=(0,s.default)(a).call(a,((t,a)=>t.value.network===e.id&&(i.push(a),!0)));return l||{value:{network:e.id,subnet:r.id,networkOption:e,subnetOption:r,ipTypeOption:C.ipTypeOptions[0],ipType:0},index:t}})),f=(0,o.default)(t).call(t,(e=>e.id));(0,u.default)(a).call(a,((e,t)=>{(0,d.default)(i).call(i,t)<0&&(0,d.default)(f).call(f,e.value.network)>=0&&c.push(e)})),e.updateFormValue("networks",c),e.setState({subnets:n,initValue:c})}))()}get nameForStateUpdate(){return["networkSelect","networks","ports"]}get formItems(){var{networkSelectRows:e=[],subnets:a,initValue:r=[],ports:n=[]}=this.state,i=e.length>0,s=e.length&&(0,c.default)(e).call(e,(e=>e.port_security_enabled)),o=0===n.length,u=0===e.length;return[{name:"networkSelect",label:t("Networks"),type:"network-select-table",disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange,showExternal:!0,isMulti:!0,required:o,otherRule:this.checkNetworkAndPort,dependencies:["ports"],header:g.default.createElement("div",null,t("Please reasonably plan the network and subnet to which the virtual network card belongs."),t(" You can go to the console to "),(0,P.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")}))},{name:"networks",label:t("Virtual LAN"),type:"add-select",networks:e,hidden:!i,subnets:a,itemComponent:I.default,required:i,addTextTips:t("Virtual LANs"),addText:t("Add Virtual LAN"),minCount:e.length||0,optionsByIndex:!0,initValue:r,validator:(e,t)=>this.checkNetworks(t)?l.default.resolve():l.default.reject("")},{name:"divider1",type:"divider"},{name:"ports",type:"select-table",label:t("Ports"),extraParams:{project_id:this.currentProjectId,status:"DOWN"},backendPageStore:this.portStore,isMulti:!0,header:t("Ports provide extra communication channels to your instances. You can select ports instead of networks or a mix of both (The port executes its own security group rules by default)."),filterParams:D.portFilters,columns:D.portColumns,dependencies:["networkSelect"],otherRule:this.checkNetworkAndPort,required:u,onChange:this.onPortChange},{name:"divider2",type:"divider"},{name:"securityGroup",label:t("Security Group"),type:"select-table",tip:t("Each instance belongs to at least one security group, which needs to be specified when it is created. Instances in the same security group can communicate with each other on the network, and instances in different security groups are disconnected from the internal network by default."),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},hidden:!s,required:s,isMulti:!0,header:g.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,P.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")}),t("Note: The security group you use will act on all virtual adapters of the instance.")),filterParams:k.securityGroupFilter,columns:k.securityGroupColumns,onRow:()=>{}}]}}a.NetworkStep=M;var R=(0,v.inject)("rootStore")((0,v.observer)(M));a.default=R},3492:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var o=s(r(409)),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=p(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),d=s(r(3493)),c=r(347),f=r(558);function p(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(p=function(e){return e?a:t})(e)}class h extends u.Component{getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,f.getPath)({key:t,params:{id:e}})}render(){var{item:{security_group_rules:e=[]}={}}=this.props,a={buttonType:"link",title:t("Security Group Rules"),buttonText:t("View Rules"),modalSize:"middle",columns:(0,c.getSelfColumns)(this),data:e};return u.default.createElement(d.default,(0,o.default)({},a,{style:{paddingLeft:0}}))}}a.default=h},3493:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=void 0,r(572);var o=s(r(574)),u=s(r(36)),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=p(t);if(a&&a.has(e))return a.get(e);var r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(0)),c=s(r(1436)),f=s(r(16));r(173);function p(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(p=function(e){return e?a:t})(e)}class h extends d.Component{constructor(){super(...arguments),(0,u.default)(this,"renderTable",(()=>{var{data:e,columns:t}=this.props;return d.default.createElement(o.default,{columns:t,dataSource:e})}))}static propTypes(){return{title:f.default.string.isRequired,buttonType:f.default.string,isDanger:f.default.bool,data:f.default.array,columns:f.default.array,modalSize:f.default.string,className:f.default.func,buttonText:f.default.string,style:f.default.string}}render(){var{buttonType:e,isDanger:t,title:a,buttonText:r,modalSize:n,style:i}=this.props,l={buttonType:e,isDanger:t,title:a,buttonText:r,modalSize:n,style:i,render:this.renderTable};return d.default.createElement(c.default,l)}}a.default=h,(0,u.default)(h,"defaultProps",{buttonType:"link",isDanger:!1,data:[],columns:[],modalSize:"middle",className:"",buttonText:t("View Detail"),title:t("Detail")})},3498:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var p=f(r(65)),h=f(r(102)),m=f(r(57)),g=f(r(32));r(1198);var v=f(r(1199));r(1196);var y=f(r(1197)),b=f(r(51)),_=f(r(36)),S=f(r(0)),x=r(406),w=r(34),I=(r(173),r(557)),C=f(r(408)),k=f(r(565)),D=f(r(1339)),P=f(r(566)),T=f(r(1262)),A=r(410),M=r(563),R=f(r(1201)),N=f(r(1468)),E=r(1213),j=f(r(1275));function F(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function L(e){for(var t=1;tp.default.resolve())),(0,_.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,_.default)(this,"checkSystemDisk",((e,t)=>t.type?p.default.resolve():p.default.reject(""))),(0,_.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})})),(0,_.default)(this,"onInstanceSnapshotChange",function(){var a=(0,b.default)((function*(a){var r,n,{min_disk:i,size:l,id:s}=a.selectedRows[0]||{};if(!s)return e.updateContext({instanceSnapshotDisk:null}),void e.setState({instanceSnapshotDisk:null,instanceSnapshotMinSize:0});var o=yield e.instanceSnapshotStore.fetchDetail({id:s}),{snapshotDetail:{size:u=0,volume_type_id:d}={},block_device_mapping:c="",volumeDetail:f}=o;f||(e.updateContext({instanceSnapshotDisk:null}),e.setState({instanceSnapshotDisk:null,instanceSnapshotMinSize:0}));var p=Math.max(i,l,u),m={};try{m=JSON.parse(c)}catch(e){}var{volume_type:g}=f,{delete_on_termination:v}=m[0]||{},y=v?1:0,b=v?t("Deleted with the instance"):t("Not deleted with the instance"),_=d||((0,h.default)(r=e.volumeTypes).call(r,(e=>e.label===g))||{}).value,S=(0,h.default)(n=e.volumeTypes).call(n,(e=>e.value===_)),x=f?{type:_,typeOption:S,size:u,deleteType:y,deleteTypeLabel:b}:null;e.updateFormValue("instanceSnapshotDisk",x),e.updateContext({instanceSnapshotDisk:x}),e.setState({instanceSnapshotDisk:x,instanceSnapshotMinSize:p})}));return function(e){return a.apply(this,arguments)}}()),(0,_.default)(this,"onBootableVolumeChange",(e=>{this.updateContext({bootableVolume:e})})),(0,_.default)(this,"onSystemDiskChange",(e=>{this.updateContext({systemDisk:e})})),(0,_.default)(this,"onDataDiskChange",(e=>{this.updateContext({dataDisk:e})})),(0,_.default)(this,"getInstanceSnapshotDisk",(()=>{var{instanceSnapshotDisk:e}=this.state,{instanceSnapshotDisk:t}=this.props.context;return e||t})),(0,_.default)(this,"renderSnapshotDisk",(()=>{var e=this.getInstanceSnapshotDisk();if(null===e)return null;var{deleteTypeLabel:a,typeOption:r={},size:n}=e||{};if(!n)return null;var i={marginRight:10,maxWidth:"20%"};return S.default.createElement(v.default,{gutter:24},S.default.createElement(y.default,{span:8},S.default.createElement("span",{style:i},t("Type")),r.label),S.default.createElement(y.default,{span:8},S.default.createElement("span",{style:i},t("Size")),n,S.default.createElement("span",{style:i},"GiB")),S.default.createElement(y.default,{span:8},a))}))}init(){this.serverStore=C.default,this.imageStore=k.default,this.volumeStore=new A.VolumeStore,this.volumeTypeStore=P.default,this.instanceSnapshotStore=D.default,this.getAvailZones(),this.getImages(),this.getVolumeTypes(),this.getVolumes(),this.getInstanceSnapshots(),this.initSourceChange()}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){var{volume:e,snapshot:t}=this.locationParams,a=this.imageSourceType;return e?a=this.volumeSourceType:t&&(a=this.snapshotSourceType),{systemDisk:this.defaultVolumeType,source:a,project:this.currentProjectName,dataDisk:[]}}get availableZones(){var e,t;return(0,m.default)(e=(0,g.default)(t=T.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get images(){var{imageTab:e}=this.state,{image:t}=this.locationParams,a=t?[(0,w.toJS)(this.imageStore.detail)]:this.imageStore.list.data||[],r=(0,g.default)(a).call(a,(t=>!!(0,M.canImageCreateInstance)(t)&&(e?(0,M.getImageOS)(t)===e:t)));return(0,m.default)(r).call(r,(e=>L(L({},e),{},{key:e.id})))}get snapshots(){var{snapshot:e}=this.locationParams;if(!e){var{list:{data:t}}=this.instanceSnapshotStore;return t||[]}return[(0,w.toJS)(this.instanceSnapshotStore.detail)]}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get volumeTypes(){var e;return(0,m.default)(e=this.volumeTypeStore.list.data||[]).call(e,(e=>({label:e.name,value:e.id,originData:(0,w.toJS)(e)})))}get volumes(){var e,t,a,{volume:r}=this.locationParams;return r?(0,g.default)(a=[(0,w.toJS)(this.volumeStore.detail)]).call(a,(e=>(0,I.canCreateInstance)(e))):(0,m.default)(e=(0,g.default)(t=this.volumeStore.list.data||[]).call(t,(e=>(0,I.canCreateInstance)(e)))).call(e,(e=>L(L({},e),{},{key:e.id})))}get defaultVolumeType(){return{size:10,deleteType:1}}get sourceTypes(){var{image:e,snapshot:a,volume:r}=this.locationParams,n=[{label:t("Image"),value:"image",disabled:r||a},{label:t("Instance Snapshot"),value:"instanceSnapshot",disabled:e||r}];return this.enableCinder&&n.push({label:t("Bootable Volume"),value:"bootableVolume",disabled:e||a}),n}get imageSourceType(){var e;return(0,h.default)(e=this.sourceTypes).call(e,(e=>"image"===e.value))}get snapshotSourceType(){var e;return(0,h.default)(e=this.sourceTypes).call(e,(e=>"instanceSnapshot"===e.value))}get volumeSourceType(){var e;return this.enableCinder?(0,h.default)(e=this.sourceTypes).call(e,(e=>"bootableVolume"===e.value)):{}}getAvailZones(){var e=this;return(0,b.default)((function*(){yield T.default.fetchListWithoutDetail(),e.availableZones.length&&e.updateFormValue("availableZone",e.availableZones[0])}))()}getImages(){var e=this;return(0,b.default)((function*(){var t,{volume:a,image:r,snapshot:n}=e.locationParams;a||n||(r?yield e.imageStore.fetchDetail({id:r}):yield e.imageStore.fetchList({all_projects:e.hasAdminRole}),r&&e.updateFormValue("image",{selectedRowKeys:[r],selectedRows:(0,g.default)(t=e.images).call(t,(e=>e.id===r))}))}))()}getVolumeTypes(){var e=this;return(0,b.default)((function*(){e.enableCinder&&(yield e.volumeTypeStore.fetchList())}))()}getVolumes(){var e=this;return(0,b.default)((function*(){var t,{image:a,snapshot:r,volume:n}=e.locationParams;a||r||e.enableCinder&&(n?(yield e.volumeStore.fetchDetail({id:n}),e.updateContext({source:e.volumeSourceType})):yield e.volumeStore.fetchList({sortKey:"bootable",sortOrder:"ascend"}),n&&e.updateFormValue("volume",{selectedRowKeys:[n],selectedRows:(0,g.default)(t=e.volumes).call(t,(e=>e.id===n))}))}))()}getInstanceSnapshots(){var e=this;return(0,b.default)((function*(){var t,{snapshot:a}=e.locationParams;a?(yield e.instanceSnapshotStore.fetchDetail({id:a}),a&&e.updateFormValue("instanceSnapshot",{selectedRowKeys:[a],selectedRows:(0,g.default)(t=e.snapshots).call(t,(e=>e.id===a))})):e.instanceSnapshotStore.fetchList()}))()}get systemTabs(){return(0,M.getImageSystemTabs)()}get nameForStateUpdate(){return["source","image","instanceSnapshot","bootableVolume","flavor"]}getSystemDiskMinSize(){var e=(this.state.flavor||{}).disk||0,t=0;if(this.sourceTypeIsImage){var{min_disk:a=0,size:r=0}=this.state.image||{},n=Math.ceil(r/1024/1024/1024);return t=Math.max(a,n,1),Math.max(e,t,1)}if(this.sourceTypeIsSnapshot){var{instanceSnapshotMinSize:i=0}=this.state;return Math.max(e,i,1)}return Math.max(e,1)}get sourceTypeIsImage(){var{source:e}=this.state;return e===this.imageSourceType.value}get sourceTypeIsSnapshot(){var{source:e}=this.state;return e===this.snapshotSourceType.value}get sourceTypeIsVolume(){var{source:e}=this.state;return e===this.volumeSourceType.value}getImageExtraWords(){var{flavor:{category:e}={}}=this.state;return(0,E.isGpuCategory)(e)?t("For GPU type, you need to install GPU drivers in the instance operating system."):""}initSourceChange(){var{snapshot:e,volume:t}=this.locationParams;e?this.onSourceChange(this.snapshotSourceType):t?this.onSourceChange(this.volumeSourceType):this.onSourceChange(this.imageSourceType)}onSourceChange(e){this.updateContext({source:e})}get imageColumns(){return(0,M.getImageColumns)(this)}get instanceSnapshotColumns(){return[{title:t("Name"),dataIndex:"name"},{title:t("Disk Format"),dataIndex:"disk_format",valueMap:M.imageFormats},{title:t("Min System Disk"),dataIndex:"min_disk",unit:"GiB"},{title:t("Min Memory"),dataIndex:"min_ram",render:e=>"".concat(e/1024,"GiB")},{title:t("Status"),dataIndex:"status",valueMap:M.imageStatus},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]}get volumeColumns(){return[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",unit:"GiB",width:80},{title:t("Status"),dataIndex:"status",valueMap:I.volumeStatus,width:80},{title:t("Type"),dataIndex:"volume_type"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}get showSystemDisk(){var e=this.getInstanceSnapshotDisk();return this.enableCinder&&(this.sourceTypeIsImage||this.sourceTypeIsSnapshot&&null===e)}getFlavorComponent(){return S.default.createElement(j.default,{onChange:this.onFlavorChange})}get formItems(){var{image:e}=this.locationParams,a=e?this.imageStore.isLoading:this.imageStore.list.isLoading;return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),isWrappedValue:!0,required:!0,options:this.availableZones,tip:t("Availability zone refers to a physical area where power and network are independent of each other in the same area. In the same region, the availability zone and the availability zone can communicate with each other in the intranet, and the available zones can achieve fault isolation.")},{type:"divider"},{name:"flavor",label:t("Specification"),type:"select-table",component:this.getFlavorComponent(),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"source",label:t("Start Source"),type:"radio",options:this.sourceTypes,required:!0,isWrappedValue:!0,tip:t("The start source is a template used to create an instance. You can choose an image or a bootable volume."),onChange:e=>{this.onSourceChange(e)}},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:a,required:this.sourceTypeIsImage,isMulti:!1,display:this.sourceTypeIsImage,extra:this.getImageExtraWords(),filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.locationParams.os_distro||this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange},{name:"instanceSnapshot",label:t("Instance Snapshot"),type:"select-table",data:this.snapshots,required:this.sourceTypeIsSnapshot,isMulti:!1,hidden:!this.sourceTypeIsSnapshot,display:this.sourceTypeIsSnapshot,onChange:this.onInstanceSnapshotChange,filterParams:[{label:t("Name"),name:"name"}],columns:this.instanceSnapshotColumns},{name:"bootableVolume",label:t("Bootable Volume"),type:"select-table",data:this.volumes,isLoading:this.volumeStore.list.isLoading,required:this.sourceTypeIsVolume,isMulti:!1,display:this.sourceTypeIsVolume&&this.enableCinder,onChange:this.onBootableVolumeChange,filterParams:[{label:t("Name"),name:"name"}],columns:this.volumeColumns},{type:"divider"},{name:"systemDisk",label:t("System Disk"),type:"instance-volume",options:this.volumeTypes,required:this.showSystemDisk,hidden:!this.showSystemDisk,validator:this.checkSystemDisk,minSize:this.getSystemDiskMinSize(),extra:t("Disk size is limited by the min disk of flavor, image, etc."),onChange:this.onSystemDiskChange},{name:"instanceSnapshotDisk",label:t("System Disk"),hidden:this.showSystemDisk,component:this.renderSnapshotDisk()},{name:"dataDisk",label:t("Data Disk"),type:"add-select",options:this.volumeTypes,defaultItemValue:this.defaultVolumeType,itemComponent:N.default,minCount:0,addTextTips:t("Data Disks"),addText:t("Add Data Disks"),extra:t("Too many disks mounted on the instance will affect the read and write performance. It is recommended not to exceed 16 disks."),onChange:this.onDataDiskChange,display:this.enableCinder}]}}a.BaseStep=z;var O=(0,x.inject)("rootStore")((0,x.observer)(z));a.default=O},3499:function(e,t,a){var r=a(3500);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3500:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__flavor-label--GI_En {\n display: inline-block;\n min-width: 50px;\n margin-right: 16px;\n}\n.index__flavor-tab--2Mc6u {\n margin-bottom: 16px;\n}\n",""]),t.locals={"flavor-label":"index__flavor-label--GI_En","flavor-tab":"index__flavor-tab--2Mc6u"}},3537:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0,a(1268);var i=n(a(1269));a(1252);var l=n(a(1241)),s=n(a(57)),o=n(a(0)),u=(a(173),n(a(16))),d=a(161),c=n(a(3538)),f=e=>{var{title:t,descriptions:a,loading:r}=e,n=(0,s.default)(a).call(a,(e=>("number"==typeof e.content&&(e.content=e.content.toString()),o.default.createElement(l.default.Item,{label:e.label,className:c.default.item,key:"label-".concat((0,d.generateId)())},e.content))));return o.default.createElement(i.default,{loading:r},o.default.createElement(l.default,{colon:!1,title:t},n))},p=u.default.shape({label:u.default.oneOfType([u.default.string,u.default.node]),content:u.default.any});f.propTypes={title:u.default.oneOfType([u.default.string,u.default.node]),descriptions:u.default.arrayOf(p),loading:u.default.bool};var h=f;t.default=h},3538:function(e,t,a){var r=a(3539);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3539:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__item--3lFuh {\n margin-bottom: 10px;\n background-color: #fff;\n}\n.index__item--3lFuh .ant-descriptions-item-label {\n width: 100px;\n color: #8a8a8a;\n}\n.index__item--3lFuh .ant-descriptions-item-content {\n word-break: break-all;\n}\n",""]),t.locals={item:"index__item--3lFuh"}},3540:function(e,t,a){var r=a(3541);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3541:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__main--1q8mG {\n position: relative;\n height: 100%;\n overflow: auto;\n}\n.index__sider--3LZqm {\n position: absolute;\n top: 0;\n left: 0;\n width: 354px;\n min-width: 354px;\n}\n@media screen and (max-width: 1280px) {\n .index__sider--3LZqm {\n width: 300px;\n min-width: 300px;\n }\n}\n.index__content--1OSKS {\n padding-left: 374px;\n}\n@media screen and (max-width: 1280px) {\n .index__content--1OSKS {\n padding-left: 320px;\n }\n}\n.index__nav--2zbId {\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 height: 48px;\n margin: 0 0 12px;\n padding: 0 14px;\n background-color: #124191;\n border-radius: 4px;\n}\n.index__navItem--uT8lm {\n min-width: 96px;\n height: 32px;\n margin: 0 6px;\n padding: 0 14px;\n color: #fff;\n font-weight: 500;\n line-height: 32px;\n text-align: center;\n border: 1px solid transparent;\n -webkit-transition: all 0.3s;\n transition: all 0.3s;\n}\n.index__navItem--uT8lm:first-child {\n margin: 0 6px 0 0;\n}\n.index__navItem--uT8lm.index__active--oKb1h {\n background-color: #1890ff;\n border-color: #1890ff;\n border-radius: 4px;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.index__navItem--uT8lm.index__active--oKb1h:hover {\n color: #fff;\n}\n.index__loading--3cfaa {\n padding: 30px 0;\n text-align: center;\n}\n.index__header--2mGuj {\n padding-right: 16px;\n padding-bottom: 30px;\n padding-left: 16px;\n background-color: #fff;\n}\n.index__header--2mGuj .ant-descriptions-title {\n margin-bottom: 0;\n}\n.index__header-title--3X2Ku {\n font-style: italic;\n}\n.index__title-label--3TrNR {\n margin-right: 8px;\n font-style: italic;\n}\n.index__header-button--2VTui {\n float: right;\n}\n.index__header-divider--3b6-4 {\n width: 2px;\n margin: 0 14px 0 24px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__tabs--VwWK2 {\n margin-top: -42px;\n}\n.index__tabs--VwWK2 .ant-tabs-bar {\n padding-right: 16px;\n padding-left: 16px;\n}\n.index__tabs--VwWK2 .ant-tabs-nav-wrap {\n padding-left: 30px;\n}\n.index__tab-wrapper--2DZuY {\n width: 100%;\n}\n.index__tab-wrapper--2DZuY .list-container {\n margin-top: 0;\n}\n.index__action-wrapper--pIcIO {\n position: absolute;\n right: 80px;\n}\n.index__action-wrapper--pIcIO .ant-btn-link {\n padding: 5.6px 15px !important;\n border-color: #0068FF;\n}\n.index__action-wrapper--pIcIO .ant-divider-vertical {\n border-left: none;\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous {\n color: #c4233e;\n background: transparent;\n border-color: #c4233e;\n}\n.index__action-wrapper--pIcIO .ant-btn-link[disabled],\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:hover,\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:focus,\n.index__action-wrapper--pIcIO .ant-btn-link[disabled]:active {\n border-color: rgba(0, 0, 0, 0.25);\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous.ant-btn-link:active {\n color: #c4233e;\n background: transparent;\n border-color: #c4233e;\n}\n.index__action-wrapper--pIcIO .ant-btn-dangerous:hover,\n.index__action-wrapper--pIcIO .ant-btn-dangerous:focus {\n color: #f76070;\n background: #fff;\n border-color: #f76070;\n}\n",""]),t.locals={main:"index__main--1q8mG",sider:"index__sider--3LZqm",content:"index__content--1OSKS",nav:"index__nav--2zbId",navItem:"index__navItem--uT8lm",active:"index__active--oKb1h",loading:"index__loading--3cfaa",header:"index__header--2mGuj","header-title":"index__header-title--3X2Ku","title-label":"index__title-label--3TrNR","header-button":"index__header-button--2VTui","header-divider":"index__header-divider--3b6-4",tabs:"index__tabs--VwWK2","tab-wrapper":"index__tab-wrapper--2DZuY","action-wrapper":"index__action-wrapper--pIcIO"}},3542:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.SnapshotVolumeStore=void 0;var f=c(a(65)),p=c(a(57)),h=c(a(27)),m=c(a(36)),g=c(a(51)),v=c(a(53)),y=a(161),b=a(557);function _(e,t){var a=r(e);if(n){var s=n(e);t&&(s=i(s).call(s,(function(t){return l(e,t).enumerable}))),a.push.apply(a,s)}return a}class S extends v.default{get mapper(){return e=>(0,b.updateVolume)(e)}get groupArraySize(){return 10}requestList(e,t){var a=this;return(0,g.default)((function*(){var{volumeIds:r=[]}=t,n=(0,y.groupArray)(r,a.groupArraySize),i=yield f.default.all((0,p.default)(n).call(n,(t=>{var r=function(e){for(var t=1;t{c.push(...e.volumes)})),c}))()}}t.SnapshotVolumeStore=S;var x=new S;t.default=x},3546:function(e,t,a){var r=a(3547);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3547:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__input--1LaXS {\n margin-right: 32px;\n margin-left: 16px;\n}\n",""]),t.locals={input:"index__input--1LaXS"}},3548:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=i(r(65)),s=i(r(36)),o=r(406),u=r(1193),d=i(r(410)),c=r(557);class f extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.update(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},{name:"description",label:t("Description"),type:"textarea"}]}init(){this.store=d.default}}a.EditAction=f,(0,s.default)(f,"id","edit"),(0,s.default)(f,"title",t("Edit")),(0,s.default)(f,"policy","volume:update"),(0,s.default)(f,"allowed",(e=>l.default.resolve((0,c.isAvailableOrInUse)(e))));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3549:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(90)),s=i(r(27));r(411);var o=i(r(227)),u=i(r(1248));r(571);var d=i(r(417)),c=i(r(36)),f=i(r(91)),p=i(r(0)),h=r(1193),m=i(r(410));r(173),r(555);class g extends h.ConfirmAction{constructor(){super(...arguments),(0,c.default)(this,"policy","volume:delete"),(0,c.default)(this,"canDelete",(e=>{var t;return(0,l.default)(t=["available","error","error_extending"]).call(t,e.status)>=0})),(0,c.default)(this,"allowedCheckFunc",(e=>this.canDelete(e))),(0,c.default)(this,"onSubmit",(e=>{var{id:t,isCascadeDeleted:a=!0}=e||this.item;return a?m.default.cascadeDelete({id:t}):m.default.delete({id:t})})),(0,c.default)(this,"initCascadeValue",(e=>{this.onChangeCascade(!0,e)})),(0,c.default)(this,"confirmContext",(e=>{var a=this.getName(e);return this.initCascadeValue(e),p.default.createElement("div",null,p.default.createElement("p",{style:{marginBottom:"16px"}},this.unescape(t("Are you sure to delete volume { name }? ",{name:a}))),p.default.createElement("div",null,this.renderCascadeDeletion(e),this.renderCascadeDeletionTip()))}))}get id(){return"delete"}get title(){return t("Delete Volume")}get name(){return t("Delete Volume")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete volume")}onChangeCascade(e,t){(0,f.default)(t)?(0,s.default)(t).call(t,(t=>{t.isCascadeDeleted=e})):t.isCascadeDeleted=e}renderCascadeDeletion(e){return p.default.createElement(d.default,{defaultChecked:!0,onChange:t=>{this.onChangeCascade(t.target.checked,e)}},t("Cascading deletion"))}get cascadeDeletionTip(){return t("Using cascading deletion, when the volume has snapshots, the associated snapshot will be automatically deleted first, and then the volume will be deleted, thereby improving the success rate of deleting the volume.")}renderCascadeDeletionTip(){return p.default.createElement(o.default,{title:this.cascadeDeletionTip},p.default.createElement(u.default,null))}}a.default=g},3550:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.RestoreAction=void 0;var l=i(r(81)),s=i(r(65)),o=i(r(36)),u=r(406),d=r(1193),c=r(410),f=i(r(582)),p=r(557),h=r(569);class m extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{snapshot:{selectedRowKeys:t=[]}={}}=e,{id:a}=this.item;return this.store.revert(a,{snapshot_id:t[0]})}))}init(){this.store=new c.VolumeStore,this.snapshotStore=f.default}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var e,t,{name:a,id:r="-",volume_type:n="-",size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)")}}get formItems(){var{id:e}=this.item;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"snapshot",label:t("Select Volume Snapshot"),type:"select-table",backendPageStore:this.snapshotStore,extraParams:{volume_id:e},required:!0,isMulti:!1,isSortByBack:!0,defaultSortKey:"created_at",defaultSortOrder:"descend",filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",unit:"GiB",sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:p.volumeStatus},{title:t("Created At"),dataIndex:"created_at",render:e=>(0,h.getSinceTime)(e)}]}]}get name(){return t("Restore from snapshot")}}a.RestoreAction=m,(0,o.default)(m,"id","Restore from snapshot"),(0,o.default)(m,"title",t("Restore From Snapshot")),(0,o.default)(m,"policy","volume:create"),(0,o.default)(m,"allowed",(e=>s.default.resolve("available"===e.status)));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},3551:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Attach=void 0;var p=f(r(102)),h=f(r(65)),m=f(r(57)),g=f(r(81)),v=f(r(36)),y=r(406),b=r(1193),_=r(408),S=f(r(410)),x=r(1195),w=r(557);function I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function C(e){for(var t=1;t!(0,x.allowAttachVolumeInstance)(e))),(0,v.default)(this,"alreadyAttached",(e=>{var{attachments:t=[]}=this.item;return!!(0,p.default)(t).call(t,(t=>t.server_id===e.id))})),(0,v.default)(this,"onSubmit",(e=>{var{instance:t}=e,{id:a}=this.item,{selectedRowKeys:r}=t;return h.default.all((0,m.default)(r).call(r,(e=>this.vmStore.attachVolume({id:e,body:{volumeAttachment:{volumeId:a}}}))))}))}init(){this.store=S.default,this.vmStore=new _.ServerStore}get name(){return t("Attach")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var e,t,{name:a,id:r,size:n,volume_type:i}=this.item;return{volume:(0,g.default)(e=(0,g.default)(t="".concat(a||r,"(")).call(t,i," | ")).call(e,n,"GiB)")}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},C({name:"instance",label:t("Instance"),type:"select-table",required:!0,backendPageStore:this.vmStore,disabledFunc:this.disabledInstance,extraParams:{noReminder:!0},isMulti:!1},x.instanceSelectTablePropsBackend)]}}a.Attach=k,(0,v.default)(k,"id","attach"),(0,v.default)(k,"title",t("Attach")),(0,v.default)(k,"policy","os_compute_api:os-volumes-attachments:create"),(0,v.default)(k,"allowed",(e=>h.default.resolve((0,w.isAvailable)(e)||(0,w.isMultiAttach)(e))));var D=(0,y.inject)("rootStore")((0,y.observer)(k));a.default=D},3552:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Detach=void 0;var l=i(r(65)),s=i(r(57)),o=i(r(81)),u=i(r(1400)),d=i(r(36)),c=r(406),f=r(1193),p=i(r(408)),h=r(1397),m=r(557),g=r(1195);class v extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"disabledInstance",(e=>!(0,g.allowAttachVolumeInstance)(e))),(0,d.default)(this,"onSubmit",(e=>{var{instance:t}=e,{id:a}=this.item,{selectedRowKeys:r}=t;return l.default.all((0,s.default)(r).call(r,(e=>this.store.detachVolume({id:e,volumes:[a]}))))}))}get name(){return t("Detach")}init(){this.store=p.default,this.instanceStore=new h.ServerGroupInstanceStore,this.getInstances()}static get modalSize(){return"large"}getModalSize(){return"large"}get instances(){return this.instanceStore.list.data||[]}getInstances(){var e,t=(0,s.default)(e=this.item.attachments||[]).call(e,(e=>e.server_id));this.instanceStore.fetchList({members:t})}get defaultValue(){var e,t,{name:a,size:r,volume_type:n}=this.item;return{volume:(0,o.default)(e=(0,o.default)(t="".concat(a,"(")).call(t,n," | ")).call(e,r,"GiB)")}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"instance",label:t("Instance"),type:"select-table",required:!0,data:this.instances,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:g.instanceColumnsBackend,isLoading:this.instanceStore.list.isLoading,disabledFunc:this.disabledInstance}]}}a.Detach=v,(0,d.default)(v,"id","detach"),(0,d.default)(v,"title",t("Detach")),(0,d.default)(v,"isDanger",!0),(0,d.default)(v,"policy","os_compute_api:os-volumes-attachments:delete"),(0,d.default)(v,"allowed",(e=>l.default.resolve((0,m.isInUse)(e)&&!(0,m.isOsDisk)(e)&&(0,u.default)(e.attachments)&&e.attachments.length)));var y=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=y},3553:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSnapshot=void 0;var p=f(r(81)),h=f(r(65)),m=f(r(51)),g=f(r(36)),v=r(406),y=r(1193),b=f(r(582)),_=r(557),S=f(r(407));function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{snapshots:t={}}=e,{currentVolumeType:a}=b.default;return{snapshotQuota:t,typeQuota:e["snapshots_".concat(a)]||{}}},C=e=>{var{snapshotQuota:t,typeQuota:a}=I(e),{left:r=0}=t||{},{left:n=0}=a||{};return 0!==r&&0!==n?1:0};class k extends y.ModalAction{constructor(){super(...arguments),(0,g.default)(this,"onSubmit",(e=>{var{id:t,status:a}=this.item,{name:r}=e,n={name:r,volume_id:t,force:"in-use"===a};return this.store.create(n)}))}init(){b.default.setCurrentVolumeType(this.item),this.state.quota={},this.state.quotaLoading=!0,this.store=b.default,this.projectStore=S.default,this.getQuota()}get name(){return t("create volume snapshot")}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,p.default)(e=(0,p.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)")}}static get disableSubmit(){var{cinderQuota:e={}}=S.default;return 0===C(e)}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,m.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectCinderQuota();e.setState({quota:t,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{snapshotQuota:r={},typeQuota:n={}}=I(e),i=C(e),l=w(w({},r),{},{add:i,name:"snapshot",title:t("Volume Snapshot")}),{volume_type:s}=this.item;return[l,w(w({},n),{},{add:i,name:"type",title:t("{name} type snapshots",{name:s}),type:"line"})]}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Volume Snapshot Name"),type:"input-name",placeholder:t("Please input snapshot name"),required:!0}]}}a.CreateSnapshot=k,(0,g.default)(k,"id","create-snapshot"),(0,g.default)(k,"title",t("Create Volume Snapshot")),(0,g.default)(k,"buttonText",t("Create Snapshot")),(0,g.default)(k,"policy","volume:create_snapshot"),(0,g.default)(k,"allowed",(e=>h.default.resolve((0,_.isAvailableOrInUse)(e))));var D=(0,v.inject)("rootStore")((0,v.observer)(k));a.default=D},3554:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.ExtendVolume=void 0;var o=s(r(65)),u=s(r(81)),d=s(r(62)),c=s(r(51)),f=s(r(36)),p=s(r(199)),h=r(406),m=r(1193),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=n?l(e,s):null;o&&(o.get||o.set)?i(r,s,o):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(410)),v=s(r(407)),y=r(557);function b(e){if("function"!=typeof n)return null;var t=new n,a=new n;return(b=function(e){return e?a:t})(e)}class _ extends m.ModalAction{constructor(){var e;super(...arguments),e=this,(0,f.default)(this,"onSizeChange",(e=>{var t=e-this.itemSize;(0,y.setCreateVolumeSize)(t)})),(0,f.default)(this,"checkInstance",(()=>{var{lockedError:e}=this.state;return e?o.default.reject(e):o.default.resolve()})),(0,f.default)(this,"onSubmit",function(){var t=(0,c.default)((function*(t){var{new_size:a}=t,{id:r}=e.item;return e.store.extendSize(r,{new_size:a})}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Extend volume")}init(){this.store=g.default,this.state.showNotice=!0,this.volumeStore=new g.VolumeStore,this.projectStore=v.default,(0,y.fetchQuota)(this,1,this.item.volume_type)}get tips(){return t("After the volume is expanded, the volume cannot be reduced.")}static get disableSubmit(){return(0,y.checkQuotaDisable)(!1)}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){var{quota:e={},quotaLoading:t}=this.state;if(t||(0,p.default)(e))return[];var[a,r,n,i]=(0,y.getQuotaInfo)(this,!1),{type:l}=r;return[(0,d.default)(r,["type"]),i]}get isQuotaLimited(){var{gigabytes:{limit:e}={}}=this.projectStore.cinderQuota||{};return-1!==e}get leftSize(){var{gigabytes:{left:e=0}={}}=this.projectStore.cinderQuota||{};return e}get itemSize(){var{size:e}=this.item;return e}get minSize(){return this.itemSize+1}get maxSize(){var{size:e}=this.item;return e+this.leftSize}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,u.default)(e=(0,u.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),new_size:this.minSize}}get formItems(){var e;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"new_size",label:t("Capacity (GiB)"),type:"slider-input",max:this.maxSize,min:this.minSize,description:(0,u.default)(e="".concat(this.minSize,"GiB-")).call(e,this.maxSize,"GiB"),required:!0,display:this.isQuotaLimited,onChange:this.onSizeChange,validator:this.checkInstance},{name:"new_size",label:t("Capacity (GiB)"),type:"input-int",min:this.minSize,required:!0,display:!this.isQuotaLimited,onChange:this.onSizeChange,validator:this.checkInstance}]}}a.ExtendVolume=_,(0,f.default)(_,"id","extend-snapshot"),(0,f.default)(_,"title",t("Extend Volume")),(0,f.default)(_,"policy","volume:extend"),(0,f.default)(_,"allowed",(e=>o.default.resolve((0,y.isAvailableOrInUse)(e))));var S=(0,h.inject)("rootStore")((0,h.observer)(_));a.default=S},3555:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ChangeType=void 0;var l=i(r(57)),s=i(r(32)),o=i(r(81)),u=i(r(65)),d=i(r(36)),c=r(406),f=r(1193),p=i(r(410)),h=i(r(566)),m=r(557);class g extends f.ModalAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{new_type:a}=e,r={new_type:a,migration_policy:"on-demand"};return this.store.retype(t,r)}))}get name(){return t("Change type")}get tips(){return t("If the capacity of the disk is large,the type modify operation may takes several hours. Please be cautious.")}init(){this.store=p.default,this.volumeTypeStore=h.default,this.getVolumeTypes()}getVolumeTypes(){this.volumeTypeStore.fetchList()}get isAsyncAction(){return!0}get volumeTypes(){var e,{volume_type:t}=this.item,{data:a=[]}=this.volumeTypeStore.list;return(0,l.default)(e=(0,s.default)(a).call(a,(e=>e.name!==t))).call(e,(e=>({label:e.name,value:e.id})))}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,o.default)(e=(0,o.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),volume_type:(this.volumeTypes[0]||{}).value}}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"new_type",label:t("Volume Type"),type:"select",required:!0,options:this.volumeTypes}]}}a.ChangeType=g,(0,d.default)(g,"id","change-type"),(0,d.default)(g,"title",t("Change Type")),(0,d.default)(g,"policy","volume:retype"),(0,d.default)(g,"allowed",(e=>u.default.resolve((0,m.isAvailableOrInUse)(e)&&!(0,m.isOsDisk)(e))));var v=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=v},3556:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CloneVolume=void 0;var p=f(r(102)),h=f(r(81)),m=f(r(65)),g=f(r(51)),v=f(r(62)),y=f(r(36)),b=r(406),_=r(1193),S=f(r(410)),x=r(557);function w(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function I(e){for(var t=1;t{var{volume:t,more:a}=e,r=I(I({},(0,v.default)(e,["volume","more"])),{},{source_volid:this.item.id});return this.store.create(r)}))}get name(){return t("Clone volume")}get tips(){return t("It is recommended that you perform this cloning operation on a disk without any reading/writing")}init(){this.store=S.default,this.getVolumeTypes(),(0,x.fetchQuota)(this,this.item.size)}getVolumeTypes(){var e=this;return(0,g.default)((function*(){var t;yield e.store.fetchVolumeTypes();var a=(0,p.default)(t=e.volumeTypes).call(t,(t=>t.label===e.item.volume_type));e.defaultType=a,a&&(0,x.setCreateVolumeType)(e.item.volume_type),e.updateDefaultValue()}))()}get volumeTypes(){return this.store.volumeTypes}static get disableSubmit(){return(0,x.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,x.getQuotaInfo)(this)}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,h.default)(e=(0,h.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),volume_type:(this.defaultType||{}).value,size:i}}get maxSize(){var{quota:{gigabytes:{left:e=0}={}}={}}=this.state;return-1===e?1/0:e}get formItems(){var{size:e}=this.item,{more:a}=this.state;return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"name",label:t("Volume Name"),type:"input-name",required:!0},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:e,max:this.maxSize,required:!0,onChange:x.onVolumeSizeChange},{name:"more",type:"more",label:t("Advanced Options")},{name:"volume_type",label:t("Volume Type"),type:"select",options:this.volumeTypes,onChange:x.onVolumeTypeChange,allowClear:!1,hidden:!a}]}}a.CloneVolume=C,(0,y.default)(C,"id","clone-volume"),(0,y.default)(C,"title",t("Clone Volume")),(0,y.default)(C,"policy","volume:create"),(0,y.default)(C,"allowed",(e=>m.default.resolve((0,x.isAvailableOrInUse)(e))));var k=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=k},3557:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.UpdateStatus=void 0;var l=i(r(81)),s=i(r(65)),o=i(r(36)),u=r(406),d=r(1193),c=i(r(410));class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"handleStatusChange",(e=>{this.setState({status:e})})),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return delete e.volume,this.store.resetStatus(t,e)}))}get name(){return t("update status")}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),status:"available"}}get tips(){return t('Do not reset the normally mounted volume to the "available"、"maintenance" or "error" status. The reset state does not remove the volume from the instance. If you need to remove the volume from the instance, please go to the console of the corresponding project and use the "detach" operation.')}get formItems(){var{status:e}=this.state,a=[{value:"available",label:t("Available")},{value:"maintenance",label:t("Maintained")},{value:"error",label:t("Error")},{value:"in-use",label:t("In Use")}];return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"status",label:t("Status"),type:"select",required:!0,options:a,onChange:this.handleStatusChange,extra:"in-use"===e?t("The volume status can be reset to in-use only when the previous status is in-use."):""}]}init(){this.store=c.default}}a.UpdateStatus=f,(0,o.default)(f,"id","update-status"),(0,o.default)(f,"title",t("Update Status")),(0,o.default)(f,"policy","volume_extension:volume_admin_actions:reset_status"),(0,o.default)(f,"allowed",(()=>s.default.resolve(!0)));var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3558:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Migrate=void 0;var l=i(r(81)),s=i(r(65)),o=i(r(36)),u=r(406),d=r(1193),c=i(r(410)),f=r(557),p=i(r(1547)),h=r(1401);class m extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"disableFunc",(e=>{var{host:t}=this.item;return e.name===t})),(0,o.default)(this,"onSubmit",(e=>{var{pool:t}=e,{item:{id:a}}=this,{selectedRowKeys:r=[]}=t||{};return c.default.migrate(a,{host:r[0]})}))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Migrate volume")}init(){this.poolStore=p.default,this.getPools()}get defaultValue(){var e,t,{name:a,id:r,volume_type:n,size:i,host:s}=this.item;return{volume:(0,l.default)(e=(0,l.default)(t="".concat(a||r,"(")).call(t,n," | ")).call(e,i,"GiB)"),host:s}}getPools(){this.poolStore.fetchList()}get pools(){return this.poolStore.list.data||[]}get formItems(){return[{name:"volume",label:t("Volume"),type:"label",iconType:"volume"},{name:"host",label:t("Current Storage Backend"),type:"label",iconType:"instance"},{name:"pool",label:t("Target Storage Backend"),type:"select-table",required:!0,data:this.pools,isLoading:this.poolStore.list.isLoading,disabledFunc:this.disableFunc,rowKey:"name",columns:h.poolColumns}]}}a.Migrate=m,(0,o.default)(m,"id","migrate-volume"),(0,o.default)(m,"title",t("Migrate Volume")),(0,o.default)(m,"policy","volume_extension:volume_admin_actions:migrate_volume"),(0,o.default)(m,"allowed",(e=>s.default.resolve((0,f.isAvailableOrInUse)(e))));var g=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=g},3559:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateImage=void 0;var l=i(r(57)),s=i(r(33)),o=i(r(65)),u=i(r(36)),d=r(406),c=r(1193),f=r(563),p=i(r(410)),h=r(557);class m extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{id:t}=this.item;return this.store.uploadImage(t,e)}))}get name(){return t("Create Image")}get defaultValue(){return{disk_format:"raw"}}get osList(){var e;return(0,l.default)(e=(0,s.default)(f.imageOS)).call(e,(e=>({value:e,label:f.imageOS[e]})))}get formatList(){var e;return(0,l.default)(e=(0,s.default)(f.volumeCreateImageTypes)).call(e,(e=>({label:f.volumeCreateImageTypes[e],value:e})))}get formItems(){return[{name:"image_name",label:t("Image Name"),type:"input-name",placeholder:t("Please input name"),isImage:!0,required:!0},{name:"disk_format",label:t("Format"),type:"select",options:this.formatList,required:!0}]}init(){this.store=p.default}}a.CreateImage=m,(0,u.default)(m,"id","create-image"),(0,u.default)(m,"title",t("Create Image")),(0,u.default)(m,"policy","volume_extension:volume_actions:upload_image"),(0,u.default)(m,"allowed",(e=>o.default.resolve((0,h.isAvailable)(e))));var g=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=g},3560:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.AcceptVolumeTransfer=void 0;var l=i(r(65)),s=i(r(36)),o=r(406),u=r(1193),d=i(r(410));class c extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{transfer_id:t,auth_key:a}=e;return d.default.acceptVolumeTransfer(t,{auth_key:a})}))}get name(){return t("Accept Volume Transfer")}get defaultValue(){return{}}get messageHasItemName(){return!1}get formItems(){return[{name:"transfer_id",label:t("Transfer ID"),type:"input",placeholder:t("Please input transfer id"),required:!0},{name:"auth_key",label:t("Auth Key"),type:"input",placeholder:t("Please input auth key"),required:!0}]}}a.AcceptVolumeTransfer=c,(0,s.default)(c,"id","accept-volume-transfer"),(0,s.default)(c,"title",t("Accept Volume Transfer")),(0,s.default)(c,"policy",(()=>"volume:accept_transfer")),(0,s.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3561:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CreateTransfer=void 0;var l=i(r(81)),s=i(r(65)),o=i(r(36)),u=r(406),d=r(1193),c=i(r(410)),f=r(557);class p extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"downloadTxt",((e,t)=>{var a=document.createElement("a");a.href="data:text/plain;charset=utf-8,".concat(t),a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a)})),(0,o.default)(this,"onSubmit",(e=>{var{name:t}=e,{id:a}=this.item;return this.store.createTransfer({name:t,volume_id:a}).then((e=>{if(e&&e.transfer){var t,a,{id:r,name:n,auth_key:i}=e.transfer;this.downloadTxt("Volume Transfer ".concat(r,".txt"),(0,l.default)(t=(0,l.default)(a="Transfer Name: ".concat(n,"\nTransfer ID: ")).call(a,r,"\nAuth Key: ")).call(t,i))}}))}))}get name(){return t("Create Transfer")}get defaultValue(){return{name:""}}get tips(){return t("Ownership of a volume can be transferred from one project to another. The transfer process of the volume needs to perform the transfer operation in the original owner's project, and complete the \"accept\" operation in the receiver's project.")}get formItems(){return[{name:"name",label:t("Transfer Name"),type:"input-name",required:!0,placeholder:t("Please input name")}]}init(){this.store=c.default}}a.CreateTransfer=p,(0,o.default)(p,"id","create-transfer"),(0,o.default)(p,"title",t("Create Transfer")),(0,o.default)(p,"policy","volume:create_transfer"),(0,o.default)(p,"allowed",(e=>s.default.resolve((0,f.isAvailable)(e)&&!e.encrypted)));var h=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=h},3562:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(65)),s=i(r(36)),o=r(1193),u=i(r(410));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","volume:delete_transfer"),(0,s.default)(this,"allowedCheckFunc",(e=>l.default.resolve("awaiting-transfer"===e.status))),(0,s.default)(this,"confirmContext",(e=>{var{name:a}=e;return t("Are you sure to cancel transfer volume { name }? ",{name:a})})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.cancelTransfer({id:t})}))}get id(){return"cancel-transfer"}get title(){return t("Cancel Transfer")}get name(){return t("Cancel Transfer")}get buttonText(){return t("Cancel Transfer")}get actionName(){return t("Cancel Transfer")}}a.default=d},3563:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=i(r(65)),s=i(r(36)),o=r(406),u=i(r(1253)),d=r(557);class c extends u.default{static path(e){return"/compute/instance/create?volume=".concat(e.id)}static allowed(e){return l.default.resolve((0,d.canCreateInstance)(e))}}a.StepCreate=c,(0,s.default)(c,"id","instance-create"),(0,s.default)(c,"title",t("Create Instance")),(0,s.default)(c,"policy","os_compute_api:servers:create:attach_volume");var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3564:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Bootable=void 0;var l=i(r(65)),s=i(r(1204)),o=i(r(36)),u=r(406),d=r(1193),c=i(r(410));class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{bootable:t}=e,{id:a}=this.item;return c.default.changeBootable(a,{bootable:t})}))}static allowed(){return l.default.resolve(!0)}get name(){var{bootable:e}=(0,s.default)(this);return e?t("Bootable"):t("Unbootable")}get defaultValue(){var{item:e}=this.props;return{bootable:"true"===e.bootable}}get formItems(){return[{name:"bootable",label:t("Bootable"),checkedText:t("Bootable"),uncheckedText:t("Unbootable"),type:"switch",required:!0}]}}a.Bootable=f,(0,o.default)(f,"id","volume-bootable"),(0,o.default)(f,"title",t("Bootable")),(0,o.default)(f,"buttonText",t("Bootable")),(0,o.default)(f,"policy","volume:update");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3565:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Allocate=void 0;var p=f(r(57)),h=f(r(65)),m=f(r(62)),g=f(r(51)),v=f(r(36)),y=f(r(0)),b=r(406),_=r(1193),S=r(336),x=r(228),w=f(r(407)),I=f(r(414)),C=r(415),k=r(1303),D=r(76);function P(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function T(e){for(var t=1;t({allocation_pools:e.allocation_pools,ip_version:e.ip_version,value:e.id,label:e.name}))),selectedNetwork:t}),e.formRef.current.setFieldsValue({subnet_id:null})}));return function(e){return t.apply(this,arguments)}}()),(0,v.default)(this,"handleSubnetChange",(e=>{this.setState({selectedSubnet:e})})),(0,v.default)(this,"onSubmit",(e=>{var{subnet_id:t,batch_allocate:a,count:r,qos_policy_id:n}=e,i=(0,m.default)(e,["subnet_id","batch_allocate","count","qos_policy_id"]);if(t&&(i.subnet_id=t.value),n&&n.selectedRowKeys.length>0&&(i.qos_policy_id=n.selectedRowKeys[0]),a){i.floating_ip_address=null;for(var l=[],s=0;s{this.setState({count:e})})),(0,v.default)(this,"onProjectChange",(e=>{this.setState({projectId:e},(()=>{this.getQuota()}))}))}get name(){return t("Allocate IP")}static get modalSize(){return(0,D.qosEndpoint)()?"large":"small"}getModalSize(){return(0,D.qosEndpoint)()?"large":"small"}get qosEndpoint(){return(0,D.qosEndpoint)()}init(){this.store=new S.FloatingIpStore,this.networkStore=new x.NetworkStore,this.qosPolicyStore=new C.QoSPolicyStore,this.projectStore=w.default,this.state=T(T({},this.state||{}),{},{selectedNetwork:null,selectedSubnet:null,networks:[],subnets:[],qosPolicy:null,count:2,quota:{},quotaLoading:!0,projectId:this.currentProjectId,maxCount:2}),this.getExternalNetworks(),this.isAdminPage&&w.default.fetchList(),this.getQuota()}getExternalNetworks(){var e=this;return(0,g.default)((function*(){var t=yield e.networkStore.pureFetchList({"router:external":!0});e.setState({networks:t})}))()}get messageHasItemName(){return!1}static get disableSubmit(){var{neutronQuota:{floatingip:{left:e=0}={}}}=w.default;return 0===e}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,g.default)((function*(){var{projectId:t,count:a}=e.state;e.setState({quotaLoading:!0});var r=yield e.projectStore.fetchProjectNeutronQuota(t),{floatingip:n={}}=r||{},{left:i=0}=n;e.setState({quota:n,quotaLoading:!1,maxCount:i});var l=a;i0&&0===a&&(l=1),l!==a&&(e.updateFormValue("count",l),e.setState({count:l}))}))()}get quotaInfo(){var{quota:e={},quotaLoading:a,batchAllocate:r=!1,count:n}=this.state;if(a)return[];var{left:i=0}=e,l=0;return 0!==i&&(l=r?n:1),[T(T({},e),{},{add:l,name:"floatingip",title:t("Floating IP")})]}get defaultValue(){return{project_id:this.currentProjectId,count:2}}get formItems(){var e,a,{networks:r,selectedNetwork:n,subnets:i,selectedSubnet:l,batchAllocate:s=!1,maxCount:o}=this.state,u=(0,p.default)(r).call(r,(e=>({label:e.name,value:e.id}))),d=(0,p.default)(e=w.default.list.data).call(e,(e=>({label:e.name,value:e.id})));return[{name:"floating_network_id",label:t("Network"),type:"select",options:u,onChange:this.handleNetworkChange,required:!0},{name:"project_id",label:t("Project"),type:"select",showSearch:!0,hidden:!this.isAdminPage,required:this.isAdminPage,options:d,onChange:this.onProjectChange},{name:"subnet_id",label:t("Owned Subnet"),type:"select",options:i,isWrappedValue:!0,onChange:e=>this.handleSubnetChange(e),extra:l&&y.default.createElement(y.default.Fragment,null,y.default.createElement("span",null,t("Allocation Pools")),(0,p.default)(a=l.allocation_pools).call(a,((e,t)=>y.default.createElement("div",{key:"pool.start.".concat(t)},e.start,"--",e.end)))),hidden:!n,required:!1},{name:"batch_allocate",label:t("Batch Allocate"),type:"check",onChange:e=>{this.setState({batchAllocate:e})}},{name:"count",label:t("Count"),type:"input-int",min:1,max:o,hidden:!s,required:!0,onChange:this.onCountChange},{name:"floating_ip_address",label:t("Floating IP Address"),hidden:!l||s,type:"ip-input",version:l&&(l.ip_version||4)},{name:"description",label:t("Description"),type:"textarea"},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:k.getQoSPolicyTabs.call(this),isMulti:!1,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),onChange:this.onQosChange,display:!!this.qosEndpoint}]}}a.Allocate=A,(0,v.default)(A,"id","allocate"),(0,v.default)(A,"title",t("Allocate IP")),(0,v.default)(A,"policy","create_floatingip"),(0,v.default)(A,"allowed",(()=>h.default.resolve(!0)));var M=(0,b.inject)("rootStore")((0,b.observer)(A));a.default=M},3566:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Associate=void 0;var h=p(r(65)),m=p(r(1204)),g=p(r(57)),v=p(r(51)),y=p(r(36)),b=p(r(1259)),_=p(r(559)),S=p(r(0)),x=r(406),w=r(1193),I=E(r(408)),C=E(r(568)),k=p(r(584)),D=r(1219),P=p(r(336)),T=r(575),A=r(1195),M=r(1210),R=r(1224);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 E(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={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}return r.default=e,a&&a.set(e,r),r}function j(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function F(e){for(var t=1;t{var{floating_network_id:t}=this.item;return!(e.hasExternalGateway&&e.external_gateway_info&&e.external_gateway_info.network_id===t&&0===e.external_gateway_info.external_fixed_ips.length)})),(0,y.default)(this,"portsDisableFunc",(e=>0===e.fixed_ips.length)),(0,y.default)(this,"onValuesChange",(e=>{if((0,_.default)(e,"resourceType")){var{resourceType:t}=e;this.setState({resourceType:t})}})),(0,y.default)(this,"handleInstanceSelect",function(){var t=(0,v.default)((function*(t){if(e.setState({instanceLoading:!0}),0===t.selectedRows.length)return e.setState({instanceFixedIPs:l,instanceLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({port:null})}));var{id:a}=t.selectedRows[0],r=yield I.default.fetchInterfaceList({id:a}),n=yield(0,R.getInterfaceWithReason)(r),{canReachSubnetIdsWithRouterId:i}=e.state,l=(0,M.getPortsAndReasons)(n,i,!0);return e.setState({instanceFixedIPs:l,instanceLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({port:null})}))}));return function(e){return t.apply(this,arguments)}}()),(0,y.default)(this,"handlePortSelect",function(){var t=(0,v.default)((function*(t){e.setState({fixedIpLoading:!0});var{canReachSubnetIdsWithRouterId:a}=e.state,r=yield(0,R.getInterfaceWithReason)(t.selectedRows),n=(0,M.getPortsAndReasons)(r,a,!0);return e.setState({portFixedIPs:n,fixedIpLoading:!1}),h.default.resolve().then((()=>{e.formRef.current.setFieldsValue({fixed_ip_address:null})}))}));return function(e){return t.apply(this,arguments)}}()),(0,y.default)(this,"onSubmit",(e=>{var{resourceType:t}=e,{id:a}=this.item,r={};if(r.id=a,"instance"===t){var{port:{selectedRows:n=[]}={}}=e;r.port_id=n[0].port_id,r.fixed_ip_address=n[0].fixed_ip_address}else if("port"===t){var{virtual_adapter:{selectedRows:i=[]}={},fixed_ip_address:{selectedRows:l=[]}={}}=e;r.port_id=i[0].id,r.fixed_ip_address=l[0].fixed_ip_address}else if("router"===t){var{router:s}=e,o=s.selectedRows[0];return C.default.associateFip({id:o.id,fip:this.item,router:o})}return P.default.associateFip(r)}))}get name(){return t("Associate Floating IP")}init(){this.store=new I.ServerStore,this.routersStore=new C.RouterStore,this.portStore=new T.PortStore,D.getCanReachSubnetIdsWithRouterIdInComponent.call(this,(e=>{var{item:t}=this;return e.external_gateway_info&&e.external_gateway_info.network_id===t.floating_network_id})),this.state={instanceFixedIPs:[],portFixedIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[]},this.getPorts()}get instanceName(){return this.item.floating_ip_address||(0,m.default)(this).name}static get modalSize(){return"large"}getModalSize(){return"large"}get instances(){return this.store.list.data||[]}get resourceTypeMap(){return[{value:"instance",label:t("Instance")},{value:"port",label:t("Virtual Adapter")}]}get defaultValue(){var{floating_ip_address:e}=this.item;return{floatingIp:e,resourceType:"instance"}}get portDeviceOwner(){return[""]}getPorts(){M.getPortsForPortFormItem.call(this,this.portDeviceOwner)}get formItems(){var{resourceType:e="instance",instanceFixedIPs:a,instanceLoading:r}=this.state,n=[{name:"floatingIp",label:t("Floating Ip"),type:"label",iconType:"floatingIp"},{name:"resourceType",label:t("Resource Type"),type:"radio",required:!0,options:this.resourceTypeMap}];switch(e){case"instance":n.push(F({name:"instance",label:t("Instance"),type:"select-table",required:!0,backendPageStore:this.store,extraParams:{noReminder:!0},disabledFunc:e=>0===e.fixed_addresses.length,onChange:this.handleInstanceSelect,isMulti:!1},A.instanceSelectTablePropsBackend),{name:"port",label:t("Instance IP"),type:"select-table",required:!0,data:a,isLoading:r,isMulti:!1,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"name"},{title:t("Mac Address"),dataIndex:"mac_address"},{title:t("Network"),dataIndex:"network_name"},{title:t("Reason"),dataIndex:"reason"}],disabledFunc:e=>!e.available});break;case"lb":n.push({name:"loadbalance",label:t("Load Balancer"),type:"select-table",required:!0,data:[],isMulti:!1,filterParams:[{label:t("Name"),name:"name"},{label:t("IP"),name:"private_ip"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Image"),dataIndex:"image",render:e=>S.default.createElement(k.default,{type:e,title:e})},{title:t("Fixed IP"),dataIndex:"fixed_addresses",render:e=>(0,g.default)(e).call(e,(e=>S.default.createElement("span",{key:e},e,S.default.createElement("br",null))))},{title:t("Floating IP"),dataIndex:"floating_addresses",render:e=>e?(0,g.default)(e).call(e,(e=>S.default.createElement("span",{key:e},e,S.default.createElement("br",null)))):"-"},{title:t("Flavor"),dataIndex:"flavor"},{title:t("Created At"),dataIndex:"created",valueRender:"sinceTime"}]});break;case"router":n.push(F({name:"router",label:t("Router"),type:"select-table",required:!0,backendPageStore:this.routersStore,disabledFunc:this.routersDisableFunc,isMulti:!1},(0,D.getRouterSelectTablePropsBackend)(this)));break;case"port":n.push(...M.getPortFormItem.call(this,!1))}return n}}a.Associate=L,(0,y.default)(L,"id","associate"),(0,y.default)(L,"title",t("Associate")),(0,y.default)(L,"policy","update_floatingip"),(0,y.default)(L,"allowed",(e=>h.default.resolve(!(0,R.disableFIPAssociate)(e)&&(0,b.default)(e.fixed_ip_address)&&"DOWN"===e.status&&(0,b.default)(e.port_details))));var z=(0,x.inject)("rootStore")((0,x.observer)(L));a.default=z},3567:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(65)),s=i(r(27)),o=i(r(32)),u=i(r(62));r(571);var d=i(r(417)),c=i(r(36)),f=i(r(1259)),p=i(r(91)),h=i(r(0)),m=r(1193),g=i(r(336));r(173);class v extends m.ConfirmAction{constructor(){super(...arguments),(0,c.default)(this,"policy","delete_floatingip"),(0,c.default)(this,"getItemName",(e=>e.floating_ip_address)),(0,c.default)(this,"confirmContext",(e=>{var a=null;if(this.needForceRelease(e)&&(a=h.default.createElement("div",null,h.default.createElement(d.default,{style:{marginTop:"14px"},onChange:t=>{this.onChangeType(t.target.checked,e)}},t("Force release")))),!this.messageHasItemName)return h.default.createElement("div",null,h.default.createElement("p",null," ",t("Are you sure to {action}?",{action:this.actionNameDisplay||this.title})),a);var r=this.getName(e);return h.default.createElement("div",null,h.default.createElement("p",null," ",this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:r}))),a)})),(0,c.default)(this,"onSubmit",(e=>{var{forceRelease:a}=e,r=(0,u.default)(e,["forceRelease"]);if(this.hasCheckBox&&!a){var n=t("Floating ip has already been associate, Please check Force release");return l.default.reject(n)}return g.default.delete(r)}))}get id(){return"delete"}get title(){return t("Release")}get isDanger(){return!0}get buttonText(){return t("Release")}get actionName(){return t("Release")}onChangeType(e,t){(0,p.default)(t)?(0,s.default)(t).call(t,(t=>{t.forceRelease=e})):t.forceRelease=e}needForceRelease(e){var t=!1;(0,p.default)(e)?((0,s.default)(e).call(e,(e=>{e.forceRelease=!1})),(0,o.default)(e).call(e,(e=>!((0,f.default)(e.fixed_ip_address)&&"DOWN"===e.status&&(0,f.default)(e.port_details))))[0]&&(t=!0)):(e.forceRelease=!1,t=!((0,f.default)(e.fixed_ip_address)&&"DOWN"===e.status&&(0,f.default)(e.port_details)));return this.hasCheckBox=t,t}}a.default=v},3568:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),s=i(r(1259)),o=r(1193),u=i(r(336));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","update_floatingip"),(0,l.default)(this,"allowedCheckFunc",(e=>!(0,s.default)(e.fixed_ip_address)&&"DOWN"!==e.status)),(0,l.default)(this,"getItemName",(e=>e.floating_ip_address)),(0,l.default)(this,"onSubmit",(e=>u.default.disassociateFip(e)))}get id(){return"disassociate"}get title(){return t("Disassociate")}get buttonText(){return t("Disassociate")}get actionName(){return t("Disassociate")}}a.default=d},3569:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(65)),h=f(r(36)),m=r(406),g=r(1193),v=f(r(336)),y=r(1303),b=r(415),_=r(76);function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}class x extends g.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onSubmit",(e=>{var{description:t,qos_policy_id:a}=e;return v.default.edit({id:this.item.id},{description:t,qos_policy_id:a.selectedRowKeys.length?a.selectedRowKeys[0]:null})}))}static get modalSize(){return(0,_.qosEndpoint)()?"large":"small"}getModalSize(){return(0,_.qosEndpoint)()?"large":"small"}get qosEndpoint(){return(0,_.qosEndpoint)()}init(){this.qosPolicyStore=new b.QoSPolicyStore}get defaultValue(){var{item:e}=this.props;return function(e){for(var t=1;tp.default.resolve(!0)));var w=(0,m.inject)("rootStore")((0,m.observer)(x));a.default=w},3570:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateAction=void 0;var p=f(r(57)),h=f(r(65));r(333);var m=f(r(332)),g=f(r(1323)),v=f(r(62)),y=f(r(51)),b=f(r(36)),_=f(r(0)),S=r(406),x=r(1193),w=(r(555),r(173),r(228)),I=r(416),C=r(415),k=f(r(561)),D=f(r(407)),P=r(414),T=r(1303),A=r(76);function M(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function R(e){for(var t=1;t{var t=e.selectedRowKeys[0];this.setState({network_id:t}),this.formRef.current.setFieldsValue({fixed_ips:void 0}),this.getSubnets(t)})),(0,b.default)(this,"onSubmit",(e=>{var{mac_address:{type:t,mac:a},security_groups:r,enableQosPolicy:n,qos_policy_id:i,more:l,network_id:s,fixed_ips:o,bindingProfile:u}=e,d=(0,v.default)(e,["mac_address","security_groups","enableQosPolicy","qos_policy_id","more","network_id","fixed_ips","bindingProfile"]),c=R(R({},o&&o.length>0?{fixed_ips:(0,p.default)(o).call(o,(e=>{var t={subnet_id:e.subnet};return e.ip_address&&"manual"===e.ip_address.type&&(t.ip_address=e.ip_address.ip),t}))}:{}),{},{network_id:s.selectedRowKeys[0]},d);return t&&"auto"!==t&&(c.mac_address=a),n&&i&&(c.qos_policy_id=0===i.selectedRowKeys.length?null:i.selectedRowKeys[0]),r&&(c.security_groups=r.selectedRowKeys||void 0),c.project_id=this.currentProjectId,u&&(c["binding:profile"]=JSON.parse(u)),k.default.create(c)}))}get qosEndpoint(){return(0,A.qosEndpoint)()}init(){this.state.quota={},this.state.quotaLoading=!0,this.projectStore=D.default,this.networkStore=new w.NetworkStore,this.securityGroupStore=new I.SecurityGroupStore,this.qosPolicyStore=new C.QoSPolicyStore,this.subnetStore=new P.SubnetStore,this.getQuota()}getSubnets(e){var t=this;return(0,y.default)((function*(){yield t.networkStore.fetchDetail({id:e}),yield t.fetchSubnetDetails(e)}))()}get name(){return t("Create Virtual Adapter")}static get modalSize(){return"large"}getModalSize(){return"large"}get tips(){return t("Virtual adapter mainly used for binding instance and other operations, occupying the quota of the port.")}static get disableSubmit(){var{neutronQuota:{port:{used:e=0,limit:t=0}={}}}=D.default;return-1!==t&&e>=t}static get showQuota(){return!0}get showQuota(){return!0}getQuota(){var e=this;return(0,y.default)((function*(){e.setState({quotaLoading:!0});var t=yield e.projectStore.fetchProjectNeutronQuota(),{port:a={}}=t||{};e.setState({quota:a,quotaLoading:!1})}))()}get quotaInfo(){var{quota:e={},quotaLoading:a}=this.state;if(a)return[];var{used:r=0,limit:n=0}=e,i=-1!==n&&r>=n?0:1;return[R(R({},e),{},{add:i,name:"port",title:t("Ports")})]}get defaultValue(){return{more:!1,mac_address:{type:"auto"},qos_policy:"disable",port_security_enabled:!0,enableQosPolicy:!1}}get securityGroups(){var e;return(0,p.default)(e=this.securityGroupStore.list.data||[]).call(e,(e=>R(R({},e),{},{key:e.id})))}get formItems(){var e,{more:a,network_id:r,subnetDetails:n=[],port_security_enabled:i=!0,enableQosPolicy:l=!1}=this.state,s=(0,p.default)(e="normal,macvtap,direct,baremetal,direct-physical,virtio-forwarder,smart-nic".split(",")).call(e,(e=>({label:e,value:e})));return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"description",label:t("Description"),type:"textarea",required:!1},{name:"network_id",label:t("Owned Network"),type:"network-select-table",onChange:this.handleOwnedNetworkChange,required:!0},{name:"fixed_ips",label:t("Owned Subnet"),type:"ip-distributor",subnets:n,hidden:!r},{name:"ipv6",label:"IPv6",type:"label",style:{marginBottom:24},content:_.default.createElement("span",null,t("The selected VPC/ subnet does not have IPv6 enabled.")," ",_.default.createElement(m.default,{type:"link"},t("To open")," ",_.default.createElement(g.default,null))," "),hidden:!0},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},required:!0,type:"mac-address"},{name:"port_security_enabled",label:t("Port Security"),type:"switch",tip:t("Disabling port security will turn off the security group policy protection and anti-spoofing protection on the port. General applicable scenarios: NFV or operation and maintenance Debug."),onChange:e=>{this.setState({port_security_enabled:e})}},{name:"security_groups",label:t("Security Group"),type:"select-table",tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),data:this.securityGroups,isLoading:this.securityGroupStore.list.isLoading,extraParams:{project_id:this.currentProjectId},backendPageStore:this.securityGroupStore,isMulti:!0,hidden:!i,required:i,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]},{name:"binding:vnic_type",label:t("Port Type"),type:"select",options:s,hidden:!a},{name:"enableQosPolicy",label:t("Enable QoS Policy"),type:"switch",onChange:e=>{this.setState({enableQosPolicy:e})},hidden:!a,display:!!this.qosEndpoint},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:T.getQoSPolicyTabs.call(this),isMulti:!1,required:l,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),hidden:!(a&&l),display:!!this.qosEndpoint},{name:"bindingProfile",label:t("Binding Profile"),type:"aceEditor",hidden:!a,mode:"json",wrapEnabled:!0,tabSize:2,width:"100%",height:"200px",setOptions:{enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableSnippets:!0},validator:(e,a)=>{if(void 0!==a&&""!==a)try{return JSON.parse(a),h.default.resolve(!0)}catch(e){return h.default.reject(new Error(t("Illegal JSON scheme")))}return h.default.resolve(!0)}},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.CreateAction=N,(0,b.default)(N,"id","create-virtual-adapter"),(0,b.default)(N,"title",t("Create Virtual Adapter")),(0,b.default)(N,"policy","create_port"),(0,b.default)(N,"allowed",(()=>h.default.resolve(!0)));var E=(0,S.inject)("rootStore")((0,S.observer)(N));a.default=E},3571:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),s=r(1193),o=i(r(561));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_port"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>o.default.delete(e)))}get id(){return"delete"}get title(){return t("Delete Virtual Adapter")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete virtual adapter")}isOwnerOrAdmin(){return!0}}a.default=u},3572:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p,h=f(r(62)),m=f(r(36)),g=f(r(57)),v=f(r(65)),y=r(406),b=r(1193),_=f(r(561));function S(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function x(e){for(var t=1;t({label:e,value:e})));class I extends b.ModalAction{constructor(){super(...arguments),(0,m.default)(this,"onSubmit",(e=>{var{item:{id:t}={}}=this.props,{mac_address:{type:a,mac:r},more:n}=e,i=x({},(0,h.default)(e,["mac_address","more"]));return a&&"auto"!==a&&(i.mac_address=r),_.default.update({id:t},i)}))}get defaultValue(){var{item:e}=this.props;return x(x({},e),{},{mac_address:{type:"manual",mac:e.mac_address},"binding:vnic_type":e.binding_vnic_type})}get formItems(){var{more:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",required:!0,withoutChinese:!0},{name:"mac_address",label:t("Mac Address"),wrapperCol:{span:16},type:"mac-address",required:!0},{name:"binding:vnic_type",label:t("Port Type"),type:"select",required:!0,options:w,hidden:!e},{name:"description",label:t("Description"),type:"textarea"},{name:"more",label:t("Advanced Options"),type:"more"}]}}a.Edit=I,(0,m.default)(I,"id","edit-virtual-adapter"),(0,m.default)(I,"title",t("Edit")),(0,m.default)(I,"buttonText",t("Edit")),(0,m.default)(I,"policy","update_port"),(0,m.default)(I,"allowed",(()=>v.default.resolve(!0)));var C=(0,y.inject)("rootStore")((0,y.observer)(I));a.default=C},3573:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),o=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Attach=void 0;var h=p(r(198)),m=p(r(65)),g=p(r(36)),v=r(406),y=r(1193),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=S(t);if(a&&a.has(e))return a.get(e);var r={},n=c&&s;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=n?s(e,i):null;l&&(l.get||l.set)?c(r,i,l):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(408)),_=r(1195);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 x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{id:t}=this.props.item,{instance:{selectedRowKeys:a=[]}={}}=e;return b.default.addInterface({id:a[0],body:{interfaceAttachment:{port_id:t}}})}))}init(){this.store=new b.ServerStore}get name(){return t("Attach Instance")}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{name:e,id:t}=this.item;return{virtual_adapter:e,virtual_adapter_id:t}}get formItems(){return[{name:"virtual_adapter",label:t("Virtual Adapter"),type:"label"},{name:"virtual_adapter_id",label:t("Virtual Adapter ID"),type:"label",hidden:!0},w({name:"instance",label:t("Instance"),type:"select-table",backendPageStore:this.store,extraParams:{noReminder:!0},disabledFunc:e=>e.locked||!(0,h.default)(_.allowAttachInterfaceStatus).call(_.allowAttachInterfaceStatus,e.vm_state),required:!0,isMulti:!1},_.instanceSelectTablePropsBackend)]}}a.Attach=I,(0,g.default)(I,"id","attach_instance"),(0,g.default)(I,"title",t("Attach Instance")),(0,g.default)(I,"policy","os_compute_api:os-attach-interfaces:create"),(0,g.default)(I,"allowed",(e=>m.default.resolve(""===e.device_id)));var C=(0,v.inject)("rootStore")((0,v.observer)(I));a.default=C},3574:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(51)),s=i(r(36)),o=r(1193),u=i(r(408));class d extends o.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"policy","os_compute_api:os-attach-interfaces:delete"),(0,s.default)(this,"allowedCheckFunc",(e=>!!e.device_id&&"compute:nova"===e.device_owner)),(0,s.default)(this,"onSubmit",(0,l.default)((function*(){var{id:t,device_id:a}=e.item;return u.default.detachInterface({id:a,ports:[t]})})))}get id(){return"detach_instance"}get title(){return t("Detach Instance")}get buttonText(){return t("Detach")}get actionName(){return t("detach instance")}get isAsyncAction(){return!0}}a.default=d},3575:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ModifyQoS=void 0;var l=i(r(65)),s=i(r(51)),o=i(r(36)),u=i(r(0)),d=r(406),c=r(1193),f=r(415),p=i(r(561)),h=r(1303),m=r(76);class g extends c.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{enableQosPolicy:a,qos_policy_id:r}=e,n={qos_policy_id:null};return a&&r&&(n.qos_policy_id=0===r.selectedRowKeys.length?null:r.selectedRowKeys[0]),p.default.update({id:t},n)}))}get name(){return t("Modify QoS")}get labelCol(){return{xs:{span:6},sm:{span:4}}}static get modalSize(){return"large"}getModalSize(){return"large"}init(){this.qosPolicyStore=new f.QoSPolicyStore,this.state={qosPolicy:{name:"",id:""}},this.item.qos_policy_id&&this.getQosPolicyItem()}getQosPolicyItem(){var e=this;return(0,s.default)((function*(){var t=yield e.qosPolicyStore.fetchDetail({id:e.item.qos_policy_id});e.setState({qosPolicy:t})}))()}get instanceName(){return this.item.name||this.item.id}get defaultValue(){var e=null!==this.item.qos_policy_id;return{enableQosPolicy:e,qos_policy_id:{selectedRowKeys:e?[this.item.qos_policy_id]:[],selectedRows:e?[{id:this.item.qos_policy_id,name:this.item.qos_policy_id}]:[]}}}get formItems(){var{enableQosPolicy:e=null!==this.item.qos_policy_id,qosPolicy:a}=this.state;return[{name:"enableQosPolicy",label:t("Enable QoS Policy"),type:"switch",onChange:e=>{this.setState({enableQosPolicy:e})}},{name:"name",label:t("Current QoS policy name"),type:"label",content:u.default.createElement("div",null,a.name||t("Not yet bound")),hidden:!e},{name:"qos_policy_id",label:t("QoS Policy"),type:"tab-select-table",tabs:h.getQoSPolicyTabs.call(this,{disabledFunc:e=>e.id===this.item.qos_policy_id}),isMulti:!1,required:!0,tip:t("Choosing a QoS policy can limit bandwidth and DSCP"),hidden:!e}]}}a.ModifyQoS=g,(0,o.default)(g,"id","modify_qos"),(0,o.default)(g,"title",t("Modify QoS")),(0,o.default)(g,"policy","update_port"),(0,o.default)(g,"allowed",(()=>l.default.resolve(!!(0,m.qosEndpoint)())));var v=(0,d.inject)("rootStore")((0,d.observer)(g));a.default=v},3576:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=i(r(65)),s=i(r(51)),o=i(r(36)),u=r(406),d=i(r(336)),c=r(1193),f=r(1195),p=r(1210),h=r(1219),m=r(1224);class g extends c.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"handleFixedIPChange",(e=>m.handleFixedIPChange.call(this,e))),(0,o.default)(this,"onSubmit",(e=>{var{fixed_ip:t,fip:a}=e,r=t.selectedRows[0],n=a.selectedRowKeys[0];return d.default.associateFip({id:n,port_id:this.item.id,fixed_ip_address:r.fixed_ip_address})}))}init(){this.getInterfaces(),h.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={interfaces:[],fixed_ip:null,canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],portLoading:!0}}getInterfaces(){var e=this;return(0,s.default)((function*(){var t=[e.item],a=yield(0,m.getInterfaceWithReason)(t);e.setState({interfaces:a,portLoading:!1})}))()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Associate Floating IP")}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return p.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{virtualAdapter:e}}getFIPFormItemExtra(){return(0,m.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,m.disableFIPAssociate)(e)}get formItems(){var e=(0,m.getFixedIPFormItemForAssociate)(t("Fixed IP"),this),a=(0,m.getFIPFormItemForAssociate)(this);return[{name:"virtualAdapter",label:t("Virtual Adapter"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=g,(0,o.default)(g,"id","AssociateFip"),(0,o.default)(g,"title",t("Associate Floating IP")),(0,o.default)(g,"policy","update_floatingip"),(0,o.default)(g,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,f.isNotError)(e)&&e.associatedDetail&&e.associatedDetail.length{var{floating_ip:t}=e,{id:a}=t.selectedRows[0];return u.default.disassociateFip({id:a})}))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Disassociate Floating IP")}get defaultValue(){var{name:e}=this.item;return{virtualAdapter:e}}get formItems(){var{associatedDetail:e}=this.item;return[{name:"virtualAdapter",label:t("Virtual Adapter"),type:"label",iconType:"instance"},{name:"floating_ip",label:t("Floating IP"),type:"select-table",required:!0,data:e,isMulti:!1,tagKey:"floating_ip_address",filterParams:[{label:t("Fixed IP Address"),name:"fixed_ip_address"}],columns:[{title:t("Fixed IP Address"),dataIndex:"fixed_ip_address"},{title:t("Floating IP Address"),dataIndex:"floating_ip_address"}]}]}}a.DisAssociateFip=f,(0,s.default)(f,"id","DisAssociateFip"),(0,s.default)(f,"title",t("Disassociate Floating IP")),(0,s.default)(f,"policy","update_floatingip"),(0,s.default)(f,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,c.isNotError)(e)&&e.associatedDetail&&e.associatedDetail.length)}));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3582:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(90)),l=n(a(57));a(576);var s=n(a(577)),o=n(a(591));a(1268);var u=n(a(1269));a(1198);var d=n(a(1199));a(1196);var c=n(a(1197));a(411);var f=n(a(227));a(1270);var p=n(a(1271)),h=n(a(343)),m=n(a(111)),g=n(a(559)),v=n(a(0)),y=(a(173),a(555),n(a(16))),b=n(a(4)),_=a(161),S=a(578),x=n(a(635)),w=n(a(3583)),{Paragraph:I}=p.default,C=(e,t)=>{var{content:a,dataIndex:r,render:n,valueRender:l,copyable:s,valueMap:o,unit:u}=t;if((0,g.default)(t,"content"))return s?v.default.createElement(I,{copyable:s},a):a;var d=(0,m.default)(e,r);if(n)d=n(d,e);else if(l){var c=_.renderFilterMap[l];d=c&&c(d)}else o?d=(0,S.getValueMapRender)(t)(d):u&&(d=(0,S.getUnitRender)(t)(d));return(0,h.default)(d)||(d=d||"-"),((e,t,a,r)=>{var n,l,s=(0,m.default)(a,t);return(0,i.default)(n=t.toLowerCase()).call(n,"status")>=0||(0,i.default)(l=t.toLowerCase()).call(l,"state")>=0?v.default.createElement(x.default,{status:s,text:e}):"-"!==e&&(/_?id/g.test(t.toLowerCase())&&!1!==r||r)?v.default.createElement(I,{copyable:r},e):e||"-"})(d,r,e,s)},k=(e,t,a,r,n)=>(0,l.default)(e).call(e,((e,i)=>v.default.createElement(u.default,{loading:a,key:"detail-row-".concat(i)},v.default.createElement(d.default,{className:(0,b.default)(w.default["card-item"],"sl-card-item")},v.default.createElement(c.default,{span:r},(e=>{var{label:t,tooltip:a=""}=e;return a?v.default.createElement(f.default,{title:a},v.default.createElement("span",null,t)):t})(e)),v.default.createElement(c.default,{span:n},C(t,e)))))),D=e=>{var t,{title:a,titleHelp:r,loading:n,options:i,data:l,labelCol:c,contentCol:f,className:p,button:h}=e;return r&&(t=v.default.createElement(s.default,{arrowPointAtCenter:"true",placement:"rightTop",content:r,getPopupContainer:e=>e.parentNode},v.default.createElement(o.default,{className:w.default["title-help"]}))),v.default.createElement("div",{className:(0,b.default)(w.default.card,p)},v.default.createElement("div",{className:w.default["card-content"]},v.default.createElement(u.default,{loading:n},v.default.createElement(d.default,{className:(0,b.default)(w.default["card-item"],"sl-card-item")},v.default.createElement("h3",null," ",a," "),t,h)),k(i,l,n,c,f)))},P=y.default.shape({label:y.default.oneOfType([y.default.string,y.default.node]),content:y.default.any,tooltip:y.default.oneOfType([y.default.string,y.default.node]),dataIndex:y.default.string,valueRender:y.default.string});D.defaultProps={labelCol:8,contentCol:16,options:[],title:"",titleHelp:"",loading:!1,data:{}},D.propTypes={title:y.default.oneOfType([y.default.string,y.default.node]),titleHelp:y.default.any,options:y.default.arrayOf(P),loading:y.default.bool,data:y.default.object,labelCol:y.default.number,contentCol:y.default.number};var T=D;t.default=T},3583:function(e,t,a){var r=a(3584);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3584:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__card--Na2sx {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n margin-bottom: 16px;\n background-color: #fff;\n border-radius: 4px;\n -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);\n}\n.index__card--Na2sx .index__card-content--26JCN {\n padding: 16px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY {\n margin-bottom: 8px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY h3 {\n margin-bottom: 0;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY .index__title-help--8XKV- {\n margin-left: 8px;\n line-height: 26px;\n}\n.index__card--Na2sx .index__card-content--26JCN .index__card-item--1w9VY div {\n word-break: break-all;\n}\n.index__card--Na2sx .index__card-content--26JCN :last-child {\n margin-bottom: 0;\n}\n.index__card--Na2sx .index__card-content--26JCN .ant-typography {\n word-break: break-all;\n}\n",""]),t.locals={card:"index__card--Na2sx","card-content":"index__card-content--26JCN","card-item":"index__card-item--1w9VY","title-help":"index__title-help--8XKV-"}},3585:function(e,t,a){var r=a(3586);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3586:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__main--TubAm {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding: 0 16px;\n}\n.index__main--TubAm .index__left-side--pbUVD {\n width: 380px;\n padding-right: 16px;\n}\n.index__main--TubAm .index__right-side--3v5zG {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n",""]),t.locals={main:"index__main--TubAm","left-side":"index__left-side--pbUVD","right-side":"index__right-side--3v5zG"}},3609:function(e,t,a){var r=a(3610);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},3610:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--26YmP {\n min-height: calc(100vh - 108px);\n}\n.index__wrapper--26YmP .ant-tabs > .ant-tabs-nav {\n background-color: #fff;\n}\n.index__wrapper--26YmP .ant-tabs-nav-wrap {\n padding: 0 16px;\n}\n.index__wrapper--26YmP .list-container {\n margin-top: 0;\n}\n",""]),t.locals={wrapper:"index__wrapper--26YmP"}},3954:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.detailConfigs=t.actionConfigs=void 0;var i=n(a(3955)),l=n(a(3956)),s={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[i.default]};t.actionConfigs=s;var o={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]};t.detailConfigs=o},3955:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=i(r(57)),s=i(r(32)),o=i(r(33)),u=i(r(335)),d=i(r(65)),c=i(r(62)),f=i(r(36)),p=r(406),h=r(1193),m=i(r(1410)),g=i(r(119)),v=i(r(140)),y=r(34),b=i(r(1298));class _ extends h.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"onSubmit",(e=>{var t,a;(e.expires_at&&(e.expires_at=e.expires_at.clone().endOf("day")),e.roles)&&(e.roles=(0,l.default)(t=(0,s.default)(a=(0,o.default)(e.roles)).call(a,(t=>e.roles[t]))).call(t,(e=>({id:e}))));return m.default.create(e).then((e=>{var t=e.application_credential,{links:a,roles:r,system:n,unrestricted:i,user_id:l,name:s}=t,o=(0,c.default)(t,["links","roles","system","unrestricted","user_id","name"]),d="".concat(s,".json"),f=new Blob([(0,u.default)(o,null,2)],{type:"text/plain;charset=utf-8"});b.default.saveAs(f,d)}))}))}static get modalSize(){return"middle"}getModalSize(){return"middle"}get name(){return t("Create Application Credentials")}static allowed(){return d.default.resolve(!0)}get roleOptions(){var e=(0,y.toJS)(v.default.roles);return(0,l.default)(e).call(e,(e=>({label:e.name,value:e.id})))}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0},{name:"expires_at",label:t("Expires At"),type:"date-picker",showToday:!1,disabledDate:e=>e&&e<(0,g.default)().subtract(1,"days").endOf("d"),required:!1},{name:"roles",label:t("Roles"),type:"check-group",options:this.roleOptions,extra:t("If not provided, the roles assigned to the application credential will be the same as the roles in the current token."),span:12},{name:"description",label:t("Description"),type:"textarea",required:!1}]}}a.Create=_,(0,f.default)(_,"id","create-application_credentials"),(0,f.default)(_,"title",t("Create Application Credentials")),(0,f.default)(_,"policy","identity:create_application_credential");var S=(0,p.inject)("rootStore")((0,p.observer)(_));a.default=S},3956:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),s=r(1193),o=i(r(1410));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","identity:delete_application_credential"),(0,l.default)(this,"onSubmit",(e=>{var{user_id:t,id:a}=e;return o.default.client.delete(t,a)}))}get id(){return"delete"}get title(){return t("Delete Application Credential")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete application credential")}}a.default=u}}]); \ No newline at end of file diff --git a/skyline_console/static/common.bundle.1663167892.js.gz b/skyline_console/static/common.bundle.1663167892.js.gz new file mode 100644 index 00000000..d8f00f39 Binary files /dev/null and b/skyline_console/static/common.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/compute.bundle.1658297502.js b/skyline_console/static/compute.bundle.1658297502.js deleted file mode 100644 index 69f227bf..00000000 --- a/skyline_console/static/compute.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{1142:function(e,t,a){"use strict";var r=a(35),i=a(44),n=a(33),l=a(25),o=a(28),s=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.IronicStore=void 0;var f,p,m,h,v=c(a(65)),g=c(a(28)),y=c(a(33)),b=c(a(546)),_=c(a(25)),S=c(a(71)),M=c(a(52)),I=c(a(72)),x=c(a(37)),A=c(a(55)),w=(c(a(73)),a(32)),N=c(a(49)),C=c(a(54));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}var j=(f=class extends C.default{constructor(){super(...arguments),(0,I.default)(this,"bootDevice",p,this),(0,I.default)(this,"supportedBootDevices",m,this),(0,I.default)(this,"traits",h,this)}get client(){return N.default.ironic.nodes}get portClient(){return N.default.ironic.ports}get traitClient(){return N.default.placement.traits}get listWithDetail(){return!0}detailDidFetch(e,t,a){var r=this;return(0,M.default)((function*(){if(a.onlyDetail)return e;var{uuid:t}=e,i=function(e){for(var t=1;t{var t=(0,y.default)(r).call(r,(t=>t.node_uuid===e.uuid));e.portCount=t.length})),e}))()}changeProvision(e,t){return this.submitting(this.client.updateStatesProvision(e,t))}changePower(e,t){return this.submitting(this.client.UpdateStatesPower(e,t))}setMaintenance(e,t){return this.submitting(this.client.updateMaintenance(e,t))}clearMaintenance(e){return this.submitting(this.client.deleteMaintenance(e))}getBootDevice(e){var t=this;return(0,M.default)((function*(){try{var a=yield t.submitting(t.client.getManagementBootDevice(e));return t.bootDevice=a,a}catch(e){return null}}))()}getSupportedBootDevice(e){var t=this;return(0,M.default)((function*(){var a=yield t.submitting(t.client.getManagementBootDeviceSupported(e));return t.supportedBootDevices=a.supported_boot_devices||[],t.supportedBootDevices}))()}setBootDevice(e,t){return this.submitting(this.client.updateManagementBootDevice(e,t))}create(e){var t=this;return(0,M.default)((function*(){var{traits:a=[]}=e,r=(0,S.default)(e,["traits"]);if(0===a.length)return t.submitting(t.client.create(r));t.isLoading=!0;var i=yield t.client.create(r),{uuid:n}=i;return t.updateTraits(n,a)}))()}edit(e,t){var{id:a}=e;return this.submitting(this.client.patch(a,t))}getTraits(){var e=this;return(0,M.default)((function*(){var t=yield e.traitClient.list(),{traits:a=[]}=t;(0,b.default)(a).call(a),e.traits=a}))()}updateTraits(e,t){var a={traits:t};return this.submitting(this.client.updateTraits(e,a))}},p=(0,A.default)(f.prototype,"bootDevice",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),m=(0,A.default)(f.prototype,"supportedBootDevices",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),h=(0,A.default)(f.prototype,"traits",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,A.default)(f.prototype,"changeProvision",[w.action],(0,_.default)(f.prototype,"changeProvision"),f.prototype),(0,A.default)(f.prototype,"changePower",[w.action],(0,_.default)(f.prototype,"changePower"),f.prototype),(0,A.default)(f.prototype,"setMaintenance",[w.action],(0,_.default)(f.prototype,"setMaintenance"),f.prototype),(0,A.default)(f.prototype,"clearMaintenance",[w.action],(0,_.default)(f.prototype,"clearMaintenance"),f.prototype),(0,A.default)(f.prototype,"getBootDevice",[w.action],(0,_.default)(f.prototype,"getBootDevice"),f.prototype),(0,A.default)(f.prototype,"getSupportedBootDevice",[w.action],(0,_.default)(f.prototype,"getSupportedBootDevice"),f.prototype),(0,A.default)(f.prototype,"setBootDevice",[w.action],(0,_.default)(f.prototype,"setBootDevice"),f.prototype),(0,A.default)(f.prototype,"create",[w.action],(0,_.default)(f.prototype,"create"),f.prototype),(0,A.default)(f.prototype,"edit",[w.action],(0,_.default)(f.prototype,"edit"),f.prototype),(0,A.default)(f.prototype,"getTraits",[w.action],(0,_.default)(f.prototype,"getTraits"),f.prototype),(0,A.default)(f.prototype,"updateTraits",[w.action],(0,_.default)(f.prototype,"updateTraits"),f.prototype),f);t.IronicStore=j;var k=new j;t.default=k},1197:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(r(101)),m=f(r(28)),h=f(r(65)),v=f(r(195)),g=f(r(516)),y=f(r(82)),b=f(r(37)),_=r(382),S=r(1113),M=f(r(1141)),I=r(1131),x=r(327),A=f(r(3511)),w=f(r(3512));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}class C extends S.StepAction{constructor(){super(...arguments),(0,b.default)(this,"getProperties",((e,t,a)=>{var r,i,n,l=(0,p.default)(a).call(a,(e=>"flavor_families"===e.key)),o=(0,p.default)(r=l.value).call(r,(t=>t.architecture===e)),s=(0,p.default)(i=o.categories).call(i,(e=>e.name===t)),u={};return(0,m.default)(n=s.properties||[]).call(n,(e=>{u[e.key]=e.value})),u})),(0,b.default)(this,"onSubmit",(e=>{var{body:t,extraSpecs:a,accessControl:r}=e;return this.store.create(t,a,r)}))}static allowed(){return h.default.resolve(!0)}get tab(){var e,t=(0,x.parse)((0,v.default)(e=this.routing.location.search).call(e,1)),{tab:a}=t;return a}get listUrl(){var{architecture:e}=(0,g.default)(this)||{},t=e||this.tab;return this.getRoutePath("flavor",null,{tab:t})}get name(){return t("create flavor")}get hasConfirmStep(){return!1}init(){this.store=M.default}get steps(){return[{title:t("Params Setting"),component:w.default},{title:t("Access Type Setting"),component:A.default}]}getPageSizeValue(e,t){return"custom"===e?t:e}getSubmitData(e){var{architecture:t,category:a,name:r,vcpus:i,memoryGb:n,bandwidth:l,iops:f,ephemeral:p,gpuType:h,gpuNumber:v,numaNodesNum:g,memPageSizeValueMore:_,memPageSizeValue:S,memPageSizeMore:M,attachUsb:x,usbType:A,usbNumber:w,numaNodes:C,cpuPolicy:P,cpuThreadPolicy:j,memPageSize:k,settings:T=[],accessType:D,accessControl:z={},resourceProps:L,traitProps:E,disk:O}=e,R={name:r,vcpus:i,ram:1024*n,disk:O||0},V="public"===D;R["os-flavor-access:is_public"]=V,I.categoryHasEphemeral&&(R["OS-FLV-EXT-DATA:ephemeral"]=p);var F=function(e){for(var t=1;t{F["hw:numa_cpus.".concat(t)]=e.value.cpu,F["hw:numa_mem.".concat(t)]=e.value.ram})),F["hw:cpu_policy"]=P,F["hw:cpu_thread_policy"]=j,F["hw:mem_page_size"]=this.getPageSizeValue(k,S)):"bare_metal"!==t&&(F["hw:numa_nodes"]=g,F["hw:mem_page_size"]=this.getPageSizeValue(M,_)),(0,I.isBareMetal)(t)&&((0,m.default)(L).call(L,(e=>{var{key:t,value:a}=e.value;F["resources:".concat(t)]=a})),(0,m.default)(E).call(E,(e=>{var{value:t}=e;F["trait:".concat(t)]="required"}))),{body:R,extraSpecs:F,accessControl:!V&&(z.selectedRowKeys||[])}}}a.StepCreate=C,(0,b.default)(C,"id","flavor-create"),(0,b.default)(C,"title",t("Create Flavor")),(0,b.default)(C,"path","/compute/flavor-admin/create"),(0,b.default)(C,"policy","os_compute_api:os-flavor-manage:create");var P=(0,_.inject)("rootStore")((0,_.observer)(C));a.default=P},1198:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1141));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-flavor-manage:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("If an instance is using this flavor, deleting it will cause the instance's flavor data to be missing. Are you sure to delete {name}?",{name:a})})),(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 Flavor")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete flavor")}}a.default=u},1199:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageAccess=void 0;var p=f(r(65)),m=f(r(33)),h=f(r(91)),v=f(r(62)),g=f(r(52)),y=f(r(37)),b=r(382),_=f(r(1141)),S=r(1113),M=r(384),I=r(1153);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 A(e){for(var t=1;t{var t,{access:a}=e;if(!a)return p.default.resolve();var{selectedRowKeys:r}=a,{id:i}=this.item,n=(0,m.default)(r).call(r,(e=>{var t;return(0,h.default)(t=this.currentAccess).call(t,e)<0})),l=(0,m.default)(t=this.currentAccess).call(t,(e=>(0,h.default)(r).call(r,e)<0));return _.default.updateAccess(i,n,l)}))}init(){this.store=_.default,this.projectStore=new M.ProjectStore,this.getAccess(),this.getProjects()}get name(){return t("Manage Access")}static get modalSize(){return"large"}getModalSize(){return"large"}getAccess(){var e=this;return(0,g.default)((function*(){yield e.store.fetchAccess(e.item.id),e.updateDefaultValue()}))()}getProjects(){var e=this;return(0,g.default)((function*(){yield e.projectStore.fetchList(),e.updateDefaultValue()}))()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){var{name:e}=this.item;return{name:e,access:{selectedRowKeys:this.currentAccess}}}get currentAccess(){var e;return(0,v.default)(e=this.store.access||[]).call(e,(e=>e.tenant_id))}get formItems(){return[{name:"name",label:t("Flavor Name"),type:"label",iconType:"flavor"},A({name:"access",label:t("Access Control"),type:"select-table",isMulti:!0,required:!0,isLoading:this.projectStore.list.isLoading,data:this.projects},I.projectTableOptions)]}}a.ManageAccess=w,(0,y.default)(w,"id","manage-access"),(0,y.default)(w,"title",t("Manage Access")),(0,y.default)(w,"policy",["os_compute_api:os-flavor-access","os_compute_api:os-flavor-access:add_tenant_access","os_compute_api:os-flavor-access:remove_tenant_access"]),(0,y.default)(w,"allowed",(e=>p.default.resolve(!e.is_public)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},1200:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.AggregateStore=void 0;var n,l=i(a(28)),o=i(a(65)),s=i(a(62)),u=i(a(25)),d=i(a(55)),c=a(32),f=i(a(49)),p=i(a(54)),m=(n=class extends p.default{get client(){return f.default.nova.aggregates}manageHost(e){var{adds:t,dels:a,id:r}=e,i=[];return(0,l.default)(t).call(t,(e=>{var t={add_host:{host:e}};i.push(t)})),(0,l.default)(a).call(a,(e=>{var t={remove_host:{host:e}};i.push(t)})),this.submitting(o.default.all((0,s.default)(i).call(i,(e=>this.client.action(r,e)))))}manageMetadata(e){var{id:t,metadata:a}=e,r={set_metadata:{metadata:a}};return this.submitting(this.client.action(t,r))}},(0,d.default)(n.prototype,"manageHost",[c.action],(0,u.default)(n.prototype,"manageHost"),n.prototype),(0,d.default)(n.prototype,"manageMetadata",[c.action],(0,u.default)(n.prototype,"manageMetadata"),n.prototype),n);t.AggregateStore=m;var h=new m;t.default=h},1201:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.getDifFromAddSelectValue=a.hasValue=a.canChangeStatus=a.provisioningState=a.powerState=void 0;var l=n(r(91)),o=n(r(28)),s=n(r(101)),u=n(r(82)),d=r(47),c={"power on":t("Power On"),"power off":t("Power Off"),rebooting:t("Rebooting"),"soft rebooting":t("Soft Rebooting"),"soft power off":t("Soft Power Off")};a.powerState=c;var f={enroll:t("Enroll"),manageable:t("Manageable"),active:t("Active"),available:t("Available"),"wait call-back":t("Deploy Wait"),deleting:t("Deleting"),deleted:t("Deleted"),cleaning:t("Cleaning"),"adopt failed":t("Adopt Failed"),"clean failed":t("Clean Failed"),inspecting:t("Inspecting"),"inspect failed":t("Inspect Failed"),"clean wait":t("Clean Wait"),"deploy failed":t("Deploy Failed"),deploying:t("Deploying"),error:t("Error"),rebuild:t("Rebuilt"),verifying:t("Verifying")};a.provisioningState=f;a.canChangeStatus=e=>{var t;return(0,l.default)(t=["available","active","manageable","enroll"]).call(t,e.provision_state)>=0};a.hasValue=e=>!!e||(0,d.isNumber)(e)||!(0,d.isEmpty)(e);a.getDifFromAddSelectValue=(e,t,a)=>{var r=[],i=[],n=[];return(0,o.default)(e).call(e,(e=>{var n,{key:l,value:o}=e.value,d=(0,s.default)(t).call(t,(e=>e.value.key===l)),c={path:(0,u.default)(n="/".concat(a,"/")).call(n,l),value:o};d?d.value.value!==o&&(c.op="replace",i.push(c)):(c.op="add",r.push(c))})),(0,o.default)(t).call(t,(t=>{var{key:r}=t.value;if(!(0,s.default)(e).call(e,(e=>e.value.key===r))){var i,l=(0,u.default)(i="/".concat(a,"/")).call(i,r);n.push({op:"remove",path:l})}})),{adds:r,replaces:i,dels:n}}},1202:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.IronicPortGroupStore=void 0;var n,l=i(a(25)),o=i(a(55)),s=a(32),u=i(a(49)),d=i(a(54)),c=(n=class extends d.default{get client(){return u.default.ironic.nodes.portgroups}listFetchByClient(e,t){var{id:a}=t;return this.client.listDetail(a,e)}get paramsFunc(){return()=>{}}create(e){return this.submitting(u.default.ironic.portgroups.create(e))}edit(e,t){var{id:a}=e;return this.submitting(u.default.ironic.portgroups.patch(a,t))}},(0,o.default)(n.prototype,"create",[s.action],(0,l.default)(n.prototype,"create"),n.prototype),(0,o.default)(n.prototype,"edit",[s.action],(0,l.default)(n.prototype,"edit"),n.prototype),n);t.IronicPortGroupStore=c;var f=new c;t.default=f},1251:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Instance=void 0;var m=p(r(219)),h=p(r(35)),v=p(r(62)),g=p(r(101)),y=p(r(1150)),b=p(r(82)),_=p(r(33)),S=p(r(71)),M=p(r(37)),I=p(r(0)),x=r(382),A=p(r(542)),w=p(r(1114)),N=r(1120),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=k(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(383)),P=r(1311),j=p(r(1444));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 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 D(e){for(var t=1;t{var{id:t}=e,a=D({},(0,S.default)(e,["id"]));if(this.inHostDetailPage){var{detail:{service:{host:r}={}}={}}=this.props;a.host=r}if(this.inFlavorDetailPage){var{detail:{id:i}={}}=this.props;a.flavor_id=i}return a})),(0,M.default)(this,"updateFetchParams",(e=>{var{detail:t={}}=this.props,{members:a}=t,{id:r}=e,i=D({},(0,S.default)(e,["id"]));return this.inServerGroupDetailPage&&(i.members=a,i.isServerGroup=!0),i}))}init(){this.inDetailPage?this.inServerGroupDetailPage?this.store=new P.ServerGroupInstanceStore:this.store=new C.ServerStore:this.store=C.default,this.downloadStore=new C.ServerStore}get policy(){return this.isAdminPage?"os_compute_api:servers:index:get_all_tenants":"os_compute_api:servers:index"}get name(){return t("instances")}get inServerGroupDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"server-group")}get inHostDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"hypervisors")}get inFlavorDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"flavor")}get isFilterByBackend(){return!this.inServerGroupDetailPage}get isSortByBackend(){return this.isFilterByBackend}get transitionStatusList(){return(0,h.default)(N.transitionStatus)}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"created_at"}get batchActions(){var{selectedRowKeys:e=[],data:t=[]}=this.store.list,a=(0,v.default)(e).call(e,(e=>(0,g.default)(t).call(t,(t=>t.id===e)))),r=(0,y.default)(a).call(a,(e=>(0,N.isIronicInstance)(e))),i=(0,y.default)(a).call(a,(e=>!(0,N.isIronicInstance)(e)));return r?j.default.batchActionsForIronic:i?j.default.batchActions:j.default.batchActionsForOthers}getCheckboxProps(e){return{name:e.name}}getColumns(){var e=[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("instanceDetail"),sortKey:"display_name"},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Host"),dataIndex:"host",isHideable:!0,hidden:!this.isAdminPage},{title:t("Image"),dataIndex:"image_os_distro",isHideable:!0,render:(e,t)=>I.default.createElement(A.default,{type:e,title:t.image_name}),stringify:(e,t)=>t.image_name,sorter:!1,width:80},{title:t("Fixed IP"),dataIndex:"fixed_addresses",sorter:!1,isHideable:!0,render:e=>e.length?(0,v.default)(e).call(e,(e=>I.default.createElement("div",{key:e},e))):"-",stringify:e=>e.join(",")||"-"},{title:t("Floating IP"),dataIndex:"floating_addresses",isHideable:!0,sorter:!1,render:e=>e.length?(0,v.default)(e).call(e,(e=>I.default.createElement("div",{key:e},e,I.default.createElement("br",null)))):"-",stringify:e=>e.join(",")||"-"},{title:t("Flavor"),dataIndex:"flavor",sorter:!1,isHideable:!0,render:(e,a)=>{var r;return(0,N.isIronicInstance)(a)?(0,b.default)(r="".concat(e,"(")).call(r,t("Ironic Instance"),")"):e}},{title:t("Status"),dataIndex:"status",sorter:!1,render:e=>N.instanceStatus[e&&e.toLowerCase()]||"-"},{title:t("Tags"),dataIndex:"tags",render:e=>(0,v.default)(e).call(e,((e,t)=>(0,N.SimpleTag)({tag:e,index:t}))),isHideable:!0},{title:t("Locked"),dataIndex:"locked",isHideable:!0,render:N.lockRender,width:80,stringify:e=>e?t("Locked"):t("Not locked")},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}];return this.inFlavorDetailPage?(0,_.default)(e).call(e,(e=>"flavor"!==e.dataIndex)):this.inHostDetailPage?(0,_.default)(e).call(e,(e=>"host"!==e.dataIndex)):e}get actionConfigs(){var{batchActions:e}=this;return this.isAdminPage?D(D({},j.default.adminActions),{},{batchActions:e}):this.inFlavorDetailPage?D(D({},j.default.actionConfigs),{},{primaryActions:[],batchActions:e}):D(D({},j.default.actionConfigs),{},{batchActions:e})}get searchFilters(){return[{label:t("Name"),name:"name"},...this.isAdminPage?[{label:t("Project Name"),name:"project_name"}]:[],...this.isAdminPage&&!this.inHostDetailPage?[{label:t("Host"),name:"host"}]:[],N.instanceStatusFilter,{label:t("Tags"),name:"tags"}]}}a.Instance=z;var L=(0,x.inject)("rootStore")((0,x.observer)(z));a.default=L},1258:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.IronicPortStore=void 0;var n,l=i(a(25)),o=i(a(55)),s=a(32),u=i(a(49)),d=i(a(54)),c=(n=class extends d.default{get client(){return u.default.ironic.ports}get nodePortsClient(){return u.default.ironic.nodes.ports}listFetchByClient(e,t){var{id:a}=t;return this.nodePortsClient.listDetail(a,e)}get paramsFunc(){return()=>{}}create(e){return this.submitting(this.client.create(e))}edit(e,t){var{id:a}=e;return this.submitting(this.client.patch(a,t))}},(0,o.default)(n.prototype,"create",[s.action],(0,l.default)(n.prototype,"create"),n.prototype),(0,o.default)(n.prototype,"edit",[s.action],(0,l.default)(n.prototype,"edit"),n.prototype),n);t.IronicPortStore=c;var f=new c;t.default=f},1320:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(28)),m=f(r(35)),h=f(r(91)),v=f(r(33)),g=f(r(65)),y=f(r(52)),b=f(r(71)),_=f(r(37)),S=r(382),M=r(1113),I=f(r(1142)),x=r(32),A=r(47),w=r(135),N=r(1201),C=f(r(3577)),P=f(r(3578)),j=f(r(3579));function k(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 T extends M.StepAction{constructor(){var e;super(...arguments),e=this,(0,_.default)(this,"updateItemValueToArray",((e,t)=>{var a=e[t]||{};e[t]=(0,w.updateObjToAddSelectArray)(a)})),(0,_.default)(this,"updateDriverInfoValue",(e=>{var t,{driver_info:a={}}=e;(0,p.default)(t=(0,m.default)(a)).call(t,(t=>{e["driver_info_".concat(t)]=a[t]}))})),(0,_.default)(this,"updateValues",(e=>{var{custom_trait:t=[],standard_trait:a=[]}=e,r=(0,b.default)(e,["custom_trait","standard_trait"]),i=[];return(0,p.default)(t).call(t,(e=>i.push(e.value))),i.push(...a),function(e){for(var t=1;t{var t=this.updateValues(e);return this.isEdit?this.submitEdit(t):this.submitCreate(t)})),(0,_.default)(this,"submitCreate",(e=>{var t,a={},r={},{more:i}=e,n=(0,b.default)(e,["more"]);return(0,p.default)(t=(0,m.default)(n)).call(t,(t=>{var i="driver_info_";if(0===(0,h.default)(t).call(t,i)){var n=t.substring(i.length);r[n]=e[t]}else if("properties"===t||"extra"===t){var l=(0,w.updateAddSelectValueToObj)(e[t]);(0,A.isEmpty)(l)||(a[t]=l)}else a[t]=e[t]})),a.driver_info=r,this.store.create(a)})),(0,_.default)(this,"getKeyPath",(e=>{var t="driver_info_";return 0===(0,h.default)(e).call(e,t)?"/driver_info/".concat(e.substring(t.length)):"/".concat(e)})),(0,_.default)(this,"submitEdit",function(){var t=(0,y.default)((function*(t){var a,r=[],i=[],n=[],{extra:l}=e.state,{properties:o,extra:s,more:u,traits:d}=t,c=(0,b.default)(t,["properties","extra","more","traits"]),{properties:f,extra:h,traits:y}=l;(0,p.default)(a=(0,m.default)(c)).call(a,(a=>{var n=t[a],o={value:n,path:e.getKeyPath(a)};if(!(0,A.has)(l,a)&&(0,N.hasValue)(n))o.op="add",r.push(o);else{var s=l[a];(0,A.isEqual)(s,n)||!s&&!n||(o.op="replace",i.push(o))}}));var{adds:_,replaces:S,dels:M}=(0,N.getDifFromAddSelectValue)(o,f,"properties"),{adds:I,replaces:x,dels:w}=(0,N.getDifFromAddSelectValue)(s,h,"extra");r.push(...(0,v.default)(_).call(_,(e=>(0,N.hasValue)(e.value))),...(0,v.default)(I).call(I,(e=>(0,N.hasValue)(e.value)))),i.push(...(0,v.default)(S).call(S,(e=>(0,N.hasValue)(e.value))),...(0,v.default)(x).call(x,(e=>(0,N.hasValue)(e.value)))),n.push(...M,...w);var C=[...r,...i,...n];return(0,A.isEqual)(d,y)||(yield e.store.updateTraits(e.id,d)),0===C.length?g.default.resolve():e.store.edit({id:e.id},C)}));return function(e){return t.apply(this,arguments)}}())}static allowed(){return g.default.resolve(!0)}get listUrl(){return this.getRoutePath("baremetalNode")}get name(){return this.isEdit?t("edit baremetal node"):t("create baremetal node")}get hasConfirmStep(){return!1}get hasExtraProps(){return this.isEdit}get steps(){return[{title:t("Node Info"),component:j.default},{title:t("Driver Info"),component:P.default},{title:t("Driver Interface"),component:C.default}]}get isEdit(){var{pathname:e}=this.props.location;return(0,h.default)(e).call(e,"edit")>=0}get id(){var{id:e}=this.props.match.params;return e}init(){this.store=I.default,this.getDetail()}getDetail(){var e=this;return(0,y.default)((function*(){if(e.isEdit){var t=yield e.store.fetchDetail({id:e.id,onlyDetail:!0}),a=(0,x.toJS)(t);e.updateItemValueToArray(a,"properties"),e.updateItemValueToArray(a,"extra"),e.updateDriverInfoValue(a),e.setState({extra:(0,x.toJS)(a)})}}))()}}a.Create=T,(0,_.default)(T,"id","create"),(0,_.default)(T,"title",t("Create Node")),(0,_.default)(T,"path","/compute/baremetal-node-admin/create"),(0,_.default)(T,"policy","baremetal:node:create");var D=(0,S.inject)("rootStore")((0,S.observer)(T));a.default=D},1444:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l,o=n(r(82)),s=n(r(195)),u=n(r(3370)),d=n(r(3372)),c=n(r(3373)),f=n(r(1170)),p=n(r(1449)),m=n(r(3403)),h=n(r(3404)),v=n(r(3405)),g=n(r(3406)),y=n(r(3407)),b=n(r(3408)),_=n(r(3409)),S=n(r(3410)),M=n(r(3411)),I=n(r(3412)),x=n(r(3413)),A=n(r(3414)),w=n(r(1450)),N=n(r(3415)),C=n(r(3416)),P=n(r(3417)),j=n(r(3418)),k=n(r(3419)),T=n(r(3420)),D=n(r(3421)),z=n(r(3422)),L=n(r(3423)),E=n(r(3424)),O=n(r(3425)),R=n(r(3426)),V=n(r(3427)),F=n(r(3428)),B=n(r(3429)),G=n(r(3430)),U=[h.default,v.default,M.default,I.default,y.default,b.default,x.default,A.default,_.default,S.default,D.default,z.default],Y=[c.default,g.default,w.default,N.default,O.default,L.default,R.default],H=[F.default,B.default,C.default,m.default,T.default],q=[h.default,v.default,y.default,b.default,u.default],K=(0,o.default)(l=(0,s.default)(q).call(q,0,-2)).call(l,V.default),Q=(0,s.default)(q).call(q,0,-1),Z={actionConfigs:{rowActions:{firstAction:j.default,moreActions:[{title:t("Instance Status"),actions:U},{title:t("Related Resources"),actions:Y},{title:t("Backups & Snapshots"),actions:[d.default]},{title:t("Configuration Update"),actions:H},{action:k.default},{action:u.default},{action:V.default},{action:G.default}]},batchActions:q,primaryActions:[f.default,p.default]},adminActions:{rowActions:{firstAction:j.default,moreActions:[{title:t("Instance Status"),actions:U},{action:P.default},{action:E.default},{action:u.default},{action:V.default}]},batchActions:q,primaryActions:[]},batchActions:q,batchActionsForIronic:K,batchActionsForOthers:Q};a.default=Z},1445:function(e,t,a){var r=a(3371);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,i);r.locals&&(e.exports=r.locals)},1449:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateIronic=void 0;var p=f(r(65)),m=f(r(91)),h=f(r(516)),v=f(r(62)),g=f(r(1254)),y=f(r(82));r(1157);var b=f(r(1158)),_=f(r(385));r(548);var S=f(r(549)),M=f(r(52)),I=f(r(37)),x=f(r(0)),A=r(382),w=r(32),N=(r(167),r(1113)),C=f(r(383)),P=f(r(384)),j=f(r(4)),k=r(47),T=r(1120),D=r(83),z=f(r(1145)),L=f(r(3397)),E=f(r(3399)),O=f(r(3400)),R=f(r(3401)),V=f(r(3402));function F(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{data:a}=this.state,r=t("Quota: Project quotas sufficient resources can be created"),i="success";(0,k.isFinite)(this.quota)&&e>this.quota&&(r=t("Quota: Insufficient quota to create resources, please adjust resource quantity or quota(left { quota }, input { input }).",{quota:this.quota,input:e}),i="error"),this.msg=r,this.setState({data:B(B({},a),{},{count:e}),status:i})})),(0,I.default)(this,"onSubmit",(e=>e?this.store.create(e):p.default.reject())),(0,I.default)(this,"onOk",(()=>{var{data:e}=this.state;this.values=e;var a=this.getSubmitData(e);this.onSubmit(a).then((()=>{this.routing.push(this.listUrl),z.default.success(this.successText)}),(e=>{var{response:{data:a}={}}=e,{forbidden:{message:r=""}={}}=a||{};r&&"string"==typeof r&&-1!==(0,m.default)(r).call(r,"Quota exceeded")?z.default.error(t("Quota exceeded")):z.default.errorWithDetail(a,this.errorText)}))}))}init(){this.store=C.default,this.projectStore=P.default,this.getQuota()}static allowed(e,t){var a,{isAdminPage:r=!1}=t,{match:i}=t||{},n=(0,m.default)(a=i.path).call(a,"/compute/server")>=0;return p.default.resolve(!n&&!r&&(0,T.canCreateIronicByEndpoint)())}getQuota(){var e=this;return(0,M.default)((function*(){yield e.projectStore.fetchProjectQuota({project_id:e.currentProjectId}),e.onCountChange(1)}))()}get quota(){var{instances:e={}}=(0,w.toJS)(this.projectStore.quota)||{},{limit:t=10,used:a=0}=e;return-1===t?1/0:t-a}get name(){return t("Create ironic instance")}get listUrl(){var{image:e,volume:t,servergroup:a}=this.locationParams;return e?this.getRoutePath("image"):t?this.getRoutePath("volume"):a?this.getRoutePath("serverGroupDetail",{id:a}):this.getRoutePath("instance")}get checkEndpoint(){return!0}get endpoint(){return(0,D.ironicOriginEndpoint)()}get hasConfirmStep(){return!1}get steps(){return[{title:t("Base Config"),component:V.default},{title:t("Network Config"),component:R.default},{title:t("System Config"),component:O.default},{title:t("Confirm Config"),component:E.default}]}get instanceName(){var e,t,{name:a,count:r=1}=(0,h.default)(this)||{};return 1===r?a:(0,v.default)(e=(0,g.default)(t=new Array(r)).call(t,r)).call(e,((e,t)=>{var r;return(0,y.default)(r="".concat(a,"-")).call(r,t+1)})).join(", ")}get successText(){return t("The creation instruction was issued successfully, 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})}get errorText(){var{status:e}=this.state;return"error"===e?t("Unable to create instance: insufficient quota to create resources."):this.ipBatchError?t("Unable to create instance: batch creation is not supported when specifying IP."):t("The creation instruction has been issued, please refresh to see the actual situation in the list.")}renderBadge(){var{status:e="success"}=this.state;return"success"===e?null:x.default.createElement("div",{style:{marginTop:8,marginBottom:8}},x.default.createElement(S.default,{status:e,text:this.msg}))}renderExtra(){return null}renderFooterLeft(){var{data:e}=this.state,{count:a=1}=e,r={min:1,max:100,precision:0,onChange:this.onCountChange,formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return x.default.createElement("div",{style:{display:"flex",flexDirection:"column"}},x.default.createElement("div",{style:{display:"flex",alignItems:"center"}},x.default.createElement("div",{className:L.default["number-input"]},x.default.createElement("span",null,t("Count")),x.default.createElement(b.default,(0,_.default)({},r,{value:a,className:(0,j.default)(L.default.input,"instance-count")}))),this.renderExtra()),this.renderBadge())}getSubmitData(e){var{status:t}=this.state;if("error"===t)return null;var{availableZone:a,bootableVolume:r,dataDisk:i,host:n,image:l,instanceSnapshot:o,iso:s,keypair:u,loginType:d,network:c,networks:f,password:m,physicalNode:h,physicalNodeType:g,project:y,resource:b,securityGroup:_,source:S,flavor:M,systemDisk:I,userData:x="",serverGroup:A,name:w,count:N=1}=e,C=l.selectedRowKeys[0],P=!1,{selectedRows:j=[]}=_||{},k={security_groups:(0,v.default)(j).call(j,(e=>({name:e.id}))),name:w,flavorRef:M.selectedRowKeys[0],availability_zone:a.value,networks:(0,v.default)(f).call(f,(e=>{var t={uuid:e.value.network};return 1===e.value.ipType&&e.value.ip&&(t.fixed_ip=e.value.ip,P=!0),t}))};return P&&N>1?(this.ipBatchError=!0,p.default.reject()):(C&&(k.imageRef=C),"keypair"===d.value?k.key_name=u.selectedRowKeys[0]:k.adminPass=m,N>1&&(k.min_count=N,k.max_count=N,k.return_reservation_id=!0),(k.adminPass||x)&&(k.user_data=btoa((0,T.getUserData)(k.adminPass,x))),{server:k})}}a.CreateIronic=G,(0,I.default)(G,"id","ironic-create"),(0,I.default)(G,"title",t("Create Ironic Instance")),(0,I.default)(G,"path",((e,t)=>{var a,{detail:r,match:i}=t||{};return!r||(0,k.isEmpty)(r)?"/compute/ironic-instance/create":(0,m.default)(a=i.path).call(a,"/compute/server")>=0?"/compute/ironic-instance/create?servergroup=".concat(r.id):void 0})),(0,I.default)(G,"policy",["os_compute_api:servers:create","os_compute_api:os-availability-zone:list"]);var U=(0,A.inject)("rootStore")((0,A.observer)(G));a.default=U},1450:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AttachVolume=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(383)),d=n(r(136)),c=r(1113),f=r(1120),p=r(515),m=r(47);class h extends c.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{volume:t}=e,{id:a}=this.item,r={volumeAttachment:{volumeId:t.selectedRowKeys[0]}};return this.store.attachVolume({id:a,body:r})}))}init(){this.store=u.default}get name(){return t("Attach volume")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"volume",label:t("Volume"),type:"volume-select-table",tip:p.multiTip,isMulti:!1,required:!0,serverId:this.item.id,disabledFunc:e=>"iso"===(0,m.get)(e,"origin_data.volume_image_metadata.disk_format")}]}}a.AttachVolume=h,(0,o.default)(h,"id","attach-volume"),(0,o.default)(h,"title",t("Attach Volume")),(0,o.default)(h,"policy","os_compute_api:os-volumes-attachments:create"),(0,o.default)(h,"allowed",((e,t)=>{var{isAdminPage:a}=t;return l.default.resolve(d.default.checkEndpoint("cinder")&&!a&&(0,f.allowAttachVolumeInstance)(e))}));var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},1462:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Snapshots=void 0;var m=p(r(219)),h=p(r(37)),v=r(382),g=p(r(1114)),y=r(520),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=I(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(1256)),_=r(319),S=r(3500),M=p(r(1463));function I(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(I=function(e){return e?a:t})(e)}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 A(e){for(var t=1;tA(A({},e),{},{owner:this.inDetailPage?this.props.detail.tenant_id:null}))),(0,h.default)(this,"getColumns",(()=>(0,S.getBaseSnapshotColumns)(this)))}init(){this.store=this.inDetailPage?new b.InstanceSnapshotStore:b.default,this.downloadStore=this.inDetailPage?this.store:new b.InstanceSnapshotStore}get policy(){return"get_images"}get name(){return t("instance snapshots")}get isRecycleBinDetail(){var e;return(0,m.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?_.emptyActionConfig:this.isAdminPage?M.default.adminConfigs:M.default.actionConfigs}get transitionStatusList(){return y.transitionStatusList}get isFilterByBackend(){return!1}get isSortByBackend(){return!0}get defaultSortKey(){return"created_at"}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"owner"}get currentProjectId(){return this.props.detail.tenant_id}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:[{label:t("Active"),key:"active"},{label:t("Saving"),key:"saving"}]}]}}a.Snapshots=w;var N=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=N},1463:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3501)),l=i(a(3502)),o=i(a(3503)),s=i(a(3504)),u={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:l.default},{action:n.default},{action:s.default}]},batchActions:[s.default]},adminConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:s.default}]},batchActions:[s.default]}};t.default=u},1464:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Image=void 0;var p=f(r(91)),m=f(r(37)),h=f(r(0)),v=r(382),g=f(r(542)),y=f(r(1114)),b=r(520),_=r(523),S=r(135),M=f(r(1465));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 x(e){for(var t=1;t{if(this.isAdminPage)return x(x({},e),{},{all_projects:!0});switch(this.tab){case"public":return x(x({},e),{},{visibility:"public"});case"shared":return x(x({},e),{},{visibility:"shared"});case"project":return x(x({},e),{},{owner:this.currentProjectId});case"all":return x(x({},e),{},{all_projects:!0})}})),(0,m.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("imageDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage&&"all"!==this.tab,sorter:!1},{title:t("Description"),dataIndex:"description",isHideable:!0,sorter:!1},{title:t("Use Type"),dataIndex:"usage_type",isHideable:!0,render:e=>b.imageUsage[e]||"-",sorter:!1},{title:t("Type"),dataIndex:"os_distro",isHideable:!0,render:e=>h.default.createElement(g.default,{type:e,title:e}),width:80,sorter:!1},{title:t("Status"),dataIndex:"status",render:e=>b.imageStatus[e]||"-"},{title:t("Visibility"),dataIndex:"visibility",render:e=>b.imageVisibility[e]||"-",sorter:!1},{title:t("Disk Format"),dataIndex:"disk_format",isHideable:!0,render:e=>b.imageFormats[e]||"-"},{title:t("Size"),dataIndex:"size",isHideable:!0,valueRender:"formatSize"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=new _.ImageStore,this.downloadStore=new _.ImageStore}get policy(){return"get_images"}get name(){return t("images")}get actionConfigs(){return this.isAdminPage?M.default.actionConfigsAdmin:M.default.actionConfigs}get transitionStatusList(){return b.transitionStatusList}get isFilterByBackend(){return!1}get isSortByBackend(){return!0}get defaultSortKey(){return"created_at"}get hasTab(){return!this.isAdminPage}get tab(){if(this.isAdminPage)return null;var{tab:e="project"}=this.props;return e}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"owner"}get searchFilters(){var e=[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:(0,S.getOptions)(b.imageStatus)}],a=["public","shared"];return(0,p.default)(a).call(a,this.tab)<0&&e.push({label:t("Visibility"),name:"visibility",options:(0,S.getOptions)(b.imageVisibility)}),e}}a.Image=A;var w=(0,v.inject)("rootStore")((0,v.observer)(A));a.default=w},1465:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1466)),l=i(a(3535)),o=i(a(3536)),s=i(a(3537)),u=i(a(3538)),d=i(a(3539)),c=i(a(3540)),f=i(a(3541)),p={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:u.default},{action:d.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[{action:o.default},{action:f.default},{action:c.default}]},batchActions:[o.default],primaryActions:[n.default]}};t.default=p},1466:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var p=f(r(35)),m=f(r(3529)),h=f(r(320)),v=f(r(219)),g=f(r(65)),y=f(r(62)),b=f(r(33)),_=f(r(71)),S=f(r(37)),M=r(382),I=r(1113),x=f(r(523)),A=r(520),w=r(1131),N=r(135),C=r(384),P=r(1153);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 k(e){for(var t=1;t{var t=(0,p.default)(this.imageFormats),{name:a}=e,r=a.substring((0,m.default)(a).call(a,".")+1);return(0,h.default)(t).call(t,(e=>{var t;return(0,v.default)(t=r.toLowerCase()).call(t,e)}))})),(0,S.default)(this,"validateFile",((e,a)=>a?this.checkFileType(a)?g.default.resolve():g.default.reject(t("Please select a file with the suffix {types}",{types:(0,p.default)(this.imageFormats).join(",")})):g.default.reject(t("Please select a file")))),(0,S.default)(this,"validateURL",((e,a)=>{if(!a)return g.default.reject(t("Please enter URL!"));return/^https?:\/\/(.*)/.test(a)?g.default.resolve():g.default.reject(t('Please enter a file link starting with "http://" or "https://"!'))})),(0,S.default)(this,"onSubmit",(e=>{var{uploadType:t,file:a,url:r,visibility:i,more:n,hw_cpu_policy:l,hw_cpu_thread_policy:o,min_ram:s,owner:u,usage_type:d="common",members:c}=e,f=k({visibility:i||"private",container_format:"bare",usage_type:d},(0,_.default)(e,["uploadType","file","url","visibility","more","hw_cpu_policy","hw_cpu_thread_policy","min_ram","owner","usage_type","members"]));s&&(f.min_ram=1024*s),l!==N.NoSetValue&&(f.hw_cpu_policy=l),o!==N.NoSetValue&&(f.hw_cpu_thread_policy=o),this.isAdminPage&&(f.owner=u.selectedRowKeys[0]);var p="shared"===i?c.selectedRowKeys:[],m=this.getUploadRequestConf(),h="file"===t?a:r;return this.store.create(f,h,p,m)}))}init(){this.store=x.default,this.projectStore=new C.ProjectStore,this.getProjects()}get listUrl(){return this.getRoutePath("image")}get name(){return t("Create image")}get labelCol(){return{xs:{span:6},sm:{span:5}}}get hasRequestCancelCallback(){return!0}static allowed(){return g.default.resolve(!0)}getProjects(){this.isAdminPage&&this.projectStore.fetchList()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){return{uploadType:"file",hw_qemu_guest_agent:"yes",usage_type:"common",visibility:!!this.isAdminPage&&"public",hw_cpu_policy:N.NoSetValue,hw_cpu_thread_policy:N.NoSetValue}}get imageFormats(){return this.isAdminPage?A.imageFormats:A.imageFormatsConsole}get formatList(){var e;return(0,y.default)(e=(0,p.default)(this.imageFormats)).call(e,(e=>({value:e,label:this.imageFormats[e]})))}get osList(){var e;return(0,y.default)(e=(0,p.default)(A.imageOS)).call(e,(e=>({value:e,label:A.imageOS[e]})))}get yesNoList(){return[{value:"yes",label:t("Yes")},{value:"no",label:t("No")}]}get useTypeList(){var e,t;return(0,b.default)(e=(0,y.default)(t=(0,p.default)(A.imageUsage)).call(t,(e=>({value:e,label:A.imageUsage[e]})))).call(e,(e=>!!this.isAdminPage||("common"===e.value||"ironic"===e.value)))}get typeList(){return[{value:"file",label:t("Upload File")},{value:"url",label:t("File URL")}]}get formItems(){var{more:e,visibility:a,uploadType:r}=this.state,i=this.isAdminPage&&"shared"===a,n="url"===r;return[{name:"name",label:t("Name"),type:"input-name",isImage:!0,required:!0},k({name:"owner",label:t("Owned Project"),type:"select-table",required:this.isAdminPage,hidden:!this.isAdminPage,data:this.projects,isLoading:this.projectStore.list.isLoading},P.projectTableOptions),{name:"uploadType",label:t("Upload Type"),type:"radio",options:this.typeList},{name:"file",label:t("File"),type:"upload",validator:this.validateFile,required:!n,hidden:n},{name:"url",label:t("File URL"),type:"input",required:n,hidden:!n,validator:this.validateURL},{name:"disk_format",label:t("Format"),type:"select",options:this.formatList,required:!0},{name:"os_distro",label:t("OS"),type:"select",options:this.osList,required:!0},{name:"os_version",label:t("OS Version"),type:"input",required:!0},{name:"os_admin_user",label:t("OS Admin"),type:"input",required:!0,extra:t("In general, administrator for Windows,root for Linux, please fill by image uploading.")},{name:"min_disk",label:t("Min System Disk(GiB)"),type:"input-int",min:0,max:500},{name:"min_ram",label:t("Min Memory(GiB)"),type:"input-int",min:0,max:500},{name:"visibility",label:t("Visibility"),type:"radio",options:(0,N.getOptions)(A.imageVisibility),hidden:!this.isAdminPage},k({name:"members",label:t("Project"),type:"select-table",required:i,isMulti:!0,hidden:!i,data:this.projects,isLoading:this.projectStore.list.isLoading},P.projectTableOptions),{name:"protected",label:t("Protected"),type:"check",content:t("Protected")},{name:"usage_type",label:t("Usage Type"),type:"select",options:this.useTypeList},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"more",label:t("Advanced Options"),type:"more"},{name:"hw_qemu_guest_agent",label:t("qemu_guest_agent enabled"),type:"radio",onlyRadio:!0,options:this.yesNoList,tip:t("It is recommended to install and use this agent. The instance created with this image can be used to modify the password (qemu_guest_agent needs to be installed when creating the image)."),hidden:!e},{name:"hw_cpu_policy",label:t("CPU Policy"),type:"select",options:(0,N.getOptionsWithNoSet)(w.cpuPolicyList),hidden:!e},{name:"hw_cpu_thread_policy",label:t("CPU Thread Policy"),type:"select",options:(0,N.getOptionsWithNoSet)(w.cpuThreadPolicyList),hidden:!e}]}}a.CreateForm=T,(0,S.default)(T,"id","image-create"),(0,S.default)(T,"title",t("Create Image")),(0,S.default)(T,"path",((e,t)=>{var{isAdminPage:a}=t;return a?"/compute/image-admin/create":"/compute/image/create"})),(0,S.default)(T,"policy",["add_image","upload_image"]),(0,S.default)(T,"aliasPolicy",["glance:add_image","glance:upload_image"]);var D=(0,M.inject)("rootStore")((0,M.observer)(T));a.default=D},1467:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1447)),l=i(a(3543)),o={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]};t.default=o},1468:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3547)),l=i(a(3548)),o=i(a(3549)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=s},1469:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1470)),l=i(a(1471)),o=i(a(3570)),s=i(a(3571)),u=i(a(3572)),d=i(a(3573)),c=i(a(3574)),f=i(a(3575)),p=i(a(3576)),m=i(a(1320)),h=i(a(3580)),v=i(a(3581)),g={rowActions:{firstAction:o.default,moreActions:[{action:h.default},{action:s.default},{action:u.default},{action:v.default},{action:d.default},{action:c.default},{action:f.default},{action:n.default},{action:l.default},{action:p.default}]},batchActions:[p.default],primaryActions:[m.default]};t.default=g},1470:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(101)),m=f(r(62)),h=f(r(65)),v=f(r(71)),g=f(r(37)),y=r(382),b=f(r(1258)),_=r(1202),S=r(1113),M=r(319),I=f(r(1132)),x=r(47),A=r(514),w=r(135);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 C(e){for(var t=1;t!!(0,x.isEmpty)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,g.default)(this,"onSubmit",(e=>{var{port_id:t,switch_id:a,switch_info:r,extra:i,node:n}=e,l=C(C({},(0,v.default)(e,["port_id","switch_id","switch_info","extra","node"])),{},{local_link_connection:{port_id:t,switch_id:a,switch_info:r},node_uuid:this.item.uuid,extra:(0,w.updateAddSelectValueToObj)(i)});return b.default.create(l)}))}init(){this.groupStore=new _.IronicPortGroupStore,this.getPortGroups()}get name(){return t("Create Port")}get messageHasItemName(){return!1}getPortGroups(){var{uuid:e}=this.item;this.groupStore.fetchList({id:e})}get defaultValue(){var{name:e,uuid:t}=this.item;return{node:e||t,pxe_enabled:!0}}get portGroups(){var e;return(0,m.default)(e=this.groupStore.list.data||[]).call(e,(e=>({value:e.uuid,label:e.name||e.uuid})))}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"address",label:t("MAC Address"),required:!0,type:"input",validator:A.macAddressValidate},{name:"pxe_enabled",label:t("PXE Enabled"),type:"radio",options:M.yesNoOptions},{name:"portgroup_uuid",label:t("Port Group"),type:"select",options:this.portGroups},{label:t("Local Link Connection"),type:"title"},{name:"port_id",label:t("Port ID"),type:"input",tip:t("Identifier of the physical port on the switch to which node’s port is connected to")},{name:"switch_id",label:t("Switch ID"),type:"input",tip:t("Only a MAC address or an OpenFlow based datapath_id of the switch are accepted in this field")},{name:"switch_info",label:t("Switch Info"),type:"input",tip:t("an optional string field to be used to store any vendor-specific information")},{name:"physical_network",label:t("Physical Network"),type:"input",tip:t("The name of the physical network to which a port is connected")},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:I.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?h.default.resolve():h.default.reject(t("Please enter complete key value!"))}]}}a.Create=P,(0,g.default)(P,"id","CreatePort"),(0,g.default)(P,"title",t("Create Port")),(0,g.default)(P,"policy","baremetal:port:create"),(0,g.default)(P,"allowed",(()=>h.default.resolve(!0)));var j=(0,y.inject)("rootStore")((0,y.observer)(P));a.default=j},1471:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(101)),m=f(r(65)),h=f(r(71)),v=f(r(37)),g=r(382),y=f(r(1202)),b=r(1113),_=r(319),S=f(r(1132)),M=r(47),I=r(514),x=r(135);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 w(e){for(var t=1;t!!(0,M.isEmpty)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,v.default)(this,"onSubmit",(e=>{var{properties:t,extra:a,node:r}=e,i=w(w({},(0,h.default)(e,["properties","extra","node"])),{},{node_uuid:this.item.uuid,extra:(0,x.updateAddSelectValueToObj)(a),properties:(0,x.updateAddSelectValueToObj)(t)});return y.default.create(i)}))}get name(){return t("Create Port Group")}get messageHasItemName(){return!1}get defaultValue(){var{name:e,uuid:t}=this.item;return{node:e||t,standalone_ports_supported:!0}}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"name",label:t("Name"),type:"input"},{name:"address",label:t("MAC Address"),type:"input",required:!0,validator:I.macAddressValidate},{name:"standalone_ports_supported",label:t("Stand Alone Ports Supported"),type:"radio",options:_.yesNoOptions},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:S.default,addText:t("Add Property"),validator:(e,a)=>this.checkKeyValues(a)?m.default.resolve():m.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:S.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?m.default.resolve():m.default.reject(t("Please enter complete key value!"))}]}}a.Create=N,(0,v.default)(N,"id","CreatePort"),(0,v.default)(N,"title",t("Create Port Group")),(0,v.default)(N,"policy","baremetal:portgroup:create"),(0,v.default)(N,"allowed",(()=>m.default.resolve(!0)));var C=(0,g.inject)("rootStore")((0,g.observer)(N));a.default=C},3331:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(389)),l=i(a(3332)),o=e=>(0,n.default)(l.default,e);t.default=o},3332:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1130)),l=i(a(525)),o=i(a(1251)),s=i(a(3432)),u=i(a(3505)),d=i(a(3525)),c=i(a(1197)),f=i(a(1170)),p=i(a(1449)),m=i(a(3528)),h=i(a(1464)),v=i(a(1466)),g=i(a(1462)),y=i(a(3542)),b=i(a(3544)),_=i(a(3546)),S=i(a(3550)),M=i(a(3551)),I=i(a(3553)),x=i(a(3559)),A=i(a(3560)),w=i(a(3569)),N=i(a(3582)),C=i(a(1320)),P="/compute",j=[{path:P,component:n.default,routes:[{path:"".concat(P,"/instance"),component:o.default,exact:!0},{path:"".concat(P,"/instance-admin"),component:o.default,exact:!0},{path:"".concat(P,"/instance/detail/:id"),component:s.default,exact:!0},{path:"".concat(P,"/instance-admin/detail/:id"),component:s.default,exact:!0},{path:"".concat(P,"/instance/create"),component:f.default,exact:!0},{path:"".concat(P,"/ironic-instance/create"),component:p.default,exact:!0},{path:"".concat(P,"/instance-snapshot"),component:g.default,exact:!0},{path:"".concat(P,"/instance-snapshot-admin"),component:g.default,exact:!0},{path:"".concat(P,"/instance-snapshot/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/instance-snapshot-admin/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/flavor"),component:u.default,exact:!0},{path:"".concat(P,"/flavor-admin"),component:u.default,exact:!0},{path:"".concat(P,"/flavor/detail/:id"),component:d.default,exact:!0},{path:"".concat(P,"/flavor-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(P,"/server-group"),component:_.default,exact:!0},{path:"".concat(P,"/server-group-admin"),component:_.default,exact:!0},{path:"".concat(P,"/server-group/detail/:id"),component:S.default,exact:!0},{path:"".concat(P,"/server-group-admin/detail/:id"),component:S.default,exact:!0},{path:"".concat(P,"/flavor-admin/create"),component:c.default,exact:!0},{path:"".concat(P,"/image"),component:m.default,exact:!0},{path:"".concat(P,"/image-admin"),component:h.default,exact:!0},{path:"".concat(P,"/image/create"),component:v.default,exact:!0},{path:"".concat(P,"/image-admin/create"),component:v.default,exact:!0},{path:"".concat(P,"/image/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/image-admin/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/keypair"),component:y.default,exact:!0},{path:"".concat(P,"/keypair/detail/:id"),component:b.default,exact:!0},{path:"".concat(P,"/hypervisors-admin"),component:I.default,exact:!0},{path:"".concat(P,"/hypervisors-admin/detail/:id"),component:x.default,exact:!0},{path:"".concat(P,"/aggregates-admin"),component:A.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin"),component:w.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/detail/:id"),component:N.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/create"),component:C.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/edit/:id"),component:C.default,exact:!0},{path:"*",component:l.default}]}];t.default=j},3370:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(101)),o=n(r(1150)),s=n(r(28));r(387);var u=n(r(220)),d=n(r(1176)),c=n(r(566));r(534);var f=n(r(394)),p=n(r(37)),m=n(r(0)),h=r(1113),v=r(47),g=r(1120),y=n(r(383)),b=(r(167),r(513),n(r(4))),_=n(r(1445));class S extends h.ConfirmAction{constructor(){super(...arguments),(0,p.default)(this,"policy",["os_compute_api:servers:delete","os_compute_api:os-deferred-delete:force"]),(0,p.default)(this,"isShelved",(e=>"shelved_offloaded"===e.status)),(0,p.default)(this,"hasShelvedItem",(e=>{var t=(0,v.isArray)(e)?e:[e];return!!(0,l.default)(t).call(t,this.isShelved)})),(0,p.default)(this,"allShelvedItem",(e=>{var t=(0,v.isArray)(e)?e:[e];return(0,o.default)(t).call(t,this.isShelved)})),(0,p.default)(this,"initChangeType",(e=>{if(this.allShelvedItem(e))return this.onChangeType(!0,e),void(this.initCheckedValue=!0);this.initCheckedValue=!1,this.onChangeType(!1,e)})),(0,p.default)(this,"confirmContext",(e=>{var a=this.getName(e);return this.initChangeType(e),m.default.createElement("div",null,m.default.createElement("p",{className:_.default.mb16},this.unescape(t("Are you sure to delete instance { name }? ",{name:a}))),m.default.createElement("p",{className:_.default.mb16},this.deleteTip),m.default.createElement("div",null,this.renderCheckbox(e),this.renderCheckboxTip()),this.renderExtra(e))})),(0,p.default)(this,"allowedCheckFunc",(e=>!e||(0,g.isNotLockedOrAdmin)(e,this.isAdminPage)&&!(0,g.isIronicInstance)(e))),(0,p.default)(this,"performErrorMsg",(e=>{var a=(0,v.isArray)(e)?e:[e],r=this.getName(a),i=t('Instance "{ name }" is locked, can not delete it.',{name:r});return a.length>1&&(i=t('Instances "{ name }" are locked, can not delete them.',{name:r})),i})),(0,p.default)(this,"onSubmit",(e=>{var{id:t,isHardDeleted:a=!1}=e||this.item,r=this.isShelved(e||this.item);return a||r?y.default.forceDelete({id:t}):y.default.delete({id:t})}))}get id(){return"SoftDelete"}get title(){return t("Delete Instance")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete instance")}get isAsyncAction(){return!0}onChangeType(e,t){(0,v.isArray)(t)?(0,s.default)(t).call(t,(t=>{t.isHardDeleted=e})):t.isHardDeleted=e}renderExtra(e){return this.hasShelvedItem(e)?m.default.createElement("div",{style:{color:"rgba(0, 0, 0, 0.45)"}},t("The shelved offloaded instance only supports immediate deletion")):null}renderCheckbox(e){return this.initCheckedValue?m.default.createElement(f.default,{checked:this.initCheckedValue,disabled:!0},t("Immediately delete")):m.default.createElement(f.default,{onChange:t=>{this.onChangeType(t.target.checked,e)}},t("Immediately delete"))}get deleteTip(){return t("When the computing service starts the recycling instance interval, the instance will be stored in the recycling bin after deletion, and will be retained according to the corresponding time interval. You can choose to restore it within this period. After successful recovery, the status of the instance is running and related resources remain unchanged.")}get snapshotTip(){return t("If you still want to keep the disk data, it is recommended that you create a snapshot for the disk before deleting.")}renderCheckboxTip(){var e=m.default.createElement("div",{className:_.default.tip},m.default.createElement("h4",{className:_.default["tip-title"]},m.default.createElement(c.default,{className:_.default["tip-icon"]}),t("The instance deleted immediately cannot be restored")),m.default.createElement("p",{className:(0,b.default)(_.default["tip-content"],_.default.mb16)},t("The associated floating IP, virtual adapter, volume and other resources will be automatically disassociated.")),m.default.createElement("p",{className:_.default["tip-content"]},this.snapshotTip));return m.default.createElement(u.default,{title:e,color:"white"},m.default.createElement(d.default,null))}}a.default=S},3371:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__mb16--1gP54 {\n margin-bottom: 16px;\n}\n.index__tip--1FqMU {\n color: rgba(0, 0, 0, 0.65);\n}\n.index__tip-title--FytkU {\n color: rgba(0, 0, 0, 0.85);\n font-weight: 400;\n}\n.index__tip-icon--um9uF {\n margin-right: 8px;\n color: #fedf40;\n}\n.index__tip-content--mECaD {\n margin-left: 20px;\n}\n",""]),t.locals={mb16:"index__mb16--1gP54",tip:"index__tip--1FqMU","tip-title":"index__tip-title--FytkU","tip-icon":"index__tip-icon--um9uF","tip-content":"index__tip-content--mECaD"}},3372:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSnapshot=a.getAdd=a.getZero=a.getQuota=a.getWishes=void 0,r(530);var p=f(r(531)),m=f(r(52)),h=f(r(37)),v=f(r(168)),g=f(r(35)),y=f(r(28)),b=f(r(322)),_=f(r(516)),S=f(r(65)),M=f(r(0)),I=r(382),x=(r(167),f(r(383))),A=r(1113),w=r(1120),N=r(1312),C=f(r(524)),P=f(r(384));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 k(e){for(var t=1;t{var{volumesForSnapshot:e=[]}=x.default;return e.length?{types:(0,v.default)(e).call(e,((e,t)=>{var{volume_type:a}=t;return e[a]?e[a]+=1:e[a]=1,e}),{}),total:e.length}:{total:0,types:{}}};a.getWishes=T;var D=e=>{var t,{snapshots:a={}}=e||{},{types:r={}}=T();return k({snapshotQuota:a},(0,v.default)(t=(0,g.default)(r||{})).call(t,((t,a)=>(t[a]=(e||{})["snapshots_".concat(a)]||{},t)),{}))};a.getQuota=D;var z=e=>{var a,{types:r={}}=T(),i=D(e)||{},{snapshotQuota:n={}}=i,l=[k(k({},n),{},{add:0,name:"snapshot",title:t("Snapshot")})];return(0,y.default)(a=(0,g.default)(r)).call(a,(e=>{var a=i[e]||{};l.push(k(k({},a),{},{add:0,name:e,title:t("{name} type snapshots",{name:e}),type:"line"}))})),l};a.getZero=z;var L=e=>{var t,a=z(e),{types:r={},total:i=0}=T(),n=D(e)||{},{snapshotQuota:l}=n,{left:o=0}=l||{};if(-1!==o&&o{if(u){var a=n[e],{left:i=0}=a||{},l=r[e];-1!==i&&i{var{snapshot:t}=e,{id:a}=this.item;return this.store.createImage({id:a,image:t})}))}init(){this.store=x.default,this.volumeStore=new N.InstanceVolumeStore,this.volumeTypeStore=C.default,this.getQuota()}get name(){return t("create instance snapshot")}get tips(){var e=t("The instance which is boot from volume will create snapshots for each mounted volumes.");return t("A snapshot is an image which preserves the disk state of a running instance, which can be used to start a new instance.")+e}static get modalSize(){return"middle"}getModalSize(){return"middle"}get instanceName(){return(0,_.default)(this).snapshot}get isBootFromVolume(){return(0,w.isBootFromVolume)(this.item)}get showQuota(){return this.isBootFromVolume}get quotaInfo(){var{quota:e,quotaLoading:t}=this.state;return t?[]:L(e)}static get disableSubmit(){var{volumesForSnapshot:e=[]}=x.default;if(!e.length)return!1;var{cinderQuota:t}=P.default;return 0===L(t)[0].add}getQuota(){var e=this;return(0,m.default)((function*(){e.store.setVolumesForSnapshot([]),e.setState({quota:{},quotaLoading:!0});var t=[P.default.fetchProjectCinderQuota(),e.isBootFromVolume?e.volumeStore.fetchList({serverId:e.item.id}):null],[a,r]=yield S.default.all(t);e.store.setVolumesForSnapshot(r||[]),e.setState({quota:a,quotaLoading:!1,volumes:r||[]})}))()}getVolumes(){if(!this.isBootFromVolume)return null;var{volumes:e=[]}=this.state,a=[{dataIndex:"id",title:t("ID/Name"),render:(e,t)=>{var{name:a}=t;return M.default.createElement(M.default.Fragment,null,M.default.createElement("div",null,e),M.default.createElement("div",null,a||"-"))}},{dataIndex:"size",title:t("Size"),render:e=>"".concat(e,"GiB")},{dataIndex:"volume_type",title:t("Volume Type")}];return M.default.createElement(p.default,{columns:a,dataSource:e,rowKey:"id",pagination:!1})}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:""}}get formItems(){var e=[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"snapshot",label:t("Snapshot Name"),type:"input-name",isImage:!0,required:!0}];return this.isBootFromVolume&&e.push({name:"volumes",label:t("Volumes"),type:"label",content:this.getVolumes()}),e}}a.CreateSnapshot=E,(0,h.default)(E,"id","create-snapshot"),(0,h.default)(E,"title",t("Create Snapshot")),(0,h.default)(E,"isSnapshotReadyState",(e=>(0,w.checkStatus)(["active","shutoff","suspended"],e))),(0,h.default)(E,"policy","os_compute_api:servers:create_image"),(0,h.default)(E,"allowed",(e=>S.default.resolve(E.isSnapshotReadyState(e)&&!(0,w.isIronicInstance)(e))));var O=(0,I.inject)("rootStore")((0,I.observer)(E));a.default=O},3373:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AttachInterface=void 0;var l=n(r(65)),o=n(r(101)),s=n(r(82)),u=n(r(37)),d=n(r(0)),c=r(382),f=n(r(383)),p=r(321),m=r(390),h=r(1113),v=r(1120),g=r(514),{isIPv4:y,isIpv6:b,isIpInRangeAll:_}=g.ipValidate;class S extends h.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkIP",((e,a)=>{if(!a||!y(a)&&!b(a))return l.default.reject(t("Please input a valid ip!"));var{allocation_pools:r}=this.state.subnet||{};if(r&&!(0,o.default)(r).call(r,(e=>_(a,e.start,e.end))))return l.default.reject(t("The ip is not within the allocated pool!"));return l.default.resolve()})),(0,u.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,u.default)(this,"onNetworkChange",(e=>{var{selectedRowKeys:t=[]}=e;0!==t.length&&this.getSubnets(t[0])})),(0,u.default)(this,"onSubmit",(e=>{var{network:t,ip:a,ipType:r}=e,{id:i}=this.item,n={net_id:t.selectedRowKeys[0]};1===r&&(n.fixed_ips=[{ip_address:a}]);var l={interfaceAttachment:n};return this.store.addInterface({id:i,body:l})}))}init(){this.store=f.default,this.networkStore=new p.NetworkStore,this.subnetStore=new m.SubnetStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("attach interface")}get subnets(){return this.subnetStore.list.data||[]}getSubnets(e){this.subnetStore.fetchList({network_id:e})}get tips(){return d.default.createElement(d.default.Fragment,null,t("After attaching interface, you may need to login the instance to update the network interface configuration and restart the network service."),d.default.createElement("br",null),t("The port created here will be automatically deleted when detach. If you need a reusable port, please go to the Virtual Adapter page to create and attach the port to instance.")," ")}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:"",ipType:0}}get nameForStateUpdate(){return["network","ipType","subnet"]}get ipTypeOptions(){return[{label:t("Automatically Assigned Address"),value:0},{label:t("Manually Assigned Address"),value:1}]}get formItems(){var{ipType:e,subnet:a}=this.state,r=1===e,i=a&&a.ip_version||4;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"network",label:t("Network"),type:"network-select-table",showExternal:!0,required:!0,disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange},{name:"ipType",label:t("Set IP"),type:"radio",options:this.ipTypeOptions},{name:"subnet",label:t("Subnet"),type:"select-table",required:r,data:this.subnets,isLoading:this.subnetStore.list.isLoading,hidden:!r,isMulti:!1,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(0,s.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end)}}]},{name:"ip",label:t("Given IP"),type:"ip-input",required:1===e,hidden:1!==e,version:i,validator:this.checkIP,extra:t("Please make sure this IP address be available.")}]}}a.AttachInterface=S,(0,u.default)(S,"id","attach-interface"),(0,u.default)(S,"title",t("Attach Interface")),(0,u.default)(S,"policy","os_compute_api:os-attach-interfaces:create"),(0,u.default)(S,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,v.isActiveOrShutOff)(e)&&(0,v.isNotLocked)(e)&&(0,v.isNotDeleting)(e))}));var M=(0,c.inject)("rootStore")((0,c.observer)(S));a.default=M},3397:function(e,t,a){var r=a(3398);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,i);r.locals&&(e.exports=r.locals)},3398:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".index__input--n9iyF {\n margin-right: 32px;\n margin-left: 16px;\n}\n.index__number-input--2NbTH {\n min-width: 165px;\n}\n",""]),t.locals={input:"index__input--n9iyF","number-input":"index__number-input--2NbTH"}},3399:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ConfirmStep=void 0;var l=n(r(65)),o=n(r(82)),s=n(r(1446)),u=n(r(62)),d=n(r(37)),c=r(382),f=n(r(1121));class p extends f.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}init(){}get title(){return"ConfirmStep"}get name(){return"ConfirmStep"}getFlavor(){var e,t,a,{context:r}=this.props,{flavor:i}=r,{disk:n,ram:l,vcpus:u}=i.selectedRows[0];return n?(0,o.default)(e=(0,o.default)(t="".concat(u,"VCPU/")).call(t,n,"GiB/")).call(e,(0,s.default)(l/1024,10),"GiB"):(0,o.default)(a="".concat(u,"VCPU/")).call(a,(0,s.default)(l/1024,10),"GiB")}getSourceValue(){var{context:e}=this.props,{selectedRows:t=[],selectedRowKeys:a=[]}=e.image;return t.length?t[0].name:a[0]}getVirtualLANs(){var{context:e}=this.props,{networks:t}=e;return(0,u.default)(t).call(t,(e=>{var t,a,r,{networkOption:i,subnetOption:n,ipTypeOption:l,ip:s}=e.value,u=1===l.value?n.name||n.label:"";return(0,o.default)(t=(0,o.default)(a=(0,o.default)(r="".concat(i.name||i.label," ")).call(r,l.label," ")).call(a,u," ")).call(t,1===l.value?s:"")}))}getSecurityGroups(){var{context:e}=this.props,{securityGroup:{selectedRows:t=[]}={}}=e;return(0,u.default)(t).call(t,(e=>e.name))}getLoginType(){var e,{context:t}=this.props,{loginType:a,keypair:r}=t,{value:i,label:n}=a;return(0,o.default)(e="".concat(n," ")).call(e,"keypair"===i?r.selectedRows[0].name:"")}goStep(e){var{goStep:t}=this.props;t&&t(e)}get defaultValue(){return{autoRelease:!1}}get formItems(){var{context:e}=this.props;return[{name:"confirm-count",label:t("Count"),type:"label",content:e.count||1},{name:"confirm-config",label:t("Config Overview"),type:"descriptions",title:t("Base Config"),onClick:()=>{this.goStep(0)},items:[{label:t("Available Zone"),value:e.availableZone.label},{label:t("Project"),value:e.project},{label:t("Flavor"),value:this.getFlavor()},{label:t("Image Name"),value:this.getSourceValue()}]},{type:"short-divider"},{name:"confirm-config-network",label:" ",type:"descriptions",title:t("Network Config"),onClick:()=>{this.goStep(1)},items:[{label:t("Virtual LAN"),value:this.getVirtualLANs(),span:1},{label:t("Security Group"),value:this.getSecurityGroups(),span:1}]},{type:"short-divider"},{name:"confirm-config-system",label:" ",type:"descriptions",title:t("System Config"),onClick:()=>{this.goStep(2)},items:[{label:t("Name"),value:e.name},{label:t("Login Type"),value:this.getLoginType()}]}]}}a.ConfirmStep=p;var m=(0,c.inject)("rootStore")((0,c.observer)(p));a.default=m},3400:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SystemStep=void 0;var p=f(r(65)),m=f(r(62)),h=f(r(37)),v=r(382),g=f(r(396)),y=f(r(1121)),b=r(514);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 S(e){for(var t=1;tp.default.resolve()))}init(){this.keyPairStore=g.default,this.getKeypairs()}get title(){return"SystemStep"}get name(){return"SystemStep"}get keypairs(){var e;return(0,m.default)(e=this.keyPairStore.list.data||[]).call(e,(e=>S(S({},e),{},{key:e.name,id:e.name})))}get defaultValue(){var{context:e={}}=this.props;return{loginType:e.loginType||this.loginTypes[0],more:!1}}get loginTypes(){return[{label:t("Keypair"),value:"keypair"},{label:t("Password"),value:"password"}]}getKeypairs(){this.keyPairStore.fetchList()}get nameForStateUpdate(){return["loginType","password","confirmPassword"]}get formItems(){var{loginType:e}=this.state,a=e===this.loginTypes[1].value;return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),isInstance:!0,required:!0},{name:"loginType",label:t("Login Type"),type:"radio",options:this.loginTypes,isWrappedValue:!0},{name:"keypair",label:t("Keypair"),type:"select-table",data:this.keypairs,isLoading:this.keyPairStore.list.isLoading,isMulti:!1,required:!a,hidden:a,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}],selectedLabel:t("Keypair")},{name:"password",label:t("Password"),type:"input-password",required:a,hidden:!a,otherRule:(0,b.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:a,hidden:!a,otherRule:(0,b.getPasswordOtherRule)("confirmPassword","instance")}]}}a.SystemStep=M;var I=(0,v.inject)("rootStore")((0,v.observer)(M));a.default=I},3401:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NetworkStep=void 0;var l=n(r(65)),o=n(r(101)),s=n(r(62)),u=n(r(28)),d=n(r(91)),c=n(r(1150));r(318);var f=n(r(317)),p=n(r(1242)),m=n(r(52)),h=n(r(37)),v=n(r(0)),g=r(382),y=(r(167),r(513),r(47)),b=r(321),_=r(390),S=r(392),M=r(514),I=n(r(1121)),x=n(r(1299)),A=r(522),w=r(1193),N=r(517),{isIPv4:C,isIpv6:P}=M.ipValidate;class j extends I.default{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"allowed",(()=>l.default.resolve())),(0,h.default)(this,"getSubnetPromise",function(){var t=(0,m.default)((function*(t){if(!e.subnetMap[t]){var a=yield e.subnetStore.fetchList({network_id:t});e.subnetMap[t]=a}return e.subnetMap[t]}));return function(e){return t.apply(this,arguments)}}()),(0,h.default)(this,"checkNetworks",(e=>!(!(0,y.isArray)(e)||(0,y.isEmpty)(e)||(0,y.isEmpty)(e[0].value))&&(!(0,o.default)(e).call(e,(e=>!e.value||!e.value.network))&&!(0,o.default)(e).call(e,(e=>1===e.value.ipType&&!C(e.value.ip)&&!P(e.value.ip)))))),(0,h.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,h.default)(this,"onNetworkChange",(e=>{var{selectedRows:t}=e;this.setState({networkSelectRows:t},(()=>{this.getSubnets()})),this.updateContext({networkSelectRows:t})}))}init(){this.networkStore=new b.NetworkStore,this.subnetStore=new _.SubnetStore,this.securityGroupStore=new S.SecurityGroupStore,this.subnetMap={}}get title(){return"NetworkStep"}get name(){return"NetworkStep"}get defaultValue(){return{networks:[]}}getSubnets(){var e=this;return(0,m.default)((function*(){var{networkSelectRows:t,networks:a=[]}=e.state,r=yield l.default.all((0,s.default)(t).call(t,(t=>e.getSubnetPromise(t.id)))),i=[];(0,u.default)(r).call(r,(e=>{i.push(...e)}));var n=[],c=(0,s.default)(t).call(t,((e,t)=>{var r=(0,o.default)(i).call(i,(t=>t.network_id===e.id)),l=(0,o.default)(a).call(a,((t,a)=>t.value.network===e.id&&(n.push(a),!0)));return l||{value:{network:e.id,subnet:r.id,networkOption:e,subnetOption:r,ipTypeOption:A.ipTypeOptions[0],ipType:0},index:t}})),f=(0,s.default)(t).call(t,(e=>e.id));(0,u.default)(a).call(a,((e,t)=>{(0,d.default)(n).call(n,t)<0&&(0,d.default)(f).call(f,e.value.network)>=0&&c.push(e)})),e.updateFormValue("networks",c),e.setState({subnets:i,initValue:c})}))()}get nameForStateUpdate(){return["networkSelect","networks"]}get formItems(){var{networkSelectRows:e=[],subnets:a,initValue:r=[]}=this.state,i=e.length>0,n=e.length&&(0,c.default)(e).call(e,(e=>e.port_security_enabled));return[{name:"networkSelect",label:t("Networks"),type:"network-select-table",disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange,showExternal:!0,isMulti:!1,required:!0,header:v.default.createElement("div",null,t("Please reasonably plan the network and subnet to which the virtual network card belongs."),t(" You can go to the console to "),(0,N.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")}))},{name:"networks",label:t("Virtual LAN"),type:"add-select",networks:e,hidden:!i,subnets:a,itemComponent:x.default,required:i,addTextTips:t("Virtual LANs"),addText:t("Add Virtual LAN"),minCount:e.length||0,optionsByIndex:!0,initValue:r,validator:(e,t)=>this.checkNetworks(t)?l.default.resolve():l.default.reject("")},{name:"ipv6",label:"IPv6",type:"label",hidden:!0,content:v.default.createElement("span",null,t("The selected VPC/ subnet does not have IPv6 enabled.")," ",v.default.createElement(f.default,{type:"link"},t("To open")," ",v.default.createElement(p.default,null))," ")},{type:"divider"},{name:"securityGroup",label:t("Security Group"),type:"select-table",tip:t("Each instance belongs to at least one security group, which needs to be specified when it is created. Instances in the same security group can communicate with each other on the network, and instances in different security groups are disconnected from the internal network by default."),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},required:n,hidden:!n,isMulti:!0,header:v.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,N.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")}),t("Note: The security group you use will act on all virtual adapters of the instance.")),filterParams:w.securityGroupFilter,columns:w.securityGroupColumns,onRow:()=>{}}]}}a.NetworkStep=j;var k=(0,g.inject)("rootStore")((0,g.observer)(j));a.default=k},3402:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var p=f(r(65)),m=f(r(62)),h=f(r(33)),v=f(r(52)),g=f(r(37)),y=f(r(0)),b=r(382),_=r(32),S=f(r(523)),M=f(r(1180)),I=r(520),x=f(r(1121)),A=f(r(1195));function w(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;tp.default.resolve())),(0,g.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,g.default)(this,"checkSystemDisk",((e,t)=>t.type?p.default.resolve():p.default.reject(""))),(0,g.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}init(){this.imageStore=S.default,this.getAvailZones(),this.getImages()}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){var e=this.sourceTypes[0];return{systemDisk:this.defaultVolumeType,source:e,project:this.currentProjectName,dataDisk:[]}}get sourceTypes(){return[{label:t("Image"),value:"image"}]}get availableZones(){var e,t;return(0,m.default)(e=(0,h.default)(t=M.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get images(){var{imageTab:e}=this.state,{image:t}=this.locationParams,a=t?[(0,_.toJS)(this.imageStore.detail)]:this.imageStore.list.data||[],r=(0,h.default)(a).call(a,(t=>!!(0,I.canImageCreateIronicInstance)(t)&&(e?(0,I.getImageOS)(t)===e:t)));return(0,m.default)(r).call(r,(e=>N(N({},e),{},{key:e.id})))}getAvailZones(){var e=this;return(0,v.default)((function*(){yield M.default.fetchListWithoutDetail(),e.availableZones.length&&e.updateFormValue("availableZone",e.availableZones[0])}))()}getImages(){var e=this;return(0,v.default)((function*(){var t,{image:a}=e.locationParams;(a?yield e.imageStore.fetchDetail({id:a}):yield e.imageStore.fetchList({all_projects:e.hasAdminRole}),a)&&e.updateFormValue("image",{selectedRowKeys:[a],selectedRows:(0,h.default)(t=e.images).call(t,(e=>e.id===a))})}))()}get systemTabs(){return(0,I.getImageSystemTabs)()}get nameForStateUpdate(){return["image","flavor"]}get formItems(){var{image:e}=this.locationParams,a=e?this.imageStore.isLoading:this.imageStore.list.isLoading;return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),isWrappedValue:!0,required:!0,options:this.availableZones,tip:t("Availability zone refers to a physical area where power and network are independent of each other in the same area. In the same region, the availability zone and the availability zone can communicate with each other in the intranet, and the available zones can achieve fault isolation.")},{type:"divider"},{name:"flavor",label:t("Specification"),type:"select-table",component:y.default.createElement(A.default,{isIronic:"true",onChange:this.onFlavorChange}),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:a,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,I.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.locationParams.os_distro||this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange}]}}a.BaseStep=C;var P=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=P},3403:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ChangePassword=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(383)),d=r(1113),c=r(514),f=r(1120);class p extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{password:t}=e,{id:a}=this.item;return this.store.changePassword({id:a,password:t})}))}init(){this.store=u.default}get name(){return t("Change password")}get tips(){return t("If OS is Linux, system will reset root password, if OS is Windows, system will reset Administrator password.")}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:"",ipType:0}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,c.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",dependencies:["password"],required:!0,otherRule:(0,c.getPasswordOtherRule)("confirmPassword","instance")}]}}a.ChangePassword=p,(0,o.default)(p,"id","change-password"),(0,o.default)(p,"title",t("Change Password")),(0,o.default)(p,"policy","os_compute_api:os-admin-password"),(0,o.default)(p,"isActive",(e=>(0,f.checkStatus)(["active"],e))),(0,o.default)(p,"allowed",((e,t)=>{var{isAdminPage:a}=t;return l.default.resolve(p.isActive(e)&&(0,f.isNotLockedOrAdmin)(e,a)&&!(0,f.isIronicInstance)(e))}));var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3404:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(33)),o=n(r(62)),s=n(r(37)),u=n(r(0)),d=r(1113),c=r(47),f=r(1120),p=n(r(383));class m extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:start"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.canStart(e)&&(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,c.isArray)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e))),i=(0,l.default)(a).call(a,(e=>!this.canStart(e))),n=[];return r.length&&n.push(t('Instance "{ name }" is locked, can not start it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" status is not shutoff, can not start it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>u.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.start({id:t})}))}get id(){return"start"}get title(){return t("Start Instance")}get buttonText(){return t("Start")}get actionName(){return t("start instance")}get passiveAction(){return t("be started")}get isAsyncAction(){return!0}canStart(e){return(0,f.checkStatus)(["shutdown","shutoff","crashed"],e)}}a.default=m},3405:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(33)),o=n(r(62)),s=n(r(37)),u=n(r(0)),d=r(1113),c=r(47),f=r(1120),p=n(r(383));class m extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:stop"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isRunning(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,c.isArray)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.isRunning(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=[];return r.length&&n.push(t('Instance "{ name }" status is not in active or suspended, can not stop it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" is locked, can not stop it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>u.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.stop({id:t})}))}get id(){return"stop"}get title(){return t("Stop Instance")}get isDanger(){return!0}get buttonText(){return t("Stop")}get actionName(){return t("stop instance")}get passiveAction(){return t("be stopped")}get isAsyncAction(){return!0}isRunning(e){return(0,f.checkStatus)(["active"],e)}}a.default=m},3406:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DetachInterface=void 0;var p=f(r(62)),m=f(r(65)),h=f(r(52)),v=f(r(37)),g=f(r(0)),y=r(382),b=r(383),_=r(1113),S=r(1129),M=r(1120);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 x(e){for(var t=1;t{var{id:t}=this.item,{interfaces:{selectedRowKeys:a=[]}}=e;return this.store.detachInterface({id:t,ports:a})}))}init(){this.store=new b.ServerStore,this.getPorts(),this.state.portLoading=!0}get name(){return t("Detach interface")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get ports(){var{interfaces:e=[]}=this.store;return(0,p.default)(e).call(e,(e=>{var t,a=(0,p.default)(t=e.fixed_ips).call(t,(e=>e.ip_address)).join(",");return x(x({},e),{},{name:a,id:e.port_id})}))}getPorts(){var e=this;return(0,h.default)((function*(){yield e.store.fetchInterfaceList({id:e.item.id}),e.setState({portLoading:!1})}))()}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){var{portLoading:e}=this.state;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"interfaces",label:t("Network Interface"),type:"select-table",required:!0,data:this.ports,isLoading:e,isMulti:!0,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"fixed_ips",render:e=>(0,p.default)(e).call(e,(e=>g.default.createElement("div",{key:e.ip_address},e.ip_address)))},{title:t("State"),dataIndex:"port_state",render:e=>S.portStatus[e]||"-"},{title:t("Mac Address"),dataIndex:"mac_addr"}]}]}}a.DetachInterface=A,(0,v.default)(A,"id","detach-interface"),(0,v.default)(A,"title",t("Detach Interface")),(0,v.default)(A,"policy","os_compute_api:os-attach-interfaces:delete"),(0,v.default)(A,"hasInterfaces",(e=>e.fixed_addresses.length>0)),(0,v.default)(A,"allowed",(e=>m.default.resolve((0,M.isActiveOrShutOff)(e)&&A.hasInterfaces(e)&&(0,M.isNotLocked)(e))));var w=(0,y.inject)("rootStore")((0,y.observer)(A));a.default=w},3407:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(33)),o=n(r(62)),s=n(r(37)),u=n(r(0)),d=r(1113),c=r(47),f=r(1120),p=n(r(383));class m extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:reboot"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.canReboot(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,c.isArray)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.canReboot(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=[];return r.length&&n.push(t('Instance "{ name }" status is not in active or shutoff, can not reboot it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" is locked, can not reboot it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>u.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.reboot({id:t})}))}get id(){return"reboot"}get title(){return t("Reboot Instance")}get buttonText(){return t("Reboot")}get actionName(){return t("reboot instance")}get isDanger(){return!0}get passiveAction(){return t("be rebooted")}get isAsyncAction(){return!0}canReboot(e){return(0,f.checkStatus)(["active","shutoff"],e)}}a.default=m},3408:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(33)),o=n(r(62)),s=n(r(37)),u=n(r(0)),d=r(1113),c=r(47),f=r(1120),p=n(r(383));class m extends d.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:reboot"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isActive(e)&&!(0,f.isIronicInstance)(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,c.isArray)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.isActive(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=(0,l.default)(a).call(a,(e=>(0,f.isIronicInstance)(e))),s=[];return r.length&&s.push(t('Instance "{ name }" status is not active, can not soft reboot it.',{name:this.getName(r)})),i.length&&s.push(t('Instance "{ name }" is locked, can not soft reboot it.',{name:this.getName(i)})),n.length&&s.push(t('Instance "{ name }" is ironic, can not soft reboot it.',{name:this.getName(n)})),(0,o.default)(s).call(s,(e=>u.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.softReboot({id:t})}))}get id(){return"softReboot"}get title(){return t("Soft Reboot Instance")}get buttonText(){return t("Soft Reboot")}get actionName(){return t("soft reboot instance")}get passiveAction(){return t("be soft rebooted")}isActive(e){return(0,f.checkStatus)(["active"],e)}}a.default=m},3409:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-pause-server:pause"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLocked)(e)&&this.isActive(e)&&!this.isAdminPage&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLocked)(a)||(r=t('Instance "{ name }" is locked, can not pause it.',{name:a.name})):r=t('Instance "{ name }" status is not in active, can not pause it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.pause({id:e})}))}get id(){return"pause"}get title(){return t("Pause Instance")}get buttonText(){return t("Pause")}get actionName(){return t("pause instance")}get isAsyncAction(){return!0}isActive(e){return(0,u.checkStatus)(["active"],e)}}a.default=c},3410:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-pause-server:unpause"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isPaused(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isPaused(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not unpause it.',{name:a.name})):r=t('Instance "{ name }" status is not in paused, can not unpause it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.unpause({id:e})}))}get id(){return"unpause"}get title(){return t("Unpause Instance")}get buttonText(){return t("Unpause")}get actionName(){return t("unpause instance")}isPaused(e){return(0,u.checkStatus)(["paused"],e)}}a.default=c},3411:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-lock-server:lock"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||!this.isAdminPage&&(0,u.isNotLocked)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return(0,u.isNotLocked)(a)||(r=t('Instance "{ name }" has already been locked.',{name:a.name})),r})),(0,l.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})+t("Lock instance will lock the operations that have a direct impact on the operation of the instance, such as shutdown, restart, delete, etc. It does not involve the mounting, unmounting and capacity expansion of volume.")})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.lock({id:e})}))}get id(){return"lock"}get title(){return t("Lock Instance")}get buttonText(){return t("Lock")}get actionName(){return t("lock instance")}}a.default=c},3412:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-lock-server:unlock"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||!this.isAdminPage&&(0,u.isLocked)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return(0,u.isLocked)(a)||(r=t('Instance "{ name }" is not locked, can not unlock it.',{name:a.name})),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.unlock({id:e})}))}get id(){return"unlock"}get title(){return t("Unlock Instance")}get buttonText(){return t("Unlock")}get actionName(){return t("unlock instance")}}a.default=c},3413:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-suspend-server:suspend"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isActive(e)&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not suspend it.',{name:a.name})):r=t('Instance "{ name }" status is not in active, can not suspend it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.suspend({id:e})}))}get id(){return"suspend"}get title(){return t("Suspend Instance")}get buttonText(){return t("Suspend")}get actionName(){return t("suspend instance")}get isAsyncAction(){return!0}isActive(e){return(0,u.checkStatus)(["active"],e)}}a.default=c},3414:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(47),u=r(1120),d=n(r(383));class c extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-suspend-server:resume"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isSuspended(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,s.isArray)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not resume it.',{name:a.name})):r=t('Instance "{ name }" status is not in suspended, can not resume it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.resume({id:e})}))}get id(){return"resume"}get title(){return t("Resume Instance")}get buttonText(){return t("Resume")}get actionName(){return t("resume instance")}get isAsyncAction(){return!0}isSuspended(e){return(0,u.checkStatus)(["suspended"],e)}}a.default=c},3415:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DetachVolume=void 0;var l=n(r(33)),o=n(r(65)),s=n(r(37)),u=r(382),d=r(386),c=n(r(383)),f=n(r(136)),p=r(1113),m=r(515),h=r(1120);class v extends p.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{volumes:{selectedRowKeys:a=[]}}=e;return this.store.detachVolume({id:t,volumes:a})}))}init(){this.store=c.default,this.volumeStore=new d.VolumeStore,this.getVolumes()}get name(){return t("Detach Volume")}static get modalSize(){return"large"}getModalSize(){return"large"}get volumes(){var e;return(0,l.default)(e=this.volumeStore.list.data||[]).call(e,(e=>!(0,m.isOsDisk)(e)))}getVolumes(){var{id:e}=this.item;this.volumeStore.fetchList({serverId:e})}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"volumes",label:t("Volume"),type:"select-table",required:!0,data:this.volumes,isLoading:this.volumeStore.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",render:e=>"".concat(e,"GiB")},{title:t("Status"),dataIndex:"status",render:e=>m.volumeStatus[e]||"-"},{title:t("Type"),dataIndex:"volume_type"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.DetachVolume=v,(0,s.default)(v,"id","detach-volume"),(0,s.default)(v,"title",t("Detach Volume")),(0,s.default)(v,"policy","os_compute_api:os-volumes-attachments:delete"),(0,s.default)(v,"allowed",((e,t)=>{var{isAdminPage:a}=t;return o.default.resolve(f.default.checkEndpoint("cinder")&&!a&&(0,h.allowAttachVolumeInstance)(e))}));var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3416:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.fetchQuota=P,a.default=a.Resize=a.getFlavorLabel=a.getQuotaInfo=a.checkFlavorDisable=a.getAdd=a.getQuota=void 0;var p=f(r(82)),m=f(r(65)),h=f(r(37)),v=f(r(52)),g=f(r(0)),y=r(382),b=f(r(1141)),_=f(r(383)),S=r(1113),M=r(1120),I=f(r(384)),x=r(47),A=r(135),w=f(r(1195));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 C(e){for(var t=1;t{if((0,x.isEmpty)(e))return{};var{cores:t={},ram:a={}}=e||{};return{cores:t,ram:a}};a.getQuota=k;var T=(e,t)=>{if((0,x.isEmpty)(t))return{};var{vcpus:a,ram:r}=e.item.flavor_info||{},{vcpus:i,ram:n}=t||{};return{vcpuAdd:i-a,ramAdd:(0,A.getGiBValue)(n-r)}};a.getAdd=T;var D=(e,t)=>{var{quotaLoading:a=!0,quota:r}=t.state;if(a||(0,x.isEmpty)(r))return!1;var{cores:{left:i},ram:{left:n}}=k(r),{vcpuAdd:l,ramAdd:o}=T(t,e);return!(-1===i||i>=l)||!(-1===n||n>=o)};a.checkFlavorDisable=D;var z=e=>{var{quota:a={},quotaLoading:r,flavor:i={}}=e.state;if(r||(0,x.isEmpty)(a))return[];var{cores:n={},ram:l={}}=k(a),{vcpuAdd:o=0,ramAdd:s=0}=T(e,i||{});return[C(C({},n),{},{add:o,name:"cpu",title:t("CPU")}),C(C({},l),{},{add:s,name:"ram",title:t("Memory (GiB)"),type:"line"})]};a.getQuotaInfo=z;var L=e=>{var a,r,i,n,{flavor:l,flavor_info:{vcpus:o,ram:s}={}}=e.item;return(0,p.default)(a=(0,p.default)(r=(0,p.default)(i=(0,p.default)(n="".concat(l," (")).call(n,t("VCPUs"),": ")).call(i,o,", ")).call(r,t("Memory"),": ")).call(a,(0,A.formatSize)(s,2),")")};a.getFlavorLabel=L;class E extends S.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onFlavorChange",(e=>{var{selectedRows:t=[]}=e||{};this.setState({flavor:t[0]})})),(0,h.default)(this,"disabledFlavor",(e=>D(e,this))),(0,h.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{newFlavor:a}=e,r=a.selectedRowKeys[0];return _.default.resize({id:t,flavor:r})}))}init(){this.store=b.default,P(this)}get name(){return t("resize")}static get modalSize(){return"large"}get isAsyncAction(){return!0}getModalSize(){return"large"}get tips(){return g.default.createElement("div",{style:{display:"inline-table"}},g.default.createElement("p",{style:{color:"#0068FF"}},t("The current operation requires the instance to be shut down:")),g.default.createElement("p",null,t("In order to avoid data loss, the instance will shut down and interrupt your business. Please confirm carefully.")),g.default.createElement("p",null,t("Forced shutdown may result in data loss or file system damage. You can also take the initiative to shut down and perform operations.")))}get showQuota(){return!0}get quotaInfo(){return z(this)}get defaultValue(){var{name:e}=this.item;return{instance:e,flavor:L(this)}}get formItems(){var{flavor:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"flavor",label:t("Current Flavor"),type:"label",iconType:"flavor"},{name:"newFlavor",label:t("Flavor"),type:"select-table",component:g.default.createElement(w.default,{flavor:e,onChange:this.onFlavorChange,disabledFunc:this.disabledFlavor}),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"option",label:t("Forced Shutdown"),type:"check",content:t("Agree to force shutdown"),required:!0}]}}a.Resize=E,(0,h.default)(E,"id","resize"),(0,h.default)(E,"title",t("Resize")),(0,h.default)(E,"isDanger",!0),(0,h.default)(E,"policy","os_compute_api:servers:resize"),(0,h.default)(E,"isActiveOrShutOff",(e=>(0,M.checkStatus)(["active","shutoff"],e,!1))),(0,h.default)(E,"allowed",((e,t)=>{var{isAdminPage:a}=t;return m.default.resolve(!E.isAdminPage&&E.isActiveOrShutOff(e)&&(0,M.isNotLockedOrAdmin)(e,a)&&!(0,M.isIronicInstance)(e))}));var O=(0,y.inject)("rootStore")((0,y.observer)(E));a.default=O},3417:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LiveMigrate=void 0;var p=f(r(62)),m=f(r(33)),h=f(r(65)),v=f(r(37)),g=r(382),y=f(r(383)),b=r(1113),_=r(1120),S=f(r(544)),M=r(1255);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 x(e){for(var t=1;t{var t,{host:{selectedRows:a=[]}={}}=e,{id:r}=this.item,i=null;a.length>0&&(i={host:null===(t=a[0])||void 0===t?void 0:t.service_host});return this.store.migrate({id:r,body:i})}))}init(){this.store=y.default,this.hypervisorStore=S.default,this.getHypervisors()}get name(){return t("migrate")}static get modalSize(){return"large"}getModalSize(){return"large"}getHypervisors(){this.hypervisorStore.fetchList()}get hypervisors(){var e,t;return(0,p.default)(e=(0,m.default)(t=this.hypervisorStore.list.data||[]).call(t,(e=>"ironic"!==e.hypervisor_type))).call(e,(e=>x(x({},e),{},{key:e.id})))}get tips(){return t("Choose a host to migrate instance to. If not selected, the scheduler will auto select target host.")}get defaultValue(){var{name:e,host:t}=this.item;return{instance:e,current:t}}get formItems(){var{host:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"current",label:t("Current Compute Host"),type:"label",iconType:"aggregate"},{name:"host",label:t("Target Compute Host"),type:"select-table",data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,isMulti:!1,extra:t("If nova-compute on the host is disabled, it will be forbidden to be selected as the target host."),filterParams:M.hypervisorFilters,columns:M.hypervisorColumns,disabledFunc:t=>t.service_host===e||"enabled"!==t.status}]}}a.LiveMigrate=A,(0,v.default)(A,"id","migrate"),(0,v.default)(A,"title",t("Migrate")),(0,v.default)(A,"policy","os_compute_api:os-migrate-server:migrate"),(0,v.default)(A,"allowed",(e=>h.default.resolve(((0,_.isActive)(e)||(0,_.isStopped)(e))&&(0,_.isNotDeleting)(e)&&!(0,_.isIronicInstance)(e))));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3418:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(82)),o=n(r(52)),s=n(r(37)),u=r(1113),d=n(r(383)),c=r(1120),f=n(r(226)),{getLocale:p}=f.default;class m extends u.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"policy","os_compute_api:os-remote-consoles"),(0,s.default)(this,"confirmContext",(()=>t("Are you sure to jump directly to the console? The console will open in a new page later."))),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,c.isActive)(e)&&!(0,c.isIronicInstance)(e))),(0,s.default)(this,"performErrorMsg",(()=>t("You are not allowed to jump to the console."))),(0,s.default)(this,"onSubmit",(0,o.default)((function*(){var t,a,{id:r}=e.item,i=d.default;a=(0,c.isIronicInstance)(e.item)?yield i.getConsoleIronic({id:r}):yield i.getConsole({id:r});var{url:n}=a.remote_console,o=p();window.open((0,l.default)(t="".concat(n,"&language=")).call(t,o))})))}get id(){return"console"}get title(){return t("Jump to Console")}get buttonText(){return t("Console")}get actionName(){return t("jump to the console")}}a.default=m},3419:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=r(1113),d=n(r(383));class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t}=e,a={name:t},{id:r}=this.item;return d.default.edit({id:r},a)}))}init(){this.store=d.default}static allowed(){return l.default.resolve(!0)}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name"),isInstance:!0}]}}a.Edit=c,(0,o.default)(c,"id","edit-server"),(0,o.default)(c,"title",t("Edit Instance")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","os_compute_api:servers:update");var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3420:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rebuild=void 0;var p=f(r(33)),m=f(r(62)),h=f(r(65)),v=f(r(37)),g=r(382),y=f(r(523)),b=f(r(383)),_=r(1113),S=r(1120),M=r(520);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 x(e){for(var t=1;t{this.setState({imageTab:e})})),(0,v.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{image:{selectedRowKeys:a=[]}}=e;return this.store.rebuild({id:t,image:a[0]})}))}init(){this.store=b.default,this.imageStore=y.default,this.getImages()}get name(){return t("rebuild instance")}static get modalSize(){return"large"}get labelCol(){return{xs:{span:6},sm:{span:4}}}get images(){var e,{imageTab:t}=this.state,a=(0,p.default)(e=this.imageStore.list.data||[]).call(e,(e=>!!(0,M.canImageCreateInstance)(e)&&(!t||(0,M.getImageOS)(e)===t)));return(0,m.default)(a).call(a,(e=>x(x({},e),{},{key:e.id})))}getImages(){this.imageStore.fetchList()}get systemTabs(){return(0,M.getImageSystemTabs)()}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:this.imageStore.list.isLoading,required:!0,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,M.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange}]}}a.Rebuild=A,(0,v.default)(A,"id","rebuild"),(0,v.default)(A,"title",t("Rebuild Instance")),(0,v.default)(A,"policy","os_compute_api:servers:rebuild"),(0,v.default)(A,"isRootVolumeInUse",(()=>!0)),(0,v.default)(A,"allowed",(e=>{var t=(0,S.isActiveOrShutOff)(e)&&(0,S.isNotLocked)(e)&&A.isRootVolumeInUse(e)&&!(0,S.isIsoInstance)(e);return h.default.resolve(t)}));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3421:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=n(r(0)),s=r(1113),u=r(1120),d=n(r(383)),c=n(r(1445));class f extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-shelve:shelve"),(0,l.default)(this,"isStatusOk",(e=>(0,u.checkStatus)(["active","shutoff","paused","suspended"],e))),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isStatusOk(e)&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"confirmContext",(e=>{var{name:a}=e;return o.default.createElement("div",null,o.default.createElement("p",{className:c.default.mb16},this.unescape(t("Are you sure to shelve instance { name }? ",{name:a}))),o.default.createElement("p",null,t("After shelving, the instance will be shut down, resources will be released, and the snapshot will be saved to Glance. This will take about a few minutes, please be patient. You also can choose to unshelve to restore the instance.")))})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.shelve({id:e})}))}get id(){return"shelve"}get title(){return t("Shelve Instance")}get buttonText(){return t("Shelve")}get actionName(){return t("shelve instance")}get isAsyncAction(){return!0}}a.default=f},3422:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=r(1120),u=n(r(383));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-shelve:unshelve"),(0,l.default)(this,"isStatusOk",(e=>(0,s.checkStatus)(["shelved","shelved_offloaded"],e))),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,s.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isStatusOk(e))),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.unshelve({id:e})}))}get id(){return"shelve"}get title(){return t("Unshelve Instance")}get buttonText(){return t("Unshelve")}get actionName(){return t("unshelve instance")}get isAsyncAction(){return!0}}a.default=d},3423:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DisassociateFip=void 0;var l=n(r(65)),o=n(r(62)),s=n(r(52)),u=n(r(37)),d=r(382),c=r(323),f=r(1113);class p extends f.ModalAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"onSubmit",function(){var t=(0,s.default)((function*(t){var{address:a}=t,r=yield e.store.fetchList({floating_ip_address:a});return r.length?e.store.disassociateFip({id:r[0].id}):l.default.resolve()}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new c.FloatingIpStore}get name(){return t("disassociate floating ip")}get fips(){var{floating_addresses:e=[]}=this.item;return(0,o.default)(e).call(e,(e=>({value:e,label:e})))}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"address",label:t("Floating Ip"),type:"select",required:!0,options:this.fips}]}}a.DisassociateFip=p,(0,u.default)(p,"id","DisassociateFip"),(0,u.default)(p,"title",t("Disassociate Floating Ip")),(0,u.default)(p,"policy","update_floatingip"),(0,u.default)(p,"hasFip",(e=>e.floating_addresses.length>0)),(0,u.default)(p,"allowed",(e=>l.default.resolve(p.hasFip(e))));var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3424:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LiveMigrate=void 0;var p=f(r(62)),m=f(r(33)),h=f(r(65)),v=f(r(37)),g=r(382),y=f(r(383)),b=r(1113),_=r(1120),S=f(r(544)),M=r(1255);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 x(e){for(var t=1;t{var{host:t,option:{blockMigrate:a}}=e,{id:r}=this.item,i={host:t?t.selectedRows[0].service_host:null,block_migration:a||"auto"};return this.store.migrateLive({id:r,body:i})}))}init(){this.store=y.default,this.hypervisorStore=S.default,this.getHypervisors()}get name(){return t("live migrate")}static get modalSize(){return"large"}getModalSize(){return"large"}getHypervisors(){this.hypervisorStore.fetchList()}get hypervisors(){var e,t;return(0,p.default)(e=(0,m.default)(t=this.hypervisorStore.list.data||[]).call(t,(e=>"ironic"!==e.hypervisor_type))).call(e,(e=>x(x({},e),{},{key:e.id})))}get tips(){return t("Choose a host to live migrate instance to. If not selected, the scheduler will auto select target host.")}get defaultValue(){var{name:e,host:t}=this.item;return{instance:e,current:t,option:{blockMigrate:!1}}}get formItems(){var{host:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"current",label:t("Current Compute Host"),type:"label",iconType:"aggregate"},{name:"host",label:t("Target Compute Host"),type:"select-table",data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,isMulti:!1,extra:t("If nova-compute on the host is disabled, it will be forbidden to be selected as the target host."),filterParams:M.hypervisorFilters,columns:M.hypervisorColumns,disabledFunc:t=>t.service_host===e||"enabled"!==t.status},{name:"option",label:t("Options"),type:"check-group",options:[{label:t("Block Migrate"),value:"blockMigrate"}]}]}}a.LiveMigrate=A,(0,v.default)(A,"id","LiveMigrate"),(0,v.default)(A,"title",t("Live Migrate")),(0,v.default)(A,"policy","os_compute_api:os-migrate-server:migrate_live"),(0,v.default)(A,"allowed",(e=>h.default.resolve(((0,_.isActive)(e)||(0,_.isPaused)(e))&&(0,_.isNotDeleting)(e)&&!(0,_.isIronicInstance)(e))));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3425:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=n(r(65)),o=n(r(52)),s=n(r(37)),u=r(382),d=n(r(383)),c=n(r(323)),f=r(1113),p=r(1120),m=r(1137),h=r(1151),v=r(1129);class g extends f.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"handleFixedIPChange",(e=>h.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 c.default.associateFip({id:i,port_id:r.port_id,fixed_ip_address:r.fixed_ip_address})}))}init(){this.getInterfaces(),m.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={fixed_ip:null,interfaces:[],canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[],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{id:t}=e.item,a=yield d.default.fetchInterfaceList({id:t}),r=yield(0,h.getInterfaceWithReason)(a);e.setState({interfaces:r,portLoading:!1})}))()}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return v.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{instance:e}}getFIPFormItemExtra(){return(0,h.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,h.disableFIPAssociate)(e)}get formItems(){var e=(0,h.getFixedIPFormItemForAssociate)(t("Instance IP"),this),a=(0,h.getFIPFormItemForAssociate)(this);return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=g,(0,s.default)(g,"id","AssociateFip"),(0,s.default)(g,"title",t("Associate Floating IP")),(0,s.default)(g,"policy","update_floatingip"),(0,s.default)(g,"canAssociated",(e=>e.fixed_addresses.length>e.floating_addresses.length)),(0,s.default)(g,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,p.isNotError)(e)&&g.canAssociated(e))}));var y=(0,u.inject)("rootStore")((0,u.observer)(g));a.default=y},3426:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var p=f(r(65)),m=f(r(62)),h=f(r(101)),v=f(r(52)),g=f(r(37)),y=f(r(0)),b=r(382),_=r(1113),S=f(r(383)),M=r(521),I=r(529),x=r(392),A=r(1129),w=r(1193),N=r(32);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 P(e){for(var t=1;te.getSecurityGroupPromise(t))));e.formRef.current.setFieldsValue({securityGroup:{selectedRowKeys:i}}),e.setState({sgInitValue:{selectedRowKeys:i,port:r,selectedRows:n}})}}));return function(e){return t.apply(this,arguments)}}()),(0,g.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={},port:{selectedRowKeys:a=[]}}=e,r=a[0],i={port:{security_groups:t}};return this.securityGroupStore.updatePortSecurityGroup({id:r,reqBody:i})}))}init(){this.store=S.default,this.securityGroupStore=new x.SecurityGroupStore,this.portStore=new M.VirtualAdapterStore,this.portStoreOrigin=new I.PortStore,this.getPorts(),this.securityGroupMap={}}getPorts(){p.default.all([this.portStore.fetchList({device_id:this.item.id}),this.portStoreOrigin.fetchList({device_id:this.item.id})])}get ports(){var e=(0,N.toJS)(this.portStore.list.data)||[],t=(0,N.toJS)(this.portStoreOrigin.list.data)||[];return(0,m.default)(e).call(e,(e=>{var a=(0,h.default)(t).call(t,(t=>t.id===e.id));return P(P({},e),{},{name:e.id,security_groups:a.security_groups})}))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Manage Security Group")}get defaultValue(){var{name:e}=this.item,{port:t}=this.state,a={name:e};return t&&(a.securityGroup={selectedRowKeys:t.security_groups},a.port={selectedRowKeys:[t.id]}),a}get formItems(){var{sgInitValue:e={}}=this.state;return[{name:"name",label:t("Instance"),type:"label",iconType:"instance"},{name:"port",label:t("Virtual Adapter"),type:"select-table",required:!0,data:this.ports,isLoading:this.portStore.list.isLoading&&this.portStoreOrigin.list.isLoading,isMulti:!1,onChange:this.onPortChange,filterParams:[{label:t("Owned Network"),name:"network_name"}],columns:[{title:t("ID"),dataIndex:"id"},{title:t("Owned Network"),dataIndex:"network_name"},{title:t("IPv4 Address"),dataIndex:"ipv4",render:e=>(0,m.default)(e).call(e,(e=>y.default.createElement("div",{key:e},e)))},{title:t("IPv6 Address"),dataIndex:"ipv6",render:e=>(0,m.default)(e).call(e,(e=>y.default.createElement("div",{key:e},e)))},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Status"),dataIndex:"status",render:e=>A.portStatus[e]||e}]},{name:"securityGroup",label:t("Security Group"),type:"select-table",initValue:e,required:!0,tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,filterParams:w.securityGroupFilter,columns:w.securityGroupColumns,onRow:()=>{}}]}}a.ManageSecurityGroup=j,(0,g.default)(j,"id","manage-security-group"),(0,g.default)(j,"title",t("Manage Security Group")),(0,g.default)(j,"allowed",(()=>p.default.resolve(!0))),(0,g.default)(j,"policy","update_port");var k=(0,b.inject)("rootStore")((0,b.observer)(j));a.default=k},3427:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(383)),u=r(1120);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:force"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&(0,u.isIronicInstance)(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.forceDelete({id:t})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete ironic instance")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3428:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(383));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:servers:resize"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"verify_resize"===e.status.toLowerCase())),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("".concat(this.actionNameDisplay," (instance: {name})?"),{name:a})})),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.update(t,{confirmResize:null})}))}get id(){return"confirm_resize_migrate"}get title(){return t("Confirm Resize or Migrate")}get buttonText(){return t("Confirm Resize or Migrate")}get actionName(){return t("confirm resize or migrate")}}a.default=u},3429:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(383));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:servers:resize"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"verify_resize"===e.status.toLowerCase())),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.update(t,{revertResize:null})}))}get id(){return"revert_resize_migrate"}get title(){return t("Revert Resize or Migrate")}get buttonText(){return t("Revert Resize or Migrate")}get actionName(){return t("revert resize or migrate")}}a.default=u},3430:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ModifyTags=void 0;var l=n(r(65)),o=n(r(320)),s=n(r(219)),u=n(r(37)),d=n(r(0)),c=r(382),f=r(1113),p=n(r(1451)),m=n(r(3431)),h=r(47);class v extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>m.default.update({serverId:this.props.item.id},e)))}get name(){return t("modify instance tags")}init(){this.state.tags=this.props.item.tags||[]}get formItems(){var{tags:e}=this.state;return[{name:"tags",label:t("Tags"),component:d.default.createElement(p.default,{tags:e,maxLength:60,maxCount:50}),validator:(e,a)=>{var r=this.props.item.tags||[];if((0,h.isEqual)(a,r))return l.default.resolve(!0);var i="";return(0,o.default)(a).call(a,(e=>{var t=(0,s.default)(e).call(e,"/")||(0,s.default)(e).call(e,",");return t&&(i=e),t}))?l.default.reject(new Error(t("Invalid Tag Value: {tag}",{tag:i}))):(0,o.default)(r).call(r,(function(e){return(0,o.default)(a).call(a,(t=>{var a=e!==t&&t.toLowerCase()===e.toLowerCase();return a&&(i=t),a}))}))?l.default.reject(new Error(t("Duplicate tag name: {tag}",{tag:i}))):l.default.resolve(!0)},extra:d.default.createElement("div",null,d.default.createElement("div",null,"1. ",t("Each server can have up to 50 tags")),d.default.createElement("div",null,"2. ",t("Tags are not case sensitive")),d.default.createElement("div",null,"3. ",t("Tag is no longer than 60 characters")),d.default.createElement("div",null,"4. ",t("Forward Slash ‘/’ is not allowed to be in a tag name")),d.default.createElement("div",null,"5."," ",t("Commas ‘,’ are not allowed to be in a tag name in order to simplify requests that specify lists of tags")))}]}}a.ModifyTags=v,(0,u.default)(v,"id","modify-instance-tags"),(0,u.default)(v,"title",t("Modify Instance Tags")),(0,u.default)(v,"buttonText",t("Modify Instance Tags")),(0,u.default)(v,"policy","os_compute_api:os-server-tags:update_all"),(0,u.default)(v,"allowed",(()=>l.default.resolve(!0)));var g=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=g},3431:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.TagStore=void 0;var n,l=i(a(25)),o=i(a(55)),s=a(32),u=i(a(49)),d=i(a(54)),c=(n=class extends d.default{get client(){return u.default.nova.servers}get paramsFunc(){return()=>null}update(e,t){var{serverId:a}=e;return this.submitting(this.client.updateTags(a,t))}},(0,o.default)(n.prototype,"update",[s.action],(0,l.default)(n.prototype,"update"),n.prototype),n);t.TagStore=c;var f=new c;t.default=f},3432:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.InstanceDetail=void 0;var p=f(r(219)),m=f(r(518)),h=f(r(33)),v=f(r(37)),g=r(382),y=r(1120),b=r(383),_=f(r(1119)),S=f(r(1452)),M=f(r(1316)),I=f(r(1317)),x=f(r(3475)),A=r(32),w=f(r(3478)),N=f(r(3489)),C=f(r(3499)),P=f(r(1462)),j=f(r(1444));function k(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;tT(T({},e),{},{isRecycleBinDetail:this.isRecycleBinDetail})))}get name(){return t("instance")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get policy(){return"os_compute_api:servers:show"}get isRecycleBinDetail(){var e;return(0,p.default)(e=this.path).call(e,"recycle-bin")}get listUrl(){return this.isRecycleBinDetail?this.getRoutePath("recycleBin"):this.getRoutePath("instance")}get actionConfigs(){return this.isRecycleBinDetail?x.default:this.isAdminPage?j.default.adminActions:j.default.actionConfigs}get detailData(){var{id:e,status:t}=this.store.detail;if(e&&"soft_deleted"===t&&!this.isRecycleBinDetail){var a=this.getRoutePath("recycleBinDetail",{id:e});this.routing.push(a)}return(0,A.toJS)(this.store.detail)||{}}getActionData(){return this.detailData.itemInList||{}}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",render:e=>y.instanceStatus[e]||e},{title:t("Lock Status"),dataIndex:"locked",render:y.lockRender},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime"},{title:t("Host"),dataIndex:"OS-EXT-SRV-ATTR:host"}]}get tabs(){var e=[{title:t("BaseDetail"),key:"BaseDetail",component:w.default},{title:t("Instance Snapshot"),key:"snapshots",component:P.default},{title:t("Interface"),key:"interface",component:I.default},{title:t("Floating IPs"),key:"floatingIps",component:M.default},{title:t("Security Group"),key:"securityGroup",component:N.default},{title:t("Action Log"),key:"action",component:C.default}];return this.enableCinder&&(0,m.default)(e).call(e,1,0,{title:t("Volume"),key:"volumes",component:S.default}),(0,y.isIronicInstance)(this.detailData)?(0,h.default)(e).call(e,(e=>"volumes"!==e.key&&"snapshots"!==e.key&&"monitor"!==e.key)):e}init(){this.store=new b.ServerStore}}a.InstanceDetail=D;var z=(0,g.inject)("rootStore")((0,g.observer)(D));a.default=z},3475:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3476)),l=i(a(3477)),o={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[l.default,n.default]};t.default=o},3476:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(383));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:force"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.forceDelete({id:t})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete instance")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=u},3477:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(383));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:restore"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.restore({id:t})}))}get id(){return"Recover"}get title(){return t("Recover")}get actionName(){return t("recover instance")}get passiveAction(){return t("be recovered")}get isAsyncAction(){return!0}}a.default=u},3478:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(518)),o=n(r(62)),s=n(r(28)),u=n(r(35)),d=n(r(33)),c=n(r(101)),f=n(r(82)),p=n(r(328)),m=n(r(537));r(318);var h=n(r(317)),v=n(r(1192));r(1115);var g=n(r(1116));r(1117);var y=n(r(1118)),b=n(r(52)),_=n(r(37)),S=n(r(0)),M=r(32),I=r(382),x=r(383),A=r(1312),w=r(529),N=r(543),C=n(r(1122)),P=n(r(1166)),j=r(196),k=(r(167),r(513),n(r(583))),T=n(r(3484)),D=n(r(3485)),z=n(r(3486)),L=n(r(4)),E=n(r(542)),O=r(1120),R=r(135),V=r(527),F=n(r(1450)),B=n(r(136)),G=n(r(3487));class U extends C.default{constructor(){var e;super(...arguments),e=this,(0,_.default)(this,"fetchVolumes",(0,b.default)((function*(){var t={serverId:e.id};e.isMyResource||(t.all_projects=!0),yield e.volumeStore.fetchList(t)}))),(0,_.default)(this,"fetchInterfaces",(0,b.default)((function*(){var t={device_id:e.id};e.isMyResource||(t.all_projects=!0),yield e.interfaceStore.fetchList(t),e.store.isLoading=!1}))),(0,_.default)(this,"fetchSeverGroup",(0,b.default)((function*(){var{server_groups:t=[]}=e.detailData;yield e.serverGroupStore.fetchDetail({id:t[0]})}))),(0,_.default)(this,"handleRefreshVolume",(()=>{this.fetchVolumes()}))}componentDidMount(){this.fetchVolumes(),this.fetchInterfaces(),this.detailData.server_groups[0]&&this.fetchSeverGroup()}init(){this.store=new x.ServerStore,this.interfaceStore=new w.PortStore,this.volumeStore=new A.InstanceVolumeStore,this.serverGroupStore=new N.ServerGroupStore}get leftCards(){var e=[this.networkCard,this.flavorCard,this.imageCard,this.securityGroupCard,this.tagsCard];return(0,O.isIronicInstance)(this.detailData)||e.push(this.serverGroupCard),e}get rightCards(){var e=[this.topoCard],{detail:{fault:t}}=this.props;return t&&t.message&&(0,l.default)(e).call(e,0,0,this.errorCard),e}get tagsCard(){var e=(0,M.toJS)(this.detailData.tags)||[],a=e.length?(0,o.default)(e).call(e,((e,t)=>(0,O.SimpleTag)({tag:e,index:t}))):"-",r=[{label:t("Tags"),content:a}];return{title:t("Tags Info"),options:r}}get networkCard(){var e,a=(0,M.toJS)(this.detailData.addresses)||[],r=[];(0,s.default)(e=(0,u.default)(a)).call(e,(e=>{var t=a[e],i=(0,d.default)(t).call(t,(e=>"fixed"===e["OS-EXT-IPS:type"])),n=(0,d.default)(t).call(t,(e=>"floating"===e["OS-EXT-IPS:type"]));(0,s.default)(i).call(i,(t=>{var a=(0,c.default)(n).call(n,(e=>e["OS-EXT-IPS-MAC:mac_addr"]===t["OS-EXT-IPS-MAC:mac_addr"]));r.push({netName:e,fixedIp:t,fip:a})}))}));var i=(0,o.default)(r).call(r,((e,t)=>{var a,{netName:r,fixedIp:i,fip:n}=e;return S.default.createElement("div",{key:(0,f.default)(a="".concat(i["OS-EXT-IPS-MAC:mac_addr"],"-")).call(a,t)},r," | ",i.addr," ",n&&S.default.createElement("span",null,"| ",n.addr))})),n=[{label:t("Network"),content:i}];return{title:t("Network Info"),options:n}}get flavorCard(){var e=(0,M.toJS)(this.detailData.flavor)||{},{extra_specs:a={}}=e,r=[{label:t("Flavor Name"),content:e.original_name},{label:t("RAM"),content:"".concat(e.ram/1024," GiB")},{label:t("VCPUs"),content:e.vcpus}];return"heterogeneous_computing"===a[":architecture"]&&"visualization_compute_optimized_type_with_gpu"===a[":category"]&&r.push({label:t("VGPU"),content:a["resources:VGPU"]}),{title:t("Flavor Info"),options:r}}get imageCard(){var e=this.detailData.itemInList||{},{image:a,image_name:r}=e,i=this.getRoutePath("imageDetail",{id:a}),n=[{label:t("Name"),content:r||"-"},{label:t("ID"),content:a?S.default.createElement(j.Link,{to:i},a):"-"}];return{title:t("Image Info"),options:n}}get securityGroupCard(){var{security_groups:e=[]}=this.detailData,a=(0,p.default)(new m.default((0,o.default)(e).call(e,(e=>e.name)))),{match:{url:r}}=this.props,i=[{label:t("Name"),dataIndex:"security_groups",render:()=>a&&a.length?(0,o.default)(a).call(a,(e=>S.default.createElement("div",{key:e},S.default.createElement(j.Link,{to:"".concat(r,"?tab=securityGroup"),key:e},e)))):"-"}];return{title:t("Security Group Info"),options:i}}get serverGroupCard(){var e=this.serverGroupStore.detail||{},{name:a}=e,r=[{label:t("Name"),content:a||"-"}];return{title:t("Server Group"),options:r}}get interfaces(){var e,t=[],{match:{url:a}}=this.props;return(0,s.default)(e=this.interfaceStore.list.data||[]).call(e,(e=>{var{name:r,id:i,networkName:n,fixed_ips:l=[],network_id:s}=e;t.push({networkName:n,name:S.default.createElement(j.Link,{to:"".concat(a,"?tab=interface")},r||i),address:(0,o.default)(l).call(l,(e=>e.ip_address)),network_id:s,interface:e})})),t}get volumeActions(){return{firstAction:F.default}}renderInterfaceRow(){var e,t=(0,o.default)(e=this.interfaces).call(e,((e,t)=>{var a;return S.default.createElement("div",{className:G.default["vm-interface"],key:"vm-interface-".concat(t)},S.default.createElement("div",{className:G.default["interface-line"]}),S.default.createElement("div",{className:G.default["interface-item"]},S.default.createElement("div",{style:{marginBottom:8}},e.networkName," ( ",e.name," )"," "),S.default.createElement("div",null,S.default.createElement("img",{alt:"interface_icon",src:z.default,style:{height:28,paddingLeft:6,marginRight:10}}),S.default.createElement("div",{style:{display:"inline-table"}},(0,o.default)(a=e.address).call(a,(e=>{var a;return S.default.createElement("div",{key:(0,f.default)(a="".concat(e,"-")).call(a,t)},e)}))))))}));return S.default.createElement(y.default,null,t)}renderImageType(e){return S.default.createElement(E.default,{className:G.default["info-item-icon"],type:e,title:e})}renderVmRow(){var e=(0,M.toJS)(this.detailData.itemInList)||{},{status:t}=this.detailData,{image_name:a,image_os_distro:r}=e;return S.default.createElement(y.default,{className:(0,L.default)(G.default.vm)},S.default.createElement("div",{className:G.default["vm-icon"]},S.default.createElement("img",{alt:"instance_icon",src:D.default,style:{height:36}})),S.default.createElement("div",{className:G.default["vm-info"]},S.default.createElement("div",{className:G.default["info-item"]},this.renderImageType(r),S.default.createElement("span",null,a)),S.default.createElement("div",{className:G.default["info-item"]},S.default.createElement(k.default,{status:t,text:O.instanceStatus[t]}))))}renderVolumeRow(){var e;if(!this.props.rootStore.checkEndpoint("cinder"))return null;var{match:{url:a}}=this.props,r=(0,o.default)(e=this.volumeStore.list.data||[]).call(e,(e=>{var r=[{label:"os_disk"===e.disk_tag?t("Root Disk"):t("Data Disk"),value:e.name||"-"},{label:t("ID"),value:S.default.createElement(j.Link,{to:"".concat(a,"?tab=volumes")},e.id)},{label:t("Size"),value:"".concat(e.size,"GiB")},{label:t("Volume Type"),value:e.volume_type||"-"},{label:t("Create Time"),value:(0,V.getSinceTime)(e.created_at)||"-"}],i=(0,o.default)(r).call(r,(e=>S.default.createElement(y.default,{className:G.default["volume-info-item"],key:"volume-info-item-".concat((0,R.generateId)())},S.default.createElement(g.default,{span:3,className:G.default["info-key"]},e.label),S.default.createElement(g.default,null,e.value))));return S.default.createElement("div",{className:G.default["attached-volume"],key:"attached-volume-".concat((0,R.generateId)())},S.default.createElement("div",{className:G.default["attached-volume-line"]}),S.default.createElement("div",{className:G.default["attached-volume-content"]},S.default.createElement("div",{className:G.default["volume-icon"]},S.default.createElement("img",{alt:"volume_icon",src:T.default,style:{height:36}})),S.default.createElement("div",{className:G.default["volume-info"]},i)))})),{isAdminPage:i}=this.props,n={isAdminPage:i};return S.default.createElement(y.default,{className:G.default["vm-volume"]},S.default.createElement("div",{className:G.default["volume-inline"]}),S.default.createElement("div",{className:G.default["volume-content"]},r,S.default.createElement("div",null,S.default.createElement("div",{className:G.default["attach-action-line"]}),S.default.createElement(P.default,{actions:this.volumeActions,onFinishAction:this.handleRefreshVolume,item:this.detailData,containerProps:n,firstActionClassName:G.default["attach-btn"]}))))}renderTopoContent(){return S.default.createElement("div",{className:G.default["topology-content"]},this.renderVmRow(),this.renderInterfaceRow(),this.renderVolumeRow())}get topoCard(){var e=t("Instance Architecture"),a=S.default.createElement("div",null,S.default.createElement("p",null,t("The instance architecture diagram mainly shows the overall architecture composition of the instance. If you need to view the network topology of the instance, please go to: ")),S.default.createElement(j.Link,{to:"/network/topo"},t("Network topology page"))),r=[{content:this.renderTopoContent()}],{refreshDetail:i}=this.props;return{labelCol:0,title:e,titleHelp:a,options:r,button:S.default.createElement(h.default,{size:"small",type:"default",shape:"circle",style:{marginLeft:16},onClick:()=>i(),icon:S.default.createElement(v.default,null)})}}get errorCard(){var{detail:{fault:e}}=this.props,a=[{label:t("Message"),content:e.message},{label:t("Code"),content:e.code},{label:t("Created At"),content:(0,V.getLocalTimeStr)(e.created)}];return B.default.hasAdminRole&&(0,l.default)(a).call(a,1,0,{label:t("Details"),content:S.default.createElement("pre",{className:G.default["pre-wrap"]},e.details)}),{labelCol:4,title:t("Error"),options:a,className:G.default["error-card"]}}}a.BaseDetail=U;var Y=(0,I.inject)("rootStore")((0,I.observer)(U));a.default=Y},3484:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYxNjk0MjU0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjczMyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik02NTguNyA4NzMuNmgzNi43di0zNi43aC0zNi43djM2Ljd6IG03My41IDBoMzYuN3YtMzYuN2gtMzYuN3YzNi43eiBtNzMuNCAwaDM2Ljd2LTM2LjdoLTM2Ljd2MzYuN3ogbS02NjEtNzMuNWg3NzEuMnYxMTAuMkgxNDQuNlY4MDAuMXpNMTA3LjkgOTQ3aDg0NC42Vjc2My40SDEwNy45Vjk0N3oiIGZpbGw9IiIgcC1pZD0iNzM0Ij48L3BhdGg+PHBhdGggZD0iTTE4MS4zIDY1LjdsLTczLjQgNjk3LjdoMzguM2w3MS44LTY2MWg2MjQuM2w3MS45IDY2MWgzOC4zTDg3OS4xIDY1Ljd6IiBmaWxsPSIiIHAtaWQ9IjczNSI+PC9wYXRoPjxwYXRoIGQ9Ik0yODguNiA1MDNjMC01NiA0NS40LTEwMS41IDEwMS41LTEwMS41aDEuNGM1LjctMzQuOSAyNi4xLTYwLjEgMzEuNi02Ni40IDI2LjQtMzEuOCA2Ni4yLTUyIDExMC43LTUyIDY1LjEgMCAxMjAuMSA0My4zIDEzNy44IDEwMi43IDYuOSAxMS4yIDYuOSA2MiA2LjkgNjYuMnYwLjZjMi41LTAuMiA0LjktMC40IDcuNS0wLjQgNDIgMCA3Ni4xIDQ0LjEgNzYuMSA3Ni4xIDAgMzItMzEgNDIuMy00Mi4yIDQyLjMtMS42IDAtNC42IDAtOC44LTAuMnYwLjJIMzIyLjRjLTcgMC0zMy44LTExLjctMzMuOC02Ny42bTc3LTEzMy4xYy02MyAxMS42LTExMC44IDY2LjgtMTEwLjggMTMzLjEgMCA3NC43IDM4LjggMTAxLjUgNTAuOCAxMDEuNWg0MDUuNnYwLjRjMjEuNiAwIDg0LjgtMTUuOCA4NC44LTc2LjUgMC01Mi0zNi4xLTk1LjYtODQuNy0xMDctMi44LTk1LjYtODEuMi0xNzIuMS0xNzcuNS0xNzIuMS03OC4xIDAtMTQ0LjUgNTAuNS0xNjguMiAxMjAuNiIgZmlsbD0iIiBwLWlkPSI3MzYiPjwvcGF0aD48cGF0aCBkPSJNNDA3LjcgNDAxLjZINDI3YzE1LjYtNDMuMiA1NS40LTc0LjggMTAzLjEtNzguNXYtMTguNGMtNTcuOCAzLjgtMTA2IDQzLjQtMTIyLjQgOTYuOSIgZmlsbD0iIiBwLWlkPSI3MzciPjwvcGF0aD48L3N2Zz4="},3485:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyMjA0MTg4IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjExOTQiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMjM0LjY2NjY2NyAyNTZoNDIuNjY2NjY2VjE3MC42NjY2NjdoLTQyLjY2NjY2NnY4NS4zMzMzMzN6IG0tODUuMzMzMzM0IDBoNDIuNjY2NjY3VjE3MC42NjY2NjdIMTQ5LjMzMzMzM3Y4NS4zMzMzMzN6IG01MzMuMzMzMzM0LTIxLjMzMzMzM2gxNzAuNjY2NjY2VjE5MmgtMTcwLjY2NjY2NnY0Mi42NjY2Njd6TTIzNC42NjY2NjcgNTU0LjY2NjY2N2g0Mi42NjY2NjZ2LTg1LjMzMzMzNGgtNDIuNjY2NjY2djg1LjMzMzMzNHogbS04NS4zMzMzMzQgMGg0Mi42NjY2Njd2LTg1LjMzMzMzNEgxNDkuMzMzMzMzdjg1LjMzMzMzNHogbTUzMy4zMzMzMzQtMjEuMzMzMzM0aDE3MC42NjY2NjZ2LTQyLjY2NjY2NmgtMTcwLjY2NjY2NnY0Mi42NjY2NjZ6IG0yNzcuMzMzMzMzIDE0OS4zMzMzMzRjMTIuOCAwIDIxLjMzMzMzMy04LjUzMzMzMyAyMS4zMzMzMzMtMjEuMzMzMzM0VjY0YzAtMTIuOC04LjUzMzMzMy0yMS4zMzMzMzMtMjEuMzMzMzMzLTIxLjMzMzMzM0g2NGMtMTIuOCAwLTIxLjMzMzMzMyA4LjUzMzMzMy0yMS4zMzMzMzMgMjEuMzMzMzMzdjU5Ny4zMzMzMzNjMCAxMi44IDguNTMzMzMzIDIxLjMzMzMzMyAyMS4zMzMzMzMgMjEuMzMzMzM0aDQyNi42NjY2Njd2OTguMTMzMzMzTDQxOC4xMzMzMzMgODUzLjMzMzMzM0g0Mi42NjY2Njd2NDIuNjY2NjY3aDM3NS40NjY2NjZsNzguOTMzMzM0IDc4LjkzMzMzM2M0LjI2NjY2NyA0LjI2NjY2NyAxMC42NjY2NjcgNi40IDE0LjkzMzMzMyA2LjRzMTAuNjY2NjY3LTIuMTMzMzMzIDE0LjkzMzMzMy02LjRsNzguOTMzMzM0LTc4LjkzMzMzM0g5ODEuMzMzMzMzdi00Mi42NjY2NjdINjA1Ljg2NjY2N0w1MzMuMzMzMzMzIDc4MC44VjY4Mi42NjY2NjdoNDI2LjY2NjY2N3pNODUuMzMzMzMzIDg1LjMzMzMzM2g4NTMuMzMzMzM0djI1Nkg4NS4zMzMzMzNWODUuMzMzMzMzeiBtNDgyLjEzMzMzNCA3ODkuMzMzMzM0TDUxMiA5MzAuMTMzMzMzIDQ1Ni41MzMzMzMgODc0LjY2NjY2N2w1NS40NjY2NjctNTUuNDY2NjY3IDU1LjQ2NjY2NyA1NS40NjY2Njd6TTg1LjMzMzMzMyA2NDBWMzg0aDg1My4zMzMzMzR2MjU2SDg1LjMzMzMzM3oiIHAtaWQ9IjExOTUiPjwvcGF0aD48L3N2Zz4="},3486:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyODIzMjY3IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE2MjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNDM4LjAxIDU2MS4yNzFjMjYuMjEzIDAgNDcuNTQ0LTE3LjY0NyA1NC44NDItNDEuNDY5aDE1NS42NTd2ODMuMDM5aDE5OS42MjZWNDAzLjIxNUg2NDguNTA5djgzLjA4NEg0OTIuODUyYy03LjI5OC0yMy44MjItMjguNjI5LTQxLjQ2OS01NC44NDItNDEuNDY5LTMyLjE1NiAwLTU4LjIyMyAyNi4wNjctNTguMjIzIDU4LjIyMXMyNi4wNjggNTguMjIgNTguMjIzIDU4LjIyeiBtMjQ0LjAwMi0xMjQuNTU0aDEzMi42MjF2MTMyLjYyMUg2ODIuMDEyVjQzNi43MTd6IG0tNTg0LjM4OSAxLjgzN0g2NC4xMnYxNDIuNDc1aDMzLjUwMlY0MzguNTU0ek02NC4xMiAxMDguOTQ5VjM2NC44M2gzMy41MDJWMTQyLjQ1Mmg1NC4xMDV2NzM0LjYzNEg5Ny42MjNWNjU0Ljc1Mkg2NC4xMnYyNTUuODM3aDg5Ni4yMzR2LTgwMS42NEg2NC4xMnpNMTg1LjIzMSAzNjcuMTZoODIuMjExdjEyNS44NThIMTg1Ljg4di0zMS41MzJoLTAuNjQ5VjM2Ny4xNnogbTAgMTkwLjkzNmgwLjY0OVY1MjYuNTJoODEuNTYxdjEyNS44NThIMTg1LjIzdi05NC4yODJ6IG03NDEuNjIxIDMxOC45OWgtOTUuMDg4Vjc0OS40ODFoLTMzLjUwMnYxMjcuNjA1aC02Ni40NDVWNzQ5LjQ4MWgtMzMuNTAydjEyNy42MDVoLTY2LjQ2N1Y3NDkuNDgxaC0zMy41MDJ2MTI3LjYwNWgtNjYuNDY3Vjc0OS40ODFoLTMzLjUwMnYxMjcuNjA1SDE4NS44OHYtMjkuMTEzaC0wLjY0OXYtOTYuNjExaDAuNjQ5VjY4NS44OGgxMTUuMDY0VjMzMy42NTdIMTg1Ljg4VjI2OC4yMmgtMC42NDl2LTk2LjY1NWgwLjY0OXYtMjkuMTEzaDc0MC45NzJ2NzM0LjYzNHoiIGZpbGw9IiIgcC1pZD0iMTYyNyI+PC9wYXRoPjwvc3ZnPg=="},3487:function(e,t,a){var r=a(3488);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,i);r.locals&&(e.exports=r.locals)},3488:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__topology-content--1cSJn {\n overflow: auto;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey:first-child {\n border-left: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey:first-child .index__interface-line--8fWUK {\n border-left: none;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey {\n display: inline-block;\n margin-left: 35px;\n padding-bottom: 20px;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey .index__interface-line--8fWUK {\n display: inline-block;\n width: 8px;\n height: 60px;\n border-bottom: 1px solid #d2d2d2;\n border-left: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey .index__interface-item--NVhcx {\n display: inline-block;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 {\n padding: 16px;\n background-color: #fbfdff;\n border: 1px solid #cfe1ff;\n border-radius: 4px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-icon--1c_A9 {\n display: inline;\n padding-right: 24px;\n font-size: 25px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-status--15Fe3 {\n display: inline-block;\n width: 6px;\n height: 6px;\n margin-right: 13px;\n margin-left: 5px;\n border-radius: 6px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS {\n display: inline;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS .index__info-item--Rk6uB {\n padding-bottom: 8px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS .index__info-item--Rk6uB .index__info-item-icon--2OgR6 {\n display: inline;\n height: 16px;\n padding-right: 8px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS :last-child {\n padding-bottom: 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-inline--2lwJK {\n width: 36px;\n margin-bottom: 12px;\n border-right: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding: 8px 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-line--3LhIZ {\n width: 60px;\n height: 52px;\n border-bottom: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n padding: 16px;\n background-color: #fbfdff;\n border: 1px solid #cfe1ff;\n border-radius: 4px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-icon--2SMM2 {\n padding-right: 24px;\n font-size: 25px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd .index__volume-info-item--1GH_g {\n padding-bottom: 8px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd .index__volume-info-item--1GH_g .index__info-key--3NbQp {\n margin-right: 8px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd :last-child {\n padding-bottom: 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attach-action-line--2PNV3 {\n display: inline-block;\n width: 60px;\n height: 24px;\n margin-right: 10px;\n border-bottom: 1px solid #d2d2d2;\n}\n.index__attach-btn--29U51 {\n max-width: 100px;\n}\n.index__attach-btn--29U51 span {\n max-width: 80px;\n}\n.index__error-card--2sRLi {\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n}\n.index__error-card--2sRLi .index__pre-wrap--2mXzo {\n font-family: Monaco, Menlo, Consolas, 'Courier New', monospace;\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n",""]),t.locals={"topology-content":"index__topology-content--1cSJn","vm-interface":"index__vm-interface--1d_Ey","interface-line":"index__interface-line--8fWUK","interface-item":"index__interface-item--NVhcx",vm:"index__vm--3TPR2","vm-icon":"index__vm-icon--1c_A9","vm-status":"index__vm-status--15Fe3","vm-info":"index__vm-info--2-5wS","info-item":"index__info-item--Rk6uB","info-item-icon":"index__info-item-icon--2OgR6","vm-volume":"index__vm-volume--1T2Ma","volume-inline":"index__volume-inline--2lwJK","volume-content":"index__volume-content--34D9n","attached-volume":"index__attached-volume--13RWR","attached-volume-line":"index__attached-volume-line--3LhIZ","attached-volume-content":"index__attached-volume-content--1te6S","volume-icon":"index__volume-icon--2SMM2","volume-info":"index__volume-info--2gdLd","volume-info-item":"index__volume-info-item--1GH_g","info-key":"index__info-key--3NbQp","attach-action-line":"index__attach-action-line--2PNV3","attach-btn":"index__attach-btn--29U51","error-card":"index__error-card--2sRLi","pre-wrap":"index__pre-wrap--2mXzo"}},3489:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SecurityGroup=void 0;var p=f(r(33)),m=f(r(91)),h=f(r(62)),v=f(r(1309));r(324);var g=f(r(325));r(538);var y=f(r(399));r(530);var b=f(r(531)),_=f(r(385));r(1117);var S=f(r(1118));r(1115);var M=f(r(1116));r(318);var I=f(r(317));r(1167);var x=f(r(1168)),A=f(r(52)),w=f(r(37));r(1178);var N=f(r(1179));r(1318);var C=f(r(1319)),P=f(r(0)),j=r(382),k=r(32),T=f(r(383)),D=(r(167),f(r(1253))),z=f(r(4)),L=f(r(3494)),E=(r(513),f(r(1166))),O=r(332),R=r(135),V=r(517),F=f(r(3495)),B=f(r(3497)),G=f(r(3498));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 Y(e){for(var t=1;t{var t,{data:a}=this.store.securityGroups,r=(0,p.default)(t=(0,k.toJS)(a)).call(t,(t=>{var a;return-1!==(0,m.default)(a=e.security_groups).call(a,t.id)}));this.setState({activeInterfaceId:e&&e.id,activeInterface:e,filterData:r})})),this.state={activeInterfaceId:null,activeInterface:null,filterData:[]},this.store=T.default,this.tableColumns=(0,p.default)(a=(0,O.getSelfColumns)(this)).call(a,(e=>"direction"!==e.dataIndex))}get isAdminPage(){var{pathname:e}=this.props.location;return(0,R.isAdminPage)(e)}get showActions(){return!this.isAdminPage}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,V.getPath)({key:t,params:{id:e}})}renderPanelTitle(e){var{activeInterfaceId:a,filterData:r}=this.state,i=Y(Y({},e),{},{activeInterfaceId:a,filterData:r});return P.default.createElement("div",null,P.default.createElement(S.default,null,P.default.createElement(M.default,{span:22},P.default.createElement("span",null,t("Security Group")),P.default.createElement(x.default,{type:"vertical",className:F.default["header-divider"]}),P.default.createElement(I.default,{type:"link"},e.name)),P.default.createElement(M.default,{span:2},1!==r.length&&this.showActions?P.default.createElement(E.default,{actions:{firstAction:B.default},onFinishAction:this.actionCallback,item:i},t("Detach")):null)))}renderPanel(e,a){var r,i,n=(0,p.default)(r=e.security_group_rules).call(r,(e=>"egress"===e.direction)),l=(0,p.default)(i=e.security_group_rules).call(i,(e=>"ingress"===e.direction));return P.default.createElement(H,{header:this.renderPanelTitle(e,a),key:e.id,className:F.default.panel},P.default.createElement(N.default,{defaultActiveKey:"".concat(e.id,"-1")},P.default.createElement(q,{tab:t("Egress"),key:"".concat(e.id,"-1")},P.default.createElement(b.default,(0,_.default)({size:"middle",pagination:!1,bordered:!1},this.state,{columns:this.tableColumns,dataSource:n}))),P.default.createElement(q,{tab:t("Ingress"),key:"".concat(e.id,"-2")},P.default.createElement(b.default,(0,_.default)({size:"middle",pagination:!1,bordered:!1},this.state,{columns:this.tableColumns,dataSource:l})))))}renderRadio(e,a){return P.default.createElement(y.default.Button,{onClick:()=>this.filterSecurityGroup(e),value:a},P.default.createElement("div",null,P.default.createElement(S.default,null,P.default.createElement(M.default,{span:10},P.default.createElement("img",{className:F.default.image,alt:"example",src:L.default})),P.default.createElement(M.default,{span:14},P.default.createElement("div",{style:{fontSize:12}},t("Interface Name:")," ",e.id.substring(0,8)," "),P.default.createElement("div",{className:F.default["security-group-text"]},t("Security Group Num:")," ",e.security_groups.length)))))}render(){var e,{interfaces:a,isLoading:r}=this.store.securityGroups,{filterData:i,activeInterfaceId:n,activeInterface:l}=this.state,{port_security_enabled:o=!1}=l||{};return P.default.createElement("div",{className:(0,z.default)(F.default.wrapper,this.className)},P.default.createElement(g.default,{spinning:r},P.default.createElement(y.default.Group,{defaultValue:0,size:"large",marginBottom:"20",onChange:this.onChange,className:F.default["radio-button"]},a?(0,h.default)(e=(0,k.toJS)(a)).call(e,((e,t)=>this.renderRadio(e,t))):null)),this.showActions&&o&&P.default.createElement("div",{style:{marginBottom:20,marginTop:20}},P.default.createElement(D.default,{primaryActions:[G.default],onFinishAction:this.actionCallback,containerProps:{port:n,portItem:l,filterData:i}},t("Attach Security Group"))),i&&i.length?P.default.createElement(g.default,{spinning:r},P.default.createElement(C.default,{className:F.default.collapse,accordion:!0,bordered:!1,expandIcon:e=>{var{isActive:t}=e;return P.default.createElement(v.default,{rotate:t?90:0})}},(0,h.default)(i).call(i,((e,t)=>this.renderPanel(e,t))))):null)}}a.SecurityGroup=K;var Q=(0,j.inject)("rootStore")((0,j.observer)(K));a.default=Q},3494:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAABSCAYAAACVI3yVAAAAAXNSR0IArs4c6QAADzJJREFUeAHtXXtwVOUVP9/m/dwNJCEkIckmvFUQCgjyRotYAj6KvHy0Ao1JIAqlzOhoMfBHO1qrdVq1OO1UZzpjH7ZTWx9YB2up1VE7tbXTFjvyKKJFRCWKvELy9XfuJmSz2c3e7+zm7t0l38ySvfd+537nnPu75zvnfOdbFJ1vrUVn0RlaQh6aAdFHkKb8800FIfIehw4eox3qWT6vQi6m9mGjngkBv4ZPaWoLaiidpk4qoBV0n/o83ZA0Obtfp9OomBrxJixOTgEc4Dof2kFLfUBs0jl0ku6AuFMcUGtyDuGhR6lVnWDmU3vKaNDFlEatAENtcj6pAee6HQi4nx5Rf+weKXUB0aDrusAwtFvYwb+9NNCG+WEb/UDtCT6bmoBo1NMg5O34ZAcLO/i9SwOa3oVmttKD6oNQnaQeIJr0UgjZgGnCEyrs4LGlgTcRaH+LI4pw+kgdQLRqDx22Qsqrwgk6eM7SwE5aQA/RctURSR+pAYhWnQ0w8BTBU8Vg66sBDYv5EySfnux7qfeZ5AfEJj0EYeU2iFXXW7TBI0sDik4jkvgOPaxesaOR5AbEBu2nsxYYiu0Iex72+RieVCvA8I5d2ZPX8bpFT6EOug+CDoIh/NPeT3m00QQMfJvktBBNmlPQTYORRHgk4OzrlEP30APqZMQeES4kFyA4kviA1gAI10aQJ/ppbb0E+fg3B50z8EleKxle2rdwejfks9YmwncJOuuBj3GW3oDD+S8+mzyA+CoiiWzaAp552VracqAmH6ROxTUchvpuKIYBYdYYPKX0ONYzziSHYtYiksiguyHlKDNJe/UuwhFbhlRsZyDXTgj231iFcz8gGnUNhN0GDJeIhOX3RhGvZ/AUkYrtM8j3Owj2kVi4TnqVrQPTuxsQ6/VkzG93gk/Zw9RY3lJWFJIpVpa7CY90gcFaujZmVSFOS6OX6PtqbzetewHRpK8EGNZDYKnTxw4jW5W0bmFT7O9eWM3fQz9nRXIpOoVp+PnQBS73zahaKwSUN0PIZSJBmUhbq5zFUJb75BMLFUSo6K84+nPQGbOvHjqGHMVzdK/6LJTQXQrjAth2+gaY5NpHaeOiWR8+7pJNKk1vuk4c/gGSWSFi70u2j96jYfRCt88QSuWeKWOj9iEi5khiTCiTto8DIWWB7f7J1fE0Js9nYf0Oidn20B5Moi8DDAyssM0db1GDroKw28FhaVguo51M/UiiDVaBI4lPoqki4vV0eg3O498jXu+6kHgL0awvRhE4RxJ50ZiNcJ2dTnYeUzOS0PQ/yPYMAGGchrb05YHTmUEv0vfUAes4yj+JBUSzXggwtIBHaSSQYeUnlJg+inoSfvltJAZ2QUcRC1qicHgC7vVO+q46GqXfucuJmTI4kmimm/AwV5zjxPQLRxKBhJM0LDUd0en+r0O+18SDKvoYtDux2nnc5B7OA6JVZ6K66etgco4JoyF9UzeS0LAGHlgFordDZLZ/qOggJopd9Khqt08U6OksIBq0F8Z9KyzDOFNGz/WPIZJQyEsU5dKQvCwqzEqnLAjPU5WzOjgnSN8vWUilzR9LNKyw7zW7Z0YNI/pCtT2hoI+PsSR6V51PPdJ9f+eU0aIrgdrtAENZ9+BGf2OMJAqyqaA4n8rSPZRlNK5DnQuRnL98PBH4FDU8XJpcRTQagDBpoOvAW1FS7VNWBOOMU9mkJwAMdwEMbOolLaZIorSQhnmzhYtjEm4NacqQRps3mogthKSl44nOrCMq53ScoHVyCW5XG3hANOnLMdatGFI6FkcSnIY2pucpotxLlbmZ5O0W2G1/R+KNno6HmSa01Zj+aA7A5BMs/0E/Gp/Nfp861q0XIRvd5FH+Nuob0WNVlF6RL8cQSWBqSKsoourMNMqNPEBir0zCXD+hUs7DENjbOSOxFCzIwAAIp/C52e9VPwvmwPitCyaO+H2HzqA3aROuz4vYJ9oFjUSVIi5qMQYtO4wMBrx1AlVFYyz262kw8bNGEdVwlYawVUIzM2BZAHzzpuhDj4euqilUr4YSGys79AZ9jlt0IRaotuI8XCRxYxMv8rXzMimvzEtVHpcmq/ht5kiiJIYVl7Fwyy+GAyl5eLAK/waGFtf41P5wT0dyz3D3CZxr1BXgkqubyiN36udKIJIYgh4iM4951AdFV4A+vnL1w7LJJR+S85cBDPnCSAJvNU3BNFMnqx1jrezyaFrmL+rxGUL5j5/iGvWFuPk38ZFin40f77EQhYUAQikAIVscw6AD3cph4ueOwYILpgtJy8DkPgtTBKyfqMEy/MjvpSalVL8FNfEBRLOej/zaJiBQ6pOkw6qUSOghqOsjiTEw8dP8qPeXzPd4/BxJzAOYCgWWBfrBOgHdjkjiXjtIih0QTXo1HuYNdgaL0IctAlsGY3VxJIHYuwpOpHSlNAJL8TmNh0FTauBMySZQiwkk06ywEjIaNwx/Akq9saZI/dousRwQDYgkPMgvYFq0O1iffjFEEpnplFnho2q3Zh45WcT5gRHsEQlbNV6TS/yyHAXAeBgYWlLlU38xGV6AO9x+jS6AeWd/gf0GafPiHqJIAommPFiGEUCzjH8pxzbpcmHzFmC1ZmgMdusCuMYT2D0WNOjlraxMqq/IVe+akpsrdKMejnrd7RhIxm4cIoniQipXLv2FmCEAAYOB531JQ7hM02qJ/NIchaLnCry0okT1LaC1ww+GN2i36PGYJni1UvRmYyT2E+SRRD4iiVz3RhI8PcyG85fBUgoaRyA8zUhzFHiYD/l9dBsiiQ7B8BaJfUA06bmo3NksiQS6mIspkhheSBV464TLN1L12KcbB8eRHUh+wyWNVznnAgyS1U74Cx34bEYa+kHJ2ME09thv1CtBdFMwoeF3cSTBGUekoauy3RpJwBqw48ehpbRx/cPMkUjAmE/gPORx2N2VdV71jHT8YLr+AdGq01HdxDWPXwwmMvzOWUf2tfsfK8xN3R5JZMDEz0XmEdGOuPmRdZxWI7Ysh1QG1dfmR6+mtstg5IfUrPO7qqEn2r1ZmH7sa4hya8j550LRVWBQ9t6EYSaepzj9vABgKIohkuCVzgukOQrs3srIQFiZp96Pp1zhld2sy+A4bsNAI8SDKVgFzjMImjeHvLwmATAI3TPBoAYkxUjOMxgky848TBqkml5LVCXMUUAvT2V7aXW5Cvw+tQHrUbvi3iFtgx6L6qa7cVb0ZoOOH6I4koCyS4pysNnMpa0a4SAvXXPiSdKyURU1G/ScgZQ05aH7/YW0BZFEp4Q+Gk1vQDTrWZgmtoAIbIuaOJKANVFINpUjkuAaCFe2i2Diuailt9LsswrLZ4WV+ZIcBXZ5403bgDWJHfZHNO/ZIxv/kJfG9nt5izWSGIFIQvjeyJm2Q8mLUlzmNiqGtVRepeRIQrja2Yaw8rpan3rBDr+x9AkAIvD7Tb/EjYSGEPULGj6DYPs9FJQB57EGJljy3sQiuy1aLnzl/MDwGCIJBtJkWBZJjgJAOIAKq/rqAvVPWwzH2CngVNbgLofFdwpEEj22xvaN4JTloAi2GooK79zavtPAdGR/YYofBS0xQHUS3PKxw2X8AQyv5abR0rICdUR2B3OqnsfYqK8A+Rp87Be4BKyCKJLAPgRvqcsiCZ4aMG1RKcz7aLzVsVgFdjpn1BJx7aOkAQy/UF76il+pUxJ6KU0PIEzuwD/s0UELMU2IsH/DdFo0bjhdrXmhKwVbDqaZOWOQjRMVAlpTy7drvHQnIgnttHrMHwgX0XbQlQCDcViK1Gzaull0Pd68mU4L6tR42CpoRRJYojdvitpR89iAmsfHzInjQ2EGCE5YkWUZkKcza758ylk3k25B3SMWh1OzYc3FmiY4pW3aMEV8AntwLcDwkiltPPvbB0QL/g+rszQfg2OmNWu1JTR09TTagKSMNFFrNmACevOeSo4k7Cs0iElF70Cri+sK1X+Czibkqz3vvkVPAhimSjic6if/4ouoGaVu0hoKybCO0eDNtnZbS3MUIP9TpoeuqSxUHznGdD8D9Q9o/rHxo/gdhw5CJG7erryQJl1aR2ugNMmMaj6gwxQcScSyyRbK/ykKWtbCeTzjMOsRh4sMCI4kOrHs3Skz86svoYVYybs2VSMJ7BCzIgnJJlt+Gghx70ZBy/aITyZBF8IDgiOJTlqEj3F+Dg6VZ+1sWlXpi+kXYhKkDnvDxrLJFk7GaSTieJPtE/ZGc7ZXX0Dcpodhb+YVCCvNI4k8yl6LSAKh13hnxXBuNK6b5KVr+ETmTdFRLH3zJttXzImdoegNiCZdCwTPBxiMA6eaYhrCkQTib1k1tjPyxjQKb7jhopbeSrN3S/hRe6DUxfilln32KBLTqyfKaEFF9VmaBTAYN2xAra6fSOvx1hgnq4wHSwABp7SnIqRE+Cxril5EjuHL1f1sspXdOP5UAUBw7eSHdKnk9gsvpInYhLoO82JKRhK8yXb2SPkPgcEy/Lhrk227RL9O0wQA8T6soKAkZuVUuuyiCloGoyKZUZ2W1Xg89hd4tVKy6QZA4E22d6Cg5R7jgRNI0DMdculcB10CXrKi8QNroBrm0Eqs5M2L1jeZrnevdnJ520isdkp/HhBKPQk03Iif+/tVMsnPvPYAwibnR7TO/6yNfg5f40s2Sc6rbrAMhwGGpdgn8UYyCm4EiEMndOWZ0/Q0poiJySisAzz/A8F6fV2OOujAWAMyhG1AHPhET0KZL4MBwddgC9UALMNObLJdLt1kG3q/RB3bcgb3fqrrsXt09yAYwj8mgOFhRBL1yQ4Gli4qIPa16RbsAPgN+rqyIjr8I3LmLIDQCQVuQjX0eixQ4Z1J/hZxytBae/YfowdgFW5NfjEHRILjyOeuQg3D0wNy9wTdNCwgDmudd+IYPQEwLEkQX24f9j1YhnpUN/3N7Yya8tcHEAc/1+Xt7fj/nTRNNr3ZedF/gDbZukV3vQCx77ieoNvx/zuhetwtDLqJDyjrt7k+Wl2m1Odu4iuevJxzKve36UUAw8u4+SAYwmgYWcwHUN10TSqDgcW21jL2tunrUdn0OI6Nl73D6C61TgU22bagoOWHqSVYeGkUoom0fces/7ArJYtgw4tt++ynsAzLAYbnbVMkecfuKaOXL5HkMsWFfSjkqXRFk84nMLDiPJxQQYJlHT4fxEWTyXoTTA1g/T3o4Ul8rqgtUle7vbppIFT9f2bufJ+IENUJAAAAAElFTkSuQmCC"},3495:function(e,t,a){var r=a(3496);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,i);r.locals&&(e.exports=r.locals)},3496:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--310WV {\n min-height: calc(100vh - 108px);\n padding: 0 16px;\n}\n.index__collapse--wSiUn {\n margin-bottom: 24px;\n overflow: hidden;\n}\n.index__panel--30Vl4 {\n margin-bottom: 24px;\n padding-top: 12px;\n padding-bottom: 12px;\n font-size: larger;\n background: #fff;\n}\n.index__header-divider--3ZGVN {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__image--1tdnF {\n width: 70px;\n padding: 10px;\n}\n.index__radio-button--2cF9L .ant-radio-button-wrapper {\n width: 250px;\n height: 100px;\n margin-right: 40px;\n margin-bottom: 20px;\n padding: 15px;\n}\n.index__security-group-text--3v-p7 {\n font-size: 12px;\n}\n",""]),t.locals={wrapper:"index__wrapper--310WV",collapse:"index__collapse--wSiUn",panel:"index__panel--30Vl4","header-divider":"index__header-divider--3ZGVN",image:"index__image--1tdnF","radio-button":"index__radio-button--2cF9L","security-group-text":"index__security-group-text--3v-p7"}},3497:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(28)),o=n(r(37)),s=r(1113),u=n(r(392));class d 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{activeInterfaceId:t,filterData:a,id:r}=e,i=[];(0,l.default)(a).call(a,(e=>{e.id!==r&&i.push(e.id)}));var n={port:{security_groups:i}};return u.default.updatePortSecurityGroup({id:t,reqBody:n})}))}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=d},3498:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var l=n(r(62)),o=n(r(65)),s=n(r(37)),u=r(382),d=r(1113),c=n(r(383)),f=r(392),p=r(1193);class m extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={}}=e,{port:a}=this.containerProps,r={port:{security_groups:t}};return this.securityGroupStore.updatePortSecurityGroup({id:a,reqBody:r})}))}init(){this.store=c.default,this.securityGroupStore=new f.SecurityGroupStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Manage Security Group")}get messageHasItemName(){return!1}get defaultValue(){var{filterData:e=[]}=this.containerProps;return{securityGroup:{selectedRowKeys:(0,l.default)(e).call(e,(e=>e.id)),selectedRows:e}}}get formItems(){return[{name:"securityGroup",label:t("Security Group"),type:"select-table",required:!0,tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,filterParams:p.securityGroupFilter,columns:p.securityGroupColumns,onRow:()=>{}}]}}a.ManageSecurityGroup=m,(0,s.default)(m,"id","manage-security-group"),(0,s.default)(m,"title",t("Manage Security Group")),(0,s.default)(m,"policy","update_port"),(0,s.default)(m,"allowed",(()=>o.default.resolve(!0)));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3499:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ActionLog=void 0;var l=n(r(37)),o=r(382),s=n(r(1114)),u=n(r(1443)),d=r(1120);class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>(0,d.actionColumn)(this)))}init(){this.store=u.default}get name(){return t("Action Log")}get rowKey(){return"request_id"}get policy(){return"os_compute_api:os-instance-actions:list"}get hideSearch(){return!0}}a.ActionLog=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3500:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.getBaseSnapshotColumns=void 0;var i=r(520);a.getBaseSnapshotColumns=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e.getRouteName("instanceSnapshotDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!e.isAdminPage,sorter:!1},{title:t("Description"),dataIndex:"description",isHideable:!0,sorter:!1},{title:t("Disk Format"),dataIndex:"disk_format",isHideable:!0,render:e=>i.imageFormats[e]||"-"},{title:t("Status"),dataIndex:"status",render:e=>i.imageStatus[e]||"-"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]},3501:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateVolume=void 0;var l=n(r(516)),o=n(r(65)),s=n(r(101)),u=n(r(82)),d=n(r(52)),c=n(r(37)),f=r(382),p=r(32),m=r(1113),h=n(r(386)),v=r(1256),g=r(515);class y extends m.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var{name:t,size:a,volume_type:r}=e,i={imageRef:this.item.id,name:t,size:a};return i.volume_type=r||this.volumeType,h.default.create(i)}))}init(){this.volumeStore=h.default,this.snapshotStore=new v.InstanceSnapshotStore,this.getVolumeTypes(),this.getMinSize()}get name(){return t("Create Volume")}get instanceName(){return(0,l.default)(this).name}static get disableSubmit(){return(0,g.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,g.getQuotaInfo)(this)}getVolumeTypes(){var e=this;return(0,d.default)((function*(){var t,{id:a}=e.item,[r,i]=yield o.default.all([e.volumeStore.fetchVolumeTypes(),e.snapshotStore.fetchDetail({id:a})]),{volumeDetail:{volume_type:n}={}}=i,l=(0,s.default)(t=e.volumeTypes).call(t,(e=>e.label===n));l&&(e.volumeType=l.value,(0,g.setCreateVolumeType)(n)),e.updateFormValue("volume_type",e.volumeType)}))()}getMinSize(){var e=this;return(0,d.default)((function*(){var{id:t}=e.item;e.snapshot&&e.snapshot.volume_size?(0,g.fetchQuota)(e,e.minSize):(yield e.snapshotStore.fetchDetail({id:t}),(0,g.fetchQuota)(e,e.minSize),e.updateDefaultValue())}))()}get volumeTypes(){return this.volumeStore.volumeTypes}get tips(){return t("Snapshots can be converted into volume and used to create an instance from the volume.")}get defaultValue(){var{name:e}=this.item;return{snapshot:e,size:this.minSize,volume_type:this.volumeType}}get bdmData(){var{block_device_mapping:e="[]"}=this.item;return JSON.parse(e)}get snapshot(){var e;return(0,s.default)(e=this.bdmData).call(e,(e=>0===e.boot_index))}get minSize(){var{min_disk:e,size:t}=this.item,a=Math.max(e,Math.ceil(t/1024/1024/1024),1,(this.snapshot||{}).volume_size||1);if(a)return a;var{snapshotDetail:{size:r=0}={}}=(0,p.toJS)(this.snapshotStore.detail)||{};return Math.max(r,1)}get formItems(){var e,{more:a}=this.state;return[{name:"snapshot",label:t("Snapshot"),type:"label",iconType:"snapshot"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:this.minSize,extra:(0,u.default)(e="".concat(t("Min size"),": ")).call(e,this.minSize,"GiB"),required:!0,onChange:g.onVolumeSizeChange},{name:"more",type:"more",label:t("Advanced Options")},{name:"volume_type",label:t("Volume Type"),type:"select",options:this.volumeTypes,placeholder:t("Please select volume type"),hidden:!a,onChange:g.onVolumeTypeChange}]}}a.CreateVolume=y,(0,c.default)(y,"id","create"),(0,c.default)(y,"title",t("Create Volume")),(0,c.default)(y,"policy","volume:create_from_image"),(0,c.default)(y,"allowed",(()=>o.default.resolve(!0)));var b=(0,f.inject)("rootStore")((0,f.observer)(y));a.default=b},3502:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(1170));class d extends u.default{static path(e){return"/compute/instance/create?snapshot=".concat(e.id)}static allowed(e){return l.default.resolve("active"===e.status)}}a.StepCreate=d,(0,o.default)(d,"id","instance-create"),(0,o.default)(d,"title",t("Create Instance")),(0,o.default)(d,"policy","os_compute_api:servers:create");var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3503:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=n(r(28)),o=n(r(35)),s=n(r(65)),u=n(r(37)),d=r(382),c=r(1113),f=n(r(523)),p=r(47);class m extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var t,{id:a}=this.item,r=[];return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{if((0,p.has)(this.item,t)&&(0,p.get)(this.item,t)!==e[t]){var a={op:"replace",path:"/".concat(t),value:e[t]};r.push(a)}else if(!(0,p.has)(this.item,t)&&e[t]){var i={op:"add",path:"/".concat(t),value:e[t]};r.push(i)}})),0===r.length?s.default.resolve():f.default.update({id:a},r)}))}get name(){return t("edit instance snapshot")}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"),isImage:!0,required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditAction=m,(0,u.default)(m,"id","edit"),(0,u.default)(m,"title",t("Edit Instance Snapshot")),(0,u.default)(m,"buttonText",t("Edit")),(0,u.default)(m,"policy","modify_image"),(0,u.default)(m,"allowed",(()=>s.default.resolve(!0)));var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3504:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(523));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_image"),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Instance Snapshot")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete instance snapshot")}}a.default=u},3505:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.Flavor=void 0;var n=i(a(62)),l=i(a(52)),o=a(382),s=i(a(1152)),u=i(a(1196)),d=a(1131),c=i(a(3508)),f=i(a(3513)),p=i(a(3516)),m=i(a(3519)),h=i(a(3522));class v extends s.default{init(){this.settingStore=u.default,this.getSettings()}getSettings(){var e=this;return(0,l.default)((function*(){yield e.settingStore.fetchList();var t=(0,d.getAllArchitecture)(e.settingStore.list.data);e.setState({architectures:t})}))()}get tabs(){var{architectures:e=[]}=this.state,t={x86_architecture:c.default,heterogeneous_computing:f.default,bare_metal:m.default,arm_architecture:p.default,custom:h.default};return(0,n.default)(e).call(e,(e=>({title:d.flavorArchitectures[e],key:e,component:t[e]})))}}t.Flavor=v;var g=(0,o.inject)("rootStore")((0,o.observer)(v));t.default=g},3508:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(82)),m=f(r(37)),h=r(382),v=f(r(1114)),g=r(1141),y=r(319),b=r(1131),_=r(135),S=f(r(3509));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"x86_architecture"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.x86_architecture," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.x86CategoryList)}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3509:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3510)),l=i(a(1198)),o=i(a(1199)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3510:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(37)),s=n(r(1197));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=x86_architecture"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3511:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.AccessTypeSetting=void 0;var p=f(r(37)),m=r(382),h=f(r(1121)),v=r(384),g=r(1153);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 b(e){for(var t=1;t{var t,a=(0,l.default)(t=this.flavorCategoryList).call(t,(t=>t.value===e));return a?a.properties:[]})),(0,p.default)(this,"getDefaultResourcePropValues",(()=>{var e;return(0,o.default)(e=this.resourcePropNeedKeys).call(e,((e,t)=>({index:t,value:{key:e,value:"0"}})))})),(0,p.default)(this,"allowed",(()=>s.default.resolve())),(0,p.default)(this,"numaValidate",(e=>{var{getFieldValue:a}=e;return{validator(e,r){var i=a("category");if(!(0,b.isComputeOptimized)(i))return s.default.resolve();if(!r||0===r.length)return s.default.reject(t("Please set MUNA"));var n=a("vcpus"),l=a("memoryGb");if(!n||!l)return s.default.reject(t("Please set CPU && Ram first."));var o=1024*l,d=0,c=0;(0,u.default)(r).call(r,(e=>{d+=e.value.cpu,c+=e.value.ram}));var f=!1,p=t("Invalid: ");return d!==n&&(p+=t("CPU value is { cpu }, NUMA CPU value is { totalCpu }, need to be equal. ",{cpu:n,totalCpu:d}),f=!0),c!==1024*l&&(p+=t("Ram value is { ram }, NUMA RAM value is { totalRam }, need to be equal. ",{ram:o,totalRam:c}),f=!0),f?s.default.reject(p):s.default.resolve()}}})),(0,p.default)(this,"pageSizeValueValidate",((e,a)=>/^[1-9]\d*(Kb\(it\)|Kib\(it\)|Mb\(it\)|Mib\(it\)|Gb\(it\)|Gib\(it\)|Tb\(it\)|Tib\(it\)|KB|KiB|MB|MiB|GB|GiB|TB|TiB)?$/.test(a)?s.default.resolve():s.default.reject(t("Please enter right format memory page value!")))),(0,p.default)(this,"checkResourceProps",(e=>!(0,l.default)(e).call(e,((e,t)=>{var{key:a,value:r}=e.value||{};if(!r)return!0;if(t>=this.resourcePropNeedKeys.length){if(!/^CUSTOM_[A-Z0-9_]{1,248}$/.test(a))return!0}return!1})))),(0,p.default)(this,"checkTraitProps",(e=>!!(0,x.isEmpty)(e)||!(0,l.default)(e).call(e,(e=>!e.value))))}init(){this.settingStore=_.default,this.getSettings()}getSettings(){var e=this;return(0,f.default)((function*(){yield e.settingStore.fetchList(),e.updateDefaultValue()}))()}get familyItemValue(){return(0,b.getFamilyItemValue)(this.settingStore.list.data)}get tab(){var e,t=(0,M.parse)((0,d.default)(e=this.routing.location.search).call(e,1)),{tab:a}=t;return a}get flavorArchitectures(){var e;return(0,o.default)(e=(0,b.getAllArchitecture)(this.settingStore.list.data,!1)).call(e,(e=>({label:b.flavorArchitectures[e],value:e})))}get flavorCategoryList(){var e,t,{architecture:a}=this.state;if(!a)return[];var r=(0,l.default)(e=this.familyItemValue).call(e,(e=>e.architecture===a));return r?(0,o.default)(t=r.categories).call(t,(e=>({value:e.name,label:b.flavorCategoryList[e.name]||e.name,properties:e.properties}))):[]}get gpuTypes(){var e,t,a,r=(0,l.default)(e=this.settingStore.list.data||[]).call(e,(e=>"gpu_models"===e.key));return r&&r.value instanceof Array?(0,o.default)(t=r.value).call(t,(e=>({value:e,label:e}))):r&&"object"==typeof r.value?(0,o.default)(a=(0,c.default)(r.value)).call(a,(e=>({label:e,value:e}))):[]}get usbTypes(){var e,t,a,r=(0,l.default)(e=this.settingStore.list.data||[]).call(e,(e=>"usb_models"===e.key));return r&&r.value instanceof Array?(0,o.default)(t=r.value).call(t,(e=>({value:e,label:e}))):r&&"object"==typeof r.value?(0,o.default)(a=(0,c.default)(r.value)).call(a,(e=>({label:e,value:e}))):[]}get vgpuTypes(){return[{value:"vgpu",label:"vgpu"}]}get resourcePropNeedKeys(){return["VCPU","MEMORY_MB","DISK_GB"]}get defaultValue(){return{vcpus:1,memoryGb:1,numaNodesNum:1,settings:(0,v.toJS)(this.settingStore.list.data||[]),ephemeral:0,ephemeralTmp:0,disk:0,architecture:this.tab,attachUsb:!1,resourceProps:this.getDefaultResourcePropValues(),traitProps:[],memPageSizeMore:"any",memPageSize:"large"}}get defaultNUMAValue(){return{cpu:1,ram:1024}}get nameForStateUpdate(){return["architecture","category","attachUsb","memPageSizeMore","more","memPageSize"]}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get formItems(){var{architecture:e,category:a,attachUsb:r,memPageSizeMore:i,more:n=!1,memPageSize:l}=this.state,o="bare_metal"===e,u=(0,b.categoryHasIOPS)(a),d=(0,b.categoryHasEphemeral)(a),c=(0,b.isGpuCategory)(a),f=(0,b.isGpuVisual)(a),p=c&&!f,h=(0,b.isComputeOptimized)(a),v=b.flavorCategoryList[a]||a,y=!h&&!o,_=n&&y,M=_&&"custom"===i,x=h&&"custom"===l,A=t("It is recommended that { instanceType } instance simultaneously set NUMA affinity policy for PCIE device to force or priority matching. This configuration can further improve PCIE computing performance.",{instanceType:v}),w=t("It is recommended to set CPU binding strategy as binding on { instanceType } instance. This configuration further improves the performance of the instance CPU.",{instanceType:v}),N=t("It is recommended to set the CPU thread binding policy as thread binding in { instanceType } instance, which can further improve the CPU performance of instance.",{instanceType:v}),C=t("It is recommended that the { instanceType } instance simultaneously set large page memory to large. { instanceType } instances also require faster memory addressing capabilities.",{instanceType:v}),P=t("The unit suffix must be one of the following: Kb(it), Kib(it), Mb(it), Mib(it), Gb(it), Gib(it), Tb(it), Tib(it), KB, KiB, MB, MiB, GB, GiB, TB, TiB. If the unit suffix is not provided, it is assumed to be KB."),j=t("Please enter a memory page size, such as: 1024, 1024MiB");return[{name:"title1",label:t("Basic Parameters"),type:"title"},{name:"architecture",label:t("Architecture"),type:"radio",options:this.flavorArchitectures,required:!0},{name:"category",label:t("Type"),type:"radio",options:this.flavorCategoryList,required:!0,wrapperCol:{xs:{span:16},sm:{span:12}}},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"vcpus",label:t("CPU(Core)"),type:"input-int",min:1,extra:t("The number of vCPU cores should not exceed the maximum number of CPU cores of the physical node. Otherwise it will cause fail to schedule to any physical node when creating instance."),required:!0},{name:"memoryGb",label:t("Ram Size(GiB)"),type:"input-int",min:1,required:!0},{name:"bandwidth",label:t("Internal Network Bandwidth(Gbps)"),type:"input-int",hidden:o,min:1},{name:"ephemeral",label:t("Ephemeral Disk(GiB)"),type:"input-int",min:0,hidden:!d},{name:"ephemeralTmp",label:t("Ephemeral Disk(GiB)"),type:"input-int",min:0,hidden:o||d,disabled:!d},{name:"disk",label:t("Root Disk(GiB)"),type:"input-int",min:0,hidden:this.enableCinder},{name:"iops",label:t("Storage IOPS"),type:"input-int",min:1,hidden:o||!u},{name:"numaNodesNum",label:t("NUMA Nodes"),type:"input-int",min:1,required:!0,hidden:!y},{name:"more",label:t("Advanced Options"),type:"more",hidden:!y},{name:"memPageSizeMore",label:t("Memory Page"),type:"select",options:b.pageTypeList,hidden:!_,required:_,tip:C},{name:"memPageSizeValueMore",label:t("Memory Page Size"),type:"input",hidden:!M,required:M,extra:P,validator:this.pageSizeValueValidate,placeholder:j},{name:"gpu-type",label:t("GPU Parameters"),type:"title",hidden:!c},{name:"gpuType",label:t("GPU Model"),type:"select",hidden:!p,required:p,options:this.gpuTypes,tip:t("GPU pass-through will load GPU devices directly to the instance for use. VGPU is a GPU virtualization solution. GPU resources will be segmented and distributed to multiple instances for shared use.")},{name:"gpuNumber",label:t("Number of GPU"),type:"input-int",min:1,hidden:!c,required:c},{name:"title2",label:t("Optimized Parameters"),type:"title",hidden:!h},{name:"numaNodes",label:t("NUMA Nodes"),type:"add-select",dependencies:["vcpu","memoryGb"],required:h,defaultItemValue:this.defaultNUMAValue,itemComponent:g.default,minCount:1,maxCount:8,addTextTips:t("NUMA Node"),addText:t("Add NUMA Node"),otherRule:this.numaValidate,hidden:!h,tip:A},{name:"cpuPolicy",label:t("CPU Policy"),type:"radio",options:(0,S.getOptions)(b.cpuPolicyList),tip:w,hidden:!h,required:h},{name:"cpuThreadPolicy",label:t("CPU Thread Policy"),type:"select",options:b.cpuThreadPolicyList,tip:N,hidden:!h,required:h},{name:"memPageSize",label:t("Memory Page"),type:"select",options:b.pageTypeList,hidden:!h,required:h,tip:C},{name:"memPageSizeValue",label:t("Memory Page Size"),type:"input",hidden:!x,required:x,extra:P,validator:this.pageSizeValueValidate,placeholder:j},{name:"usb-type",label:t("USB Parameters"),type:"title",hidden:!this.usbTypes[0]},{name:"attachUsb",label:t("Attach USB"),type:"radio",optionType:"default",hidden:!this.usbTypes[0],options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"usbType",label:t("Usb Controller"),type:"select",hidden:!r,required:r,options:this.usbTypes},{name:"usbNumber",label:t("Number of Usb Controller"),type:"input-int",min:1,hidden:!r,required:r},{name:"bare-metal-type",label:t("BareMetal Parameters"),type:"title",hidden:!o},{name:"resourceProps",label:t("Resource Class Properties"),type:"add-select",itemComponent:I.default,addText:t("Add Property"),minCount:this.resourcePropNeedKeys.length,hidden:!o,required:o,readonlyKeys:this.resourcePropNeedKeys,extra:m.default.createElement("div",null,m.default.createElement("p",null,t("1. The name of the custom resource class property should start with CUSTOM_, can only contain uppercase letters A ~ Z, numbers 0 ~ 9 or underscores, and the length should not exceed 255 characters (for example: CUSTOM_BAREMETAL_SMALL).")),m.default.createElement("p",null,t("2. You can customize the resource class name of the flavor, but it needs to correspond to the resource class of the scheduled node (for example, the resource class name of the scheduling node is baremetal.with-GPU, and the custom resource class name of the flavor is CUSTOM_BAREMETAL_WITH_GPU=1)."))),validator:(e,a)=>this.checkResourceProps(a)?s.default.resolve():s.default.reject(t("Please enter right format key value!"))},{name:"traitProps",label:t("Trait Properties"),type:"add-select",isInput:!0,addText:t("Add Property"),hidden:!o,required:o,extra:t("The trait name of the flavor needs to correspond to the trait of the scheduling node; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all necessary traits (for example: the trait of the scheduling node has HW_CPU_X86_VMX trait, and the flavor adds HW_CPU_X86_VMX, it can be scheduled to this node for necessary traits)."),validator:(e,a)=>this.checkTraitProps(a)?s.default.resolve():s.default.reject(t("Please enter right format trait!"))}]}}a.ParamSetting=A;var w=(0,h.inject)("rootStore")((0,h.observer)(A));a.default=w},3513:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(82)),m=f(r(37)),h=r(382),v=f(r(1114)),g=r(1141),y=r(319),b=r(1131),_=r(135),S=f(r(3514));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.gpuColumns,...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"heterogeneous_computing"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.heterogeneous_computing," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.heterogeneousCategoryList),include:!1}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3514:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3515)),l=i(a(1198)),o=i(a(1199)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3515:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(37)),s=n(r(1197));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=heterogeneous_computing"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3516:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(82)),m=f(r(37)),h=r(382),v=f(r(1114)),g=r(1141),y=r(319),b=r(1131),_=r(135),S=f(r(3517));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"arm_architecture"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.arm_architecture," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.armCategoryList)}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3517:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3518)),l=i(a(1198)),o=i(a(1199)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3518:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(37)),s=n(r(1197));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=arm_architecture"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3519:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(33)),m=f(r(91)),h=f(r(82)),v=f(r(37)),g=r(382),y=f(r(1114)),b=r(1141),_=r(319),S=r(1131),M=f(r(3520));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 x(e){for(var t=1;t{var e=[...(0,S.getBaseColumns)(this),...S.extraColumns],t=["quota:vif_outbound_average","OS-FLV-EXT-DATA:ephemeral","quota:disk_total_iops_sec"];return(0,p.default)(e).call(e,(e=>(0,m.default)(t).call(t,e.dataIndex)<0))})),(0,v.default)(this,"updateFetchParams",(e=>x(x({},e),{},{tab:"bare_metal"})))}init(){this.store=new b.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,h.default)(e="".concat(S.flavorArchitectures.bare_metal," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?M.default:_.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Flavor=A;var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3520:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3521)),l=i(a(1198)),o=i(a(1199)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3521:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(37)),s=n(r(1197));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=bare_metal"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3522:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(518)),m=f(r(82)),h=f(r(37)),v=r(382),g=f(r(1114)),y=r(1141),b=r(319),_=r(1131),S=f(r(3523));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 I(e){for(var t=1;t{var e=[...(0,_.getBaseColumns)(this)];return(0,p.default)(e).call(e,1,1),[...e,..._.extraColumns]})),(0,h.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"custom"})))}init(){this.store=new y.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,m.default)(e="".concat(t("Custom")," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:b.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Flavor=x;var A=(0,v.inject)("rootStore")((0,v.observer)(x));a.default=A},3523:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1198)),l=i(a(1199)),o=i(a(3524)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[n.default],primaryActions:[]};t.default=s},3524:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var l=n(r(101)),o=n(r(91)),s=n(r(35)),u=n(r(28)),d=n(r(65)),c=n(r(52)),f=n(r(37)),p=r(382),m=n(r(1141)),h=r(1113),v=n(r(1132)),g=r(1161),y=r(47);class b extends h.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,l.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,o.default)(a=(0,s.default)(r)).call(a,e)>=0}))})),(0,f.default)(this,"checkCustoms",(e=>!!(0,y.isEmpty)(e)||!(0,l.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,f.default)(this,"hasNoValue",(e=>{var t;return!!(0,l.default)(t=(0,s.default)(e)).call(t,(t=>void 0===e[t]))})),(0,f.default)(this,"onSubmit",(e=>{var t,a,{customs:r,systems:i}=this.parseExistMetadata(),{customs:n,systems:o}=e,d=[],c=[],f=[];return(0,u.default)(n).call(n,(e=>{var{key:t,value:a}=e.value||{},i=(0,l.default)(r).call(r,(e=>e.value.key===t));i?i.value.value!==a&&f.push(e.value):d.push(e.value)})),(0,u.default)(t=(0,s.default)(o)).call(t,(e=>{var t={key:e,value:o[e]};(0,y.has)(i,e)?o[e]!==i[e]&&f.push(t):d.push(t)})),(0,u.default)(r).call(r,(e=>{(0,l.default)(n).call(n,(t=>t.value.key===e.value.key))||c.push(e.value.key)})),(0,u.default)(a=(0,s.default)(i)).call(a,(e=>{(0,y.has)(o,e)||c.push(e)})),this.store.updateExtraSpecs(this.item.id,d,f,c)}))}init(){this.store=m.default,this.metadataStore=new g.MetadataStore,this.getMetadata()}get name(){return t("Manage Metadata")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,c.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Nova::Flavor"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}getItemMetadata(){var{extra_specs:e={},originData:t={}}=this.item||{};return(0,y.isEmpty)(t)?e:t.extra_specs||{}}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,r=this.getItemMetadata();(0,u.default)(a=(0,s.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:v.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?d.default.reject(t("Please input value")):d.default.resolve()}]}}a.ManageMetadata=b,(0,f.default)(b,"id","ManageMetadata"),(0,f.default)(b,"title",t("Manage Metadata")),(0,f.default)(b,"policy",["os_compute_api:os-flavor-extra-specs:create","os_compute_api:os-flavor-extra-specs:delete","os_compute_api:os-flavor-extra-specs:update"]),(0,f.default)(b,"allowed",(()=>d.default.resolve(!0)));var _=(0,p.inject)("rootStore")((0,p.observer)(b));a.default=_},3525:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(382),o=r(1141),s=n(r(1119)),u=r(1131),d=n(r(1251)),c=r(319),f=r(135),p=n(r(3526)),m=n(r(3527));class h extends s.default{get name(){return t("flavor")}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get listUrl(){return this.getRoutePath("flavor")}get actionConfigs(){return this.isAdminPage?p.default:c.emptyActionConfig}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Architecture"),dataIndex:"architecture",render:e=>u.flavorArchitectures[e]||e},{title:t("Category"),dataIndex:"category",render:e=>u.flavorCategoryList[e]||e},{title:t("CPU"),dataIndex:"vcpus",isHideable:!0},{title:t("Memory"),dataIndex:"ram",isHideable:!0,render:e=>(0,f.formatSize)(e,2)},{title:t("Public"),dataIndex:"is_public",isHideable:!0,valueRender:"yesNo"}]}get tabs(){return[{title:t("BaseDetail"),key:"BaseDetail",component:m.default},{title:t("Instance"),key:"members",component:d.default}]}init(){this.store=new o.FlavorStore}}a.Detail=h;var v=(0,l.inject)("rootStore")((0,l.observer)(h));a.default=v},3526:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1197)),l=i(a(1198)),o=i(a(1199)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3527:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(33)),o=n(r(35)),s=n(r(91)),u=n(r(62)),d=n(r(82)),c=n(r(322)),f=n(r(0)),p=r(382),m=n(r(1122)),h=r(1131);class v extends m.default{get leftCards(){var{category:e,disk:t,usbType:a}=this.detailData,r=(0,h.isGpuCategory)(e),i=(0,h.isComputeOptimized)(e),n=[this.baseInfoCard];return t&&n.push(this.diskCard),r&&n.push(this.gpuCard),"-"!==a&&n.push(this.usbCard),i&&n.push(this.ComputeOptimizedCard),n}get rightCards(){return[this.jsonCard]}getBareMetalCard(){var e=[{label:t("Resource Class Properties"),dataIndex:"extra_specs_traits",render:()=>{var e,{originData:{extra_specs:t={}}={}}=this.detailData,a=(0,l.default)(e=(0,o.default)(t)).call(e,(e=>0===(0,s.default)(e).call(e,"resources:")));return(0,u.default)(a).call(a,(e=>{var a,r=t[e];return f.default.createElement("div",{key:e},(0,d.default)(a="".concat(e.replace("resources:","")," = ")).call(a,r))}))}},{label:t("Trait Properties"),dataIndex:"extra_specs_traits",render:()=>{var e,{originData:{extra_specs:t={}}={}}=this.detailData,a=(0,l.default)(e=(0,o.default)(t)).call(e,(e=>0===(0,s.default)(e).call(e,"trait:")));return(0,u.default)(a).call(a,(e=>{var a,r=t[e];return f.default.createElement("div",{key:e},(0,d.default)(a="".concat(e.replace("trait:","")," = ")).call(a,r))}))}}];return{title:t("Base Info"),options:e}}get baseInfoCard(){var{category:e,architecture:a}=this.detailData,r=(0,h.categoryHasIOPS)(e),i=(0,h.categoryHasEphemeral)(e),n=(0,h.isComputeOptimized)(e);if((0,h.isBareMetal)(a))return this.getBareMetalCard();var l=[{label:t("Internal Network Bandwidth(Gbps)"),dataIndex:"quota:vif_outbound_average",render:e=>e?e/1e3/125:"-"}];if(i&&l.push({label:t("Ephemeral Disk(GiB)"),dataIndex:"OS-FLV-EXT-DATA:ephemeral"}),r&&l.push({label:t("Storage IOPS"),dataIndex:"quota:disk_total_iops_sec",render:e=>e||"-"}),!n){var o={label:t("NUMA Node Count"),dataIndex:"hw:numa_nodes"},s={label:t("Memory Page Size"),dataIndex:"hw:mem_page_size",render:e=>e&&h.pageTypeMap[e]||e||"-"};l.push(o,s)}return{title:t("Base Info"),options:l}}get diskCard(){var e=[{label:t("Root Disk(GiB)"),dataIndex:"disk"}];return{title:t("Disk Info"),options:e}}get gpuCard(){var e=[{label:t("GPU Type"),dataIndex:"gpuType"},{label:t("GPU Count"),dataIndex:"gpuCount"}];return{title:t("GPU Info"),options:e}}get usbCard(){var e=[{label:t("Usb Controller"),dataIndex:"usbType"},{label:t("Number of Usb Controller"),dataIndex:"usbCount"}];return{title:t("USB Info"),options:e}}get ComputeOptimizedCard(){var e,a=[{label:t("NUMA Node Count"),dataIndex:"hw:numa_nodes"}],r=this.detailData["hw:numa_nodes"]||0,i=(0,u.default)(e=new Array(r)).call(e,((e,a)=>{var r,i=this.detailData["hw:numa_cpus.".concat(a)],n=this.detailData["hw:numa_mem.".concat(a)];return{label:(0,d.default)(r="".concat(t("NUMA Node"),"-")).call(r,a+1),dataIndex:"hw:numa_nodes.".concat(a),render:()=>f.default.createElement("div",{key:"hw:numa_nodes.".concat(a)},f.default.createElement("span",{style:{marginRight:16}},t("CPU")," : ",i),t("Mem")," : ",n,"MiB")}}));a.push(...i);var n=[{label:t("CPU Policy"),dataIndex:"hw:cpu_policy",render:e=>h.cpuPolicyList[e]||"-"},{label:t("CPU Thread Policy"),dataIndex:"hw:cpu_thread_policy",render:e=>h.cpuThreadPolicyMap[e]||"-"},{label:t("Memory Page Size"),dataIndex:"hw:mem_page_size",render:e=>h.pageTypeMap[e]||"-"}],l=[...a,...n];return{title:t("Compute Optimized Info"),options:l}}get jsonCard(){var{originData:e}=this.detailData,a=[{label:"",content:f.default.createElement("div",null,f.default.createElement("pre",null,(0,c.default)(e,null,4)))}];return{labelCol:0,title:t("Parameter"),options:a}}}a.BaseDetail=v;var g=(0,p.inject)("rootStore")((0,p.observer)(v));a.default=g},3528:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.TabImage=void 0;var l=r(382),o=n(r(1152)),s=n(r(1464));class u extends o.default{get tabs(){var e=[{title:t("Current Project Image"),key:"project",component:s.default},{title:t("Public Image"),key:"public",component:s.default},{title:t("Shared Image"),key:"shared",component:s.default}];return this.hasAdminRole&&e.push({title:t("All Image"),key:"all",component:s.default}),e}}a.TabImage=u;var d=(0,l.inject)("rootStore")((0,l.observer)(u));a.default=d},3535:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(28)),m=f(r(35)),h=f(r(65)),v=f(r(62)),g=f(r(71)),y=f(r(37)),b=r(382),_=r(1113),S=f(r(523)),M=r(520),I=r(47),x=r(1120),A=r(135),w=r(1131);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 C(e){for(var t=1;t{var t,{more:a,protected:r=!1,visibility:i=!1,hw_cpu_policy:n,hw_cpu_thread_policy:l,min_ram:o}=e,s=C({protected:r,visibility:i?"public":"private"},(0,g.default)(e,["more","protected","visibility","hw_cpu_policy","hw_cpu_thread_policy","min_ram"]));o&&(s.min_ram=1024*o),n!==A.NoSetValue&&(s.hw_cpu_policy=n||this.item.hw_cpu_policy),l!==A.NoSetValue&&(s.hw_cpu_thread_policy=l||this.item.hw_cpu_thread_policy);var u=[];return(0,p.default)(t=(0,m.default)(s)).call(t,(e=>{if((0,I.has)(this.item,e)&&(0,I.get)(this.item,e)!==s[e]){var t={op:"replace",path:"/".concat(e),value:s[e]};u.push(t)}else if(!(0,I.has)(this.item,e)&&s[e]){var a={op:"add",path:"/".concat(e),value:s[e]};u.push(a)}})),this.item.hw_cpu_policy&&n===A.NoSetValue&&u.push({op:"remove",path:"/hw_cpu_policy"}),this.item.hw_cpu_thread_policy&&l===A.NoSetValue&&u.push({op:"remove",path:"/hw_cpu_thread_policy"}),0===u.length?h.default.resolve():this.store.update({id:this.item.id},u)}))}init(){this.store=S.default}get name(){return t("edit image")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get defaultValue(){var{visibility:e,hw_qemu_guest_agent:t,hw_cpu_policy:a,hw_cpu_thread_policy:r,min_ram:i}=this.item;return C(C({},this.item),{},{protected:this.item.protected,visibility:"public"===e,hw_qemu_guest_agent:t,hw_cpu_policy:a||A.NoSetValue,hw_cpu_thread_policy:r||A.NoSetValue,min_ram:i/1024})}get osList(){var e;return(0,v.default)(e=(0,m.default)(M.imageOS)).call(e,(e=>({value:e,label:M.imageOS[e]})))}get yesNoList(){return[{value:"yes",label:t("Yes")},{value:"no",label:t("No")}]}getOptions(){return[{label:t("Protected"),value:"protected"}]}get formItems(){var{more:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",isImage:!0,required:!0},{name:"os_distro",label:t("OS"),type:"select",options:this.osList,required:!0},{name:"os_version",label:t("OS Version"),type:"input",required:!0},{name:"os_admin_user",label:t("OS Admin"),type:"input",required:!0,extra:t("In general, administrator for Windows,root for Linux, please fill by image uploading.")},{name:"min_disk",label:t("Min System Disk(GiB)"),type:"input-int",min:0,max:500,display:this.enableCinder},{name:"min_ram",label:t("Min Memory(GiB)"),type:"input-int",min:0,max:500},{name:"visibility",label:t("Visibility"),type:"check",content:t("Public"),hidden:!this.isAdminPage},{name:"protected",label:t("Protected"),type:"check",content:t("Protected")},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"more",label:t("Advanced Options"),type:"more"},{name:"hw_qemu_guest_agent",label:t("qemu_guest_agent enabled"),type:"radio",onlyRadio:!0,options:this.yesNoList,tip:t("It is recommended to install and use this agent. The instance created with this image can be used to modify the password (qemu_guest_agent needs to be installed when creating the image)."),hidden:!e},{name:"hw_cpu_policy",label:t("CPU Policy"),type:"select",options:(0,A.getOptionsWithNoSet)(w.cpuPolicyList),hidden:!e},{name:"hw_cpu_thread_policy",label:t("CPU Thread Policy"),type:"select",options:(0,A.getOptionsWithNoSet)(w.cpuThreadPolicyList),hidden:!e}]}}a.Edit=P,(0,y.default)(P,"id","image-edit"),(0,y.default)(P,"title",t("Edit Image")),(0,y.default)(P,"buttonText",t("Edit")),(0,y.default)(P,"policy","modify_image"),(0,y.default)(P,"allowed",((e,t)=>{var{isAdminPage:a}=t;return h.default.resolve((0,x.isActive)(e)&&(0,M.isOwner)(e)||a)}));var j=(0,b.inject)("rootStore")((0,b.observer)(P));a.default=j},3536:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(523)),u=r(520);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_image"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.notDeleted(e)&&this.notProtected(e)&&((0,u.isOwner)(e)||this.isAdminPage))),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Image")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete image")}notDeleted(e){return"deleted"!==e.status}notProtected(e){return!e.protected}}a.default=d},3537:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(82)),o=n(r(65)),s=n(r(37)),u=r(382),d=n(r(1170)),c=r(520);class f extends d.default{static path(e){var t;return(0,l.default)(t="/compute/instance/create?image=".concat(e.id,"&os_distro=")).call(t,e.os_distro)}static allowed(e,t){var{isAdminPage:a}=t;return o.default.resolve(!a&&(0,c.canImageCreateInstance)(e))}}a.StepCreate=f,(0,s.default)(f,"id","instance-create"),(0,s.default)(f,"title",t("Create Instance")),(0,s.default)(f,"policy","os_compute_api:servers:create:trusted_certs");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3538:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateIronic=void 0;var l=n(r(82)),o=n(r(65)),s=n(r(37)),u=r(382),d=n(r(1170)),c=r(520),f=r(1120);class p extends d.default{static path(e){var t;return(0,l.default)(t="/compute/ironic-instance/create?image=".concat(e.id,"&os_distro=")).call(t,e.os_distro)}static allowed(e,t){var{isAdminPage:a}=t;return o.default.resolve(!a&&(0,f.canCreateIronicByEndpoint)()&&(0,c.canImageCreateIronicInstance)(e))}}a.CreateIronic=p,(0,s.default)(p,"id","ironic-create"),(0,s.default)(p,"title",t("Create Ironic Instance")),(0,s.default)(p,"policy","os_compute_api:servers:create:trusted_certs");var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3539:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateVolume=void 0;var l=n(r(516)),o=n(r(82)),s=n(r(65)),u=n(r(37)),d=r(382),c=r(1113),f=n(r(386)),p=n(r(136)),m=r(515);class h extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{name:t,size:a,volume_type:r}=e,i={imageRef:this.item.id,name:t,size:a,volume_type:r};return f.default.create(i)}))}init(){this.volumeStore=f.default,this.getVolumeTypes();var e=this.getMinSize();(0,m.fetchQuota)(this,e)}getVolumeTypes(){this.volumeStore.fetchVolumeTypes()}get volumeTypes(){return this.volumeStore.volumeTypes}getMinSize(){var{min_disk:e,size:t}=this.item;return Math.max(e,Math.ceil(t/1024/1024/1024))}get name(){return t("Create Volume")}get instanceName(){return(0,l.default)(this).name}static get disableSubmit(){return(0,m.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,m.getQuotaInfo)(this)}get defaultValue(){var{name:e}=this.item;return{image:e,size:this.getMinSize()}}get formItems(){var e,a=this.getMinSize();return[{name:"image",label:t("Image"),type:"label",iconType:"image"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"volume_type",label:t("Volume Type"),type:"select",required:!0,options:this.volumeTypes,placeholder:t("Please select volume type"),onChange:m.onVolumeTypeChange},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:a,extra:(0,o.default)(e="".concat(t("Min size"),": ")).call(e,a,"GiB"),required:!0,onChange:m.onVolumeSizeChange}]}}a.CreateVolume=h,(0,u.default)(h,"id","create"),(0,u.default)(h,"title",t("Create Volume")),(0,u.default)(h,"policy","volume:create_from_image"),(0,u.default)(h,"allowed",((e,t)=>{var{isAdminPage:a}=t;return s.default.resolve(p.default.checkEndpoint("cinder")&&!a)}));var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3540:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var l=n(r(101)),o=n(r(91)),s=n(r(35)),u=n(r(28)),d=n(r(65)),c=n(r(71)),f=n(r(52)),p=n(r(37)),m=r(382),h=n(r(523)),v=r(1113),g=n(r(1132)),y=r(1161),b=r(47),_=r(520);class S extends v.ModalAction{constructor(){super(...arguments),(0,p.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,l.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,o.default)(a=(0,s.default)(r)).call(a,e)>=0}))})),(0,p.default)(this,"checkCustoms",(e=>!!(0,b.isEmpty)(e)||!(0,l.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,p.default)(this,"hasNoValue",(e=>{var t;return!!(0,l.default)(t=(0,s.default)(e)).call(t,(t=>void 0===e[t]))})),(0,p.default)(this,"onSubmit",(e=>{var t,a,{customs:r,systems:i}=this.parseExistMetadata(),{customs:n,systems:o}=e,c=[],f=[],p=[];(0,u.default)(n).call(n,(e=>{var{key:t,value:a}=e.value||{},i=(0,l.default)(r).call(r,(e=>e.value.key===t));i?i.value.value!==a&&p.push(e.value):c.push(e.value)})),(0,u.default)(t=(0,s.default)(o)).call(t,(e=>{var t={key:e,value:o[e]};(0,b.has)(i,e)?o[e]!==i[e]&&p.push(t):c.push(t)})),(0,u.default)(r).call(r,(e=>{(0,l.default)(n).call(n,(t=>t.value.key===e.value.key))||f.push(e.value.key)})),(0,u.default)(a=(0,s.default)(i)).call(a,(e=>{(0,b.has)(o,e)||f.push(e)}));var m=[];return(0,u.default)(c).call(c,(e=>{m.push({op:"add",path:"/".concat(e.key),value:e.value})})),(0,u.default)(p).call(p,(e=>{m.push({op:"replace",path:"/".concat(e.key),value:e.value})})),(0,u.default)(f).call(f,(e=>{m.push({op:"remove",path:"/".concat(e)})})),0===m.length?d.default.resolve():this.store.update({id:this.item.id},m)}))}init(){this.store=h.default,this.metadataStore=new y.MetadataStore,this.getMetadata()}get name(){return t("Manage Metadata")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,f.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Glance::Image"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}getItemMetadata(){var e=this.item.originData,{container_format:t,disk_format:a,id:r,min_disk:i,min_ram:n,name:l,protected:o,tags:s,visibility:u,owner:d,created_at:f,is_public:p,updated_at:m,status:h,locations:v,file:g,size:y,image_type:b,self:_,virtual_size:S}=e;return(0,c.default)(e,["container_format","disk_format","id","min_disk","min_ram","name","protected","tags","visibility","owner","created_at","is_public","updated_at","status","locations","file","size","image_type","self","virtual_size"])}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,r=this.getItemMetadata();(0,u.default)(a=(0,s.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:g.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?d.default.reject(t("Please input value")):d.default.resolve()}]}}a.ManageMetadata=S,(0,p.default)(S,"id","ManageMetadata"),(0,p.default)(S,"title",t("Manage Metadata")),(0,p.default)(S,"policy","modify_image"),(0,p.default)(S,"allowed",((e,t)=>{var{isAdminPage:a}=t;return d.default.resolve((0,_.isOwner)(e)||a)}));var M=(0,m.inject)("rootStore")((0,m.observer)(S));a.default=M},3541:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageAccess=void 0;var m=p(r(65)),h=p(r(33)),v=p(r(91)),g=p(r(62)),y=p(r(52)),b=p(r(37)),_=r(382),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=A(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(523)),M=r(1113),I=r(384),x=r(1153);function A(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(A=function(e){return e?a:t})(e)}function w(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 t,{members:a}=e;if(!a)return m.default.resolve();var{selectedRowKeys:r}=a,{id:i}=this.item,n=(0,h.default)(r).call(r,(e=>{var t;return(0,v.default)(t=this.currentMembers).call(t,e)<0})),l=(0,h.default)(t=this.currentMembers).call(t,(e=>(0,v.default)(r).call(r,e)<0));return S.default.updateMembers(i,n,l)}))}init(){this.store=new S.ImageStore,this.projectStore=new I.ProjectStore,this.getMembers(),this.getProjects()}get name(){return t("Manage Access")}static get modalSize(){return"large"}getModalSize(){return"large"}getMembers(){var e=this;return(0,y.default)((function*(){var{id:t}=e.item;yield e.store.getMembers(t),e.updateDefaultValue()}))()}getProjects(){var e=this;return(0,y.default)((function*(){yield e.projectStore.fetchList(),e.updateDefaultValue()}))()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){var{name:e}=this.item;return{name:e,members:{selectedRowKeys:this.currentMembers}}}get currentMembers(){var e;return(0,g.default)(e=this.store.members||[]).call(e,(e=>e.member_id))}get formItems(){return[{name:"name",label:t("Image Name"),type:"label",iconType:"image"},N({name:"members",label:t("Project"),type:"select-table",isMulti:!0,required:!0,data:this.projects,isLoading:this.projectStore.list.isLoading},x.projectTableOptions)]}}a.ManageAccess=C,(0,b.default)(C,"id","manage-access"),(0,b.default)(C,"title",t("Manage Access")),(0,b.default)(C,"policy",["get_members","add_member","delete_member"]),(0,b.default)(C,"allowed",(e=>m.default.resolve("shared"===e.visibility)));var P=(0,_.inject)("rootStore")((0,_.observer)(C));a.default=P},3542:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Keypair=void 0;var l=n(r(37)),o=r(382),s=n(r(1114)),u=n(r(396)),d=n(r(1467));class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name",idKey:"name",routeName:this.getRouteName("keypairDetail")},{title:t("Fingerprint"),dataIndex:"fingerprint"}]))}init(){this.store=u.default}get policy(){return"os_compute_api:os-keypairs:index"}get name(){return t("keypairs")}get hideCustom(){return!0}get actionConfigs(){return d.default}get rowKey(){return"name"}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Keypair=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3543:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(396));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-keypairs:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.name})))}get id(){return"delete"}get title(){return t("Delete Keypair")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete keypair")}isOwnerOrAdmin(e){return!!e||!0}}a.default=u},3544:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.KeypairDetail=void 0;var l=r(382),o=r(396),s=n(r(1119)),u=n(r(3545)),d=n(r(1467));class c extends s.default{get name(){return t("keypair")}get policy(){return"os_compute_api:os-keypairs:show"}get listUrl(){return this.getRoutePath("keypair")}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("BaseDetail"),key:"BaseDetail",component:u.default}]}init(){this.store=new o.KeypairStore}}a.KeypairDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},3545:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(382),o=n(r(1122));class s extends o.default{get leftCards(){return[this.keypairInfoCard]}get keypairInfoCard(){var e=[{label:t("Fingerprint"),dataIndex:"fingerprint"},{label:t("Public Key"),dataIndex:"public_key",copyable:!0},{label:t("User ID"),dataIndex:"user_id"}];return{title:t("Keypair Info"),options:e}}}a.BaseDetail=s;var u=(0,l.inject)("rootStore")((0,l.observer)(s));a.default=u},3546:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ServerGroup=void 0;var l=n(r(37)),o=r(382),s=n(r(1114)),u=n(r(543)),d=n(r(1218)),c=r(135),f=n(r(1468));class p extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("serverGroupDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage},{title:t("Member Count"),dataIndex:"members",isHideable:!0,render:e=>e.length},{title:t("Policy"),dataIndex:"policy",render:e=>d.default[e]||"-"}]))}init(){this.store=u.default}get policy(){return this.isAdminPage,"os_compute_api:os-server-groups:index"}get name(){return t("server groups")}get adminPageHasProjectFilter(){return!0}get actionConfigs(){return this.isAdminPage?f.default.actionConfigsAdmin:f.default.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Policy"),name:"policy",options:(0,c.getOptions)(d.default)}]}}a.ServerGroup=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3547:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(62)),m=f(r(35)),h=f(r(65)),v=f(r(52)),g=f(r(37)),y=f(r(0)),b=r(382),_=f(r(543)),S=r(1113),M=f(r(1218)),I=f(r(384));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 A(e){for(var t=1;t_.default.create(e)))}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=_.default,this.projectStore=I.default,this.getQuota()}get name(){return t("Create server group")}static get disableSubmit(){var{novaQuota:{server_groups:{left:e=0}={}}={}}=I.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.fetchProjectNovaQuota(),{server_groups: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[A(A({},e),{},{add:i,name:"server_groups",title:t("Server Group")})]}get formItems(){var e,a=(0,p.default)(e=(0,m.default)(M.default)).call(e,(e=>({value:e,label:M.default[e]})));return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"policy",label:t("Policy"),type:"select",placeholder:t("Please select policy"),options:a,required:!0,tip:y.default.createElement("div",null,y.default.createElement("p",null,t("Affinity (mandatory):")),y.default.createElement("p",null,t("The instances in the affinity group are strictly allocated to the same physical machine. When there are no more physical machines to allocate, the allocation fails.")),y.default.createElement("p",null,t("Anti-affinity (mandatory):")),y.default.createElement("p",null,t("The instances in the anti-affinity group are strictly allocated to different physical machines. When there are no more physical machines to allocate, the allocation fails.")),y.default.createElement("p",null,t("Affinity (not mandatory):")),y.default.createElement("p",null,t("The instances in the affinity group are allocated to the same physical machine as much as possible, and when there are no more physical machines to allocate, the normal allocation strategy is returned.")),y.default.createElement("p",null,t("Anti-affinity (not mandatory):")),y.default.createElement("p",null,t("The instances in the anti-affinity group are allocated to different physical machines as much as possible. When there are no more physical machines to allocate, the normal allocation strategy is returned.")))}]}}a.Create=w,(0,g.default)(w,"id","create"),(0,g.default)(w,"title",t("Create Server Group")),(0,g.default)(w,"policy","os_compute_api:os-server-groups:create"),(0,g.default)(w,"allowed",(()=>h.default.resolve(!0)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},3548:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(543));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-server-groups:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.members||0===e.members.length)),(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 Server Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Server Group")}}a.default=u},3549:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(37)),o=r(382),s=n(r(1170));class u extends s.default{static path(e){return"/compute/instance/create?servergroup=".concat(e.id)}static allowed(){return!0}}a.StepCreate=u,(0,l.default)(u,"id","instance-create"),(0,l.default)(u,"title",t("Create Instance")),(0,l.default)(u,"policy","os_compute_api:servers:create");var d=(0,o.inject)("rootStore")((0,o.observer)(u));a.default=d},3550:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ServerGroupDetail=void 0;var l=r(382),o=r(543),s=n(r(1119)),u=n(r(1251)),d=n(r(1218)),c=n(r(1468));class f extends s.default{get name(){return t("server group")}get policy(){return"os_compute_api:os-server-groups:show"}get listUrl(){return this.getRoutePath("serverGroup")}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id",hidden:!this.isAdminPage},{title:t("Policy"),dataIndex:"policy",render:e=>d.default[e]||"-"},{title:t("Member Count"),dataIndex:"members",render:e=>e.length}]}get tabs(){return[{title:t("Members"),key:"members",component:u.default}]}init(){this.store=new o.ServerGroupStore}}a.ServerGroupDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3551:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ImageDetail=void 0;var l=n(r(219)),o=r(382),s=r(520),u=r(523),d=r(1256),c=n(r(1463)),f=n(r(1119)),p=n(r(3552)),m=n(r(1465));class h extends f.default{get name(){return this.isImageDetail?t("image"):t("instance snapshot")}get policy(){return"get_image"}get isImageDetail(){var e;return(0,l.default)(e=this.path).call(e,"image")}get listUrl(){return this.isImageDetail?this.getRoutePath("image"):this.getRoutePath("instanceSnapshot")}get actionConfigs(){return this.isImageDetail?this.isAdminPage?m.default.actionConfigsAdmin:m.default.actionConfigs:this.isAdminPage?c.default.adminConfigs:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",render:e=>s.imageStatus[e]||"-"},{title:t("Project ID"),dataIndex:"owner"},{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("BaseDetail"),key:"BaseDetail",component:p.default}]}init(){this.store=this.isImageDetail?new u.ImageStore:new d.InstanceSnapshotStore}}a.ImageDetail=h;var v=(0,o.inject)("rootStore")((0,o.observer)(h));a.default=v},3552:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(322)),o=n(r(219)),s=n(r(33)),u=n(r(35)),d=n(r(91)),c=n(r(62)),f=n(r(37)),p=r(32),m=r(382),h=r(520),v=n(r(1122)),g=r(47);class y extends v.default{constructor(){super(...arguments),(0,f.default)(this,"getPropertyItem",((e,t,a)=>{var r=h.imageProperties[t]||t,i=(0,g.isObject)(r)?r.label:r,n=(0,g.isObject)(r)?i.filters:null,s=e[t];return{label:i,dataIndex:t,valueRender:n||null,render:n||(0,g.isObject)(s)||(0,g.isArray)(s)?e=>(0,l.default)(e):null,copyable:(0,o.default)(a).call(a,t)}}))}get isImageDetail(){var e;return(0,o.default)(e=this.path).call(e,"image")}get leftCards(){var e=[this.baseInfoCard,this.securityCard];return this.isImageDetail?e:[this.InstanceCard,...e]}get rightCards(){return[this.propertiesCard]}get baseInfoCard(){var e=[{label:t("Size"),dataIndex:"size",valueRender:"bytes"},{label:t("Min System Disk(GiB)"),dataIndex:"min_disk"},{label:t("Min Memory(GiB)"),dataIndex:"min_ram",valueRender:"GiBValue"},{label:t("Disk Format"),dataIndex:"disk_format",valueRender:"uppercase"},{label:t("OS"),dataIndex:"os_distro",render:e=>h.imageOS[e]||"-"},{label:t("OS Version"),dataIndex:"os_version"},{label:t("Container Format"),dataIndex:"container_format",valueRender:"uppercase"}];return{title:t("Base Info"),options:e}}get securityCard(){var e=[{label:t("Owner"),dataIndex:"owner",copyable:!0},{label:t("Filename"),dataIndex:"file",copyable:!0},{label:t("Visibility"),dataIndex:"visibility",render:e=>h.imageVisibility[e]||"-"},{label:t("Protected"),dataIndex:"protected",valueRender:"yesNo"},{label:t("Checksum"),dataIndex:"checksum",copyable:!0}];return{title:t("Security Info"),options:e}}get InstanceCard(){var e=[{label:t("Instance"),dataIndex:"instance",render:e=>{if(!e)return"-";if(e.server_name){var{server_id:t,server_name:a}=e;return this.getLinkRender("instanceDetail",a,{id:t},{tab:"snapshots"})}return e.server_id}}];return{title:t("Instance Info"),options:e}}get propertiesCard(){var e,a=["locations","file","direct_url"],r=["checksum","created_at","min_disk","min_ram","name","updated_at","status","protected","visibility","owner","disk_format","container_format","size","id"],i=(0,p.toJS)(this.detailData)||{},n=i.originData||i,l=(0,s.default)(e=(0,u.default)(n)).call(e,(e=>(0,d.default)(r).call(r,e)<0)),o=(0,c.default)(l).call(l,(e=>this.getPropertyItem(n,e,a)));return{title:t("Custom Properties Info"),options:o}}}a.BaseDetail=y;var b=(0,m.inject)("rootStore")((0,m.observer)(y));a.default=b},3553:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Hypervisors=void 0;var l=r(382),o=n(r(1152)),s=n(r(3554)),u=n(r(3555));class d extends o.default{get tabs(){return[{title:t("Hypervisors"),key:"Hypervisor",component:s.default},{title:t("Compute Hosts"),key:"ComputeHost",component:u.default}]}}a.Hypervisors=d;var c=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=c},3554:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Hypervisors=void 0;var l=n(r(37)),o=r(382),s=n(r(1114)),u=n(r(544)),d=r(1255);class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>{var e=[...d.hypervisorColumns];return e[0]={title:t("ID/Name"),dataIndex:"service_host",routeName:"hypervisorDetailAdmin",isLink:!0},e}))}init(){this.store=u.default}get policy(){return"os_compute_api:os-hypervisors:list"}get name(){return t("Hypervisors")}get hasTab(){return!0}get fetchDataByAllProjects(){return!1}get hideCustom(){return!0}get searchFilters(){return d.hypervisorFilters}}a.Hypervisors=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3555:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ComputeHost=void 0;var p=f(r(82)),m=f(r(37)),h=r(382),v=f(r(1114)),g=r(1181),y=f(r(540)),b=r(135),_=f(r(3556));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 M(e){for(var t=1;tM(M({},e),{},{binary:"nova-compute"}))),(0,m.default)(this,"getColumns",(()=>[{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"zone"},{title:t("Service Status"),dataIndex:"status",render:e=>g.serviceStatus[e]||"-",tip:(e,a)=>{var r,{disabled_reason:i}=a||{};return i?(0,p.default)(r="".concat(t("Reason: ")," ")).call(r,i):""}},{title:t("Service State"),dataIndex:"state",render:e=>g.serviceState[e]||"-"},{title:t("Last Updated"),dataIndex:"updated_at",valueRender:"sinceTime",isHideable:!0}]))}init(){this.store=y.default}get policy(){return"os_compute_api:os-services:list"}get name(){return t("compute hosts")}get hasTab(){return!0}get fetchDataByAllProjects(){return!1}get actionConfigs(){return _.default}get searchFilters(){return[{label:t("Host"),name:"host"},{label:t("Service Status"),name:"status",options:(0,b.getOptions)(g.serviceStatus)},{label:t("Service State"),name:"state",options:(0,b.getOptions)(g.serviceState)}]}}a.ComputeHost=I;var x=(0,h.inject)("rootStore")((0,h.observer)(I));a.default=x},3556:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3557)),l=i(a(3558)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=o},3557:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var p=f(r(516)),m=f(r(65)),h=f(r(37)),v=r(382),g=f(r(540)),y=r(1113);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 _(e){for(var t=1;t{var{binary:t,id:a}=this.item,r=_(_({},e),{},{binary:t,id:a});return g.default.disable(r)}))}init(){this.store=g.default}get instanceName(){return this.item.host||(0,p.default)(this).host||this.item.id}get name(){return t("Disable compute host")}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get tips(){return t("After disable the compute service, the new instance will not schedule to the compute node.")}get formItems(){return[{name:"host",label:t("Current Host"),type:"label",iconType:"instance"},{name:"disabled_reason",label:t("Reason"),type:"textarea",maxLength:64}]}}a.DisableAction=S,(0,h.default)(S,"id","disable-host"),(0,h.default)(S,"title",t("Disable Compute Host")),(0,h.default)(S,"buttonText",t("Disable")),(0,h.default)(S,"isDanger",!0),(0,h.default)(S,"allowed",(e=>m.default.resolve("enabled"===e.status))),(0,h.default)(S,"policy","os_compute_api:os-services:update");var M=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=M},3558:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(540));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.host)),(0,l.default)(this,"policy","os_compute_api:os-services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"disabled"===e.status)),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return s.default.enable({id:e})}))}get id(){return"enable-host"}get title(){return t("Enable Compute Host")}get buttonText(){return t("Enable")}get actionName(){return t("Enable compute host")}}a.default=u},3559:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HypervisorDetail=void 0;var l=n(r(82));r(387);var o=n(r(220)),s=n(r(0)),u=r(382),d=r(544),c=n(r(1119)),f=n(r(1251));r(167);class p extends c.default{get name(){return t("hypervisor")}get policy(){return"os_compute_api:os-hypervisors:show"}get listUrl(){return this.getRoutePath("hypervisor")}get detailInfos(){var e=[{title:t("Hostname"),dataIndex:"service_host"},{title:t("Type"),dataIndex:"hypervisor_type"},{title:t("VCPU (Core)"),dataIndex:"vcpus_used_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?s.default.createElement(o.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},s.default.createElement("span",null,"-")):(0,l.default)(r="".concat(a.vcpus_used," / ")).call(r,a.vcpus)}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_mb_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?s.default.createElement(o.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},s.default.createElement("span",null,"-")):(0,l.default)(r="".concat(a.memory_mb_used_gb," / ")).call(r,a.memory_mb_gb)}}],{vgpus:a,vgpus_used:r}=this.store.detail;return a&&e.push({title:t("VGPU (Core)"),dataIndex:"vgpus",render:()=>{var e;return(0,l.default)(e="".concat(r," / ")).call(e,a)}}),e}get tabs(){return[{title:t("Members"),key:"members",component:f.default}]}init(){this.store=new d.HypervisorStore}}a.HypervisorDetail=p;var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3560:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HostAggregate=void 0;var l=r(382),o=n(r(1152)),s=n(r(3561)),u=n(r(3568));class d extends o.default{get tabs(){return[{title:t("Host Aggregate"),key:"hostAggregate",component:s.default},{title:t("Availability Zone"),key:"availabilityZone",component:u.default}]}}a.HostAggregate=d;var c=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=c},3561:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HostAggregate=void 0;var l=n(r(62)),o=n(r(35)),s=n(r(82)),u=n(r(37)),d=n(r(0)),c=r(382),f=n(r(1114)),p=r(47),m=n(r(1200)),h=n(r(3562));class v extends f.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name"},{title:t("Availability Zone"),dataIndex:"availability_zone",isHideable:!0},{title:t("Hosts"),dataIndex:"hosts",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>d.default.createElement("div",{key:e},e))):"-"},{title:t("Metadata"),dataIndex:"metadata",isHideable:!0,render:e=>{var t;return!e||(0,p.isEmpty)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>d.default.createElement("div",{key:t},t,"=",e[t])))},stringify:e=>{var t;return!e||(0,p.isEmpty)(e)?"-":(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("Created At"),dataIndex:"created_at",valueRender:"sinceTime",isHideable:!0}]))}init(){this.store=m.default}get policy(){return"os_compute_api:os-aggregates:index"}get name(){return t("host aggregates")}get hasTab(){return!0}get actionConfigs(){return h.default}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.HostAggregate=v;var g=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=g},3562:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3563)),l=i(a(3564)),o=i(a(3565)),s=i(a(3566)),u=i(a(3567)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:u.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=d},3563:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(62)),m=f(r(65)),h=f(r(71)),v=f(r(37)),g=r(382),y=f(r(1200)),b=r(1113),_=f(r(1180)),S=r(135);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 I(e){for(var t=1;t{var{isCreate:t,availabilityZone:a,newAz:r}=e,i="noSelect"!==a?a:null,n=I(I({},(0,h.default)(e,["isCreate","availabilityZone","newAz"])),{},{availability_zone:t?r:i});return y.default.create(n)}))}init(){this.store=y.default,this.azStore=_.default,this.getAvailabilityZones()}getAvailabilityZones(){this.azStore.fetchListWithoutDetail()}get azList(){var e,a=(0,p.default)(e=this.azStore.list.data||[]).call(e,(e=>({label:e.zoneName,value:e.zoneName})));return a.push({label:t("Not select"),value:"noSelect"}),a}get name(){return t("Create host aggregate")}get defaultValue(){return{isCreate:!1,availabilityZone:(this.azList[0]||[]).value}}get formItems(){var{isCreate:e=!1}=this.state,a=t("It is suggested to use the marked AZ directly, too much AZ will lead to the fragmentation of available resources"),r=t("A host aggregate can be associated with at most one AZ. Once the association is established, the AZ cannot be disassociated.");return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"isCreate",label:t("Create new AZ"),tip:a,type:"radio",options:(0,S.getYesNoList)()},{name:"availabilityZone",label:t("Availability Zone"),type:"select",options:this.azList,tip:r,hidden:e},{name:"newAz",label:t("New Availability Zone"),type:"input",help:a,hidden:!e}]}}a.Create=x,(0,v.default)(x,"id","create"),(0,v.default)(x,"title",t("Create Host Aggregate")),(0,v.default)(x,"policy","os_compute_api:os-aggregates:create"),(0,v.default)(x,"allowed",(()=>m.default.resolve(!0)));var A=(0,g.inject)("rootStore")((0,g.observer)(x));a.default=A},3564:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(62)),m=f(r(65)),h=f(r(71)),v=f(r(37)),g=r(382),y=f(r(1200)),b=r(1113),_=f(r(1180)),S=r(135);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}class I extends b.ModalAction{constructor(){super(...arguments),(0,v.default)(this,"onSubmit",(e=>{var{id:t,hosts:a=[]}=this.item,{isCreate:r,availabilityZone:i,newAz:n}=e,l="noSelect"!==i?i:null,f=function(e){for(var t=1;t({label:e.zoneName,value:e.zoneName}))),{availability_zone:r}=this.item;return null===r&&a.push({label:t("Not select"),value:"noSelect"}),a}get name(){return t("Edit host aggregate")}get defaultValue(){var{name:e,availability_zone:t}=this.item;return{isCreate:!1,name:e,availabilityZone:t}}get formItems(){var{hosts:e=[]}=this.item,{isCreate:a=!1}=this.state,r=e.length>0,i=t("It is suggested to use the marked AZ directly, too much AZ will lead to the fragmentation of available resources"),n=t("A host aggregate can be associated with at most one AZ. Once the association is established, the AZ cannot be disassociated.");return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"isCreate",label:t("Create new AZ"),tip:i,type:"radio",options:(0,S.getYesNoList)(),hidden:r},{name:"availabilityZone",label:t("Availability Zone"),type:"select",options:this.azList,required:!0,tip:n,hidden:r||!r&&a,disabled:r},{name:"newAz",label:t("New Availability Zone"),type:"input",required:!0,help:i,hidden:r||!r&&!a,disabled:r}]}}a.Edit=I,(0,v.default)(I,"id","edit"),(0,v.default)(I,"title",t("Edit Host Aggregate")),(0,v.default)(I,"buttonText",t("Edit")),(0,v.default)(I,"policy","os_compute_api:os-aggregates:update"),(0,v.default)(I,"allowed",(()=>m.default.resolve(!0)));var x=(0,g.inject)("rootStore")((0,g.observer)(I));a.default=x},3565:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1200));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-aggregates:delete"),(0,l.default)(this,"canDelete",(e=>e&&e.hosts&&0===e.hosts.length)),(0,l.default)(this,"allowedCheckFunc",(e=>this.canDelete(e))),(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 Host Aggregate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Host Aggregate")}}a.default=u},3566:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageHost=void 0;var p=f(r(33)),m=f(r(91)),h=f(r(65)),v=f(r(62)),g=f(r(82)),y=f(r(37)),b=r(382),_=r(1200),S=f(r(540)),M=r(1113),I=r(1181);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 A(e){for(var t=1;t{var{hosts:t}=e,{selectedRowKeys:a}=t,{id:r,hosts:i}=this.item,n=(0,p.default)(a).call(a,(e=>(0,m.default)(i).call(i,e)<0)),l=(0,p.default)(i).call(i,(e=>(0,m.default)(a).call(a,e)<0));return 0===n.length&&0===l.length?h.default.resolve():this.store.manageHost({id:r,adds:n,dels:l})}))}init(){this.store=new _.AggregateStore,this.getComputeHosts()}get name(){return t("Manage host")}static get modalSize(){return"large"}getModalSize(){return"large"}get tips(){return t("Add hosts to the aggregate or remove hosts from it. Hosts can be in multiple aggregates.")}getComputeHosts(){S.default.fetchList({binary:"nova-compute"})}get computeHosts(){var e;return(0,v.default)(e=S.default.list.data||[]).call(e,(e=>A(A({},e),{},{name:e.host,id:e.host})))}get defaultValue(){var{name:e,hosts:t}=this.item;return{name:e,hosts:{selectedRowKeys:t}}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"hosts",label:t("Hosts"),type:"select-table",isMulti:!0,data:this.computeHosts,isLoading:S.default.list.isLoading,filterParams:[{label:t("Host"),name:"name"}],columns:[{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"zone"},{title:t("Admin Status"),dataIndex:"status",isHideable:!0,render:e=>I.serviceStatus[e]||"-",tip:(e,a)=>{var r,{disabled_reason:i}=a||{};return i?(0,g.default)(r="".concat(t("Reason: ")," ")).call(r,i):""}},{title:t("State"),dataIndex:"state",isHideable:!0,render:e=>I.serviceState[e]||"-"},{title:t("Last Updated"),dataIndex:"updated_at",valueRender:"sinceTime",isHideable:!0}]}]}}a.ManageHost=w,(0,y.default)(w,"id","ManageHost"),(0,y.default)(w,"title",t("Manage Host")),(0,y.default)(w,"policy",["os_compute_api:os-aggregates:add_host","os_compute_api:os-aggregates:remove_host"]),(0,y.default)(w,"allowed",(()=>h.default.resolve(!0)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},3567:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var p=f(r(101)),m=f(r(91)),h=f(r(35)),v=f(r(28)),g=f(r(65)),y=f(r(52)),b=f(r(37)),_=r(382),S=r(1200),M=r(1113),I=f(r(1132)),x=r(1161),A=r(47);function w(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 N extends M.ModalAction{constructor(){super(...arguments),(0,b.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,p.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,m.default)(a=(0,h.default)(r)).call(a,e)>=0}))})),(0,b.default)(this,"checkCustoms",(e=>!!(0,A.isEmpty)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,b.default)(this,"hasNoValue",(e=>{var t;return!!(0,p.default)(t=(0,h.default)(e)).call(t,(t=>void 0===e[t]))})),(0,b.default)(this,"onSubmit",(e=>{var t,{customs:a,systems:r}=e,{id:i,metadata:n}=this.item,l=function(e){for(var t=1;t{l[e.value.key]=e.value.value})),(0,v.default)(t=(0,h.default)(n)).call(t,(e=>{(0,A.has)(l,e)||(l[e]=null)})),this.store.manageMetadata({id:i,metadata:l})}))}init(){this.store=new S.AggregateStore,this.metadataStore=new x.MetadataStore,this.getMetadata()}get name(){return t("Manage host")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,y.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Nova::Aggregate"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,{metadata:r}=this.item;(0,v.default)(a=(0,h.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:I.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?g.default.resolve():g.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?g.default.reject(t("Please input value")):g.default.resolve()}]}}a.ManageMetadata=N,(0,b.default)(N,"id","ManageMetadata"),(0,b.default)(N,"title",t("Manage Metadata")),(0,b.default)(N,"policy","os_compute_api:os-aggregates:set_metadata"),(0,b.default)(N,"allowed",(()=>g.default.resolve(!0)));var C=(0,_.inject)("rootStore")((0,_.observer)(N));a.default=C},3568:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AvailabilityZone=void 0;var l=n(r(62)),o=n(r(35)),s=n(r(37)),u=n(r(0)),d=r(382),c=n(r(1114)),f=r(47),p=n(r(1180));class m extends c.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Availability Zone Name"),dataIndex:"zoneName"},{title:t("Hosts"),dataIndex:"hosts",isHideable:!0,render:e=>{var t;return!e||(0,f.isEmpty)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(e=>u.default.createElement("div",{key:e},e)))},stringify:e=>!e||(0,f.isEmpty)(e)?"-":(0,o.default)(e)},{title:t("Available"),dataIndex:"available",isHideable:!0,valueRender:"yesNo"}]))}init(){this.store=p.default}get policy(){return"os_compute_api:os-availability-zone:detail"}get name(){return t("availability zones")}get rowKey(){return"zoneName"}get hasTab(){return!0}get searchFilters(){return[{label:t("Availability Zone Name"),name:"zoneName"}]}}a.AvailabilityZone=m;var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3569:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BareMetalNode=void 0;var l=n(r(71)),o=n(r(37)),s=r(382),u=n(r(1114)),d=n(r(1142)),c=r(1201),f=r(83),p=r(135),m=n(r(1469));class h extends u.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("Node ID/Name"),dataIndex:"name",routeName:"baremetalNodeDetailAdmin"},{title:t("Ironic Instance Name"),dataIndex:"instance_info",render:e=>{var{display_name:t=""}=e||{};return t||"-"}},{title:t("Power State"),dataIndex:"power_state",render:e=>c.powerState[e]||e},{title:t("Provision State"),dataIndex:"provision_state",render:e=>c.provisioningState[e]||e},{title:t("Maintained"),dataIndex:"maintenance",valueRender:"yesNo",tip:(e,t)=>t.maintenance_reason},{title:t("Number Of Ports"),dataIndex:"portCount",isHideable:!0},{title:t("Driver"),dataIndex:"driver",isHideable:!0},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=d.default}get policy(){return"baremetal:node:get"}get name(){return t("bare metal nodes")}get rowKey(){return"uuid"}get checkEndpoint(){return!0}get endpoint(){return(0,f.ironicOriginEndpoint)()}get actionConfigs(){return m.default}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Power State"),name:"power_state",options:(0,p.getOptions)(c.powerState)},{label:t("Provision State"),name:"provision_state",options:(0,p.getOptions)(c.provisioningState)}]}}a.BareMetalNode=h;var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},3570:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageState=void 0;var l=n(r(37)),o=r(382),s=n(r(1142)),u=r(1113),d=r(1201),c=r(135);class f extends u.ModalAction{constructor(){super(...arguments),(0,l.default)(this,"onSubmit",(e=>{var{target:t}=e,{uuid:a,provision_state:r}=this.item,i="";if("available"===t)i="provide";else if("manageable"===t)switch(r){case"available":case"enroll":i="manage";break;default:i="delete"}var n={target:i};return s.default.changeProvision(a,n)}))}get name(){return t("Manage State")}get defaultValue(){var{name:e,uuid:t}=this.item;return{name:e||t}}get stateOptions(){var{provision_state:e}=this.item;if("available"===e||"active"===e||"enroll"===e){var t={manageable:d.provisioningState.manageable};return(0,c.getOptions)(t)}var a={available:d.provisioningState.available};return(0,c.getOptions)(a)}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"target",label:t("State"),type:"select",required:!0,options:this.stateOptions}]}}a.ManageState=f,(0,l.default)(f,"id","ManageState"),(0,l.default)(f,"title",t("Manage State")),(0,l.default)(f,"policy","baremetal:node:set_provision_state"),(0,l.default)(f,"allowed",(e=>(0,d.canChangeStatus)(e)));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3571:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1142));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_power_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"power on"===e.power_state)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.changePower(e,{target:"power off"})}))}get id(){return"power-off"}get title(){return t("Power Off")}get actionName(){return t("Power Off")}get isAsyncAction(){return!0}}a.default=u},3572:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1142));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_power_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"power off"===e.power_state)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.changePower(e,{target:"power on"})}))}get id(){return"power-on"}get title(){return t("Power On")}get actionName(){return t("Power On")}get isAsyncAction(){return!0}}a.default=u},3573:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SetMaintenance=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(1142)),d=r(1113);class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{reason:t}=e,{uuid:a}=this.item,r={reason:t};return u.default.setMaintenance(a,r)}))}get name(){return t("Enter Maintenance Mode")}get defaultValue(){var{name:e,uuid:t}=this.item;return{name:e||t}}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"reason",label:t("Reason"),type:"textarea"}]}}a.SetMaintenance=c,(0,o.default)(c,"id","SetMaintenance"),(0,o.default)(c,"title",t("Enter Maintenance Mode")),(0,o.default)(c,"policy","baremetal:node:set_maintenance"),(0,o.default)(c,"allowed",(e=>l.default.resolve(!e.maintenance)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3574:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1142));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:clear_maintenance"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>e.maintenance)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.clearMaintenance(e)}))}get id(){return"ClearMaintenance"}get title(){return t("Leave Maintenance Mode")}get actionName(){return t("Leave Maintenance Mode")}}a.default=u},3575:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SetBootDevice=void 0;var l=n(r(62)),o=n(r(65)),s=n(r(52)),u=n(r(37)),d=r(382),c=r(1142),f=r(1113),p=r(319);class m extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{boot_device:t,persistent:a}=e,{uuid:r}=this.item,i={boot_device:t,persistent:a};return this.store.setBootDevice(r,i)}))}init(){this.store=new c.IronicStore,this.getSupportedBootDevice(),this.getBootDevice()}get name(){return t("Set Boot Device")}getSupportedBootDevice(){var e=this;return(0,s.default)((function*(){yield e.store.getSupportedBootDevice(e.item.uuid),e.updateDefaultValue()}))()}getBootDevice(){var e=this;return(0,s.default)((function*(){yield e.store.getBootDevice(e.item.uuid),e.updateDefaultValue()}))()}get defaultValue(){var{name:e,uuid:t}=this.item,{boot_device:a,persistent:r=!1}=this.store.bootDevice||{};return{name:e||t,boot_device:a,persistent:r}}get deviceOptions(){var{supportedBootDevices:e=[]}=this.store;return(0,l.default)(e).call(e,(e=>({value:e,label:e})))}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"boot_device",label:t("Boot Device"),type:"select",required:!0,options:this.deviceOptions},{name:"persistent",label:t("Persistent"),type:"radio",tip:t("Whether the boot device should be set only for the next reboot, or persistently."),options:p.yesNoOptions}]}}a.SetBootDevice=m,(0,u.default)(m,"id","SetBootDevice"),(0,u.default)(m,"title",t("Set Boot Device")),(0,u.default)(m,"policy",["baremetal:node:get_boot_device","baremetal:node:set_boot_device"]),(0,u.default)(m,"allowed",(()=>o.default.resolve(!0)));var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3576:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1142));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Node")}get name(){return t("Delete Node")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Node")}}a.default=u},3577:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInterface=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(1121));class d extends u.default{constructor(){super(...arguments),(0,o.default)(this,"allowed",(()=>l.default.resolve()))}get bootInterfaces(){return[{value:"pxe",label:t("PXE")},{value:"ipxe",label:t("IPXE")},{value:"fake",label:t("FAKE")}]}get consoleInterfaces(){return[{value:"no-console",label:t("No Console")}]}get networkInterfaces(){return[{value:"flat",label:t("FLAT")},{value:"noop",label:t("NOOP")}]}get raidInterfaces(){return[{value:"no-raid",label:t("No Raid")},{value:"agent",label:t("Agent")}]}get storageInterfaces(){return[{value:"noop",label:t("NOOP")}]}get venderInterfaces(){return[{value:"ipmitool",label:t("IPMITool")}]}get defaultValue(){var{boot_interface:e="pxe",console_interface:t="no-console",network_interface:a="noop",raid_interface:r="no-raid",storage_interface:i="noop",vendor_interface:n="ipmitool"}=this.props.extra||{};return{boot_interface:e,console_interface:t,network_interface:a,raid_interface:r,storage_interface:i,vendor_interface:n}}get formItems(){return[{name:"boot_interface",label:t("Boot Interface"),type:"select",options:this.bootInterfaces},{name:"console_interface",label:t("Console Interface"),type:"select",options:this.consoleInterfaces},{name:"network_interface",label:t("Network Interface"),type:"select",options:this.networkInterfaces,tip:t("Which Network Interface provider to use when plumbing the network connections for this Node")},{name:"raid_interface",label:t("Raid Interface"),type:"select",options:this.raidInterfaces,tip:t("Interface used for configuring RAID on this node")},{name:"storage_interface",label:t("Storage Interface"),type:"select",options:this.storageInterfaces,tip:t("Interface used for attaching and detaching volumes on this node")},{name:"vendor_interface",label:t("Vendor Interface"),type:"select",options:this.venderInterfaces,tip:t("Interface for vendor-specific functionality on this node")}]}}a.NodeInterface=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3578:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInfo=void 0;var l=n(r(65)),o=n(r(62)),s=n(r(33)),u=n(r(52)),d=n(r(37)),c=r(382),f=n(r(1121)),p=r(523);class m extends f.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}init(){this.imageStore=new p.ImageStore,this.getImages()}getImages(){var e=this;return(0,u.default)((function*(){yield e.imageStore.fetchList({all_projects:!0}),e.updateDefaultValue()}))()}get kernelImages(){var e,t=this.imageStore.list.data||[];return(0,o.default)(e=(0,s.default)(t).call(t,(e=>"aki"===e.disk_format))).call(e,(e=>({value:e.id,label:e.name})))}get ramdiskImages(){var e,t=this.imageStore.list.data||[];return(0,o.default)(e=(0,s.default)(t).call(t,(e=>"ari"===e.disk_format))).call(e,(e=>({value:e.id,label:e.name})))}get ipmiBridges(){return[{value:"no",label:t("No")}]}get ipmiPrivLevels(){return[{value:"ADMINISTRATOR",label:t("ADMINISTRATOR")},{value:"USER",label:t("USER")}]}get ipmiProtocolVersions(){return[{value:"1.5",label:"1.5"},{value:"2.0",label:"2.0"}]}get defaultValue(){var{driver_info_deploy_kernel:e,driver_info_deploy_ramdisk:t,driver_info_ipmi_address:a,driver_info_ipmi_port:r,driver_info_ipmi_username:i,driver_info_ipmi_bridge:n="no",driver_info_ipmi_priv_level:l="ADMINISTRATOR",driver_info_ipmi_protocol_version:o="2.0",driver_info_ipmi_password:s=""}=this.props.extra||{};return{driver_info_deploy_kernel:e,driver_info_deploy_ramdisk:t,driver_info_ipmi_address:a,driver_info_ipmi_port:r,driver_info_ipmi_username:i,driver_info_ipmi_password:s,driver_info_ipmi_bridge:n,driver_info_ipmi_priv_level:l,driver_info_ipmi_protocol_version:o}}get formItems(){var{more:e}=this.state;return[{name:"driver_info_deploy_kernel",label:t("Kernel Image"),type:"select",options:this.kernelImages,required:!0},{name:"driver_info_deploy_ramdisk",label:t("Ramdisk Image"),type:"select",options:this.ramdiskImages,required:!0},{name:"driver_info_ipmi_address",label:t("IPMI Address"),type:"ip-input",required:!0},{name:"driver_info_ipmi_port",label:t("IPMI Port"),type:"input-int",max:65535},{name:"driver_info_ipmi_username",label:t("IPMI Username"),type:"input",required:!0},{name:"driver_info_ipmi_password",label:t("IPMI Password"),type:"input",required:!0},{name:"more",label:t("Advanced Options"),type:"more"},{name:"driver_info_ipmi_bridge",label:t("IPMI Bridge"),type:"select",options:this.ipmiBridges,hidden:!e},{name:"driver_info_ipmi_priv_level",label:t("IPMI Privilege Level"),type:"select",options:this.ipmiPrivLevels,hidden:!e},{name:"driver_info_ipmi_protocol_version",label:t("IPMI Protocol Version"),type:"select",options:this.ipmiProtocolVersions,hidden:!e}]}}a.NodeInfo=m;var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3579:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInfo=void 0;var l=n(r(52)),o=n(r(37)),s=n(r(91)),u=n(r(65)),d=n(r(101)),c=n(r(28)),f=n(r(546)),p=n(r(33)),m=n(r(62)),h=n(r(320)),v=n(r(0)),g=r(382),y=n(r(1121)),b=n(r(1132)),_=r(47),S=n(r(1142)),M=e=>(0,s.default)(e).call(e,"CUSTOM_")<0;class I extends y.default{constructor(){super(...arguments),(0,o.default)(this,"allowed",(()=>u.default.resolve())),(0,o.default)(this,"checkKeyValues",(e=>!!(0,_.isEmpty)(e)||!(0,d.default)(e).call(e,(e=>{var t,{key:a,value:r}=e.value||{};return!((0,s.default)(t=this.needKeys).call(t,a)>=0)&&(!a||null==r)})))),(0,o.default)(this,"checkCustomTrait",(e=>!!(0,_.isEmpty)(e)||!(0,d.default)(e).call(e,(e=>{var{value:t}=e||{};if(!t)return!0;return!/^CUSTOM_[A-Z0-9_]{1,248}$/.test(t)})))),(0,o.default)(this,"getDefaultPropValues",(e=>{var t,a=[];return(0,c.default)(t=this.needKeys).call(t,(t=>{var r=(0,d.default)(e).call(e,(e=>e.value.key===t)),i=r?r.value.value:"";a.push({index:a.length,value:{key:t,value:i}})})),(0,c.default)(e).call(e,(e=>{var t,{key:r}=e.value;(0,s.default)(t=this.needKeys).call(t,r)<0&&a.push(e)})),a})),(0,o.default)(this,"getDefaultStandardTrait",(e=>{var t=[...e];return(0,f.default)(t).call(t),(0,p.default)(t).call(t,(e=>M(e)))})),(0,o.default)(this,"getDefaultCustomTrait",(e=>{var t,a=[...e];return(0,f.default)(a).call(a),(0,m.default)(t=(0,p.default)(a).call(a,(e=>!M(e)))).call(t,((e,t)=>({index:t,value:e})))})),(0,o.default)(this,"hasPropValues",(e=>(0,h.default)(e).call(e,(e=>{var t;return(0,s.default)(t=this.needKeys).call(t,e.value.key)&&e.value.value}))))}init(){this.getTraits()}getTraits(){var e=this;return(0,l.default)((function*(){yield S.default.getTraits(),e.updateDefaultValue()}))()}get traits(){var e,{traits:t=[]}=S.default;return(0,m.default)(e=(0,p.default)(t).call(t,(e=>M(e)))).call(e,(e=>({value:e,label:e})))}get drivers(){return[{value:"ipmi",label:"IPMI"}]}get needKeys(){return["cpus","memory_mb","local_gb","cpu_arch"]}get defaultValue(){var{extra:{driver:e="ipmi",name:t,properties:a=[],extra:r=[],traits:i=[],resource_class:n}={}}=this.props;return{name:t||void 0,driver:e,properties:this.getDefaultPropValues(a),extra:r,resource_class:n,standard_trait:this.getDefaultStandardTrait(i),custom_trait:this.getDefaultCustomTrait(i)}}get formItems(){return[{name:"name",label:t("Node Name"),type:"input-name"},{name:"driver",label:t("Node Driver"),type:"select",options:this.drivers,required:!0},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:b.default,addText:t("Add Property"),minCount:this.needKeys.length,readonlyKeys:this.needKeys,tips:t('If you do not fill in parameters such as cpus, memory_mb, local_gb, cpu_arch, etc., you can automatically inject the configuration and Mac address of the physical machine by performing the "Auto Inspect" operation.'),validator:(e,a)=>this.checkKeyValues(a)?u.default.resolve():u.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:b.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?u.default.resolve():u.default.reject(t("Please enter complete key value!"))},{name:"standard_trait",label:t("Standard Trait"),type:"select",mode:"multiple",options:this.traits,extra:t("The trait of the scheduled node needs to correspond to the trait of the flavor used by the ironic instance; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all the necessary traits (for example, the ironic instance which use the flavor that has HW_CPU_X86_VMX as a necessary trait, can be scheduled to the node which has the trait of HW_CPU_X86_VMX).")},{name:"custom_trait",label:t("Custom Trait"),type:"add-select",isInput:!0,extra:v.default.createElement("div",null,v.default.createElement("p",null,t("1. The name of the trait should start with CUSTOM_, can only contain uppercase letters A ~ Z, numbers 0 ~ 9 or underscores, and the length should not exceed 255 characters (for example: CUSTOM_TRAIT1).")),v.default.createElement("p",null,t("2. The trait of the scheduled node needs to correspond to the trait of the flavor used by the ironic instance; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all the necessary traits (for example, the ironic instance which use the flavor that has CUSTOM_TRAIT1 as a necessary trait, can be scheduled to the node which has the trait of CUSTOM_TRAIT1)."))),validator:(e,a)=>this.checkCustomTrait(a)?u.default.resolve():u.default.reject(t("Please enter right format custom trait!"))},{name:"resource_class",label:t("Resource Class"),type:"input",extra:t("The resource class of the scheduled node needs to correspond to the resource class name of the flavor used by the ironic instance (for example, the resource class name of the scheduling node is baremetal.with-GPU, and the custom resource class name of the flavor is CUSTOM_BAREMETAL_WITH_GPU=1).")}]}}a.NodeInfo=I;var x=(0,g.inject)("rootStore")((0,g.observer)(I));a.default=x},3580:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(65)),o=n(r(37)),s=r(382),u=n(r(1320));class d extends u.default{get listUrl(){return this.getRoutePath("baremetalNode")}get name(){return t("Edit Bare Metal Node")}static allowed(){return l.default.resolve(!0)}}a.Edit=d,(0,o.default)(d,"id","edit-node"),(0,o.default)(d,"title",t("Edit Bare Metal Node")),(0,o.default)(d,"buttonText",t("Edit")),(0,o.default)(d,"path",(e=>"/compute/baremetal-node-admin/edit/".concat(e.uuid))),(0,o.default)(d,"policy","baremetal:node:update");var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3581:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=n(r(0)),s=r(1113),u=n(r(1142));class d extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_provision_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"manageable"===e.provision_state&&"ipmi"!==e.driver)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return o.default.createElement("div",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})),o.default.createElement("ul",null,o.default.createElement("li",null,t("This service will automatically query the configuration (CPU, memory, etc.) and mac address of the physical machine, and the ironic-inspector service will automatically register this information in the node information.")),o.default.createElement("li",null,t("The entire inspection process takes 5 to 10 minutes, so you need to be patient. After the registration is completed, the node configuration status will return to the manageable status."))))})),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return u.default.changeProvision(e,{target:"inspect"})}))}get id(){return"Inspect"}get title(){return t("Auto Inspect")}get actionName(){return t("Auto Inspect")}}a.default=d},3582:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(382),o=r(1142),s=n(r(1119)),u=r(1201),d=n(r(3583)),c=n(r(3584)),f=n(r(3588)),p=n(r(1469));class m extends s.default{get name(){return t("bare metal node")}get policy(){return"baremetal:node:get"}get listUrl(){return this.getRoutePath("baremetalNode")}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Node Name"),dataIndex:"name"},{title:t("Ironic Instance Name"),dataIndex:"instance_info.display_name"},{title:t("Power State"),dataIndex:"power_state",render:e=>u.powerState[e]||e},{title:t("Provision State"),dataIndex:"provision_state",render:e=>u.provisioningState[e]||e},{title:t("Maintained"),dataIndex:"maintenance",valueRender:"yesNo",tip:(e,t)=>t.maintenance_reason},{title:t("Number Of Ports"),dataIndex:"portsNew",render:e=>e&&e.length||"-"},{title:t("Driver"),dataIndex:"driver"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:d.default},{title:t("Ports"),key:"ports",component:c.default},{title:t("Port Groups"),key:"portGroups",component:f.default}]}init(){this.store=new o.IronicStore}}a.Detail=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3583:function(e,a,r){"use strict";var i=r(35),n=r(44),l=r(33),o=r(25),s=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(37)),m=f(r(62)),h=f(r(35)),v=f(r(0)),g=r(382),y=f(r(1122)),b=f(r(1364));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 S extends y.default{get leftCards(){return[this.baseInfoCard,this.driverCard,this.bootDeviceCard,this.propertiesCard,this.traitCard,this.resourceClassCard]}get rightCards(){return[this.validateCard]}get baseInfoCard(){var e=[{label:t("Chassis ID"),dataIndex:"chassis_uuid"},{label:t("Resource Class"),dataIndex:"resource_class"},{label:t("Management"),dataIndex:"maintenance",valueRender:"yesNo"},{label:t("Management Reason"),dataIndex:"maintenance_reason"}];return{title:t("Base Info"),options:e}}get driverCard(){var e,{driver_info:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Driver Info"),options:r}}get bootDeviceCard(){var e=[{label:t("Boot Device"),dataIndex:"bootDevice.boot_device"},{label:t("Persistent"),dataIndex:"bootDevice.persistent",valueRender:"yesNo"}];return{title:t("Boot Device"),options:e}}get propertiesCard(){var e,{properties:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Properties"),options:r}}get traitCard(){var e=[{label:t("Traits"),dataIndex:"traits",render:e=>e?(0,m.default)(e).call(e,(e=>v.default.createElement("div",null,e))):"-"}];return{title:t("Traits"),options:e}}get resourceClassCard(){var e=[{label:t("Resource Class"),dataIndex:"resource_class"}];return{title:t("Resource Class"),options:e}}get validateCard(){var e,{validate:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>function(e){for(var t=1;t[{title:t("ID"),dataIndex:"uuid"},{title:t("Mac Address"),dataIndex:"address"},{title:t("PXE Enabled"),dataIndex:"pxe_enabled",valueRender:"yesNo"},{title:t("Port Group"),dataIndex:"portgroup_uuid"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=new d.IronicPortStore}get policy(){return"baremetal:port:get"}get name(){return t("ports")}get rowKey(){return"uuid"}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.BareMetalNodePort=f;var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},3585:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1470)),l=i(a(3586)),o={rowActions:{firstAction:i(a(3587)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},3586:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1258));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:port:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Port")}get name(){return t("Delete Port")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Port")}}a.default=u},3587:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(28)),o=n(r(35)),s=n(r(101)),u=n(r(91)),d=n(r(65)),c=n(r(62)),f=n(r(71)),p=n(r(37)),m=r(382),h=n(r(1258)),v=r(1202),g=r(1113),y=r(319),b=n(r(1132)),_=r(47),S=r(514),M=r(135),I=r(1201);class x extends g.ModalAction{constructor(){super(...arguments),(0,p.default)(this,"updateItemValueToArray",((e,t)=>{var a,r=e[t]||{},i=[];(0,l.default)(a=(0,o.default)(r)).call(a,((e,t)=>{i.push({index:t,value:{key:e,value:r[e]}})})),e[t]=i})),(0,p.default)(this,"checkKeyValues",(e=>!!(0,_.isEmpty)(e)||!(0,s.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,p.default)(this,"getKeyPath",(e=>{var t="local_link_connection.";return 0===(0,u.default)(e).call(e,t)?"/local_link_connection/".concat(e.substring(t.length)):"/".concat(e)})),(0,p.default)(this,"onSubmit",(e=>{var t,a=[],r=[],i=[],n=(0,M.updateObjToAddSelectArray)(this.item.extra),{extra:s,node:u}=e,c=(0,f.default)(e,["extra","node"]);(0,l.default)(t=(0,o.default)(c)).call(t,(t=>{var i={value:e[t],path:this.getKeyPath(t)};if(!(0,_.has)(this.item,t)&&e[t])i.op="add",a.push(i);else{var n=(0,_.get)(this.item,t);(0,_.isEqual)(n,e[t])||(i.op="replace",r.push(i))}}));var{adds:p,replaces:m,dels:v}=(0,I.getDifFromAddSelectValue)(s,n,"extra");a.push(...p),r.push(...m),i.push(...v);var g=[...a,...r,...i];return 0===g.length?d.default.resolve():h.default.edit({id:this.item.uuid},g)}))}init(){this.groupStore=new v.IronicPortGroupStore,this.getPortGroups()}get name(){return t("Edit Port")}get instanceName(){return this.item.uuid}getPortGroups(){var{uuid:e}=this.containerProps.detail||{};this.groupStore.fetchList({id:e})}get defaultValue(){var{name:e,uuid:t}=this.containerProps.detail||{},{port_id:a,switch_id:r,switch_info:i}=this.item.local_link_connection||{},{pxe_enabled:n,address:l,portgroup_uuid:o,extra:s={},physical_network:u}=this.item;return{node:e||t,address:l,pxe_enabled:n,portgroup_uuid:o,physical_network:u,"local_link_connection.port_id":a,"local_link_connection.switch_id":r,"local_link_connection.switch_info":i,extra:(0,M.updateObjToAddSelectArray)(s)}}get portGroups(){var e;return(0,c.default)(e=this.groupStore.list.data||[]).call(e,(e=>({value:e.uuid,label:e.name||e.uuid})))}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"address",label:t("MAC Address"),required:!0,type:"input",validator:S.macAddressValidate},{name:"pxe_enabled",label:t("PXE Enabled"),type:"radio",options:y.yesNoOptions},{name:"portgroup_uuid",label:t("Port Group"),type:"select",options:this.portGroups},{label:t("Local Link Connection"),type:"title"},{name:"local_link_connection.port_id",label:t("Port ID"),type:"input",tip:t("Identifier of the physical port on the switch to which node’s port is connected to")},{name:"local_link_connection.switch_id",label:t("Switch ID"),type:"input",tip:t("Only a MAC address or an OpenFlow based datapath_id of the switch are accepted in this field")},{name:"local_link_connection.switch_info",label:t("Switch Info"),type:"input",tip:t("an optional string field to be used to store any vendor-specific information")},{name:"physical_network",label:t("Physical Network"),type:"input",tip:t("The name of the physical network to which a port is connected")},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:b.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))}]}}a.Edit=x,(0,p.default)(x,"id","EditPort"),(0,p.default)(x,"title",t("Edit Port")),(0,p.default)(x,"buttonText",t("Edit")),(0,p.default)(x,"policy","baremetal:port:update"),(0,p.default)(x,"allowed",(()=>d.default.resolve(!0)));var A=(0,m.inject)("rootStore")((0,m.observer)(x));a.default=A},3588:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BareMetalNodePortGroup=void 0;var l=n(r(71)),o=n(r(37)),s=r(382),u=n(r(1114)),d=r(1202),c=n(r(3589));class f extends u.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID"),dataIndex:"uuid"},{title:t("Name"),dataIndex:"name"},{title:t("Mac Address"),dataIndex:"address"},{title:t("Stand Alone Ports Supported"),dataIndex:"standalone_ports_supported",valueRender:"yesNo"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=new d.IronicPortGroupStore}get policy(){return"baremetal:portgroup:get"}get name(){return t("port groups")}get rowKey(){return"uuid"}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.BareMetalNodePortGroup=f;var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},3589:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1471)),l=i(a(3590)),o={rowActions:{firstAction:i(a(3591)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},3590:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(37)),o=r(1113),s=n(r(1202));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:portgroup:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Port Group")}get name(){return t("Delete Port Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Port Group")}}a.default=u},3591:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(28)),o=n(r(35)),s=n(r(101)),u=n(r(91)),d=n(r(65)),c=n(r(71)),f=n(r(37)),p=r(382),m=n(r(1202)),h=r(1113),v=r(319),g=n(r(1132)),y=r(47),b=r(514),_=r(135),S=r(1201);class M extends h.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"updateItemValueToArray",((e,t)=>{var a,r=e[t]||{},i=[];(0,l.default)(a=(0,o.default)(r)).call(a,((e,t)=>{i.push({index:t,value:{key:e,value:r[e]}})})),e[t]=i})),(0,f.default)(this,"checkKeyValues",(e=>!!(0,y.isEmpty)(e)||!(0,s.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,f.default)(this,"getKeyPath",(e=>{var t="local_link_connection.";return 0===(0,u.default)(e).call(e,t)?"/local_link_connection/".concat(e.substring(t.length)):"/".concat(e)})),(0,f.default)(this,"onSubmit",(e=>{var t,a=[],r=[],i=[],n=(0,_.updateObjToAddSelectArray)(this.item.extra),s=(0,_.updateObjToAddSelectArray)(this.item.properties),{properties:u,extra:f,node:p}=e,h=(0,c.default)(e,["properties","extra","node"]);(0,l.default)(t=(0,o.default)(h)).call(t,(t=>{var i={value:e[t],path:this.getKeyPath(t)};if(!(0,y.has)(this.item,t)&&e[t])i.op="add",a.push(i);else{var n=(0,y.get)(this.item,t);(0,y.isEqual)(n,e[t])||(i.op="replace",r.push(i))}}));var{adds:v,replaces:g,dels:b}=(0,S.getDifFromAddSelectValue)(f,n,"extra"),{adds:M,replaces:I,dels:x}=(0,S.getDifFromAddSelectValue)(u,s,"properties");a.push(...M,...v),r.push(...I,...g),i.push(...x,...b);var A=[...a,...r,...i];return 0===A.length?d.default.resolve():m.default.edit({id:this.item.uuid},A)}))}get name(){return t("Edit Port Group")}get instanceName(){return this.item.uuid}get defaultValue(){var{name:e,uuid:t}=this.containerProps.detail||{},{name:a,standalone_ports_supported:r,address:i,extra:n={},properties:l={}}=this.item;return{node:e||t,name:a,address:i,standalone_ports_supported:r,extra:(0,_.updateObjToAddSelectArray)(n),properties:(0,_.updateObjToAddSelectArray)(l)}}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"name",label:t("Name"),type:"input"},{name:"address",label:t("MAC Address"),type:"input",required:!0,validator:b.macAddressValidate},{name:"standalone_ports_supported",label:t("Stand Alone Ports Supported"),type:"radio",options:v.yesNoOptions},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:g.default,addText:t("Add Property"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:g.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))}]}}a.Edit=M,(0,f.default)(M,"id","EditPortGroup"),(0,f.default)(M,"title",t("Edit Port Group")),(0,f.default)(M,"buttonText",t("Edit")),(0,f.default)(M,"policy","baremetal:portgroup:update"),(0,f.default)(M,"allowed",(()=>d.default.resolve(!0)));var I=(0,p.inject)("rootStore")((0,p.observer)(M));a.default=I}}]); \ No newline at end of file diff --git a/skyline_console/static/compute.bundle.1658297502.js.gz b/skyline_console/static/compute.bundle.1658297502.js.gz deleted file mode 100644 index d8707a2b..00000000 Binary files a/skyline_console/static/compute.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/compute.bundle.1663167892.js b/skyline_console/static/compute.bundle.1663167892.js new file mode 100644 index 00000000..b06cef7b --- /dev/null +++ b/skyline_console/static/compute.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{1225:function(e,t,a){"use strict";var r=a(33),i=a(44),n=a(32),l=a(25),o=a(27),s=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.IronicStore=void 0;var f,p,m,h,v=c(a(65)),g=c(a(27)),y=c(a(32)),b=c(a(588)),_=c(a(25)),S=c(a(62)),M=c(a(51)),I=c(a(71)),x=c(a(36)),A=c(a(54)),w=(c(a(72)),a(34)),N=c(a(48)),C=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}var k=(f=class extends C.default{constructor(){super(...arguments),(0,I.default)(this,"bootDevice",p,this),(0,I.default)(this,"supportedBootDevices",m,this),(0,I.default)(this,"traits",h,this)}get client(){return N.default.ironic.nodes}get portClient(){return N.default.ironic.ports}get traitClient(){return N.default.placement.traits}get listWithDetail(){return!0}detailDidFetch(e,t,a){var r=this;return(0,M.default)((function*(){if(a.onlyDetail)return e;var{uuid:t}=e,i=function(e){for(var t=1;t{var t=(0,y.default)(r).call(r,(t=>t.node_uuid===e.uuid));e.portCount=t.length})),e}))()}changeProvision(e,t){return this.submitting(this.client.updateStatesProvision(e,t))}changePower(e,t){return this.submitting(this.client.UpdateStatesPower(e,t))}setMaintenance(e,t){return this.submitting(this.client.updateMaintenance(e,t))}clearMaintenance(e){return this.submitting(this.client.deleteMaintenance(e))}getBootDevice(e){var t=this;return(0,M.default)((function*(){try{var a=yield t.submitting(t.client.getManagementBootDevice(e));return t.bootDevice=a,a}catch(e){return null}}))()}getSupportedBootDevice(e){var t=this;return(0,M.default)((function*(){var a=yield t.submitting(t.client.getManagementBootDeviceSupported(e));return t.supportedBootDevices=a.supported_boot_devices||[],t.supportedBootDevices}))()}setBootDevice(e,t){return this.submitting(this.client.updateManagementBootDevice(e,t))}create(e){var t=this;return(0,M.default)((function*(){var{traits:a=[]}=e,r=(0,S.default)(e,["traits"]);if(0===a.length)return t.submitting(t.client.create(r));t.isLoading=!0;var i=yield t.client.create(r),{uuid:n}=i;return t.updateTraits(n,a)}))()}edit(e,t){var{id:a}=e;return this.submitting(this.client.patch(a,t))}getTraits(){var e=this;return(0,M.default)((function*(){var t=yield e.traitClient.list(),{traits:a=[]}=t;(0,b.default)(a).call(a),e.traits=a}))()}updateTraits(e,t){var a={traits:t};return this.submitting(this.client.updateTraits(e,a))}},p=(0,A.default)(f.prototype,"bootDevice",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),m=(0,A.default)(f.prototype,"supportedBootDevices",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),h=(0,A.default)(f.prototype,"traits",[w.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,A.default)(f.prototype,"changeProvision",[w.action],(0,_.default)(f.prototype,"changeProvision"),f.prototype),(0,A.default)(f.prototype,"changePower",[w.action],(0,_.default)(f.prototype,"changePower"),f.prototype),(0,A.default)(f.prototype,"setMaintenance",[w.action],(0,_.default)(f.prototype,"setMaintenance"),f.prototype),(0,A.default)(f.prototype,"clearMaintenance",[w.action],(0,_.default)(f.prototype,"clearMaintenance"),f.prototype),(0,A.default)(f.prototype,"getBootDevice",[w.action],(0,_.default)(f.prototype,"getBootDevice"),f.prototype),(0,A.default)(f.prototype,"getSupportedBootDevice",[w.action],(0,_.default)(f.prototype,"getSupportedBootDevice"),f.prototype),(0,A.default)(f.prototype,"setBootDevice",[w.action],(0,_.default)(f.prototype,"setBootDevice"),f.prototype),(0,A.default)(f.prototype,"create",[w.action],(0,_.default)(f.prototype,"create"),f.prototype),(0,A.default)(f.prototype,"edit",[w.action],(0,_.default)(f.prototype,"edit"),f.prototype),(0,A.default)(f.prototype,"getTraits",[w.action],(0,_.default)(f.prototype,"getTraits"),f.prototype),(0,A.default)(f.prototype,"updateTraits",[w.action],(0,_.default)(f.prototype,"updateTraits"),f.prototype),f);t.IronicStore=k;var j=new k;t.default=j},1277:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(r(102)),m=f(r(27)),h=f(r(65)),v=f(r(200)),g=f(r(1204)),y=f(r(81)),b=f(r(36)),_=r(406),S=r(1193),M=f(r(1218)),I=r(1213),x=r(341),A=f(r(3614)),w=f(r(3615));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}class C extends S.StepAction{constructor(){super(...arguments),(0,b.default)(this,"getProperties",((e,t,a)=>{var r,i,n,l=(0,p.default)(a).call(a,(e=>"flavor_families"===e.key)),o=(0,p.default)(r=l.value).call(r,(t=>t.architecture===e)),s=(0,p.default)(i=o.categories).call(i,(e=>e.name===t)),u={};return(0,m.default)(n=s.properties||[]).call(n,(e=>{u[e.key]=e.value})),u})),(0,b.default)(this,"onSubmit",(e=>{var{body:t,extraSpecs:a,accessControl:r}=e;return this.store.create(t,a,r)}))}static allowed(){return h.default.resolve(!0)}get tab(){var e,t=(0,x.parse)((0,v.default)(e=this.routing.location.search).call(e,1)),{tab:a}=t;return a}get listUrl(){var{architecture:e}=(0,g.default)(this)||{},t=e||this.tab;return this.getRoutePath("flavor",null,{tab:t})}get name(){return t("create flavor")}get hasConfirmStep(){return!1}init(){this.store=M.default}get steps(){return[{title:t("Params Setting"),component:w.default},{title:t("Access Type Setting"),component:A.default}]}getPageSizeValue(e,t){return"custom"===e?t:e}getSubmitData(e){var{architecture:t,category:a,name:r,vcpus:i,memoryGb:n,bandwidth:l,iops:f,ephemeral:p,gpuType:h,gpuNumber:v,numaNodesNum:g,memPageSizeValueMore:_,memPageSizeValue:S,memPageSizeMore:M,attachUsb:x,usbType:A,usbNumber:w,numaNodes:C,cpuPolicy:P,cpuThreadPolicy:k,memPageSize:j,settings:T=[],accessType:D,accessControl:z={},resourceProps:L,traitProps:E,disk:O}=e,R={name:r,vcpus:i,ram:1024*n,disk:O||0},V="public"===D;R["os-flavor-access:is_public"]=V,(0,I.categoryHasEphemeral)(a)&&(R["OS-FLV-EXT-DATA:ephemeral"]=p);var F=function(e){for(var t=1;t{F["hw:numa_cpus.".concat(t)]=e.value.cpu,F["hw:numa_mem.".concat(t)]=e.value.ram})),F["hw:cpu_policy"]=P,F["hw:cpu_thread_policy"]=k,F["hw:mem_page_size"]=this.getPageSizeValue(j,S)):"bare_metal"!==t&&(F["hw:numa_nodes"]=g,F["hw:mem_page_size"]=this.getPageSizeValue(M,_)),(0,I.isBareMetal)(t)&&((0,m.default)(L).call(L,(e=>{var{key:t,value:a}=e.value;F["resources:".concat(t)]=a})),(0,m.default)(E).call(E,(e=>{var{value:t}=e;F["trait:".concat(t)]="required"}))),{body:R,extraSpecs:F,accessControl:!V&&(z.selectedRowKeys||[])}}}a.StepCreate=C,(0,b.default)(C,"id","flavor-create"),(0,b.default)(C,"title",t("Create Flavor")),(0,b.default)(C,"path","/compute/flavor-admin/create"),(0,b.default)(C,"policy","os_compute_api:os-flavor-manage:create");var P=(0,_.inject)("rootStore")((0,_.observer)(C));a.default=P},1278:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1218));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-flavor-manage:delete"),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("If an instance is using this flavor, deleting it will cause the instance's flavor data to be missing. Are you sure to delete {name}?",{name:a})})),(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 Flavor")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete flavor")}}a.default=u},1279:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageAccess=void 0;var p=f(r(65)),m=f(r(32)),h=f(r(90)),v=f(r(57)),g=f(r(51)),y=f(r(36)),b=r(406),_=f(r(1218)),S=r(1193),M=r(407),I=r(1235);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 A(e){for(var t=1;t{var t,{access:a}=e;if(!a)return p.default.resolve();var{selectedRowKeys:r}=a,{id:i}=this.item,n=(0,m.default)(r).call(r,(e=>{var t;return(0,h.default)(t=this.currentAccess).call(t,e)<0})),l=(0,m.default)(t=this.currentAccess).call(t,(e=>(0,h.default)(r).call(r,e)<0));return _.default.updateAccess(i,n,l)}))}init(){this.store=_.default,this.projectStore=new M.ProjectStore,this.getAccess(),this.getProjects()}get name(){return t("Manage Access")}static get modalSize(){return"large"}getModalSize(){return"large"}getAccess(){var e=this;return(0,g.default)((function*(){yield e.store.fetchAccess(e.item.id),e.updateDefaultValue()}))()}getProjects(){var e=this;return(0,g.default)((function*(){yield e.projectStore.fetchList(),e.updateDefaultValue()}))()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){var{name:e}=this.item;return{name:e,access:{selectedRowKeys:this.currentAccess}}}get currentAccess(){var e;return(0,v.default)(e=this.store.access||[]).call(e,(e=>e.tenant_id))}get formItems(){return[{name:"name",label:t("Flavor Name"),type:"label",iconType:"flavor"},A({name:"access",label:t("Access Control"),type:"select-table",isMulti:!0,required:!0,isLoading:this.projectStore.list.isLoading,data:this.projects},I.projectTableOptions)]}}a.ManageAccess=w,(0,y.default)(w,"id","manage-access"),(0,y.default)(w,"title",t("Manage Access")),(0,y.default)(w,"policy",["os_compute_api:os-flavor-access","os_compute_api:os-flavor-access:add_tenant_access","os_compute_api:os-flavor-access:remove_tenant_access"]),(0,y.default)(w,"allowed",(e=>p.default.resolve(!e.is_public)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},1280:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.AggregateStore=void 0;var n,l=i(a(27)),o=i(a(65)),s=i(a(57)),u=i(a(25)),d=i(a(54)),c=a(34),f=i(a(48)),p=i(a(53)),m=(n=class extends p.default{get client(){return f.default.nova.aggregates}manageHost(e){var{adds:t,dels:a,id:r}=e,i=[];return(0,l.default)(t).call(t,(e=>{var t={add_host:{host:e}};i.push(t)})),(0,l.default)(a).call(a,(e=>{var t={remove_host:{host:e}};i.push(t)})),this.submitting(o.default.all((0,s.default)(i).call(i,(e=>this.client.action(r,e)))))}manageMetadata(e){var{id:t,metadata:a}=e,r={set_metadata:{metadata:a}};return this.submitting(this.client.action(t,r))}},(0,d.default)(n.prototype,"manageHost",[c.action],(0,u.default)(n.prototype,"manageHost"),n.prototype),(0,d.default)(n.prototype,"manageMetadata",[c.action],(0,u.default)(n.prototype,"manageMetadata"),n.prototype),n);t.AggregateStore=m;var h=new m;t.default=h},1281:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.getDifFromAddSelectValue=a.hasValue=a.canChangeStatus=a.provisioningState=a.powerState=void 0;var l=n(r(90)),o=n(r(27)),s=n(r(102)),u=n(r(81)),d=n(r(343)),c=n(r(199)),f={"power on":t("Power On"),"power off":t("Power Off"),rebooting:t("Rebooting"),"soft rebooting":t("Soft Rebooting"),"soft power off":t("Soft Power Off")};a.powerState=f;var p={enroll:t("Enroll"),manageable:t("Manageable"),active:t("Active"),available:t("Available"),"wait call-back":t("Deploy Wait"),deleting:t("Deleting"),deleted:t("Deleted"),cleaning:t("Cleaning"),"adopt failed":t("Adopt Failed"),"clean failed":t("Clean Failed"),inspecting:t("Inspecting"),"inspect failed":t("Inspect Failed"),"clean wait":t("Clean Wait"),"deploy failed":t("Deploy Failed"),deploying:t("Deploying"),error:t("Error"),rebuild:t("Rebuilt"),verifying:t("Verifying")};a.provisioningState=p;a.canChangeStatus=e=>{var t;return(0,l.default)(t=["available","active","manageable","enroll"]).call(t,e.provision_state)>=0};a.hasValue=e=>!!e||(0,d.default)(e)||!(0,c.default)(e);a.getDifFromAddSelectValue=(e,t,a)=>{var r=[],i=[],n=[];return(0,o.default)(e).call(e,(e=>{var n,{key:l,value:o}=e.value,d=(0,s.default)(t).call(t,(e=>e.value.key===l)),c={path:(0,u.default)(n="/".concat(a,"/")).call(n,l),value:o};d?d.value.value!==o&&(c.op="replace",i.push(c)):(c.op="add",r.push(c))})),(0,o.default)(t).call(t,(t=>{var{key:r}=t.value;if(!(0,s.default)(e).call(e,(e=>e.value.key===r))){var i,l=(0,u.default)(i="/".concat(a,"/")).call(i,r);n.push({op:"remove",path:l})}})),{adds:r,replaces:i,dels:n}}},1282:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.IronicPortGroupStore=void 0;var n,l=i(a(25)),o=i(a(54)),s=a(34),u=i(a(48)),d=i(a(53)),c=(n=class extends d.default{get client(){return u.default.ironic.nodes.portgroups}listFetchByClient(e,t){var{id:a}=t;return this.client.listDetail(a,e)}get paramsFunc(){return()=>{}}create(e){return this.submitting(u.default.ironic.portgroups.create(e))}edit(e,t){var{id:a}=e;return this.submitting(u.default.ironic.portgroups.patch(a,t))}},(0,o.default)(n.prototype,"create",[s.action],(0,l.default)(n.prototype,"create"),n.prototype),(0,o.default)(n.prototype,"edit",[s.action],(0,l.default)(n.prototype,"edit"),n.prototype),n);t.IronicPortGroupStore=c;var f=new c;t.default=f},1332:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Instance=void 0;var m=p(r(198)),h=p(r(33)),v=p(r(57)),g=p(r(102)),y=p(r(1233)),b=p(r(81)),_=p(r(32)),S=p(r(62)),M=p(r(36)),I=p(r(0)),x=r(406),A=p(r(584)),w=p(r(1194)),N=r(1195),C=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=j(t);if(a&&a.has(e))return a.get(e);var 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(408)),P=r(1397),k=p(r(1535));function j(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(j=function(e){return e?a:t})(e)}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 D(e){for(var t=1;t{var{id:t}=e,a=D({},(0,S.default)(e,["id"]));if(this.inHostDetailPage){var{detail:{service:{host:r}={}}={}}=this.props;a.host=r}if(this.inFlavorDetailPage){var{detail:{id:i}={}}=this.props;a.flavor_id=i}return a})),(0,M.default)(this,"updateFetchParams",(e=>{var{detail:t={}}=this.props,{members:a}=t,{id:r}=e,i=D({},(0,S.default)(e,["id"]));return this.inServerGroupDetailPage&&(i.members=a,i.isServerGroup=!0),i}))}init(){this.inDetailPage?this.inServerGroupDetailPage?this.store=new P.ServerGroupInstanceStore:this.store=new C.ServerStore:this.store=C.default,this.downloadStore=new C.ServerStore}get policy(){return this.isAdminPage?"os_compute_api:servers:index:get_all_tenants":"os_compute_api:servers:index"}get name(){return t("instances")}get inServerGroupDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"server-group")}get inHostDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"hypervisors")}get inFlavorDetailPage(){var e;return!!this.inDetailPage&&(0,m.default)(e=this.path).call(e,"flavor")}get isFilterByBackend(){return!this.inServerGroupDetailPage}get isSortByBackend(){return this.isFilterByBackend}get transitionStatusList(){return(0,h.default)(N.transitionStatus)}get adminPageHasProjectFilter(){return!0}get defaultSortKey(){return"created_at"}get batchActions(){var{selectedRowKeys:e=[],data:t=[]}=this.store.list,a=(0,v.default)(e).call(e,(e=>(0,g.default)(t).call(t,(t=>t.id===e)))),r=(0,y.default)(a).call(a,(e=>(0,N.isIronicInstance)(e))),i=(0,y.default)(a).call(a,(e=>!(0,N.isIronicInstance)(e)));return r?k.default.batchActionsForIronic:i?k.default.batchActions:k.default.batchActionsForOthers}getCheckboxProps(e){return{name:e.name}}getColumns(){var e=[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("instanceDetail"),sortKey:"display_name"},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sortKey:"project_id"},{title:t("Host"),dataIndex:"host",isHideable:!0,hidden:!this.isAdminPage},{title:t("Image"),dataIndex:"image_os_distro",isHideable:!0,render:(e,t)=>I.default.createElement(A.default,{type:e,title:t.image_name}),stringify:(e,t)=>t.image_name,sorter:!1,width:80},{title:t("Fixed IP"),dataIndex:"fixed_addresses",sorter:!1,isHideable:!0,render:e=>e.length?(0,v.default)(e).call(e,(e=>I.default.createElement("div",{key:e},e))):"-",stringify:e=>e.join(",")||"-"},{title:t("Floating IP"),dataIndex:"floating_addresses",isHideable:!0,sorter:!1,render:e=>e.length?(0,v.default)(e).call(e,(e=>I.default.createElement("div",{key:e},e,I.default.createElement("br",null)))):"-",stringify:e=>e.join(",")||"-"},{title:t("Flavor"),dataIndex:"flavor",sorter:!1,isHideable:!0,render:(e,a)=>{var r;return(0,N.isIronicInstance)(a)?(0,b.default)(r="".concat(e,"(")).call(r,t("Ironic Instance"),")"):e}},{title:t("Status"),dataIndex:"status",sorter:!1,render:e=>N.instanceStatus[e&&e.toLowerCase()]||"-"},{title:t("Tags"),dataIndex:"tags",render:e=>(0,v.default)(e).call(e,((e,t)=>(0,N.SimpleTag)({tag:e,index:t}))),isHideable:!0,sorter:!1},{title:t("Locked"),dataIndex:"locked",isHideable:!0,render:N.lockRender,width:80,stringify:e=>e?t("Locked"):t("Not locked")},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}];return this.inFlavorDetailPage?(0,_.default)(e).call(e,(e=>"flavor"!==e.dataIndex)):this.inHostDetailPage?(0,_.default)(e).call(e,(e=>"host"!==e.dataIndex)):e}get actionConfigs(){var{batchActions:e}=this;return this.isAdminPage?D(D({},k.default.adminActions),{},{batchActions:e}):this.inFlavorDetailPage?D(D({},k.default.actionConfigs),{},{primaryActions:[],batchActions:e}):D(D({},k.default.actionConfigs),{},{batchActions:e})}get searchFilters(){return[{label:t("Name"),name:"name"},...this.isAdminPage?[{label:t("Project Name"),name:"project_name"}]:[],...this.isAdminPage&&!this.inHostDetailPage?[{label:t("Host"),name:"host"}]:[],N.instanceStatusFilter,{label:t("Tags"),name:"tags"}]}}a.Instance=z;var L=(0,x.inject)("rootStore")((0,x.observer)(z));a.default=L},1342:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.IronicPortStore=void 0;var n,l=i(a(25)),o=i(a(54)),s=a(34),u=i(a(48)),d=i(a(53)),c=(n=class extends d.default{get client(){return u.default.ironic.ports}get nodePortsClient(){return u.default.ironic.nodes.ports}listFetchByClient(e,t){var{id:a}=t;return this.nodePortsClient.listDetail(a,e)}get paramsFunc(){return()=>{}}create(e){return this.submitting(this.client.create(e))}edit(e,t){var{id:a}=e;return this.submitting(this.client.patch(a,t))}},(0,o.default)(n.prototype,"create",[s.action],(0,l.default)(n.prototype,"create"),n.prototype),(0,o.default)(n.prototype,"edit",[s.action],(0,l.default)(n.prototype,"edit"),n.prototype),n);t.IronicPortStore=c;var f=new c;t.default=f},1406:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(27)),m=f(r(33)),h=f(r(90)),v=f(r(32)),g=f(r(65)),y=f(r(51)),b=f(r(62)),_=f(r(36)),S=f(r(202)),M=f(r(559)),I=f(r(199)),x=r(406),A=r(1193),w=f(r(1225)),N=r(34),C=r(161),P=r(1281),k=f(r(3680)),j=f(r(3681)),T=f(r(3682));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}class z extends A.StepAction{constructor(){var e;super(...arguments),e=this,(0,_.default)(this,"updateItemValueToArray",((e,t)=>{var a=e[t]||{};e[t]=(0,C.updateObjToAddSelectArray)(a)})),(0,_.default)(this,"updateDriverInfoValue",(e=>{var t,{driver_info:a={}}=e;(0,p.default)(t=(0,m.default)(a)).call(t,(t=>{e["driver_info_".concat(t)]=a[t]}))})),(0,_.default)(this,"updateValues",(e=>{var{custom_trait:t=[],standard_trait:a=[]}=e,r=(0,b.default)(e,["custom_trait","standard_trait"]),i=[];return(0,p.default)(t).call(t,(e=>i.push(e.value))),i.push(...a),function(e){for(var t=1;t{var t=this.updateValues(e);return this.isEdit?this.submitEdit(t):this.submitCreate(t)})),(0,_.default)(this,"submitCreate",(e=>{var t,a={},r={},{more:i}=e,n=(0,b.default)(e,["more"]);return(0,p.default)(t=(0,m.default)(n)).call(t,(t=>{var i="driver_info_";if(0===(0,h.default)(t).call(t,i)){var n=t.substring(i.length);r[n]=e[t]}else if("properties"===t||"extra"===t){var l=(0,C.updateAddSelectValueToObj)(e[t]);(0,I.default)(l)||(a[t]=l)}else a[t]=e[t]})),a.driver_info=r,this.store.create(a)})),(0,_.default)(this,"getKeyPath",(e=>{var t="driver_info_";return 0===(0,h.default)(e).call(e,t)?"/driver_info/".concat(e.substring(t.length)):"/".concat(e)})),(0,_.default)(this,"submitEdit",function(){var t=(0,y.default)((function*(t){var a,r=[],i=[],n=[],{extra:l}=e.state,{properties:o,extra:s,more:u,traits:d}=t,c=(0,b.default)(t,["properties","extra","more","traits"]),{properties:f,extra:h,traits:y}=l;(0,p.default)(a=(0,m.default)(c)).call(a,(a=>{var n=t[a],o={value:n,path:e.getKeyPath(a)};if(!(0,M.default)(l,a)&&(0,P.hasValue)(n))o.op="add",r.push(o);else{var s=l[a];(0,S.default)(s,n)||!s&&!n||(o.op="replace",i.push(o))}}));var{adds:_,replaces:I,dels:x}=(0,P.getDifFromAddSelectValue)(o,f,"properties"),{adds:A,replaces:w,dels:N}=(0,P.getDifFromAddSelectValue)(s,h,"extra");r.push(...(0,v.default)(_).call(_,(e=>(0,P.hasValue)(e.value))),...(0,v.default)(A).call(A,(e=>(0,P.hasValue)(e.value)))),i.push(...(0,v.default)(I).call(I,(e=>(0,P.hasValue)(e.value))),...(0,v.default)(w).call(w,(e=>(0,P.hasValue)(e.value)))),n.push(...x,...N);var C=[...r,...i,...n];return(0,S.default)(d,y)||(yield e.store.updateTraits(e.id,d)),0===C.length?g.default.resolve():e.store.edit({id:e.id},C)}));return function(e){return t.apply(this,arguments)}}())}static allowed(){return g.default.resolve(!0)}get listUrl(){return this.getRoutePath("baremetalNode")}get name(){return this.isEdit?t("edit baremetal node"):t("create baremetal node")}get hasConfirmStep(){return!1}get hasExtraProps(){return this.isEdit}get steps(){return[{title:t("Node Info"),component:T.default},{title:t("Driver Info"),component:j.default},{title:t("Driver Interface"),component:k.default}]}get isEdit(){var{pathname:e}=this.props.location;return(0,h.default)(e).call(e,"edit")>=0}get id(){var{id:e}=this.props.match.params;return e}init(){this.store=w.default,this.getDetail()}getDetail(){var e=this;return(0,y.default)((function*(){if(e.isEdit){var t=yield e.store.fetchDetail({id:e.id,onlyDetail:!0}),a=(0,N.toJS)(t);e.updateItemValueToArray(a,"properties"),e.updateItemValueToArray(a,"extra"),e.updateDriverInfoValue(a),e.setState({extra:(0,N.toJS)(a)})}}))()}}a.Create=z,(0,_.default)(z,"id","create"),(0,_.default)(z,"title",t("Create Node")),(0,_.default)(z,"path","/compute/baremetal-node-admin/create"),(0,_.default)(z,"policy","baremetal:node:create");var L=(0,x.inject)("rootStore")((0,x.observer)(z));a.default=L},1535:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l,o=n(r(81)),s=n(r(200)),u=n(r(3474)),d=n(r(3476)),c=n(r(3477)),f=n(r(1253)),p=n(r(1541)),m=n(r(3507)),h=n(r(3508)),v=n(r(3509)),g=n(r(3510)),y=n(r(3511)),b=n(r(3512)),_=n(r(3513)),S=n(r(3514)),M=n(r(3515)),I=n(r(3516)),x=n(r(3517)),A=n(r(3518)),w=n(r(1542)),N=n(r(3519)),C=n(r(3520)),P=n(r(3521)),k=n(r(3522)),j=n(r(3523)),T=n(r(3524)),D=n(r(3525)),z=n(r(3526)),L=n(r(3527)),E=n(r(3528)),O=n(r(3529)),R=n(r(3530)),V=n(r(3531)),F=n(r(3532)),G=n(r(3533)),B=n(r(3534)),U=[h.default,v.default,M.default,I.default,y.default,b.default,x.default,A.default,_.default,S.default,D.default,z.default],Y=[c.default,g.default,w.default,N.default,O.default,L.default,R.default],H=[F.default,G.default,C.default,m.default,T.default],q=[h.default,v.default,y.default,b.default,u.default],K=(0,o.default)(l=(0,s.default)(q).call(q,0,-2)).call(l,V.default),Q=(0,s.default)(q).call(q,0,-1),Z={actionConfigs:{rowActions:{firstAction:k.default,moreActions:[{title:t("Instance Status"),actions:U},{title:t("Related Resources"),actions:Y},{title:t("Backups & Snapshots"),actions:[d.default]},{title:t("Configuration Update"),actions:H},{action:j.default},{action:u.default},{action:V.default},{action:B.default}]},batchActions:q,primaryActions:[f.default,p.default]},adminActions:{rowActions:{firstAction:k.default,moreActions:[{title:t("Instance Status"),actions:U},{action:P.default},{action:E.default},{action:u.default},{action:V.default}]},batchActions:q,primaryActions:[]},batchActions:q,batchActionsForIronic:K,batchActionsForOthers:Q};a.default=Z},1536:function(e,t,a){var r=a(3475);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,i);r.locals&&(e.exports=r.locals)},1541:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateIronic=void 0;var p=f(r(65)),m=f(r(90)),h=f(r(1204)),v=f(r(57)),g=f(r(1335)),y=f(r(81));r(1239);var b=f(r(1240)),_=f(r(409));r(589);var S=f(r(590)),M=f(r(51)),I=f(r(36)),x=f(r(1537)),A=f(r(199)),w=f(r(0)),N=r(406),C=r(34),P=(r(173),r(1193)),k=f(r(408)),j=f(r(407)),T=f(r(4)),D=r(1195),z=r(76),L=f(r(1228)),E=f(r(3501)),O=f(r(3503)),R=f(r(3504)),V=f(r(3505)),F=f(r(3506));function G(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{data:a}=this.state,r=t("Quota: Project quotas sufficient resources can be created"),i="success";(0,x.default)(this.quota)&&e>this.quota&&(r=t("Quota: Insufficient quota to create resources, please adjust resource quantity or quota(left { quota }, input { input }).",{quota:this.quota,input:e}),i="error"),this.msg=r,this.setState({data:B(B({},a),{},{count:e}),status:i})})),(0,I.default)(this,"onSubmit",(e=>e?this.store.create(e):p.default.reject())),(0,I.default)(this,"onOk",(()=>{var{data:e}=this.state;this.values=e;var a=this.getSubmitData(e);this.onSubmit(a).then((()=>{this.routing.push(this.listUrl),L.default.success(this.successText)}),(e=>{var{response:{data:a}={}}=e,{forbidden:{message:r=""}={}}=a||{};r&&"string"==typeof r&&-1!==(0,m.default)(r).call(r,"Quota exceeded")?L.default.error(t("Quota exceeded")):L.default.errorWithDetail(a,this.errorText)}))}))}init(){this.store=k.default,this.projectStore=j.default,this.getQuota()}static allowed(e,t){var a,{isAdminPage:r=!1}=t,{match:i}=t||{},n=(0,m.default)(a=i.path).call(a,"/compute/server")>=0;return p.default.resolve(!n&&!r&&(0,D.canCreateIronicByEndpoint)())}getQuota(){var e=this;return(0,M.default)((function*(){yield e.projectStore.fetchProjectQuota({project_id:e.currentProjectId}),e.onCountChange(1)}))()}get quota(){var{instances:e={}}=(0,C.toJS)(this.projectStore.quota)||{},{limit:t=10,used:a=0}=e;return-1===t?1/0:t-a}get name(){return t("Create ironic instance")}get listUrl(){var{image:e,volume:t,servergroup:a}=this.locationParams;return e?this.getRoutePath("image"):t?this.getRoutePath("volume"):a?this.getRoutePath("serverGroupDetail",{id:a}):this.getRoutePath("instance")}get checkEndpoint(){return!0}get endpoint(){return(0,z.ironicOriginEndpoint)()}get hasConfirmStep(){return!1}get steps(){return[{title:t("Base Config"),component:F.default},{title:t("Network Config"),component:V.default},{title:t("System Config"),component:R.default},{title:t("Confirm Config"),component:O.default}]}get instanceName(){var e,t,{name:a,count:r=1}=(0,h.default)(this)||{};return 1===r?a:(0,v.default)(e=(0,g.default)(t=new Array(r)).call(t,r)).call(e,((e,t)=>{var r;return(0,y.default)(r="".concat(a,"-")).call(r,t+1)})).join(", ")}get successText(){return t("The creation instruction was issued successfully, 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})}get errorText(){var{status:e}=this.state;return"error"===e?t("Unable to create instance: insufficient quota to create resources."):this.ipBatchError?t("Unable to create instance: batch creation is not supported when specifying IP."):t("The creation instruction has been issued, please refresh to see the actual situation in the list.")}renderBadge(){var{status:e="success"}=this.state;return"success"===e?null:w.default.createElement("div",{style:{marginTop:8,marginBottom:8}},w.default.createElement(S.default,{status:e,text:this.msg}))}renderExtra(){return null}renderFooterLeft(){var{data:e}=this.state,{count:a=1}=e,r={min:1,max:100,precision:0,onChange:this.onCountChange,formatter:e=>"$ ".concat(e).replace(/\D/g,"")};return w.default.createElement("div",{style:{display:"flex",flexDirection:"column"}},w.default.createElement("div",{style:{display:"flex",alignItems:"center"}},w.default.createElement("div",{className:E.default["number-input"]},w.default.createElement("span",null,t("Count")),w.default.createElement(b.default,(0,_.default)({},r,{value:a,className:(0,T.default)(E.default.input,"instance-count")}))),this.renderExtra()),this.renderBadge())}getSubmitData(e){var{status:t}=this.state;if("error"===t)return null;var{availableZone:a,bootableVolume:r,dataDisk:i,host:n,image:l,instanceSnapshot:o,iso:s,keypair:u,loginType:d,network:c,networks:f,password:m,physicalNode:h,physicalNodeType:g,project:y,resource:b,securityGroup:_,source:S,flavor:M,systemDisk:I,userData:x="",serverGroup:A,name:w,count:N=1}=e,C=l.selectedRowKeys[0],P=!1,{selectedRows:k=[]}=_||{},j={security_groups:(0,v.default)(k).call(k,(e=>({name:e.id}))),name:w,flavorRef:M.selectedRowKeys[0],availability_zone:a.value,networks:(0,v.default)(f).call(f,(e=>{var t={uuid:e.value.network};return 1===e.value.ipType&&e.value.ip&&(t.fixed_ip=e.value.ip,P=!0),t}))};return P&&N>1?(this.ipBatchError=!0,p.default.reject()):(C&&(j.imageRef=C),"keypair"===d.value?j.key_name=u.selectedRowKeys[0]:j.adminPass=m,N>1&&(j.min_count=N,j.max_count=N,j.return_reservation_id=!0),(j.adminPass||x)&&(j.user_data=btoa((0,D.getUserData)(j.adminPass,x))),{server:j})}}a.CreateIronic=U,(0,I.default)(U,"id","ironic-create"),(0,I.default)(U,"title",t("Create Ironic Instance")),(0,I.default)(U,"path",((e,t)=>{var a,{detail:r,match:i}=t||{};return!r||(0,A.default)(r)?"/compute/ironic-instance/create":(0,m.default)(a=i.path).call(a,"/compute/server")>=0?"/compute/ironic-instance/create?servergroup=".concat(r.id):void 0})),(0,I.default)(U,"policy",["os_compute_api:servers:create","os_compute_api:os-availability-zone:list"]);var Y=(0,N.inject)("rootStore")((0,N.observer)(U));a.default=Y},1542:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AttachVolume=void 0;var l=n(r(65)),o=n(r(36)),s=n(r(111)),u=r(406),d=n(r(408)),c=n(r(140)),f=r(1193),p=r(1195),m=r(557);class h extends f.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{volume:t}=e,{id:a}=this.item,r={volumeAttachment:{volumeId:t.selectedRowKeys[0]}};return this.store.attachVolume({id:a,body:r})}))}init(){this.store=d.default}get name(){return t("Attach volume")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"volume",label:t("Volume"),type:"volume-select-table",tip:m.multiTip,isMulti:!1,required:!0,serverId:this.item.id,disabledFunc:e=>"iso"===(0,s.default)(e,"origin_data.volume_image_metadata.disk_format")}]}}a.AttachVolume=h,(0,o.default)(h,"id","attach-volume"),(0,o.default)(h,"title",t("Attach Volume")),(0,o.default)(h,"policy","os_compute_api:os-volumes-attachments:create"),(0,o.default)(h,"allowed",((e,t)=>{var{isAdminPage:a}=t;return l.default.resolve(c.default.checkEndpoint("cinder")&&!a&&(0,p.allowAttachVolumeInstance)(e))}));var v=(0,u.inject)("rootStore")((0,u.observer)(h));a.default=v},1551:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Snapshots=void 0;var m=p(r(198)),h=p(r(36)),v=r(406),g=p(r(1194)),y=r(563),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=I(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(1339)),_=r(334),S=r(3603),M=p(r(1552));function I(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(I=function(e){return e?a:t})(e)}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 A(e){for(var t=1;tA(A({},e),{},{owner:this.inDetailPage?this.props.detail.tenant_id:null}))),(0,h.default)(this,"getColumns",(()=>(0,S.getBaseSnapshotColumns)(this)))}init(){this.store=this.inDetailPage?new b.InstanceSnapshotStore:b.default,this.downloadStore=this.inDetailPage?this.store:new b.InstanceSnapshotStore}get policy(){return"get_images"}get name(){return t("instance snapshots")}get isRecycleBinDetail(){var e;return(0,m.default)(e=this.path).call(e,"recycle-bin")}get actionConfigs(){return this.isRecycleBinDetail?_.emptyActionConfig:this.isAdminPage?M.default.adminConfigs:M.default.actionConfigs}get transitionStatusList(){return y.transitionStatusList}get isFilterByBackend(){return!1}get isSortByBackend(){return!0}get defaultSortKey(){return"created_at"}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"owner"}get currentProjectId(){return this.props.detail.tenant_id}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:[{label:t("Active"),key:"active"},{label:t("Saving"),key:"saving"}]}]}}a.Snapshots=w;var N=(0,v.inject)("rootStore")((0,v.observer)(w));a.default=N},1552:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3604)),l=i(a(3605)),o=i(a(3606)),s=i(a(3607)),u={actionConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:l.default},{action:n.default},{action:s.default}]},batchActions:[s.default]},adminConfigs:{rowActions:{firstAction:o.default,moreActions:[{action:s.default}]},batchActions:[s.default]}};t.default=u},1553:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Image=void 0;var p=f(r(90)),m=f(r(36)),h=f(r(0)),v=r(406),g=f(r(584)),y=f(r(1194)),b=r(563),_=r(565),S=r(161),M=f(r(1554));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 x(e){for(var t=1;t{if(this.isAdminPage)return x(x({},e),{},{all_projects:!0});switch(this.tab){case"public":return x(x({},e),{},{visibility:"public"});case"shared":return x(x({},e),{},{visibility:"shared"});case"project":return x(x({},e),{},{owner:this.currentProjectId});case"all":return x(x({},e),{},{all_projects:!0})}})),(0,m.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("imageDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",hidden:!this.isAdminPage&&"all"!==this.tab,sorter:!1},{title:t("Description"),dataIndex:"description",isHideable:!0,sorter:!1},{title:t("Use Type"),dataIndex:"usage_type",isHideable:!0,valueMap:b.imageUsage,sorter:!1},{title:t("Type"),dataIndex:"os_distro",isHideable:!0,render:e=>h.default.createElement(g.default,{type:e,title:e}),width:80,sorter:!1},{title:t("Status"),dataIndex:"status",valueMap:b.imageStatus},{title:t("Visibility"),dataIndex:"visibility",valueMap:b.imageVisibility,sorter:!1},{title:t("Disk Format"),dataIndex:"disk_format",isHideable:!0,valueMap:b.imageFormats},{title:t("Size"),dataIndex:"size",isHideable:!0,valueRender:"formatSize"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=new _.ImageStore,this.downloadStore=new _.ImageStore}get policy(){return"get_images"}get name(){return t("images")}get actionConfigs(){return this.isAdminPage?M.default.actionConfigsAdmin:M.default.actionConfigs}get transitionStatusList(){return b.transitionStatusList}get isFilterByBackend(){return!1}get isSortByBackend(){return!0}get defaultSortKey(){return"created_at"}get hasTab(){return!this.isAdminPage}get tab(){if(this.isAdminPage)return null;var{tab:e="project"}=this.props;return e}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"owner"}get searchFilters(){var e=[{label:t("Name"),name:"name"},{label:t("Status"),name:"status",options:(0,S.getOptions)(b.imageStatus)}],a=["public","shared"];return(0,p.default)(a).call(a,this.tab)<0&&e.push({label:t("Visibility"),name:"visibility",options:(0,S.getOptions)(b.imageVisibility)}),e}}a.Image=A;var w=(0,v.inject)("rootStore")((0,v.observer)(A));a.default=w},1554:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1555)),l=i(a(3638)),o=i(a(3639)),s=i(a(3640)),u=i(a(3641)),d=i(a(3642)),c=i(a(3643)),f=i(a(3644)),p={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:u.default},{action:d.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default,moreActions:[{action:o.default},{action:f.default},{action:c.default}]},batchActions:[o.default],primaryActions:[n.default]}};t.default=p},1555:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateForm=void 0;var p=f(r(33)),m=f(r(3632)),h=f(r(226)),v=f(r(198)),g=f(r(65)),y=f(r(57)),b=f(r(32)),_=f(r(62)),S=f(r(36)),M=r(406),I=r(1193),x=f(r(565)),A=r(563),w=r(1213),N=r(161),C=r(407),P=r(1235);function k(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{var t=(0,p.default)(this.imageFormats),{name:a}=e,r=a.substring((0,m.default)(a).call(a,".")+1);return(0,h.default)(t).call(t,(e=>{var t;return(0,v.default)(t=r.toLowerCase()).call(t,e)}))})),(0,S.default)(this,"validateFile",((e,a)=>a?this.checkFileType(a)?g.default.resolve():g.default.reject(t("Please select a file with the suffix {types}",{types:(0,p.default)(this.imageFormats).join(",")})):g.default.reject(t("Please select a file")))),(0,S.default)(this,"validateURL",((e,a)=>{if(!a)return g.default.reject(t("Please enter URL!"));return/^https?:\/\/(.*)/.test(a)?g.default.resolve():g.default.reject(t('Please enter a file link starting with "http://" or "https://"!'))})),(0,S.default)(this,"onSubmit",(e=>{var{uploadType:t,file:a,url:r,visibility:i,more:n,hw_cpu_policy:l,hw_cpu_thread_policy:o,min_ram:s,owner:u,usage_type:d="common",members:c}=e,f=j({visibility:i||"private",container_format:"bare",usage_type:d},(0,_.default)(e,["uploadType","file","url","visibility","more","hw_cpu_policy","hw_cpu_thread_policy","min_ram","owner","usage_type","members"]));s&&(f.min_ram=1024*s),l!==N.NoSetValue&&(f.hw_cpu_policy=l),o!==N.NoSetValue&&(f.hw_cpu_thread_policy=o),this.isAdminPage&&(f.owner=u.selectedRowKeys[0]);var p="shared"===i?c.selectedRowKeys:[],m=this.getUploadRequestConf(),h="file"===t?a:r;return this.store.create(f,h,p,m)}))}init(){this.store=x.default,this.projectStore=new C.ProjectStore,this.getProjects()}get listUrl(){return this.getRoutePath("image")}get name(){return t("Create image")}get labelCol(){return{xs:{span:6},sm:{span:5}}}get hasRequestCancelCallback(){return!0}static allowed(){return g.default.resolve(!0)}getProjects(){this.isAdminPage&&this.projectStore.fetchList()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){return{uploadType:"file",hw_qemu_guest_agent:"yes",usage_type:"common",visibility:!!this.isAdminPage&&"public",hw_cpu_policy:N.NoSetValue,hw_cpu_thread_policy:N.NoSetValue}}get imageFormats(){return this.isAdminPage?A.imageFormats:A.imageFormatsConsole}get formatList(){var e;return(0,y.default)(e=(0,p.default)(this.imageFormats)).call(e,(e=>({value:e,label:this.imageFormats[e]})))}get osList(){var e;return(0,y.default)(e=(0,p.default)(A.imageOS)).call(e,(e=>({value:e,label:A.imageOS[e]})))}get yesNoList(){return[{value:"yes",label:t("Yes")},{value:"no",label:t("No")}]}get useTypeList(){var e,t;return(0,b.default)(e=(0,y.default)(t=(0,p.default)(A.imageUsage)).call(t,(e=>({value:e,label:A.imageUsage[e]})))).call(e,(e=>!!this.isAdminPage||("common"===e.value||"ironic"===e.value)))}get typeList(){return[{value:"file",label:t("Upload File")},{value:"url",label:t("File URL")}]}get formItems(){var{more:e,visibility:a,uploadType:r}=this.state,i=this.isAdminPage&&"shared"===a,n="url"===r;return[{name:"name",label:t("Name"),type:"input-name",isImage:!0,required:!0},j({name:"owner",label:t("Owned Project"),type:"select-table",required:this.isAdminPage,hidden:!this.isAdminPage,data:this.projects,isLoading:this.projectStore.list.isLoading},P.projectTableOptions),{name:"uploadType",label:t("Upload Type"),type:"radio",options:this.typeList},{name:"file",label:t("File"),type:"upload",validator:this.validateFile,required:!n,hidden:n},{name:"url",label:t("File URL"),type:"input",required:n,hidden:!n,validator:this.validateURL},{name:"disk_format",label:t("Format"),type:"select",options:this.formatList,required:!0},{name:"os_distro",label:t("OS"),type:"select",options:this.osList,required:!0},{name:"os_version",label:t("OS Version"),type:"input",required:!0},{name:"os_admin_user",label:t("OS Admin"),type:"input",required:!0,extra:t("In general, administrator for Windows,root for Linux, please fill by image uploading.")},{name:"min_disk",label:t("Min System Disk (GiB)"),type:"input-int",min:0,max:500},{name:"min_ram",label:t("Min Memory (GiB)"),type:"input-int",min:0,max:500},{name:"visibility",label:t("Visibility"),type:"radio",options:(0,N.getOptions)(A.imageVisibility),hidden:!this.isAdminPage},j({name:"members",label:t("Project"),type:"select-table",required:i,isMulti:!0,hidden:!i,data:this.projects,isLoading:this.projectStore.list.isLoading},P.projectTableOptions),{name:"protected",label:t("Protected"),type:"check",content:t("Protected")},{name:"usage_type",label:t("Usage Type"),type:"select",options:this.useTypeList},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"more",label:t("Advanced Options"),type:"more"},{name:"hw_qemu_guest_agent",label:t("qemu_guest_agent enabled"),type:"radio",onlyRadio:!0,options:this.yesNoList,tip:t("It is recommended to install and use this agent. The instance created with this image can be used to modify the password (qemu_guest_agent needs to be installed when creating the image)."),hidden:!e},{name:"hw_cpu_policy",label:t("CPU Policy"),type:"select",options:(0,N.getOptionsWithNoSet)(w.cpuPolicyList),hidden:!e},{name:"hw_cpu_thread_policy",label:t("CPU Thread Policy"),type:"select",options:(0,N.getOptionsWithNoSet)(w.cpuThreadPolicyList),hidden:!e}]}}a.CreateForm=T,(0,S.default)(T,"id","image-create"),(0,S.default)(T,"title",t("Create Image")),(0,S.default)(T,"path",((e,t)=>{var{isAdminPage:a}=t;return a?"/compute/image-admin/create":"/compute/image/create"})),(0,S.default)(T,"policy",["add_image","upload_image"]),(0,S.default)(T,"aliasPolicy",["glance:add_image","glance:upload_image"]);var D=(0,M.inject)("rootStore")((0,M.observer)(T));a.default=D},1556:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1539)),l=i(a(3646)),o={rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[n.default]};t.default=o},1557:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3650)),l=i(a(3651)),o=i(a(3652)),s={actionConfigs:{rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]},actionConfigsAdmin:{rowActions:{firstAction:l.default},batchActions:[l.default],primaryActions:[]}};t.default=s},1558:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1559)),l=i(a(1560)),o=i(a(3673)),s=i(a(3674)),u=i(a(3675)),d=i(a(3676)),c=i(a(3677)),f=i(a(3678)),p=i(a(3679)),m=i(a(1406)),h=i(a(3683)),v=i(a(3684)),g={rowActions:{firstAction:o.default,moreActions:[{action:h.default},{action:s.default},{action:u.default},{action:v.default},{action:d.default},{action:c.default},{action:f.default},{action:n.default},{action:l.default},{action:p.default}]},batchActions:[p.default],primaryActions:[m.default]};t.default=g},1559:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(102)),m=f(r(57)),h=f(r(65)),v=f(r(62)),g=f(r(36)),y=f(r(199)),b=r(406),_=f(r(1342)),S=r(1282),M=r(1193),I=r(334),x=f(r(1214)),A=r(556),w=r(161);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 C(e){for(var t=1;t!!(0,y.default)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,g.default)(this,"onSubmit",(e=>{var{port_id:t,switch_id:a,switch_info:r,extra:i,node:n}=e,l=C(C({},(0,v.default)(e,["port_id","switch_id","switch_info","extra","node"])),{},{local_link_connection:{port_id:t,switch_id:a,switch_info:r},node_uuid:this.item.uuid,extra:(0,w.updateAddSelectValueToObj)(i)});return _.default.create(l)}))}init(){this.groupStore=new S.IronicPortGroupStore,this.getPortGroups()}get name(){return t("Create Port")}get messageHasItemName(){return!1}getPortGroups(){var{uuid:e}=this.item;this.groupStore.fetchList({id:e})}get defaultValue(){var{name:e,uuid:t}=this.item;return{node:e||t,pxe_enabled:!0}}get portGroups(){var e;return(0,m.default)(e=this.groupStore.list.data||[]).call(e,(e=>({value:e.uuid,label:e.name||e.uuid})))}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"address",label:t("MAC Address"),required:!0,type:"input",validator:A.macAddressValidate},{name:"pxe_enabled",label:t("PXE Enabled"),type:"radio",options:I.yesNoOptions},{name:"portgroup_uuid",label:t("Port Group"),type:"select",options:this.portGroups},{label:t("Local Link Connection"),type:"title"},{name:"port_id",label:t("Port ID"),type:"input",tip:t("Identifier of the physical port on the switch to which node’s port is connected to")},{name:"switch_id",label:t("Switch ID"),type:"input",tip:t("Only a MAC address or an OpenFlow based datapath_id of the switch are accepted in this field")},{name:"switch_info",label:t("Switch Info"),type:"input",tip:t("an optional string field to be used to store any vendor-specific information")},{name:"physical_network",label:t("Physical Network"),type:"input",tip:t("The name of the physical network to which a port is connected")},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:x.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?h.default.resolve():h.default.reject(t("Please enter complete key value!"))}]}}a.Create=P,(0,g.default)(P,"id","CreatePort"),(0,g.default)(P,"title",t("Create Port")),(0,g.default)(P,"policy","baremetal:port:create"),(0,g.default)(P,"allowed",(()=>h.default.resolve(!0)));var k=(0,b.inject)("rootStore")((0,b.observer)(P));a.default=k},1560:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(102)),m=f(r(65)),h=f(r(62)),v=f(r(36)),g=f(r(199)),y=r(406),b=f(r(1282)),_=r(1193),S=r(334),M=f(r(1214)),I=r(556),x=r(161);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 w(e){for(var t=1;t!!(0,g.default)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,v.default)(this,"onSubmit",(e=>{var{properties:t,extra:a,node:r}=e,i=w(w({},(0,h.default)(e,["properties","extra","node"])),{},{node_uuid:this.item.uuid,extra:(0,x.updateAddSelectValueToObj)(a),properties:(0,x.updateAddSelectValueToObj)(t)});return b.default.create(i)}))}get name(){return t("Create Port Group")}get messageHasItemName(){return!1}get defaultValue(){var{name:e,uuid:t}=this.item;return{node:e||t,standalone_ports_supported:!0}}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"name",label:t("Name"),type:"input"},{name:"address",label:t("MAC Address"),type:"input",required:!0,validator:I.macAddressValidate},{name:"standalone_ports_supported",label:t("Stand Alone Ports Supported"),type:"radio",options:S.yesNoOptions},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:M.default,addText:t("Add Property"),validator:(e,a)=>this.checkKeyValues(a)?m.default.resolve():m.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:M.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?m.default.resolve():m.default.reject(t("Please enter complete key value!"))}]}}a.Create=N,(0,v.default)(N,"id","CreatePort"),(0,v.default)(N,"title",t("Create Port Group")),(0,v.default)(N,"policy","baremetal:portgroup:create"),(0,v.default)(N,"allowed",(()=>m.default.resolve(!0)));var C=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=C},3431:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(413)),l=i(a(3432)),o=e=>(0,n.default)(l.default,e);t.default=o},3432:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1212)),l=i(a(567)),o=i(a(1332)),s=i(a(3536)),u=i(a(3608)),d=i(a(3628)),c=i(a(1277)),f=i(a(1253)),p=i(a(1541)),m=i(a(3631)),h=i(a(1553)),v=i(a(1555)),g=i(a(1551)),y=i(a(3645)),b=i(a(3647)),_=i(a(3649)),S=i(a(3653)),M=i(a(3654)),I=i(a(3656)),x=i(a(3662)),A=i(a(3663)),w=i(a(3672)),N=i(a(3685)),C=i(a(1406)),P="/compute",k=[{path:P,component:n.default,routes:[{path:"".concat(P,"/instance"),component:o.default,exact:!0},{path:"".concat(P,"/instance-admin"),component:o.default,exact:!0},{path:"".concat(P,"/instance/detail/:id"),component:s.default,exact:!0},{path:"".concat(P,"/instance-admin/detail/:id"),component:s.default,exact:!0},{path:"".concat(P,"/instance/create"),component:f.default,exact:!0},{path:"".concat(P,"/ironic-instance/create"),component:p.default,exact:!0},{path:"".concat(P,"/instance-snapshot"),component:g.default,exact:!0},{path:"".concat(P,"/instance-snapshot-admin"),component:g.default,exact:!0},{path:"".concat(P,"/instance-snapshot/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/instance-snapshot-admin/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/flavor"),component:u.default,exact:!0},{path:"".concat(P,"/flavor-admin"),component:u.default,exact:!0},{path:"".concat(P,"/flavor/detail/:id"),component:d.default,exact:!0},{path:"".concat(P,"/flavor-admin/detail/:id"),component:d.default,exact:!0},{path:"".concat(P,"/server-group"),component:_.default,exact:!0},{path:"".concat(P,"/server-group-admin"),component:_.default,exact:!0},{path:"".concat(P,"/server-group/detail/:id"),component:S.default,exact:!0},{path:"".concat(P,"/server-group-admin/detail/:id"),component:S.default,exact:!0},{path:"".concat(P,"/flavor-admin/create"),component:c.default,exact:!0},{path:"".concat(P,"/image"),component:m.default,exact:!0},{path:"".concat(P,"/image-admin"),component:h.default,exact:!0},{path:"".concat(P,"/image/create"),component:v.default,exact:!0},{path:"".concat(P,"/image-admin/create"),component:v.default,exact:!0},{path:"".concat(P,"/image/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/image-admin/detail/:id"),component:M.default,exact:!0},{path:"".concat(P,"/keypair"),component:y.default,exact:!0},{path:"".concat(P,"/keypair/detail/:id"),component:b.default,exact:!0},{path:"".concat(P,"/hypervisors-admin"),component:I.default,exact:!0},{path:"".concat(P,"/hypervisors-admin/detail/:id"),component:x.default,exact:!0},{path:"".concat(P,"/aggregates-admin"),component:A.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin"),component:w.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/detail/:id"),component:N.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/create"),component:C.default,exact:!0},{path:"".concat(P,"/baremetal-node-admin/edit/:id"),component:C.default,exact:!0},{path:"*",component:l.default}]}];t.default=k},3474:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(102)),o=n(r(1233)),s=n(r(27));r(411);var u=n(r(227)),d=n(r(1248)),c=n(r(612));r(571);var f=n(r(417)),p=n(r(36)),m=n(r(91)),h=n(r(0)),v=r(1193),g=r(1195),y=n(r(408)),b=(r(173),r(555),n(r(4))),_=n(r(1536));class S extends v.ConfirmAction{constructor(){super(...arguments),(0,p.default)(this,"policy",["os_compute_api:servers:delete","os_compute_api:os-deferred-delete:force"]),(0,p.default)(this,"isShelved",(e=>"shelved_offloaded"===e.status)),(0,p.default)(this,"hasShelvedItem",(e=>{var t=(0,m.default)(e)?e:[e];return!!(0,l.default)(t).call(t,this.isShelved)})),(0,p.default)(this,"allShelvedItem",(e=>{var t=(0,m.default)(e)?e:[e];return(0,o.default)(t).call(t,this.isShelved)})),(0,p.default)(this,"initChangeType",(e=>{if(this.allShelvedItem(e))return this.onChangeType(!0,e),void(this.initCheckedValue=!0);this.initCheckedValue=!1,this.onChangeType(!1,e)})),(0,p.default)(this,"confirmContext",(e=>{var a=this.getName(e);return this.initChangeType(e),h.default.createElement("div",null,h.default.createElement("p",{className:_.default.mb16},this.unescape(t("Are you sure to delete instance { name }? ",{name:a}))),h.default.createElement("p",{className:_.default.mb16},this.deleteTip),h.default.createElement("div",null,this.renderCheckbox(e),this.renderCheckboxTip()),this.renderExtra(e))})),(0,p.default)(this,"allowedCheckFunc",(e=>!e||(0,g.isNotLockedOrAdmin)(e,this.isAdminPage)&&!(0,g.isIronicInstance)(e))),(0,p.default)(this,"performErrorMsg",(e=>{var a=(0,m.default)(e)?e:[e],r=this.getName(a),i=t('Instance "{ name }" is locked, can not delete it.',{name:r});return a.length>1&&(i=t('Instances "{ name }" are locked, can not delete them.',{name:r})),i})),(0,p.default)(this,"onSubmit",(e=>{var{id:t,isHardDeleted:a=!1}=e||this.item,r=this.isShelved(e||this.item);return a||r?y.default.forceDelete({id:t}):y.default.delete({id:t})}))}get id(){return"SoftDelete"}get title(){return t("Delete Instance")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete instance")}get isAsyncAction(){return!0}onChangeType(e,t){(0,m.default)(t)?(0,s.default)(t).call(t,(t=>{t.isHardDeleted=e})):t.isHardDeleted=e}renderExtra(e){return this.hasShelvedItem(e)?h.default.createElement("div",{style:{color:"rgba(0, 0, 0, 0.45)"}},t("The shelved offloaded instance only supports immediate deletion")):null}renderCheckbox(e){return this.initCheckedValue?h.default.createElement(f.default,{checked:this.initCheckedValue,disabled:!0},t("Immediately delete")):h.default.createElement(f.default,{onChange:t=>{this.onChangeType(t.target.checked,e)}},t("Immediately delete"))}get deleteTip(){return t("When the computing service starts the recycling instance interval, the instance will be stored in the recycling bin after deletion, and will be retained according to the corresponding time interval. You can choose to restore it within this period. After successful recovery, the status of the instance is running and related resources remain unchanged.")}get snapshotTip(){return t("If you still want to keep the disk data, it is recommended that you create a snapshot for the disk before deleting.")}renderCheckboxTip(){var e=h.default.createElement("div",{className:_.default.tip},h.default.createElement("h4",{className:_.default["tip-title"]},h.default.createElement(c.default,{className:_.default["tip-icon"]}),t("The instance deleted immediately cannot be restored")),h.default.createElement("p",{className:(0,b.default)(_.default["tip-content"],_.default.mb16)},t("The associated floating IP, virtual adapter, volume and other resources will be automatically disassociated.")),h.default.createElement("p",{className:_.default["tip-content"]},this.snapshotTip));return h.default.createElement(u.default,{title:e,color:"white"},h.default.createElement(d.default,null))}}a.default=S},3475:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__mb16--1gP54 {\n margin-bottom: 16px;\n}\n.index__tip--1FqMU {\n color: rgba(0, 0, 0, 0.65);\n}\n.index__tip-title--FytkU {\n color: rgba(0, 0, 0, 0.85);\n font-weight: 400;\n}\n.index__tip-icon--um9uF {\n margin-right: 8px;\n color: #fedf40;\n}\n.index__tip-content--mECaD {\n margin-left: 20px;\n}\n",""]),t.locals={mb16:"index__mb16--1gP54",tip:"index__tip--1FqMU","tip-title":"index__tip-title--FytkU","tip-icon":"index__tip-icon--um9uF","tip-content":"index__tip-content--mECaD"}},3476:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.CreateSnapshot=a.getAdd=a.getZero=a.getQuota=a.getWishes=void 0,r(572);var p=f(r(574)),m=f(r(51)),h=f(r(36)),v=f(r(174)),g=f(r(33)),y=f(r(27)),b=f(r(335)),_=f(r(1204)),S=f(r(65)),M=f(r(0)),I=r(406),x=(r(173),f(r(408))),A=r(1193),w=r(1195),N=r(1334),C=f(r(566)),P=f(r(407));function k(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{var{volumesForSnapshot:e=[]}=x.default;return e.length?{types:(0,v.default)(e).call(e,((e,t)=>{var{volume_type:a}=t;return e[a]?e[a]+=1:e[a]=1,e}),{}),total:e.length}:{total:0,types:{}}};a.getWishes=T;var D=e=>{var t,{snapshots:a={}}=e||{},{types:r={}}=T();return j({snapshotQuota:a},(0,v.default)(t=(0,g.default)(r||{})).call(t,((t,a)=>(t[a]=(e||{})["snapshots_".concat(a)]||{},t)),{}))};a.getQuota=D;var z=e=>{var a,{types:r={}}=T(),i=D(e)||{},{snapshotQuota:n={}}=i,l=[j(j({},n),{},{add:0,name:"snapshot",title:t("Volume Snapshot")})];return(0,y.default)(a=(0,g.default)(r)).call(a,(e=>{var a=i[e]||{};l.push(j(j({},a),{},{add:0,name:e,title:t("{name} type snapshots",{name:e}),type:"line"}))})),l};a.getZero=z;var L=e=>{var t,a=z(e),{types:r={},total:i=0}=T(),n=D(e)||{},{snapshotQuota:l}=n,{left:o=0}=l||{};if(-1!==o&&o{if(u){var a=n[e],{left:i=0}=a||{},l=r[e];-1!==i&&i{var{snapshot:t}=e,{id:a}=this.item;return this.store.createImage({id:a,image:t})}))}init(){this.store=x.default,this.volumeStore=new N.InstanceVolumeStore,this.volumeTypeStore=C.default,this.getQuota()}get name(){return t("create instance snapshot")}get tips(){var e=t("The instance which is boot from volume will create snapshots for each mounted volumes.");return t("A snapshot is an image which preserves the disk state of a running instance, which can be used to start a new instance.")+e}static get modalSize(){return"middle"}getModalSize(){return"middle"}get instanceName(){return(0,_.default)(this).snapshot}get isBootFromVolume(){return(0,w.isBootFromVolume)(this.item)}get showQuota(){return this.isBootFromVolume}get quotaInfo(){var{quota:e,quotaLoading:t}=this.state;return t?[]:L(e)}static get disableSubmit(){var{volumesForSnapshot:e=[]}=x.default;if(!e.length)return!1;var{cinderQuota:t}=P.default;return 0===L(t)[0].add}getQuota(){var e=this;return(0,m.default)((function*(){e.store.setVolumesForSnapshot([]),e.setState({quota:{},quotaLoading:!0});var t=[P.default.fetchProjectCinderQuota(),e.isBootFromVolume?e.volumeStore.fetchList({serverId:e.item.id}):null],[a,r]=yield S.default.all(t);e.store.setVolumesForSnapshot(r||[]),e.setState({quota:a,quotaLoading:!1,volumes:r||[]})}))()}getVolumes(){if(!this.isBootFromVolume)return null;var{volumes:e=[]}=this.state,a=[{dataIndex:"id",title:t("ID/Name"),render:(e,t)=>{var{name:a}=t;return M.default.createElement(M.default.Fragment,null,M.default.createElement("div",null,e),M.default.createElement("div",null,a||"-"))}},{dataIndex:"size",title:t("Size"),render:e=>"".concat(e,"GiB")},{dataIndex:"volume_type",title:t("Volume Type")}];return M.default.createElement(p.default,{columns:a,dataSource:e,rowKey:"id",pagination:!1})}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:""}}get formItems(){var e=[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"snapshot",label:t("Instance Snapshot Name"),type:"input-name",isImage:!0,required:!0}];return this.isBootFromVolume&&e.push({name:"volumes",label:t("Volumes"),type:"label",content:this.getVolumes()}),e}}a.CreateSnapshot=E,(0,h.default)(E,"id","create-snapshot"),(0,h.default)(E,"title",t("Create Instance Snapshot")),(0,h.default)(E,"buttonText",t("Create Snapshot")),(0,h.default)(E,"isSnapshotReadyState",(e=>(0,w.checkStatus)(["active","shutoff","suspended"],e))),(0,h.default)(E,"policy","os_compute_api:servers:create_image"),(0,h.default)(E,"allowed",(e=>S.default.resolve(E.isSnapshotReadyState(e)&&!(0,w.isIronicInstance)(e))));var O=(0,I.inject)("rootStore")((0,I.observer)(E));a.default=O},3477:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AttachInterface=void 0;var l=n(r(65)),o=n(r(102)),s=n(r(81)),u=n(r(36)),d=n(r(0)),c=r(406),f=n(r(408)),p=r(228),m=r(414),h=r(1193),v=r(1195),g=r(556),{isIPv4:y,isIpv6:b,isIpInRangeAll:_}=g.ipValidate;class S extends h.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkIP",((e,a)=>{if(!a||!y(a)&&!b(a))return l.default.reject(t("Please input a valid ip!"));var{allocation_pools:r}=this.state.subnet||{};if(r&&!(0,o.default)(r).call(r,(e=>_(a,e.start,e.end))))return l.default.reject(t("The ip is not within the allocated pool!"));return l.default.resolve()})),(0,u.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,u.default)(this,"onNetworkChange",(e=>{var{selectedRowKeys:t=[]}=e;0!==t.length&&this.getSubnets(t[0])})),(0,u.default)(this,"onSubmit",(e=>{var{network:t,ip:a,ipType:r}=e,{id:i}=this.item,n={net_id:t.selectedRowKeys[0]};1===r&&(n.fixed_ips=[{ip_address:a}]);var l={interfaceAttachment:n};return this.store.addInterface({id:i,body:l})}))}init(){this.store=f.default,this.networkStore=new p.NetworkStore,this.subnetStore=new m.SubnetStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("attach interface")}get subnets(){return this.subnetStore.list.data||[]}getSubnets(e){this.subnetStore.fetchList({network_id:e})}get tips(){return d.default.createElement(d.default.Fragment,null,t("After attaching interface, you may need to login the instance to update the network interface configuration and restart the network service."),d.default.createElement("br",null),t("The port created here will be automatically deleted when detach. If you need a reusable port, please go to the Virtual Adapter page to create and attach the port to instance.")," ")}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:"",ipType:0}}get nameForStateUpdate(){return["network","ipType","subnet"]}get ipTypeOptions(){return[{label:t("Automatically Assigned Address"),value:0},{label:t("Manually Assigned Address"),value:1}]}get formItems(){var{ipType:e,subnet:a}=this.state,r=1===e,i=a&&a.ip_version||4;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"network",label:t("Network"),type:"network-select-table",showExternal:!0,required:!0,disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange},{name:"ipType",label:t("Set IP"),type:"radio",options:this.ipTypeOptions},{name:"subnet",label:t("Subnet"),type:"select-table",required:r,data:this.subnets,isLoading:this.subnetStore.list.isLoading,hidden:!r,isMulti:!1,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(0,s.default)(t="".concat(e[0].start," -- ")).call(t,e[0].end)}}]},{name:"ip",label:t("Given IP"),type:"ip-input",required:1===e,hidden:1!==e,version:i,validator:this.checkIP,extra:t("Please make sure this IP address be available.")}]}}a.AttachInterface=S,(0,u.default)(S,"id","attach-interface"),(0,u.default)(S,"title",t("Attach Interface")),(0,u.default)(S,"policy","os_compute_api:os-attach-interfaces:create"),(0,u.default)(S,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,v.isActiveOrShutOff)(e)&&(0,v.isNotLocked)(e)&&(0,v.isNotDeleting)(e))}));var M=(0,c.inject)("rootStore")((0,c.observer)(S));a.default=M},3501:function(e,t,a){var r=a(3502);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,i);r.locals&&(e.exports=r.locals)},3502:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".index__input--n9iyF {\n margin-right: 32px;\n margin-left: 16px;\n}\n.index__number-input--2NbTH {\n min-width: 165px;\n}\n",""]),t.locals={input:"index__input--n9iyF","number-input":"index__number-input--2NbTH"}},3503:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ConfirmStep=void 0;var l=n(r(65)),o=n(r(81)),s=n(r(1538)),u=n(r(57)),d=n(r(36)),c=r(406),f=n(r(1201));class p extends f.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}init(){}get title(){return"ConfirmStep"}get name(){return"ConfirmStep"}getFlavor(){var e,t,a,{context:r}=this.props,{flavor:i}=r,{disk:n,ram:l,vcpus:u}=i.selectedRows[0];return n?(0,o.default)(e=(0,o.default)(t="".concat(u,"VCPU/")).call(t,n,"GiB/")).call(e,(0,s.default)(l/1024,10),"GiB"):(0,o.default)(a="".concat(u,"VCPU/")).call(a,(0,s.default)(l/1024,10),"GiB")}getSourceValue(){var{context:e}=this.props,{selectedRows:t=[],selectedRowKeys:a=[]}=e.image;return t.length?t[0].name:a[0]}getVirtualLANs(){var{context:e}=this.props,{networks:t}=e;return(0,u.default)(t).call(t,(e=>{var t,a,r,{networkOption:i,subnetOption:n,ipTypeOption:l,ip:s}=e.value,u=1===l.value?n.name||n.label:"";return(0,o.default)(t=(0,o.default)(a=(0,o.default)(r="".concat(i.name||i.label," ")).call(r,l.label," ")).call(a,u," ")).call(t,1===l.value?s:"")}))}getSecurityGroups(){var{context:e}=this.props,{securityGroup:{selectedRows:t=[]}={}}=e;return(0,u.default)(t).call(t,(e=>e.name))}getLoginType(){var e,{context:t}=this.props,{loginType:a,keypair:r}=t,{value:i,label:n}=a;return(0,o.default)(e="".concat(n," ")).call(e,"keypair"===i?r.selectedRows[0].name:"")}goStep(e){var{goStep:t}=this.props;t&&t(e)}get defaultValue(){return{autoRelease:!1}}get formItems(){var{context:e}=this.props;return[{name:"confirm-count",label:t("Count"),type:"label",content:e.count||1},{name:"confirm-config",label:t("Config Overview"),type:"descriptions",title:t("Base Config"),onClick:()=>{this.goStep(0)},items:[{label:t("Available Zone"),value:e.availableZone.label},{label:t("Project"),value:e.project},{label:t("Flavor"),value:this.getFlavor()},{label:t("Image Name"),value:this.getSourceValue()}]},{type:"short-divider"},{name:"confirm-config-network",label:" ",type:"descriptions",title:t("Network Config"),onClick:()=>{this.goStep(1)},items:[{label:t("Virtual LAN"),value:this.getVirtualLANs(),span:1},{label:t("Security Group"),value:this.getSecurityGroups(),span:1}]},{type:"short-divider"},{name:"confirm-config-system",label:" ",type:"descriptions",title:t("System Config"),onClick:()=>{this.goStep(2)},items:[{label:t("Name"),value:e.name},{label:t("Login Type"),value:this.getLoginType()}]}]}}a.ConfirmStep=p;var m=(0,c.inject)("rootStore")((0,c.observer)(p));a.default=m},3504:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SystemStep=void 0;var p=f(r(65)),m=f(r(57)),h=f(r(36)),v=r(406),g=f(r(420)),y=f(r(1201)),b=r(556);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 S(e){for(var t=1;tp.default.resolve()))}init(){this.keyPairStore=g.default,this.getKeypairs()}get title(){return"SystemStep"}get name(){return"SystemStep"}get keypairs(){var e;return(0,m.default)(e=this.keyPairStore.list.data||[]).call(e,(e=>S(S({},e),{},{key:e.name,id:e.name})))}get defaultValue(){var{context:e={}}=this.props;return{loginType:e.loginType||this.loginTypes[0],more:!1}}get loginTypes(){return[{label:t("Keypair"),value:"keypair"},{label:t("Password"),value:"password"}]}getKeypairs(){this.keyPairStore.fetchList()}get nameForStateUpdate(){return["loginType","password","confirmPassword"]}get formItems(){var{loginType:e}=this.state,a=e===this.loginTypes[1].value;return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),isInstance:!0,required:!0},{name:"loginType",label:t("Login Type"),type:"radio",options:this.loginTypes,isWrappedValue:!0},{name:"keypair",label:t("Keypair"),type:"select-table",data:this.keypairs,isLoading:this.keyPairStore.list.isLoading,isMulti:!1,required:!a,hidden:a,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}],selectedLabel:t("Keypair")},{name:"password",label:t("Password"),type:"input-password",required:a,hidden:!a,otherRule:(0,b.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:a,hidden:!a,otherRule:(0,b.getPasswordOtherRule)("confirmPassword","instance")}]}}a.SystemStep=M;var I=(0,v.inject)("rootStore")((0,v.observer)(M));a.default=I},3505:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NetworkStep=void 0;var l=n(r(65)),o=n(r(102)),s=n(r(57)),u=n(r(27)),d=n(r(90)),c=n(r(1233));r(333);var f=n(r(332)),p=n(r(1323)),m=n(r(51)),h=n(r(36)),v=n(r(91)),g=n(r(199)),y=n(r(0)),b=r(406),_=(r(173),r(555),r(228)),S=r(414),M=r(416),I=r(556),x=n(r(1201)),A=n(r(1383)),w=r(564),N=r(1274),C=r(558),{isIPv4:P,isIpv6:k}=I.ipValidate;class j extends x.default{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"allowed",(()=>l.default.resolve())),(0,h.default)(this,"getSubnetPromise",function(){var t=(0,m.default)((function*(t){if(!e.subnetMap[t]){var a=yield e.subnetStore.fetchList({network_id:t});e.subnetMap[t]=a}return e.subnetMap[t]}));return function(e){return t.apply(this,arguments)}}()),(0,h.default)(this,"checkNetworks",(e=>!(!(0,v.default)(e)||(0,g.default)(e)||(0,g.default)(e[0].value))&&(!(0,o.default)(e).call(e,(e=>!e.value||!e.value.network))&&!(0,o.default)(e).call(e,(e=>1===e.value.ipType&&!P(e.value.ip)&&!k(e.value.ip)))))),(0,h.default)(this,"disabledNetwork",(e=>!e.subnets||0===e.subnets.length)),(0,h.default)(this,"onNetworkChange",(e=>{var{selectedRows:t}=e;this.setState({networkSelectRows:t},(()=>{this.getSubnets()})),this.updateContext({networkSelectRows:t})}))}init(){this.networkStore=new _.NetworkStore,this.subnetStore=new S.SubnetStore,this.securityGroupStore=new M.SecurityGroupStore,this.subnetMap={}}get title(){return"NetworkStep"}get name(){return"NetworkStep"}get defaultValue(){return{networks:[]}}getSubnets(){var e=this;return(0,m.default)((function*(){var{networkSelectRows:t,networks:a=[]}=e.state,r=yield l.default.all((0,s.default)(t).call(t,(t=>e.getSubnetPromise(t.id)))),i=[];(0,u.default)(r).call(r,(e=>{i.push(...e)}));var n=[],c=(0,s.default)(t).call(t,((e,t)=>{var r=(0,o.default)(i).call(i,(t=>t.network_id===e.id)),l=(0,o.default)(a).call(a,((t,a)=>t.value.network===e.id&&(n.push(a),!0)));return l||{value:{network:e.id,subnet:r.id,networkOption:e,subnetOption:r,ipTypeOption:w.ipTypeOptions[0],ipType:0},index:t}})),f=(0,s.default)(t).call(t,(e=>e.id));(0,u.default)(a).call(a,((e,t)=>{(0,d.default)(n).call(n,t)<0&&(0,d.default)(f).call(f,e.value.network)>=0&&c.push(e)})),e.updateFormValue("networks",c),e.setState({subnets:i,initValue:c})}))()}get nameForStateUpdate(){return["networkSelect","networks"]}get formItems(){var{networkSelectRows:e=[],subnets:a,initValue:r=[]}=this.state,i=e.length>0,n=e.length&&(0,c.default)(e).call(e,(e=>e.port_security_enabled));return[{name:"networkSelect",label:t("Networks"),type:"network-select-table",disabledFunc:this.disabledNetwork,onChange:this.onNetworkChange,showExternal:!0,isMulti:!1,required:!0,header:y.default.createElement("div",null,t("Please reasonably plan the network and subnet to which the virtual network card belongs."),t(" You can go to the console to "),(0,C.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")}))},{name:"networks",label:t("Virtual LAN"),type:"add-select",networks:e,hidden:!i,subnets:a,itemComponent:A.default,required:i,addTextTips:t("Virtual LANs"),addText:t("Add Virtual LAN"),minCount:e.length||0,optionsByIndex:!0,initValue:r,validator:(e,t)=>this.checkNetworks(t)?l.default.resolve():l.default.reject("")},{name:"ipv6",label:"IPv6",type:"label",hidden:!0,content:y.default.createElement("span",null,t("The selected VPC/ subnet does not have IPv6 enabled.")," ",y.default.createElement(f.default,{type:"link"},t("To open")," ",y.default.createElement(p.default,null))," ")},{type:"divider"},{name:"securityGroup",label:t("Security Group"),type:"select-table",tip:t("Each instance belongs to at least one security group, which needs to be specified when it is created. Instances in the same security group can communicate with each other on the network, and instances in different security groups are disconnected from the internal network by default."),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},required:n,hidden:!n,isMulti:!0,header:y.default.createElement("div",{style:{marginBottom:8}},t("The security group is similar to the firewall function and is used to set up network access control. "),t(" You can go to the console to "),(0,C.getLinkRender)({key:"securityGroup",value:"".concat(t("create a new security group"),"> ")}),t("Note: The security group you use will act on all virtual adapters of the instance.")),filterParams:N.securityGroupFilter,columns:N.securityGroupColumns,onRow:()=>{}}]}}a.NetworkStep=j;var T=(0,b.inject)("rootStore")((0,b.observer)(j));a.default=T},3506:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseStep=void 0;var p=f(r(65)),m=f(r(57)),h=f(r(32)),v=f(r(51)),g=f(r(36)),y=f(r(0)),b=r(406),_=r(34),S=f(r(565)),M=f(r(1262)),I=r(563),x=f(r(1201)),A=f(r(1275));function w(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;tp.default.resolve())),(0,g.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,g.default)(this,"checkSystemDisk",((e,t)=>t.type?p.default.resolve():p.default.reject(""))),(0,g.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}init(){this.imageStore=S.default,this.getAvailZones(),this.getImages()}get title(){return"BaseStep"}get name(){return"BaseStep"}get isStep(){return!0}get defaultValue(){var e=this.sourceTypes[0];return{systemDisk:this.defaultVolumeType,source:e,project:this.currentProjectName,dataDisk:[]}}get sourceTypes(){return[{label:t("Image"),value:"image"}]}get availableZones(){var e,t;return(0,m.default)(e=(0,h.default)(t=M.default.list.data||[]).call(t,(e=>e.zoneState.available))).call(e,(e=>({value:e.zoneName,label:e.zoneName})))}get images(){var{imageTab:e}=this.state,{image:t}=this.locationParams,a=t?[(0,_.toJS)(this.imageStore.detail)]:this.imageStore.list.data||[],r=(0,h.default)(a).call(a,(t=>!!(0,I.canImageCreateIronicInstance)(t)&&(e?(0,I.getImageOS)(t)===e:t)));return(0,m.default)(r).call(r,(e=>N(N({},e),{},{key:e.id})))}getAvailZones(){var e=this;return(0,v.default)((function*(){yield M.default.fetchListWithoutDetail(),e.availableZones.length&&e.updateFormValue("availableZone",e.availableZones[0])}))()}getImages(){var e=this;return(0,v.default)((function*(){var t,{image:a}=e.locationParams;(a?yield e.imageStore.fetchDetail({id:a}):yield e.imageStore.fetchList({all_projects:e.hasAdminRole}),a)&&e.updateFormValue("image",{selectedRowKeys:[a],selectedRows:(0,h.default)(t=e.images).call(t,(e=>e.id===a))})}))()}get systemTabs(){return(0,I.getImageSystemTabs)()}get nameForStateUpdate(){return["image","flavor"]}get formItems(){var{image:e}=this.locationParams,a=e?this.imageStore.isLoading:this.imageStore.list.isLoading;return[{name:"project",label:t("Project"),type:"label"},{name:"availableZone",label:t("Available Zone"),type:"select",placeholder:t("Please select"),isWrappedValue:!0,required:!0,options:this.availableZones,tip:t("Availability zone refers to a physical area where power and network are independent of each other in the same area. In the same region, the availability zone and the availability zone can communicate with each other in the intranet, and the available zones can achieve fault isolation.")},{type:"divider"},{name:"flavor",label:t("Specification"),type:"select-table",component:y.default.createElement(A.default,{isIronic:"true",onChange:this.onFlavorChange}),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:a,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,I.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.locationParams.os_distro||this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange}]}}a.BaseStep=C;var P=(0,b.inject)("rootStore")((0,b.observer)(C));a.default=P},3507:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ChangePassword=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=n(r(408)),d=r(1193),c=r(556),f=r(1195);class p extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{password:t}=e,{id:a}=this.item;return this.store.changePassword({id:a,password:t})}))}init(){this.store=u.default}get name(){return t("Change password")}get tips(){return t("If OS is Linux, system will reset root password, if OS is Windows, system will reset Administrator password.")}get defaultValue(){var{name:e}=this.item;return{instance:e,snapshot:"",ipType:0}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,c.getPasswordOtherRule)("password","instance")},{name:"confirmPassword",label:t("Confirm Password"),type:"input-password",dependencies:["password"],required:!0,otherRule:(0,c.getPasswordOtherRule)("confirmPassword","instance")}]}}a.ChangePassword=p,(0,o.default)(p,"id","change-password"),(0,o.default)(p,"title",t("Change Password")),(0,o.default)(p,"policy","os_compute_api:os-admin-password"),(0,o.default)(p,"isActive",(e=>(0,f.checkStatus)(["active"],e))),(0,o.default)(p,"allowed",((e,t)=>{var{isAdminPage:a}=t;return l.default.resolve(p.isActive(e)&&(0,f.isNotLockedOrAdmin)(e,a)&&!(0,f.isIronicInstance)(e))}));var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3508:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(32)),o=n(r(57)),s=n(r(36)),u=n(r(91)),d=n(r(0)),c=r(1193),f=r(1195),p=n(r(408));class m extends c.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:start"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||this.canStart(e)&&(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,u.default)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e))),i=(0,l.default)(a).call(a,(e=>!this.canStart(e))),n=[];return r.length&&n.push(t('Instance "{ name }" is locked, can not start it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" status is not shutoff, can not start it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>d.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.start({id:t})}))}get id(){return"start"}get title(){return t("Start Instance")}get buttonText(){return t("Start")}get actionName(){return t("start instance")}get passiveAction(){return t("be started")}get isAsyncAction(){return!0}canStart(e){return(0,f.checkStatus)(["shutdown","shutoff","crashed"],e)}}a.default=m},3509:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(32)),o=n(r(57)),s=n(r(36)),u=n(r(91)),d=n(r(0)),c=r(1193),f=r(1195),p=n(r(408));class m extends c.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:stop"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isRunning(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,u.default)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.isRunning(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=[];return r.length&&n.push(t('Instance "{ name }" status is not in active or suspended, can not stop it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" is locked, can not stop it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>d.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.stop({id:t})}))}get id(){return"stop"}get title(){return t("Stop Instance")}get isDanger(){return!0}get buttonText(){return t("Stop")}get actionName(){return t("stop instance")}get passiveAction(){return t("be stopped")}get isAsyncAction(){return!0}isRunning(e){return(0,f.checkStatus)(["active"],e)}}a.default=m},3510:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DetachInterface=void 0;var p=f(r(57)),m=f(r(65)),h=f(r(51)),v=f(r(36)),g=f(r(0)),y=r(406),b=r(408),_=r(1193),S=r(1210),M=r(1195);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 x(e){for(var t=1;t{var{id:t}=this.item,{interfaces:{selectedRowKeys:a=[]}}=e;return this.store.detachInterface({id:t,ports:a})}))}init(){this.store=new b.ServerStore,this.getPorts(),this.state.portLoading=!0}get name(){return t("Detach interface")}get isAsyncAction(){return!0}static get modalSize(){return"large"}getModalSize(){return"large"}get ports(){var{interfaces:e=[]}=this.store;return(0,p.default)(e).call(e,(e=>{var t,a=(0,p.default)(t=e.fixed_ips).call(t,(e=>e.ip_address)).join(",");return x(x({},e),{},{name:a,id:e.port_id})}))}getPorts(){var e=this;return(0,h.default)((function*(){yield e.store.fetchInterfaceList({id:e.item.id}),e.setState({portLoading:!1})}))()}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){var{portLoading:e}=this.state;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"interfaces",label:t("Network Interface"),type:"select-table",required:!0,data:this.ports,isLoading:e,isMulti:!0,filterParams:[{label:t("Ip Address"),name:"name"}],columns:[{title:t("Ip Address"),dataIndex:"fixed_ips",render:e=>(0,p.default)(e).call(e,(e=>g.default.createElement("div",{key:e.ip_address},e.ip_address)))},{title:t("State"),dataIndex:"port_state",valueMap:S.portStatus},{title:t("Mac Address"),dataIndex:"mac_addr"}]}]}}a.DetachInterface=A,(0,v.default)(A,"id","detach-interface"),(0,v.default)(A,"title",t("Detach Interface")),(0,v.default)(A,"policy","os_compute_api:os-attach-interfaces:delete"),(0,v.default)(A,"hasInterfaces",(e=>e.fixed_addresses.length>0)),(0,v.default)(A,"allowed",(e=>m.default.resolve((0,M.isActiveOrShutOff)(e)&&A.hasInterfaces(e)&&(0,M.isNotLocked)(e))));var w=(0,y.inject)("rootStore")((0,y.observer)(A));a.default=w},3511:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(32)),o=n(r(57)),s=n(r(36)),u=n(r(91)),d=n(r(0)),c=r(1193),f=r(1195),p=n(r(408));class m extends c.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:reboot"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.canReboot(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,u.default)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.canReboot(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=[];return r.length&&n.push(t('Instance "{ name }" status is not in active or shutoff, can not reboot it.',{name:this.getName(r)})),i.length&&n.push(t('Instance "{ name }" is locked, can not reboot it.',{name:this.getName(i)})),(0,o.default)(n).call(n,(e=>d.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.reboot({id:t})}))}get id(){return"reboot"}get title(){return t("Reboot Instance")}get buttonText(){return t("Reboot")}get actionName(){return t("reboot instance")}get isDanger(){return!0}get passiveAction(){return t("be rebooted")}get isAsyncAction(){return!0}canReboot(e){return(0,f.checkStatus)(["active","shutoff"],e)}}a.default=m},3512:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(32)),o=n(r(57)),s=n(r(36)),u=n(r(91)),d=n(r(0)),c=r(1193),f=r(1195),p=n(r(408));class m extends c.ConfirmAction{constructor(){super(...arguments),(0,s.default)(this,"policy","os_compute_api:servers:reboot"),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,f.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isActive(e)&&!(0,f.isIronicInstance)(e))),(0,s.default)(this,"performErrorMsg",(e=>{var a=(0,u.default)(e)?e:[e],r=(0,l.default)(a).call(a,(e=>!this.isActive(e))),i=(0,l.default)(a).call(a,(e=>!(0,f.isNotLockedOrAdmin)(e,this.isAdminPage))),n=(0,l.default)(a).call(a,(e=>(0,f.isIronicInstance)(e))),s=[];return r.length&&s.push(t('Instance "{ name }" status is not active, can not soft reboot it.',{name:this.getName(r)})),i.length&&s.push(t('Instance "{ name }" is locked, can not soft reboot it.',{name:this.getName(i)})),n.length&&s.push(t('Instance "{ name }" is ironic, can not soft reboot it.',{name:this.getName(n)})),(0,o.default)(s).call(s,(e=>d.default.createElement("p",null,e)))})),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return p.default.softReboot({id:t})}))}get id(){return"softReboot"}get title(){return t("Soft Reboot Instance")}get buttonText(){return t("Soft Reboot")}get actionName(){return t("soft reboot instance")}get passiveAction(){return t("be soft rebooted")}isActive(e){return(0,f.checkStatus)(["active"],e)}}a.default=m},3513:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-pause-server:pause"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLocked)(e)&&this.isActive(e)&&!this.isAdminPage&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLocked)(a)||(r=t('Instance "{ name }" is locked, can not pause it.',{name:a.name})):r=t('Instance "{ name }" status is not in active, can not pause it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.pause({id:e})}))}get id(){return"pause"}get title(){return t("Pause Instance")}get buttonText(){return t("Pause")}get actionName(){return t("pause instance")}get isAsyncAction(){return!0}isActive(e){return(0,u.checkStatus)(["active"],e)}}a.default=c},3514:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-pause-server:unpause"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isPaused(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isPaused(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not unpause it.',{name:a.name})):r=t('Instance "{ name }" status is not in paused, can not unpause it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.unpause({id:e})}))}get id(){return"unpause"}get title(){return t("Unpause Instance")}get buttonText(){return t("Unpause")}get actionName(){return t("unpause instance")}isPaused(e){return(0,u.checkStatus)(["paused"],e)}}a.default=c},3515:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-lock-server:lock"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||!this.isAdminPage&&(0,u.isNotLocked)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return(0,u.isNotLocked)(a)||(r=t('Instance "{ name }" has already been locked.',{name:a.name})),r})),(0,l.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})+t("Lock instance will lock the operations that have a direct impact on the operation of the instance, such as: shutdown, restart, delete, the mounting and unmounting of volume, etc. It does not involve the capacity expansion and change type of volume.")})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.lock({id:e})}))}get id(){return"lock"}get title(){return t("Lock Instance")}get buttonText(){return t("Lock")}get actionName(){return t("lock instance")}}a.default=c},3516:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-lock-server:unlock"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||!this.isAdminPage&&(0,u.isLocked)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return(0,u.isLocked)(a)||(r=t('Instance "{ name }" is not locked, can not unlock it.',{name:a.name})),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.unlock({id:e})}))}get id(){return"unlock"}get title(){return t("Unlock Instance")}get buttonText(){return t("Unlock")}get actionName(){return t("unlock instance")}}a.default=c},3517:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-suspend-server:suspend"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isActive(e)&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not suspend it.',{name:a.name})):r=t('Instance "{ name }" status is not in active, can not suspend it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.suspend({id:e})}))}get id(){return"suspend"}get title(){return t("Suspend Instance")}get buttonText(){return t("Suspend")}get actionName(){return t("suspend instance")}get isAsyncAction(){return!0}isActive(e){return(0,u.checkStatus)(["active"],e)}}a.default=c},3518:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(91)),s=r(1193),u=r(1195),d=n(r(408));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-suspend-server:resume"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isSuspended(e))),(0,l.default)(this,"performErrorMsg",(e=>{var a=(0,o.default)(e)?e[0]:e,r=t('You are not allowed to { action } "{ name }".',{action:this.actionName,name:a.name});return this.isActive(a)?(0,u.isNotLockedOrAdmin)(a,this.isAdminPage)||(r=t('Instance "{ name }" is locked, can not resume it.',{name:a.name})):r=t('Instance "{ name }" status is not in suspended, can not resume it.',{name:a.name}),r})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.resume({id:e})}))}get id(){return"resume"}get title(){return t("Resume Instance")}get buttonText(){return t("Resume")}get actionName(){return t("resume instance")}get isAsyncAction(){return!0}isSuspended(e){return(0,u.checkStatus)(["suspended"],e)}}a.default=c},3519:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DetachVolume=void 0;var l=n(r(32)),o=n(r(65)),s=n(r(36)),u=r(406),d=r(1334),c=n(r(408)),f=n(r(140)),p=r(1193),m=r(557),h=r(1195);class v extends p.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{volumes:{selectedRowKeys:a=[]}}=e;return this.store.detachVolume({id:t,volumes:a})}))}init(){this.store=c.default,this.volumeStore=new d.InstanceVolumeStore,this.getVolumes()}get name(){return t("Detach Volume")}static get modalSize(){return"large"}getModalSize(){return"large"}get volumes(){var e;return(0,l.default)(e=this.volumeStore.list.data||[]).call(e,(e=>!(0,m.isOsDisk)(e)))}getVolumes(){var{id:e}=this.item;this.volumeStore.fetchList({serverId:e})}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"volumes",label:t("Volume"),type:"select-table",required:!0,data:this.volumes,isLoading:this.volumeStore.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Size"),dataIndex:"size",unit:"GiB"},{title:t("Status"),dataIndex:"status",valueMap:m.volumeStatus},{title:t("Type"),dataIndex:"volume_type"},{title:t("Created At"),dataIndex:"created_at",valueRender:"sinceTime"}]}]}}a.DetachVolume=v,(0,s.default)(v,"id","detach-volume"),(0,s.default)(v,"title",t("Detach Volume")),(0,s.default)(v,"policy","os_compute_api:os-volumes-attachments:delete"),(0,s.default)(v,"allowed",((e,t)=>{var{isAdminPage:a}=t;return o.default.resolve(f.default.checkEndpoint("cinder")&&!a&&(0,h.allowAttachVolumeInstance)(e))}));var g=(0,u.inject)("rootStore")((0,u.observer)(v));a.default=g},3520:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.fetchQuota=P,a.default=a.Resize=a.getFlavorLabel=a.getQuotaInfo=a.checkFlavorDisable=a.getAdd=a.getQuota=void 0;var p=f(r(81)),m=f(r(65)),h=f(r(36)),v=f(r(51)),g=f(r(199)),y=f(r(0)),b=r(406),_=f(r(1218)),S=f(r(408)),M=r(1193),I=r(1195),x=f(r(407)),A=r(161),w=f(r(1275));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 C(e){for(var t=1;t{if((0,g.default)(e))return{};var{cores:t={},ram:a={}}=e||{};return{cores:t,ram:a}};a.getQuota=j;var T=(e,t)=>{if((0,g.default)(t))return{};var{vcpus:a,ram:r}=e.item.flavor_info||{},{vcpus:i,ram:n}=t||{};return{vcpuAdd:i-a,ramAdd:(0,A.getGiBValue)(n-r)}};a.getAdd=T;var D=(e,t)=>{var{quotaLoading:a=!0,quota:r}=t.state;if(a||(0,g.default)(r))return!1;var{cores:{left:i},ram:{left:n}}=j(r),{vcpuAdd:l,ramAdd:o}=T(t,e);return!(-1===i||i>=l)||!(-1===n||n>=o)};a.checkFlavorDisable=D;var z=e=>{var{quota:a={},quotaLoading:r,flavor:i={}}=e.state;if(r||(0,g.default)(a))return[];var{cores:n={},ram:l={}}=j(a),{vcpuAdd:o=0,ramAdd:s=0}=T(e,i||{});return[C(C({},n),{},{add:o,name:"cpu",title:t("CPU")}),C(C({},l),{},{add:s,name:"ram",title:t("Memory (GiB)"),type:"line"})]};a.getQuotaInfo=z;var L=e=>{var a,r,i,n,{flavor:l,flavor_info:{vcpus:o,ram:s}={}}=e.item;return(0,p.default)(a=(0,p.default)(r=(0,p.default)(i=(0,p.default)(n="".concat(l," (")).call(n,t("VCPUs"),": ")).call(i,o,", ")).call(r,t("Memory"),": ")).call(a,(0,A.formatSize)(s,2),")")};a.getFlavorLabel=L;class E extends M.ModalAction{constructor(){super(...arguments),(0,h.default)(this,"onFlavorChange",(e=>{var{selectedRows:t=[]}=e||{};this.setState({flavor:t[0]})})),(0,h.default)(this,"disabledFlavor",(e=>D(e,this))),(0,h.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{newFlavor:a}=e,r=a.selectedRowKeys[0];return S.default.resize({id:t,flavor:r})}))}init(){this.store=_.default,P(this)}get name(){return t("resize")}static get modalSize(){return"large"}get isAsyncAction(){return!0}getModalSize(){return"large"}get tips(){return y.default.createElement("div",null,y.default.createElement("p",{style:{color:"#0068FF"}},t("The current operation requires the instance to be shut down:")),y.default.createElement("p",null,t("In order to avoid data loss, the instance will shut down and interrupt your business. Please confirm carefully.")),y.default.createElement("p",null,t("Forced shutdown may result in data loss or file system damage. You can also take the initiative to shut down and perform operations.")))}get showQuota(){return!0}get quotaInfo(){return z(this)}get defaultValue(){var{name:e}=this.item;return{instance:e,flavor:L(this)}}get formItems(){var{flavor:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"flavor",label:t("Current Flavor"),type:"label",iconType:"flavor"},{name:"newFlavor",label:t("Flavor"),type:"select-table",component:y.default.createElement(w.default,{flavor:e,onChange:this.onFlavorChange,disabledFunc:this.disabledFlavor}),required:!0,wrapperCol:{xs:{span:24},sm:{span:18}}},{name:"option",label:t("Forced Shutdown"),type:"check",content:t("Agree to force shutdown"),required:!0}]}}a.Resize=E,(0,h.default)(E,"id","resize"),(0,h.default)(E,"title",t("Resize")),(0,h.default)(E,"isDanger",!0),(0,h.default)(E,"policy","os_compute_api:servers:resize"),(0,h.default)(E,"isActiveOrShutOff",(e=>(0,I.checkStatus)(["active","shutoff"],e,!1))),(0,h.default)(E,"allowed",((e,t)=>{var{isAdminPage:a}=t;return m.default.resolve(!E.isAdminPage&&E.isActiveOrShutOff(e)&&(0,I.isNotLockedOrAdmin)(e,a)&&!(0,I.isIronicInstance)(e))}));var O=(0,b.inject)("rootStore")((0,b.observer)(E));a.default=O},3521:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LiveMigrate=void 0;var p=f(r(57)),m=f(r(32)),h=f(r(65)),v=f(r(36)),g=r(406),y=f(r(408)),b=r(1193),_=r(1195),S=f(r(586)),M=r(1337);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 x(e){for(var t=1;t{var t,{host:{selectedRows:a=[]}={}}=e,{id:r}=this.item,i=null;a.length>0&&(i={host:null===(t=a[0])||void 0===t?void 0:t.service_host});return this.store.migrate({id:r,body:i})}))}init(){this.store=y.default,this.hypervisorStore=S.default,this.getHypervisors()}get name(){return t("migrate")}static get modalSize(){return"large"}getModalSize(){return"large"}getHypervisors(){this.hypervisorStore.fetchList()}get hypervisors(){var e,t;return(0,p.default)(e=(0,m.default)(t=this.hypervisorStore.list.data||[]).call(t,(e=>"ironic"!==e.hypervisor_type))).call(e,(e=>x(x({},e),{},{key:e.id})))}get tips(){return t("Choose a host to migrate instance to. If not selected, the scheduler will auto select target host.")}get defaultValue(){var{name:e,host:t}=this.item;return{instance:e,current:t}}get formItems(){var{host:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"current",label:t("Current Compute Host"),type:"label",iconType:"aggregate"},{name:"host",label:t("Target Compute Host"),type:"select-table",data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,isMulti:!1,extra:t("If nova-compute on the host is disabled, it will be forbidden to be selected as the target host."),filterParams:M.hypervisorFilters,columns:M.hypervisorColumns,disabledFunc:t=>t.service_host===e||"enabled"!==t.status}]}}a.LiveMigrate=A,(0,v.default)(A,"id","migrate"),(0,v.default)(A,"title",t("Migrate")),(0,v.default)(A,"policy","os_compute_api:os-migrate-server:migrate"),(0,v.default)(A,"allowed",(e=>h.default.resolve(((0,_.isActive)(e)||(0,_.isStopped)(e))&&(0,_.isNotDeleting)(e)&&!(0,_.isIronicInstance)(e))));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3522:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(81)),o=n(r(51)),s=n(r(36)),u=r(1193),d=n(r(408)),c=r(1195),f=n(r(234)),{getLocale:p}=f.default;class m extends u.ConfirmAction{constructor(){var e;super(...arguments),e=this,(0,s.default)(this,"policy","os_compute_api:os-remote-consoles"),(0,s.default)(this,"confirmContext",(()=>t("Are you sure to jump directly to the console? The console will open in a new page later."))),(0,s.default)(this,"allowedCheckFunc",(e=>!e||(0,c.isActive)(e)&&!(0,c.isIronicInstance)(e))),(0,s.default)(this,"performErrorMsg",(()=>t("You are not allowed to jump to the console."))),(0,s.default)(this,"onSubmit",(0,o.default)((function*(){var t,a,{id:r}=e.item,i=d.default;a=(0,c.isIronicInstance)(e.item)?yield i.getConsoleIronic({id:r}):yield i.getConsole({id:r});var{url:n}=a.remote_console,o=p();window.open((0,l.default)(t="".concat(n,"&language=")).call(t,o))})))}get id(){return"console"}get title(){return t("Jump to Console")}get buttonText(){return t("Console")}get actionName(){return t("jump to the console")}}a.default=m},3523:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=r(1193),d=n(r(408));class c extends u.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{name:t}=e,a={name:t},{id:r}=this.item;return d.default.edit({id:r},a)}))}init(){this.store=d.default}static allowed(){return l.default.resolve(!0)}get formItems(){return[{name:"name",label:t("Name"),type:"input-name",required:!0,placeholder:t("Please input name"),isInstance:!0}]}}a.Edit=c,(0,o.default)(c,"id","edit-server"),(0,o.default)(c,"title",t("Edit Instance")),(0,o.default)(c,"buttonText",t("Edit")),(0,o.default)(c,"policy","os_compute_api:servers:update");var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3524:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Rebuild=void 0;var p=f(r(32)),m=f(r(57)),h=f(r(65)),v=f(r(36)),g=r(406),y=f(r(565)),b=f(r(408)),_=r(1193),S=r(1195),M=r(563);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 x(e){for(var t=1;t{this.setState({imageTab:e})})),(0,v.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{image:{selectedRowKeys:a=[]}}=e;return this.store.rebuild({id:t,image:a[0]})}))}init(){this.store=b.default,this.imageStore=y.default,this.getImages()}get name(){return t("rebuild instance")}static get modalSize(){return"large"}get labelCol(){return{xs:{span:6},sm:{span:4}}}get images(){var e,{imageTab:t}=this.state,a=(0,p.default)(e=this.imageStore.list.data||[]).call(e,(e=>!!(0,M.canImageCreateInstance)(e)&&(!t||(0,M.getImageOS)(e)===t)));return(0,m.default)(a).call(a,(e=>x(x({},e),{},{key:e.id})))}getImages(){this.imageStore.fetchList()}get systemTabs(){return(0,M.getImageSystemTabs)()}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"image",label:t("Operating System"),type:"select-table",data:this.images,isLoading:this.imageStore.list.isLoading,required:!0,isMulti:!1,filterParams:[{label:t("Name"),name:"name"}],columns:(0,M.getImageColumns)(this),tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,selectedLabel:t("Image"),onTabChange:this.onImageTabChange}]}}a.Rebuild=A,(0,v.default)(A,"id","rebuild"),(0,v.default)(A,"title",t("Rebuild Instance")),(0,v.default)(A,"policy","os_compute_api:servers:rebuild"),(0,v.default)(A,"isRootVolumeInUse",(()=>!0)),(0,v.default)(A,"allowed",(e=>{var t=(0,S.isActiveOrShutOff)(e)&&(0,S.isNotLocked)(e)&&A.isRootVolumeInUse(e)&&!(0,S.isIsoInstance)(e);return h.default.resolve(t)}));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3525:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(0)),s=r(1193),u=r(1195),d=n(r(408)),c=n(r(1536));class f extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-shelve:shelve"),(0,l.default)(this,"isStatusOk",(e=>(0,u.checkStatus)(["active","shutoff","paused","suspended"],e))),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isStatusOk(e)&&!(0,u.isIronicInstance)(e))),(0,l.default)(this,"confirmContext",(e=>{var{name:a}=e;return o.default.createElement("div",null,o.default.createElement("p",{className:c.default.mb16},this.unescape(t("Are you sure to shelve instance { name }? ",{name:a}))),o.default.createElement("p",null,t("After shelving, the instance will be shut down, resources will be released, and the snapshot will be saved to Glance. This will take about a few minutes, please be patient. You also can choose to unshelve to restore the instance.")))})),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.shelve({id:e})}))}get id(){return"shelve"}get title(){return t("Shelve Instance")}get buttonText(){return t("Shelve")}get actionName(){return t("shelve instance")}get isAsyncAction(){return!0}}a.default=f},3526:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=r(1195),u=n(r(408));class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-shelve:unshelve"),(0,l.default)(this,"isStatusOk",(e=>(0,s.checkStatus)(["shelved","shelved_offloaded"],e))),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,s.isNotLockedOrAdmin)(e,this.isAdminPage)&&this.isStatusOk(e))),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.unshelve({id:e})}))}get id(){return"shelve"}get title(){return t("Unshelve Instance")}get buttonText(){return t("Unshelve")}get actionName(){return t("unshelve instance")}get isAsyncAction(){return!0}}a.default=d},3527:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.DisassociateFip=void 0;var l=n(r(65)),o=n(r(57)),s=n(r(51)),u=n(r(36)),d=r(406),c=r(336),f=r(1193);class p extends f.ModalAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"onSubmit",function(){var t=(0,s.default)((function*(t){var{address:a}=t,r=yield e.store.fetchList({floating_ip_address:a});return r.length?e.store.disassociateFip({id:r[0].id}):l.default.resolve()}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new c.FloatingIpStore}get name(){return t("disassociate floating ip")}get fips(){var{floating_addresses:e=[]}=this.item;return(0,o.default)(e).call(e,(e=>({value:e,label:e})))}get defaultValue(){var{name:e}=this.item;return{instance:e}}get formItems(){return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"address",label:t("Floating Ip"),type:"select",required:!0,options:this.fips}]}}a.DisassociateFip=p,(0,u.default)(p,"id","DisassociateFip"),(0,u.default)(p,"title",t("Disassociate Floating Ip")),(0,u.default)(p,"policy","update_floatingip"),(0,u.default)(p,"hasFip",(e=>e.floating_addresses.length>0)),(0,u.default)(p,"allowed",(e=>l.default.resolve(p.hasFip(e))));var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3528:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.LiveMigrate=void 0;var p=f(r(57)),m=f(r(32)),h=f(r(65)),v=f(r(36)),g=r(406),y=f(r(408)),b=r(1193),_=r(1195),S=f(r(586)),M=r(1337);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 x(e){for(var t=1;t{var{host:t,option:{blockMigrate:a}}=e,{id:r}=this.item,i={host:t?t.selectedRows[0].service_host:null,block_migration:a||"auto"};return this.store.migrateLive({id:r,body:i})}))}init(){this.store=y.default,this.hypervisorStore=S.default,this.getHypervisors()}get name(){return t("live migrate")}static get modalSize(){return"large"}getModalSize(){return"large"}getHypervisors(){this.hypervisorStore.fetchList()}get hypervisors(){var e,t;return(0,p.default)(e=(0,m.default)(t=this.hypervisorStore.list.data||[]).call(t,(e=>"ironic"!==e.hypervisor_type))).call(e,(e=>x(x({},e),{},{key:e.id})))}get tips(){return t("Choose a host to live migrate instance to. If not selected, the scheduler will auto select target host.")}get defaultValue(){var{name:e,host:t}=this.item;return{instance:e,current:t,option:{blockMigrate:!1}}}get formItems(){var{host:e}=this.item;return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},{name:"current",label:t("Current Compute Host"),type:"label",iconType:"aggregate"},{name:"host",label:t("Target Compute Host"),type:"select-table",data:this.hypervisors,isLoading:this.hypervisorStore.list.isLoading,isMulti:!1,extra:t("If nova-compute on the host is disabled, it will be forbidden to be selected as the target host."),filterParams:M.hypervisorFilters,columns:M.hypervisorColumns,disabledFunc:t=>t.service_host===e||"enabled"!==t.status},{name:"option",label:t("Options"),type:"check-group",options:[{label:t("Block Migrate"),value:"blockMigrate"}]}]}}a.LiveMigrate=A,(0,v.default)(A,"id","LiveMigrate"),(0,v.default)(A,"title",t("Live Migrate")),(0,v.default)(A,"policy","os_compute_api:os-migrate-server:migrate_live"),(0,v.default)(A,"allowed",(e=>h.default.resolve(((0,_.isActive)(e)||(0,_.isPaused)(e))&&(0,_.isNotDeleting)(e)&&!(0,_.isIronicInstance)(e))));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3529:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AssociateFip=void 0;var l=n(r(65)),o=n(r(51)),s=n(r(36)),u=r(406),d=n(r(408)),c=n(r(336)),f=r(1193),p=r(1195),m=r(1219),h=r(1224),v=r(1210);class g extends f.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"handleFixedIPChange",(e=>h.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 c.default.associateFip({id:i,port_id:r.port_id,fixed_ip_address:r.fixed_ip_address})}))}init(){this.getInterfaces(),m.getCanReachSubnetIdsWithRouterIdInComponent.call(this),this.state={fixed_ip:null,interfaces:[],canAssociateFloatingIPs:[],canReachSubnetIdsWithRouterId:[],routerIdWithExternalNetworkInfo:[],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{id:t}=e.item,a=yield d.default.fetchInterfaceList({id:t}),r=yield(0,h.getInterfaceWithReason)(a);e.setState({interfaces:r,portLoading:!1})}))()}get ports(){var{interfaces:e,canReachSubnetIdsWithRouterId:t}=this.state;return v.getPortsAndReasons.call(this,e,t)}get defaultValue(){var{name:e}=this.item;return{instance:e}}getFIPFormItemExtra(){return(0,h.getFIPFormItemExtra)()}disableFIPAssociate(e){return(0,h.disableFIPAssociate)(e)}get formItems(){var e=(0,h.getFixedIPFormItemForAssociate)(t("Instance IP"),this),a=(0,h.getFIPFormItemForAssociate)(this);return[{name:"instance",label:t("Instance"),type:"label",iconType:"instance"},e,a]}}a.AssociateFip=g,(0,s.default)(g,"id","AssociateFip"),(0,s.default)(g,"title",t("Associate Floating IP")),(0,s.default)(g,"policy","update_floatingip"),(0,s.default)(g,"canAssociated",(e=>e.fixed_addresses.length>e.floating_addresses.length)),(0,s.default)(g,"allowed",((e,t)=>{var{isAdminPage:a=!1}=t;return l.default.resolve(!a&&(0,p.isNotError)(e)&&g.canAssociated(e))}));var y=(0,u.inject)("rootStore")((0,u.observer)(g));a.default=y},3530:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var p=f(r(65)),m=f(r(57)),h=f(r(51)),v=f(r(36)),g=f(r(0)),y=r(406),b=r(1193),_=f(r(408)),S=r(561),M=r(416),I=r(1210),x=r(1274),A=r(34);function w(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;te.getSecurityGroupPromise(t))));e.formRef.current.setFieldsValue({securityGroup:{selectedRowKeys:i}}),e.setState({sgInitValue:{selectedRowKeys:i,port:r,selectedRows:n}})}}));return function(e){return t.apply(this,arguments)}}()),(0,v.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={},port:{selectedRowKeys:a=[]}}=e,r=a[0],i={port:{security_groups:t}};return this.securityGroupStore.updatePortSecurityGroup({id:r,reqBody:i})}))}init(){this.store=_.default,this.securityGroupStore=new M.SecurityGroupStore,this.portStore=new S.PortStore,this.getPorts(),this.securityGroupMap={}}getPorts(){this.portStore.fetchList({device_id:this.item.id})}get ports(){var e=(0,A.toJS)(this.portStore.list.data)||[];return(0,m.default)(e).call(e,(e=>N(N({},e),{},{name:e.id,security_groups:e.origin_data.security_groups})))}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Manage Security Group")}get defaultValue(){var{name:e}=this.item,{port:t}=this.state,a={name:e};return t&&(a.securityGroup={selectedRowKeys:t.security_groups},a.port={selectedRowKeys:[t.id]}),a}get formItems(){var{sgInitValue:e={}}=this.state;return[{name:"name",label:t("Instance"),type:"label",iconType:"instance"},{name:"port",label:t("Virtual Adapter"),type:"select-table",required:!0,data:this.ports,isLoading:this.portStore.list.isLoading,isMulti:!1,onChange:this.onPortChange,filterParams:[{label:t("Owned Network"),name:"network_name"}],columns:[{title:t("ID"),dataIndex:"id"},{title:t("Owned Network"),dataIndex:"network_name"},{title:t("IPv4 Address"),dataIndex:"ipv4",render:e=>(0,m.default)(e).call(e,(e=>g.default.createElement("div",{key:e},e)))},{title:t("IPv6 Address"),dataIndex:"ipv6",render:e=>(0,m.default)(e).call(e,(e=>g.default.createElement("div",{key:e},e)))},{title:t("Mac Address"),dataIndex:"mac_address",isHideable:!0},{title:t("Status"),dataIndex:"status",render:e=>I.portStatus[e]||e}]},{name:"securityGroup",label:t("Security Group"),type:"select-table",initValue:e,required:!0,tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,filterParams:x.securityGroupFilter,columns:x.securityGroupColumns,onRow:()=>{}}]}}a.ManageSecurityGroup=C,(0,v.default)(C,"id","manage-security-group"),(0,v.default)(C,"title",t("Manage Security Group")),(0,v.default)(C,"allowed",(()=>p.default.resolve(!0))),(0,v.default)(C,"policy","update_port");var P=(0,y.inject)("rootStore")((0,y.observer)(C));a.default=P},3531:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(408)),u=r(1195);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:force"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||(0,u.isNotLockedOrAdmin)(e,this.isAdminPage)&&(0,u.isIronicInstance)(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.forceDelete({id:t})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete ironic instance")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3532:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(408));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:servers:resize"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"verify_resize"===e.status.toLowerCase())),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return t("".concat(this.actionNameDisplay," (instance: {name})?"),{name:a})})),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.update(t,{confirmResize:null})}))}get id(){return"confirm_resize_migrate"}get title(){return t("Confirm Resize or Migrate")}get buttonText(){return t("Confirm Resize or Migrate")}get actionName(){return t("confirm resize or migrate")}}a.default=u},3533:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(408));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:servers:resize"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"verify_resize"===e.status.toLowerCase())),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.update(t,{revertResize:null})}))}get id(){return"revert_resize_migrate"}get title(){return t("Revert Resize or Migrate")}get buttonText(){return t("Revert Resize or Migrate")}get actionName(){return t("revert resize or migrate")}}a.default=u},3534:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ModifyTags=void 0;var l=n(r(65)),o=n(r(226)),s=n(r(198)),u=n(r(36)),d=n(r(202)),c=n(r(0)),f=r(406),p=r(1193),m=n(r(1543)),h=n(r(3535));class v extends p.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>h.default.update({serverId:this.props.item.id},e)))}get name(){return t("modify instance tags")}init(){this.state.tags=this.props.item.tags||[]}get formItems(){var{tags:e}=this.state;return[{name:"tags",label:t("Tags"),component:c.default.createElement(m.default,{tags:e,maxLength:60,maxCount:50}),validator:(e,a)=>{var r=this.props.item.tags||[];if((0,d.default)(a,r))return l.default.resolve(!0);var i="";return(0,o.default)(a).call(a,(e=>{var t=(0,s.default)(e).call(e,"/")||(0,s.default)(e).call(e,",");return t&&(i=e),t}))?l.default.reject(new Error(t("Invalid Tag Value: {tag}",{tag:i}))):(0,o.default)(r).call(r,(function(e){return(0,o.default)(a).call(a,(t=>{var a=e!==t&&t.toLowerCase()===e.toLowerCase();return a&&(i=t),a}))}))?l.default.reject(new Error(t("Duplicate tag name: {tag}",{tag:i}))):l.default.resolve(!0)},extra:c.default.createElement("div",null,c.default.createElement("div",null,"1. ",t("Each server can have up to 50 tags")),c.default.createElement("div",null,"2. ",t("Tags are not case sensitive")),c.default.createElement("div",null,"3. ",t("Tag is no longer than 60 characters")),c.default.createElement("div",null,"4. ",t("Forward Slash ‘/’ is not allowed to be in a tag name")),c.default.createElement("div",null,"5."," ",t("Commas ‘,’ are not allowed to be in a tag name in order to simplify requests that specify lists of tags")))}]}}a.ModifyTags=v,(0,u.default)(v,"id","modify-instance-tags"),(0,u.default)(v,"title",t("Modify Instance Tags")),(0,u.default)(v,"buttonText",t("Modify Instance Tags")),(0,u.default)(v,"policy","os_compute_api:os-server-tags:update_all"),(0,u.default)(v,"allowed",(()=>l.default.resolve(!0)));var g=(0,f.inject)("rootStore")((0,f.observer)(v));a.default=g},3535:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.TagStore=void 0;var n,l=i(a(25)),o=i(a(54)),s=a(34),u=i(a(48)),d=i(a(53)),c=(n=class extends d.default{get client(){return u.default.nova.servers}get paramsFunc(){return()=>null}update(e,t){var{serverId:a}=e;return this.submitting(this.client.updateTags(a,t))}},(0,o.default)(n.prototype,"update",[s.action],(0,l.default)(n.prototype,"update"),n.prototype),n);t.TagStore=c;var f=new c;t.default=f},3536:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.InstanceDetail=void 0;var p=f(r(198)),m=f(r(562)),h=f(r(32)),v=f(r(36)),g=r(406),y=r(1195),b=r(408),_=f(r(1200)),S=f(r(1399)),M=f(r(1402)),I=f(r(1341)),x=f(r(3578)),A=r(34),w=f(r(3581)),N=f(r(3592)),C=f(r(3602)),P=f(r(1551)),k=f(r(1535));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 T(e){for(var t=1;tT(T({},e),{},{isRecycleBinDetail:this.isRecycleBinDetail})))}get name(){return t("instance")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get policy(){return"os_compute_api:servers:show"}get isRecycleBinDetail(){var e;return(0,p.default)(e=this.path).call(e,"recycle-bin")}get listUrl(){return this.isRecycleBinDetail?this.getRoutePath("recycleBin"):this.getRoutePath("instance")}get actionConfigs(){return this.isRecycleBinDetail?x.default:this.isAdminPage?k.default.adminActions:k.default.actionConfigs}get detailData(){var{id:e,status:t}=this.store.detail;if(e&&"soft_deleted"===t&&!this.isRecycleBinDetail){var a=this.getRoutePath("recycleBinDetail",{id:e});this.routing.push(a)}return(0,A.toJS)(this.store.detail)||{}}getActionData(){return this.detailData.itemInList||{}}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:y.instanceStatus},{title:t("Lock Status"),dataIndex:"locked",render:y.lockRender},{title:t("Project ID"),dataIndex:"tenant_id",hidden:!this.isAdminPage},{title:t("Created At"),dataIndex:"created",valueRender:"toLocalTime"},{title:t("Host"),dataIndex:"OS-EXT-SRV-ATTR:host"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:w.default},{title:t("Instance Snapshots"),key:"snapshots",component:P.default},{title:t("Interfaces"),key:"interface",component:I.default},{title:t("Floating IPs"),key:"floatingIps",component:M.default},{title:t("Security Groups"),key:"securityGroup",component:N.default},{title:t("Action Logs"),key:"action",component:C.default}];return this.enableCinder&&(0,m.default)(e).call(e,1,0,{title:t("Volumes"),key:"volumes",component:S.default}),(0,y.isIronicInstance)(this.detailData)?(0,h.default)(e).call(e,(e=>"volumes"!==e.key&&"snapshots"!==e.key&&"monitor"!==e.key)):e}init(){this.store=new b.ServerStore}}a.InstanceDetail=D;var z=(0,g.inject)("rootStore")((0,g.observer)(D));a.default=z},3578:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3579)),l=i(a(3580)),o={rowActions:{firstAction:l.default,moreActions:[{action:n.default}]},batchActions:[l.default,n.default]};t.default=o},3579:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(408));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:force"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.forceDelete({id:t})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete instance")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=u},3580:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(408));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-deferred-delete:restore"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.restore({id:t})}))}get id(){return"Recover"}get title(){return t("Recover")}get actionName(){return t("recover instance")}get passiveAction(){return t("be recovered")}get isAsyncAction(){return!0}}a.default=u},3581:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(562)),o=n(r(57)),s=n(r(27)),u=n(r(33)),d=n(r(32)),c=n(r(102)),f=n(r(81)),p=n(r(339)),m=n(r(579));r(333);var h=n(r(332)),v=n(r(1273));r(1196);var g=n(r(1197));r(1198);var y=n(r(1199)),b=n(r(51)),_=n(r(36)),S=n(r(0)),M=r(34),I=r(406),x=r(408),A=r(1334),w=r(575),N=r(585),C=n(r(1202)),P=n(r(1249)),k=r(201),j=(r(173),r(555),n(r(635))),T=n(r(3587)),D=n(r(3588)),z=n(r(3589)),L=n(r(4)),E=n(r(584)),O=r(1195),R=r(161),V=r(569),F=n(r(1542)),G=n(r(140)),B=n(r(3590));class U extends C.default{constructor(){var e;super(...arguments),e=this,(0,_.default)(this,"fetchVolumes",(0,b.default)((function*(){var t={serverId:e.id};e.isMyResource||(t.all_projects=!0),yield e.volumeStore.fetchList(t)}))),(0,_.default)(this,"fetchInterfaces",(0,b.default)((function*(){var t={device_id:e.id};e.isMyResource||(t.all_projects=!0),yield e.interfaceStore.fetchList(t),e.store.isLoading=!1}))),(0,_.default)(this,"fetchSeverGroup",(0,b.default)((function*(){var{server_groups:t=[]}=e.detailData;yield e.serverGroupStore.fetchDetail({id:t[0]})}))),(0,_.default)(this,"handleRefreshVolume",(()=>{this.fetchVolumes()}))}componentDidMount(){this.fetchVolumes(),this.fetchInterfaces(),this.detailData.server_groups[0]&&this.fetchSeverGroup()}init(){this.store=new x.ServerStore,this.interfaceStore=new w.PortStore,this.volumeStore=new A.InstanceVolumeStore,this.serverGroupStore=new N.ServerGroupStore}get leftCards(){var e=[this.networkCard,this.flavorCard,this.imageCard,this.securityGroupCard,this.tagsCard];return(0,O.isIronicInstance)(this.detailData)||e.push(this.serverGroupCard),e}get rightCards(){var e=[this.topoCard],{detail:{fault:t}}=this.props;return t&&t.message&&(0,l.default)(e).call(e,0,0,this.errorCard),e}get tagsCard(){var e=(0,M.toJS)(this.detailData.tags)||[],a=e.length?(0,o.default)(e).call(e,((e,t)=>(0,O.SimpleTag)({tag:e,index:t}))):"-",r=[{label:t("Tags"),content:a}];return{title:t("Tags Info"),options:r}}get networkCard(){var e,a=(0,M.toJS)(this.detailData.addresses)||[],r=[];(0,s.default)(e=(0,u.default)(a)).call(e,(e=>{var t=a[e],i=(0,d.default)(t).call(t,(e=>"fixed"===e["OS-EXT-IPS:type"])),n=(0,d.default)(t).call(t,(e=>"floating"===e["OS-EXT-IPS:type"]));(0,s.default)(i).call(i,(t=>{var a=(0,c.default)(n).call(n,(e=>e["OS-EXT-IPS-MAC:mac_addr"]===t["OS-EXT-IPS-MAC:mac_addr"]));r.push({netName:e,fixedIp:t,fip:a})}))}));var i=(0,o.default)(r).call(r,((e,t)=>{var a,{netName:r,fixedIp:i,fip:n}=e;return S.default.createElement("div",{key:(0,f.default)(a="".concat(i["OS-EXT-IPS-MAC:mac_addr"],"-")).call(a,t)},r," | ",i.addr," ",n&&S.default.createElement("span",null,"| ",n.addr))})),n=[{label:t("Network"),content:i}];return{title:t("Network Info"),options:n}}get flavorCard(){var e=(0,M.toJS)(this.detailData.flavor)||{},{extra_specs:a={}}=e,r=[{label:t("Flavor Name"),content:e.original_name},{label:t("RAM"),content:"".concat(e.ram/1024," GiB")},{label:t("VCPUs"),content:e.vcpus}];return"heterogeneous_computing"===a[":architecture"]&&"visualization_compute_optimized_type_with_gpu"===a[":category"]&&r.push({label:t("VGPU"),content:a["resources:VGPU"]}),{title:t("Flavor Info"),options:r}}get imageCard(){var e=this.detailData.itemInList||{},{image:a,image_name:r}=e,i=this.getRoutePath("imageDetail",{id:a}),n=[{label:t("Name"),content:r||"-"},{label:t("ID"),content:a?S.default.createElement(k.Link,{to:i},a):"-"}];return{title:t("Image Info"),options:n}}get securityGroupCard(){var{security_groups:e=[]}=this.detailData,a=(0,p.default)(new m.default((0,o.default)(e).call(e,(e=>e.name)))),{match:{url:r}}=this.props,i=[{label:t("Name"),dataIndex:"security_groups",render:()=>a&&a.length?(0,o.default)(a).call(a,(e=>S.default.createElement("div",{key:e},S.default.createElement(k.Link,{to:"".concat(r,"?tab=securityGroup"),key:e},e)))):"-"}];return{title:t("Security Group Info"),options:i}}get serverGroupCard(){var e=this.serverGroupStore.detail||{},{name:a}=e,r=[{label:t("Name"),content:a||"-"}];return{title:t("Server Group"),options:r}}get interfaces(){var e,t=[],{match:{url:a}}=this.props;return(0,s.default)(e=this.interfaceStore.list.data||[]).call(e,(e=>{var{name:r,id:i,networkName:n,fixed_ips:l=[],network_id:s}=e;t.push({networkName:n,name:S.default.createElement(k.Link,{to:"".concat(a,"?tab=interface")},r||i),address:(0,o.default)(l).call(l,(e=>e.ip_address)),network_id:s,interface:e})})),t}get volumeActions(){return{firstAction:F.default}}renderInterfaceRow(){var e,t=(0,o.default)(e=this.interfaces).call(e,((e,t)=>{var a;return S.default.createElement("div",{className:B.default["vm-interface"],key:"vm-interface-".concat(t)},S.default.createElement("div",{className:B.default["interface-line"]}),S.default.createElement("div",{className:B.default["interface-item"]},S.default.createElement("div",{style:{marginBottom:8}},e.networkName," ( ",e.name," )"," "),S.default.createElement("div",null,S.default.createElement("img",{alt:"interface_icon",src:z.default,style:{height:28,paddingLeft:6,marginRight:10}}),S.default.createElement("div",{style:{display:"inline-table"}},(0,o.default)(a=e.address).call(a,(e=>{var a;return S.default.createElement("div",{key:(0,f.default)(a="".concat(e,"-")).call(a,t)},e)}))))))}));return S.default.createElement(y.default,null,t)}renderImageType(e){return S.default.createElement(E.default,{className:B.default["info-item-icon"],type:e,title:e})}renderVmRow(){var e=(0,M.toJS)(this.detailData.itemInList)||{},{status:t}=this.detailData,{image_name:a,image_os_distro:r}=e;return S.default.createElement(y.default,{className:(0,L.default)(B.default.vm)},S.default.createElement("div",{className:B.default["vm-icon"]},S.default.createElement("img",{alt:"instance_icon",src:D.default,style:{height:36}})),S.default.createElement("div",{className:B.default["vm-info"]},S.default.createElement("div",{className:B.default["info-item"]},this.renderImageType(r),S.default.createElement("span",null,a)),S.default.createElement("div",{className:B.default["info-item"]},S.default.createElement(j.default,{status:t,text:O.instanceStatus[t]}))))}renderVolumeRow(){var e;if(!this.props.rootStore.checkEndpoint("cinder"))return null;var{match:{url:a}}=this.props,r=(0,o.default)(e=this.volumeStore.list.data||[]).call(e,(e=>{var r=[{label:"os_disk"===e.disk_tag?t("Root Disk"):t("Data Disk"),value:e.name||"-"},{label:t("ID"),value:S.default.createElement(k.Link,{to:"".concat(a,"?tab=volumes")},e.id)},{label:t("Size"),value:e.size?"".concat(e.size,"GiB"):"-"},{label:t("Volume Type"),value:e.volume_type||"-"},{label:t("Create Time"),value:(0,V.getSinceTime)(e.created_at)||"-"}],i=(0,o.default)(r).call(r,(e=>S.default.createElement(y.default,{className:B.default["volume-info-item"],key:"volume-info-item-".concat((0,R.generateId)())},S.default.createElement(g.default,{span:3,className:B.default["info-key"]},e.label),S.default.createElement(g.default,null,e.value))));return S.default.createElement("div",{className:B.default["attached-volume"],key:"attached-volume-".concat((0,R.generateId)())},S.default.createElement("div",{className:B.default["attached-volume-line"]}),S.default.createElement("div",{className:B.default["attached-volume-content"]},S.default.createElement("div",{className:B.default["volume-icon"]},S.default.createElement("img",{alt:"volume_icon",src:T.default,style:{height:36}})),S.default.createElement("div",{className:B.default["volume-info"]},i)))})),{isAdminPage:i}=this.props,n={isAdminPage:i};return S.default.createElement(y.default,{className:B.default["vm-volume"]},S.default.createElement("div",{className:B.default["volume-inline"]}),S.default.createElement("div",{className:B.default["volume-content"]},r,S.default.createElement("div",null,S.default.createElement("div",{className:B.default["attach-action-line"]}),S.default.createElement(P.default,{actions:this.volumeActions,onFinishAction:this.handleRefreshVolume,item:this.detailData,containerProps:n,firstActionClassName:B.default["attach-btn"]}))))}renderTopoContent(){return S.default.createElement("div",{className:B.default["topology-content"]},this.renderVmRow(),this.renderInterfaceRow(),this.renderVolumeRow())}get topoCard(){var e=t("Instance Architecture"),a=S.default.createElement("div",null,S.default.createElement("p",null,t("The instance architecture diagram mainly shows the overall architecture composition of the instance. If you need to view the network topology of the instance, please go to: ")),S.default.createElement(k.Link,{to:"/network/topo"},t("Network topology page"))),r=[{content:this.renderTopoContent()}],{refreshDetail:i}=this.props;return{labelCol:0,title:e,titleHelp:a,options:r,button:S.default.createElement(h.default,{size:"small",type:"default",shape:"circle",style:{marginLeft:16},onClick:()=>i(),icon:S.default.createElement(v.default,null)})}}get errorCard(){var{detail:{fault:e}}=this.props,a=[{label:t("Message"),content:e.message},{label:t("Code"),content:e.code},{label:t("Created At"),content:(0,V.getLocalTimeStr)(e.created)}];return G.default.hasAdminRole&&(0,l.default)(a).call(a,1,0,{label:t("Details"),content:S.default.createElement("pre",{className:B.default["pre-wrap"]},e.details)}),{labelCol:4,title:t("Error"),options:a,className:B.default["error-card"]}}}a.BaseDetail=U;var Y=(0,I.inject)("rootStore")((0,I.observer)(U));a.default=Y},3587:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYxNjk0MjU0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjczMyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik02NTguNyA4NzMuNmgzNi43di0zNi43aC0zNi43djM2Ljd6IG03My41IDBoMzYuN3YtMzYuN2gtMzYuN3YzNi43eiBtNzMuNCAwaDM2Ljd2LTM2LjdoLTM2Ljd2MzYuN3ogbS02NjEtNzMuNWg3NzEuMnYxMTAuMkgxNDQuNlY4MDAuMXpNMTA3LjkgOTQ3aDg0NC42Vjc2My40SDEwNy45Vjk0N3oiIGZpbGw9IiIgcC1pZD0iNzM0Ij48L3BhdGg+PHBhdGggZD0iTTE4MS4zIDY1LjdsLTczLjQgNjk3LjdoMzguM2w3MS44LTY2MWg2MjQuM2w3MS45IDY2MWgzOC4zTDg3OS4xIDY1Ljd6IiBmaWxsPSIiIHAtaWQ9IjczNSI+PC9wYXRoPjxwYXRoIGQ9Ik0yODguNiA1MDNjMC01NiA0NS40LTEwMS41IDEwMS41LTEwMS41aDEuNGM1LjctMzQuOSAyNi4xLTYwLjEgMzEuNi02Ni40IDI2LjQtMzEuOCA2Ni4yLTUyIDExMC43LTUyIDY1LjEgMCAxMjAuMSA0My4zIDEzNy44IDEwMi43IDYuOSAxMS4yIDYuOSA2MiA2LjkgNjYuMnYwLjZjMi41LTAuMiA0LjktMC40IDcuNS0wLjQgNDIgMCA3Ni4xIDQ0LjEgNzYuMSA3Ni4xIDAgMzItMzEgNDIuMy00Mi4yIDQyLjMtMS42IDAtNC42IDAtOC44LTAuMnYwLjJIMzIyLjRjLTcgMC0zMy44LTExLjctMzMuOC02Ny42bTc3LTEzMy4xYy02MyAxMS42LTExMC44IDY2LjgtMTEwLjggMTMzLjEgMCA3NC43IDM4LjggMTAxLjUgNTAuOCAxMDEuNWg0MDUuNnYwLjRjMjEuNiAwIDg0LjgtMTUuOCA4NC44LTc2LjUgMC01Mi0zNi4xLTk1LjYtODQuNy0xMDctMi44LTk1LjYtODEuMi0xNzIuMS0xNzcuNS0xNzIuMS03OC4xIDAtMTQ0LjUgNTAuNS0xNjguMiAxMjAuNiIgZmlsbD0iIiBwLWlkPSI3MzYiPjwvcGF0aD48cGF0aCBkPSJNNDA3LjcgNDAxLjZINDI3YzE1LjYtNDMuMiA1NS40LTc0LjggMTAzLjEtNzguNXYtMTguNGMtNTcuOCAzLjgtMTA2IDQzLjQtMTIyLjQgOTYuOSIgZmlsbD0iIiBwLWlkPSI3MzciPjwvcGF0aD48L3N2Zz4="},3588:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyMjA0MTg4IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjExOTQiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNMjM0LjY2NjY2NyAyNTZoNDIuNjY2NjY2VjE3MC42NjY2NjdoLTQyLjY2NjY2NnY4NS4zMzMzMzN6IG0tODUuMzMzMzM0IDBoNDIuNjY2NjY3VjE3MC42NjY2NjdIMTQ5LjMzMzMzM3Y4NS4zMzMzMzN6IG01MzMuMzMzMzM0LTIxLjMzMzMzM2gxNzAuNjY2NjY2VjE5MmgtMTcwLjY2NjY2NnY0Mi42NjY2Njd6TTIzNC42NjY2NjcgNTU0LjY2NjY2N2g0Mi42NjY2NjZ2LTg1LjMzMzMzNGgtNDIuNjY2NjY2djg1LjMzMzMzNHogbS04NS4zMzMzMzQgMGg0Mi42NjY2Njd2LTg1LjMzMzMzNEgxNDkuMzMzMzMzdjg1LjMzMzMzNHogbTUzMy4zMzMzMzQtMjEuMzMzMzM0aDE3MC42NjY2NjZ2LTQyLjY2NjY2NmgtMTcwLjY2NjY2NnY0Mi42NjY2NjZ6IG0yNzcuMzMzMzMzIDE0OS4zMzMzMzRjMTIuOCAwIDIxLjMzMzMzMy04LjUzMzMzMyAyMS4zMzMzMzMtMjEuMzMzMzM0VjY0YzAtMTIuOC04LjUzMzMzMy0yMS4zMzMzMzMtMjEuMzMzMzMzLTIxLjMzMzMzM0g2NGMtMTIuOCAwLTIxLjMzMzMzMyA4LjUzMzMzMy0yMS4zMzMzMzMgMjEuMzMzMzMzdjU5Ny4zMzMzMzNjMCAxMi44IDguNTMzMzMzIDIxLjMzMzMzMyAyMS4zMzMzMzMgMjEuMzMzMzM0aDQyNi42NjY2Njd2OTguMTMzMzMzTDQxOC4xMzMzMzMgODUzLjMzMzMzM0g0Mi42NjY2Njd2NDIuNjY2NjY3aDM3NS40NjY2NjZsNzguOTMzMzM0IDc4LjkzMzMzM2M0LjI2NjY2NyA0LjI2NjY2NyAxMC42NjY2NjcgNi40IDE0LjkzMzMzMyA2LjRzMTAuNjY2NjY3LTIuMTMzMzMzIDE0LjkzMzMzMy02LjRsNzguOTMzMzM0LTc4LjkzMzMzM0g5ODEuMzMzMzMzdi00Mi42NjY2NjdINjA1Ljg2NjY2N0w1MzMuMzMzMzMzIDc4MC44VjY4Mi42NjY2NjdoNDI2LjY2NjY2N3pNODUuMzMzMzMzIDg1LjMzMzMzM2g4NTMuMzMzMzM0djI1Nkg4NS4zMzMzMzNWODUuMzMzMzMzeiBtNDgyLjEzMzMzNCA3ODkuMzMzMzM0TDUxMiA5MzAuMTMzMzMzIDQ1Ni41MzMzMzMgODc0LjY2NjY2N2w1NS40NjY2NjctNTUuNDY2NjY3IDU1LjQ2NjY2NyA1NS40NjY2Njd6TTg1LjMzMzMzMyA2NDBWMzg0aDg1My4zMzMzMzR2MjU2SDg1LjMzMzMzM3oiIHAtaWQ9IjExOTUiPjwvcGF0aD48L3N2Zz4="},3589:function(e,t,a){"use strict";a.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNTk0MzYyODIzMjY3IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE2MjYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PGRlZnM+PHN0eWxlIHR5cGU9InRleHQvY3NzIj48L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNDM4LjAxIDU2MS4yNzFjMjYuMjEzIDAgNDcuNTQ0LTE3LjY0NyA1NC44NDItNDEuNDY5aDE1NS42NTd2ODMuMDM5aDE5OS42MjZWNDAzLjIxNUg2NDguNTA5djgzLjA4NEg0OTIuODUyYy03LjI5OC0yMy44MjItMjguNjI5LTQxLjQ2OS01NC44NDItNDEuNDY5LTMyLjE1NiAwLTU4LjIyMyAyNi4wNjctNTguMjIzIDU4LjIyMXMyNi4wNjggNTguMjIgNTguMjIzIDU4LjIyeiBtMjQ0LjAwMi0xMjQuNTU0aDEzMi42MjF2MTMyLjYyMUg2ODIuMDEyVjQzNi43MTd6IG0tNTg0LjM4OSAxLjgzN0g2NC4xMnYxNDIuNDc1aDMzLjUwMlY0MzguNTU0ek02NC4xMiAxMDguOTQ5VjM2NC44M2gzMy41MDJWMTQyLjQ1Mmg1NC4xMDV2NzM0LjYzNEg5Ny42MjNWNjU0Ljc1Mkg2NC4xMnYyNTUuODM3aDg5Ni4yMzR2LTgwMS42NEg2NC4xMnpNMTg1LjIzMSAzNjcuMTZoODIuMjExdjEyNS44NThIMTg1Ljg4di0zMS41MzJoLTAuNjQ5VjM2Ny4xNnogbTAgMTkwLjkzNmgwLjY0OVY1MjYuNTJoODEuNTYxdjEyNS44NThIMTg1LjIzdi05NC4yODJ6IG03NDEuNjIxIDMxOC45OWgtOTUuMDg4Vjc0OS40ODFoLTMzLjUwMnYxMjcuNjA1aC02Ni40NDVWNzQ5LjQ4MWgtMzMuNTAydjEyNy42MDVoLTY2LjQ2N1Y3NDkuNDgxaC0zMy41MDJ2MTI3LjYwNWgtNjYuNDY3Vjc0OS40ODFoLTMzLjUwMnYxMjcuNjA1SDE4NS44OHYtMjkuMTEzaC0wLjY0OXYtOTYuNjExaDAuNjQ5VjY4NS44OGgxMTUuMDY0VjMzMy42NTdIMTg1Ljg4VjI2OC4yMmgtMC42NDl2LTk2LjY1NWgwLjY0OXYtMjkuMTEzaDc0MC45NzJ2NzM0LjYzNHoiIGZpbGw9IiIgcC1pZD0iMTYyNyI+PC9wYXRoPjwvc3ZnPg=="},3590:function(e,t,a){var r=a(3591);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,i);r.locals&&(e.exports=r.locals)},3591:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__topology-content--1cSJn {\n overflow: auto;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey:first-child {\n border-left: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey:first-child .index__interface-line--8fWUK {\n border-left: none;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey {\n display: inline-block;\n margin-left: 35px;\n padding-bottom: 20px;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey .index__interface-line--8fWUK {\n display: inline-block;\n width: 8px;\n height: 60px;\n border-bottom: 1px solid #d2d2d2;\n border-left: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-interface--1d_Ey .index__interface-item--NVhcx {\n display: inline-block;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 {\n padding: 16px;\n background-color: #fbfdff;\n border: 1px solid #cfe1ff;\n border-radius: 4px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-icon--1c_A9 {\n display: inline;\n padding-right: 24px;\n font-size: 25px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-status--15Fe3 {\n display: inline-block;\n width: 6px;\n height: 6px;\n margin-right: 13px;\n margin-left: 5px;\n border-radius: 6px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS {\n display: inline;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS .index__info-item--Rk6uB {\n padding-bottom: 8px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS .index__info-item--Rk6uB .index__info-item-icon--2OgR6 {\n display: inline;\n height: 16px;\n padding-right: 8px;\n}\n.index__topology-content--1cSJn .index__vm--3TPR2 .index__vm-info--2-5wS :last-child {\n padding-bottom: 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-inline--2lwJK {\n width: 36px;\n margin-bottom: 12px;\n border-right: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding: 8px 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-line--3LhIZ {\n width: 60px;\n height: 52px;\n border-bottom: 1px solid #d2d2d2;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n padding: 16px;\n background-color: #fbfdff;\n border: 1px solid #cfe1ff;\n border-radius: 4px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-icon--2SMM2 {\n padding-right: 24px;\n font-size: 25px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd .index__volume-info-item--1GH_g {\n padding-bottom: 8px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd .index__volume-info-item--1GH_g .index__info-key--3NbQp {\n margin-right: 8px;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attached-volume--13RWR .index__attached-volume-content--1te6S .index__volume-info--2gdLd :last-child {\n padding-bottom: 0;\n}\n.index__topology-content--1cSJn .index__vm-volume--1T2Ma .index__volume-content--34D9n .index__attach-action-line--2PNV3 {\n display: inline-block;\n width: 60px;\n height: 24px;\n margin-right: 10px;\n border-bottom: 1px solid #d2d2d2;\n}\n.index__attach-btn--29U51 {\n max-width: 100px;\n}\n.index__attach-btn--29U51 span {\n max-width: 80px;\n}\n.index__error-card--2sRLi {\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n}\n.index__error-card--2sRLi .index__pre-wrap--2mXzo {\n font-family: Monaco, Menlo, Consolas, 'Courier New', monospace;\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n",""]),t.locals={"topology-content":"index__topology-content--1cSJn","vm-interface":"index__vm-interface--1d_Ey","interface-line":"index__interface-line--8fWUK","interface-item":"index__interface-item--NVhcx",vm:"index__vm--3TPR2","vm-icon":"index__vm-icon--1c_A9","vm-status":"index__vm-status--15Fe3","vm-info":"index__vm-info--2-5wS","info-item":"index__info-item--Rk6uB","info-item-icon":"index__info-item-icon--2OgR6","vm-volume":"index__vm-volume--1T2Ma","volume-inline":"index__volume-inline--2lwJK","volume-content":"index__volume-content--34D9n","attached-volume":"index__attached-volume--13RWR","attached-volume-line":"index__attached-volume-line--3LhIZ","attached-volume-content":"index__attached-volume-content--1te6S","volume-icon":"index__volume-icon--2SMM2","volume-info":"index__volume-info--2gdLd","volume-info-item":"index__volume-info-item--1GH_g","info-key":"index__info-key--3NbQp","attach-action-line":"index__attach-action-line--2PNV3","attach-btn":"index__attach-btn--29U51","error-card":"index__error-card--2sRLi","pre-wrap":"index__pre-wrap--2mXzo"}},3592:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.SecurityGroup=void 0;var p=f(r(32)),m=f(r(90)),h=f(r(57)),v=f(r(1395));r(337);var g=f(r(338));r(581);var y=f(r(423));r(572);var b=f(r(574)),_=f(r(409));r(1198);var S=f(r(1199));r(1196);var M=f(r(1197));r(333);var I=f(r(332));r(1250);var x=f(r(1251)),A=f(r(51)),w=f(r(36));r(1260);var N=f(r(1261));r(1404);var C=f(r(1405)),P=f(r(0)),k=r(406),j=r(34),T=f(r(408)),D=(r(173),f(r(1333))),z=f(r(4)),L=f(r(3597)),E=(r(555),f(r(1249))),O=r(347),R=r(161),V=r(558),F=f(r(3598)),G=f(r(3600)),B=f(r(3601));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 Y(e){for(var t=1;t{var t,{data:a}=this.store.securityGroups,r=(0,p.default)(t=(0,j.toJS)(a)).call(t,(t=>{var a;return-1!==(0,m.default)(a=e.security_groups).call(a,t.id)}));this.setState({activeInterfaceId:e&&e.id,activeInterface:e,filterData:r})})),this.state={activeInterfaceId:null,activeInterface:null,filterData:[]},this.store=T.default,this.tableColumns=(0,p.default)(a=(0,O.getSelfColumns)(this)).call(a,(e=>"direction"!==e.dataIndex))}get isAdminPage(){var{pathname:e}=this.props.location;return(0,R.isAdminPage)(e)}get showActions(){return!this.isAdminPage}getDetailUrl(e){var t=this.isAdminPage?"securityGroupDetailAdmin":"securityGroupDetail";return(0,V.getPath)({key:t,params:{id:e}})}renderPanelTitle(e){var{activeInterfaceId:a,filterData:r}=this.state,i=Y(Y({},e),{},{activeInterfaceId:a,filterData:r});return P.default.createElement("div",null,P.default.createElement(S.default,null,P.default.createElement(M.default,{span:22},P.default.createElement("span",null,t("Security Group")),P.default.createElement(x.default,{type:"vertical",className:F.default["header-divider"]}),P.default.createElement(I.default,{type:"link"},e.name)),P.default.createElement(M.default,{span:2},1!==r.length&&this.showActions?P.default.createElement(E.default,{actions:{firstAction:G.default},onFinishAction:this.actionCallback,item:i},t("Detach")):null)))}renderPanel(e,a){var r,i,n=(0,p.default)(r=e.security_group_rules).call(r,(e=>"egress"===e.direction)),l=(0,p.default)(i=e.security_group_rules).call(i,(e=>"ingress"===e.direction));return P.default.createElement(H,{header:this.renderPanelTitle(e,a),key:e.id,className:F.default.panel},P.default.createElement(N.default,{defaultActiveKey:"".concat(e.id,"-1")},P.default.createElement(q,{tab:t("Egress"),key:"".concat(e.id,"-1")},P.default.createElement(b.default,(0,_.default)({size:"middle",pagination:!1,bordered:!1},this.state,{columns:this.tableColumns,dataSource:n}))),P.default.createElement(q,{tab:t("Ingress"),key:"".concat(e.id,"-2")},P.default.createElement(b.default,(0,_.default)({size:"middle",pagination:!1,bordered:!1},this.state,{columns:this.tableColumns,dataSource:l})))))}renderRadio(e,a){return P.default.createElement(y.default.Button,{onClick:()=>this.filterSecurityGroup(e),value:a},P.default.createElement("div",null,P.default.createElement(S.default,null,P.default.createElement(M.default,{span:10},P.default.createElement("img",{className:F.default.image,alt:"example",src:L.default})),P.default.createElement(M.default,{span:14},P.default.createElement("div",{style:{fontSize:12}},t("Interface Name:")," ",e.id.substring(0,8)," "),P.default.createElement("div",{className:F.default["security-group-text"]},t("Security Group Num:")," ",e.security_groups.length)))))}render(){var e,{interfaces:a,isLoading:r}=this.store.securityGroups,{filterData:i,activeInterfaceId:n,activeInterface:l}=this.state,{port_security_enabled:o=!1}=l||{};return P.default.createElement("div",{className:(0,z.default)(F.default.wrapper,this.className)},P.default.createElement(g.default,{spinning:r},P.default.createElement(y.default.Group,{defaultValue:0,size:"large",marginBottom:"20",onChange:this.onChange,className:F.default["radio-button"]},a?(0,h.default)(e=(0,j.toJS)(a)).call(e,((e,t)=>this.renderRadio(e,t))):null)),this.showActions&&o&&P.default.createElement("div",{style:{marginBottom:20,marginTop:20}},P.default.createElement(D.default,{primaryActions:[B.default],onFinishAction:this.actionCallback,containerProps:{port:n,portItem:l,filterData:i}},t("Attach Security Group"))),i&&i.length?P.default.createElement(g.default,{spinning:r},P.default.createElement(C.default,{className:F.default.collapse,accordion:!0,bordered:!1,expandIcon:e=>{var{isActive:t}=e;return P.default.createElement(v.default,{rotate:t?90:0})}},(0,h.default)(i).call(i,((e,t)=>this.renderPanel(e,t))))):null)}}a.SecurityGroup=K;var Q=(0,k.inject)("rootStore")((0,k.observer)(K));a.default=Q},3597:function(e,t,a){"use strict";a.r(t),t.default="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAABSCAYAAACVI3yVAAAAAXNSR0IArs4c6QAADzJJREFUeAHtXXtwVOUVP9/m/dwNJCEkIckmvFUQCgjyRotYAj6KvHy0Ao1JIAqlzOhoMfBHO1qrdVq1OO1UZzpjH7ZTWx9YB2up1VE7tbXTFjvyKKJFRCWKvELy9XfuJmSz2c3e7+zm7t0l38ySvfd+537nnPu75zvnfOdbFJ1vrUVn0RlaQh6aAdFHkKb8800FIfIehw4eox3qWT6vQi6m9mGjngkBv4ZPaWoLaiidpk4qoBV0n/o83ZA0Obtfp9OomBrxJixOTgEc4Dof2kFLfUBs0jl0ku6AuFMcUGtyDuGhR6lVnWDmU3vKaNDFlEatAENtcj6pAee6HQi4nx5Rf+weKXUB0aDrusAwtFvYwb+9NNCG+WEb/UDtCT6bmoBo1NMg5O34ZAcLO/i9SwOa3oVmttKD6oNQnaQeIJr0UgjZgGnCEyrs4LGlgTcRaH+LI4pw+kgdQLRqDx22Qsqrwgk6eM7SwE5aQA/RctURSR+pAYhWnQ0w8BTBU8Vg66sBDYv5EySfnux7qfeZ5AfEJj0EYeU2iFXXW7TBI0sDik4jkvgOPaxesaOR5AbEBu2nsxYYiu0Iex72+RieVCvA8I5d2ZPX8bpFT6EOug+CDoIh/NPeT3m00QQMfJvktBBNmlPQTYORRHgk4OzrlEP30APqZMQeES4kFyA4kviA1gAI10aQJ/ppbb0E+fg3B50z8EleKxle2rdwejfks9YmwncJOuuBj3GW3oDD+S8+mzyA+CoiiWzaAp552VracqAmH6ROxTUchvpuKIYBYdYYPKX0ONYzziSHYtYiksiguyHlKDNJe/UuwhFbhlRsZyDXTgj231iFcz8gGnUNhN0GDJeIhOX3RhGvZ/AUkYrtM8j3Owj2kVi4TnqVrQPTuxsQ6/VkzG93gk/Zw9RY3lJWFJIpVpa7CY90gcFaujZmVSFOS6OX6PtqbzetewHRpK8EGNZDYKnTxw4jW5W0bmFT7O9eWM3fQz9nRXIpOoVp+PnQBS73zahaKwSUN0PIZSJBmUhbq5zFUJb75BMLFUSo6K84+nPQGbOvHjqGHMVzdK/6LJTQXQrjAth2+gaY5NpHaeOiWR8+7pJNKk1vuk4c/gGSWSFi70u2j96jYfRCt88QSuWeKWOj9iEi5khiTCiTto8DIWWB7f7J1fE0Js9nYf0Oidn20B5Moi8DDAyssM0db1GDroKw28FhaVguo51M/UiiDVaBI4lPoqki4vV0eg3O498jXu+6kHgL0awvRhE4RxJ50ZiNcJ2dTnYeUzOS0PQ/yPYMAGGchrb05YHTmUEv0vfUAes4yj+JBUSzXggwtIBHaSSQYeUnlJg+inoSfvltJAZ2QUcRC1qicHgC7vVO+q46GqXfucuJmTI4kmimm/AwV5zjxPQLRxKBhJM0LDUd0en+r0O+18SDKvoYtDux2nnc5B7OA6JVZ6K66etgco4JoyF9UzeS0LAGHlgFordDZLZ/qOggJopd9Khqt08U6OksIBq0F8Z9KyzDOFNGz/WPIZJQyEsU5dKQvCwqzEqnLAjPU5WzOjgnSN8vWUilzR9LNKyw7zW7Z0YNI/pCtT2hoI+PsSR6V51PPdJ9f+eU0aIrgdrtAENZ9+BGf2OMJAqyqaA4n8rSPZRlNK5DnQuRnL98PBH4FDU8XJpcRTQagDBpoOvAW1FS7VNWBOOMU9mkJwAMdwEMbOolLaZIorSQhnmzhYtjEm4NacqQRps3mogthKSl44nOrCMq53ScoHVyCW5XG3hANOnLMdatGFI6FkcSnIY2pucpotxLlbmZ5O0W2G1/R+KNno6HmSa01Zj+aA7A5BMs/0E/Gp/Nfp861q0XIRvd5FH+Nuob0WNVlF6RL8cQSWBqSKsoourMNMqNPEBir0zCXD+hUs7DENjbOSOxFCzIwAAIp/C52e9VPwvmwPitCyaO+H2HzqA3aROuz4vYJ9oFjUSVIi5qMQYtO4wMBrx1AlVFYyz262kw8bNGEdVwlYawVUIzM2BZAHzzpuhDj4euqilUr4YSGys79AZ9jlt0IRaotuI8XCRxYxMv8rXzMimvzEtVHpcmq/ht5kiiJIYVl7Fwyy+GAyl5eLAK/waGFtf41P5wT0dyz3D3CZxr1BXgkqubyiN36udKIJIYgh4iM4951AdFV4A+vnL1w7LJJR+S85cBDPnCSAJvNU3BNFMnqx1jrezyaFrmL+rxGUL5j5/iGvWFuPk38ZFin40f77EQhYUAQikAIVscw6AD3cph4ueOwYILpgtJy8DkPgtTBKyfqMEy/MjvpSalVL8FNfEBRLOej/zaJiBQ6pOkw6qUSOghqOsjiTEw8dP8qPeXzPd4/BxJzAOYCgWWBfrBOgHdjkjiXjtIih0QTXo1HuYNdgaL0IctAlsGY3VxJIHYuwpOpHSlNAJL8TmNh0FTauBMySZQiwkk06ywEjIaNwx/Akq9saZI/dousRwQDYgkPMgvYFq0O1iffjFEEpnplFnho2q3Zh45WcT5gRHsEQlbNV6TS/yyHAXAeBgYWlLlU38xGV6AO9x+jS6AeWd/gf0GafPiHqJIAommPFiGEUCzjH8pxzbpcmHzFmC1ZmgMdusCuMYT2D0WNOjlraxMqq/IVe+akpsrdKMejnrd7RhIxm4cIoniQipXLv2FmCEAAYOB531JQ7hM02qJ/NIchaLnCry0okT1LaC1ww+GN2i36PGYJni1UvRmYyT2E+SRRD4iiVz3RhI8PcyG85fBUgoaRyA8zUhzFHiYD/l9dBsiiQ7B8BaJfUA06bmo3NksiQS6mIspkhheSBV464TLN1L12KcbB8eRHUh+wyWNVznnAgyS1U74Cx34bEYa+kHJ2ME09thv1CtBdFMwoeF3cSTBGUekoauy3RpJwBqw48ehpbRx/cPMkUjAmE/gPORx2N2VdV71jHT8YLr+AdGq01HdxDWPXwwmMvzOWUf2tfsfK8xN3R5JZMDEz0XmEdGOuPmRdZxWI7Ysh1QG1dfmR6+mtstg5IfUrPO7qqEn2r1ZmH7sa4hya8j550LRVWBQ9t6EYSaepzj9vABgKIohkuCVzgukOQrs3srIQFiZp96Pp1zhld2sy+A4bsNAI8SDKVgFzjMImjeHvLwmATAI3TPBoAYkxUjOMxgky848TBqkml5LVCXMUUAvT2V7aXW5Cvw+tQHrUbvi3iFtgx6L6qa7cVb0ZoOOH6I4koCyS4pysNnMpa0a4SAvXXPiSdKyURU1G/ScgZQ05aH7/YW0BZFEp4Q+Gk1vQDTrWZgmtoAIbIuaOJKANVFINpUjkuAaCFe2i2Diuailt9LsswrLZ4WV+ZIcBXZ5403bgDWJHfZHNO/ZIxv/kJfG9nt5izWSGIFIQvjeyJm2Q8mLUlzmNiqGtVRepeRIQrja2Yaw8rpan3rBDr+x9AkAIvD7Tb/EjYSGEPULGj6DYPs9FJQB57EGJljy3sQiuy1aLnzl/MDwGCIJBtJkWBZJjgJAOIAKq/rqAvVPWwzH2CngVNbgLofFdwpEEj22xvaN4JTloAi2GooK79zavtPAdGR/YYofBS0xQHUS3PKxw2X8AQyv5abR0rICdUR2B3OqnsfYqK8A+Rp87Be4BKyCKJLAPgRvqcsiCZ4aMG1RKcz7aLzVsVgFdjpn1BJx7aOkAQy/UF76il+pUxJ6KU0PIEzuwD/s0UELMU2IsH/DdFo0bjhdrXmhKwVbDqaZOWOQjRMVAlpTy7drvHQnIgnttHrMHwgX0XbQlQCDcViK1Gzaull0Pd68mU4L6tR42CpoRRJYojdvitpR89iAmsfHzInjQ2EGCE5YkWUZkKcza758ylk3k25B3SMWh1OzYc3FmiY4pW3aMEV8AntwLcDwkiltPPvbB0QL/g+rszQfg2OmNWu1JTR09TTagKSMNFFrNmACevOeSo4k7Cs0iElF70Cri+sK1X+Czibkqz3vvkVPAhimSjic6if/4ouoGaVu0hoKybCO0eDNtnZbS3MUIP9TpoeuqSxUHznGdD8D9Q9o/rHxo/gdhw5CJG7erryQJl1aR2ugNMmMaj6gwxQcScSyyRbK/ykKWtbCeTzjMOsRh4sMCI4kOrHs3Skz86svoYVYybs2VSMJ7BCzIgnJJlt+Gghx70ZBy/aITyZBF8IDgiOJTlqEj3F+Dg6VZ+1sWlXpi+kXYhKkDnvDxrLJFk7GaSTieJPtE/ZGc7ZXX0Dcpodhb+YVCCvNI4k8yl6LSAKh13hnxXBuNK6b5KVr+ETmTdFRLH3zJttXzImdoegNiCZdCwTPBxiMA6eaYhrCkQTib1k1tjPyxjQKb7jhopbeSrN3S/hRe6DUxfilln32KBLTqyfKaEFF9VmaBTAYN2xAra6fSOvx1hgnq4wHSwABp7SnIqRE+Cxril5EjuHL1f1sspXdOP5UAUBw7eSHdKnk9gsvpInYhLoO82JKRhK8yXb2SPkPgcEy/Lhrk227RL9O0wQA8T6soKAkZuVUuuyiCloGoyKZUZ2W1Xg89hd4tVKy6QZA4E22d6Cg5R7jgRNI0DMdculcB10CXrKi8QNroBrm0Eqs5M2L1jeZrnevdnJ520isdkp/HhBKPQk03Iif+/tVMsnPvPYAwibnR7TO/6yNfg5f40s2Sc6rbrAMhwGGpdgn8UYyCm4EiEMndOWZ0/Q0poiJySisAzz/A8F6fV2OOujAWAMyhG1AHPhET0KZL4MBwddgC9UALMNObLJdLt1kG3q/RB3bcgb3fqrrsXt09yAYwj8mgOFhRBL1yQ4Gli4qIPa16RbsAPgN+rqyIjr8I3LmLIDQCQVuQjX0eixQ4Z1J/hZxytBae/YfowdgFW5NfjEHRILjyOeuQg3D0wNy9wTdNCwgDmudd+IYPQEwLEkQX24f9j1YhnpUN/3N7Yya8tcHEAc/1+Xt7fj/nTRNNr3ZedF/gDbZukV3vQCx77ieoNvx/zuhetwtDLqJDyjrt7k+Wl2m1Odu4iuevJxzKve36UUAw8u4+SAYwmgYWcwHUN10TSqDgcW21jL2tunrUdn0OI6Nl73D6C61TgU22bagoOWHqSVYeGkUoom0fces/7ArJYtgw4tt++ynsAzLAYbnbVMkecfuKaOXL5HkMsWFfSjkqXRFk84nMLDiPJxQQYJlHT4fxEWTyXoTTA1g/T3o4Ul8rqgtUle7vbppIFT9f2bufJ+IENUJAAAAAElFTkSuQmCC"},3598:function(e,t,a){var r=a(3599);"string"==typeof r&&(r=[[e.i,r,""]]);var i={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,i);r.locals&&(e.exports=r.locals)},3599:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--310WV {\n min-height: calc(100vh - 108px);\n padding: 0 16px;\n}\n.index__collapse--wSiUn {\n margin-bottom: 24px;\n overflow: hidden;\n}\n.index__panel--30Vl4 {\n margin-bottom: 24px;\n padding-top: 12px;\n padding-bottom: 12px;\n font-size: larger;\n background: #fff;\n}\n.index__header-divider--3ZGVN {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n.index__image--1tdnF {\n width: 70px;\n padding: 10px;\n}\n.index__radio-button--2cF9L .ant-radio-button-wrapper {\n width: 250px;\n height: 100px;\n margin-right: 40px;\n margin-bottom: 20px;\n padding: 15px;\n}\n.index__security-group-text--3v-p7 {\n font-size: 12px;\n}\n",""]),t.locals={wrapper:"index__wrapper--310WV",collapse:"index__collapse--wSiUn",panel:"index__panel--30Vl4","header-divider":"index__header-divider--3ZGVN",image:"index__image--1tdnF","radio-button":"index__radio-button--2cF9L","security-group-text":"index__security-group-text--3v-p7"}},3600:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(27)),o=n(r(36)),s=r(1193),u=n(r(416));class d 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{activeInterfaceId:t,filterData:a,id:r}=e,i=[];(0,l.default)(a).call(a,(e=>{e.id!==r&&i.push(e.id)}));var n={port:{security_groups:i}};return u.default.updatePortSecurityGroup({id:t,reqBody:n})}))}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=d},3601:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageSecurityGroup=void 0;var l=n(r(57)),o=n(r(65)),s=n(r(36)),u=r(406),d=r(1193),c=n(r(408)),f=r(416),p=r(1274);class m extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>{var{securityGroup:{selectedRowKeys:t=[]}={}}=e,{port:a}=this.containerProps,r={port:{security_groups:t}};return this.securityGroupStore.updatePortSecurityGroup({id:a,reqBody:r})}))}init(){this.store=c.default,this.securityGroupStore=new f.SecurityGroupStore}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("Manage Security Group")}get messageHasItemName(){return!1}get defaultValue(){var{filterData:e=[]}=this.containerProps;return{securityGroup:{selectedRowKeys:(0,l.default)(e).call(e,(e=>e.id)),selectedRows:e}}}get formItems(){return[{name:"securityGroup",label:t("Security Group"),type:"select-table",required:!0,tips:t("The security group is similar to the firewall function for setting up network access control, or you can go to the console and create a new security group. (Note: The security group you selected will work on all virtual LANS on the instances.)"),backendPageStore:this.securityGroupStore,extraParams:{project_id:this.currentProjectId},isMulti:!0,filterParams:p.securityGroupFilter,columns:p.securityGroupColumns,onRow:()=>{}}]}}a.ManageSecurityGroup=m,(0,s.default)(m,"id","manage-security-group"),(0,s.default)(m,"title",t("Manage Security Group")),(0,s.default)(m,"policy","update_port"),(0,s.default)(m,"allowed",(()=>o.default.resolve(!0)));var h=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=h},3602:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ActionLog=void 0;var l=n(r(36)),o=r(406),s=n(r(1194)),u=n(r(1533)),d=r(1195);class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>(0,d.actionColumn)(this)))}init(){this.store=u.default}get name(){return t("Action Logs")}get rowKey(){return"request_id"}get policy(){return"os_compute_api:os-instance-actions:list"}get hideSearch(){return!0}}a.ActionLog=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3603:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.getBaseSnapshotColumns=void 0;var i=r(563);a.getBaseSnapshotColumns=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e.getRouteName("instanceSnapshotDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!e.isAdminPage,sorter:!1},{title:t("Description"),dataIndex:"description",isHideable:!0,sorter:!1},{title:t("Disk Format"),dataIndex:"disk_format",isHideable:!0,valueMap:i.imageFormats},{title:t("Status"),dataIndex:"status",valueMap:i.imageStatus},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}]},3604:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateVolume=void 0;var l=n(r(1204)),o=n(r(65)),s=n(r(102)),u=n(r(81)),d=n(r(51)),c=n(r(36)),f=r(406),p=r(34),m=r(1193),h=n(r(410)),v=r(1339),g=r(557);class y extends m.ModalAction{constructor(){super(...arguments),(0,c.default)(this,"onSubmit",(e=>{var{name:t,size:a,volume_type:r}=e,i={imageRef:this.item.id,name:t,size:a};return i.volume_type=r||this.volumeType,h.default.create(i)}))}init(){this.volumeStore=h.default,this.snapshotStore=new v.InstanceSnapshotStore,this.getVolumeTypes(),this.getMinSize()}get name(){return t("Create Volume")}get instanceName(){return(0,l.default)(this).name}static get disableSubmit(){return(0,g.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,g.getQuotaInfo)(this)}getVolumeTypes(){var e=this;return(0,d.default)((function*(){var t,{id:a}=e.item,[r,i]=yield o.default.all([e.volumeStore.fetchVolumeTypes(),e.snapshotStore.fetchDetail({id:a})]),{volumeDetail:{volume_type:n}={}}=i,l=(0,s.default)(t=e.volumeTypes).call(t,(e=>e.label===n));l&&(e.volumeType=l.value,(0,g.setCreateVolumeType)(n)),e.updateFormValue("volume_type",e.volumeType)}))()}getMinSize(){var e=this;return(0,d.default)((function*(){var{id:t}=e.item;e.snapshot&&e.snapshot.volume_size?(0,g.fetchQuota)(e,e.minSize):(yield e.snapshotStore.fetchDetail({id:t}),(0,g.fetchQuota)(e,e.minSize),e.updateDefaultValue())}))()}get volumeTypes(){return this.volumeStore.volumeTypes}get tips(){return t("Snapshots can be converted into volume and used to create an instance from the volume.")}get defaultValue(){var{name:e}=this.item;return{snapshot:e,size:this.minSize,volume_type:this.volumeType}}get bdmData(){var{block_device_mapping:e="[]"}=this.item;return JSON.parse(e)}get snapshot(){var e;return(0,s.default)(e=this.bdmData).call(e,(e=>0===e.boot_index))}get minSize(){var{min_disk:e,size:t}=this.item,a=Math.max(e,Math.ceil(t/1024/1024/1024),1,(this.snapshot||{}).volume_size||1);if(a)return a;var{snapshotDetail:{size:r=0}={}}=(0,p.toJS)(this.snapshotStore.detail)||{};return Math.max(r,1)}get formItems(){var e,{more:a}=this.state;return[{name:"snapshot",label:t("Volume Snapshot"),type:"label",iconType:"snapshot"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:this.minSize,extra:(0,u.default)(e="".concat(t("Min size"),": ")).call(e,this.minSize,"GiB"),required:!0,onChange:g.onVolumeSizeChange},{name:"more",type:"more",label:t("Advanced Options")},{name:"volume_type",label:t("Volume Type"),type:"select",options:this.volumeTypes,placeholder:t("Please select volume type"),hidden:!a,onChange:g.onVolumeTypeChange}]}}a.CreateVolume=y,(0,c.default)(y,"id","create"),(0,c.default)(y,"title",t("Create Volume")),(0,c.default)(y,"policy","volume:create_from_image"),(0,c.default)(y,"allowed",(()=>o.default.resolve(!0)));var b=(0,f.inject)("rootStore")((0,f.observer)(y));a.default=b},3605:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=n(r(1253));class d extends u.default{static path(e){return"/compute/instance/create?snapshot=".concat(e.id)}static allowed(e){return l.default.resolve("active"===e.status)}}a.StepCreate=d,(0,o.default)(d,"id","instance-create"),(0,o.default)(d,"title",t("Create Instance")),(0,o.default)(d,"policy","os_compute_api:servers:create");var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3606:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.EditAction=void 0;var l=n(r(27)),o=n(r(33)),s=n(r(65)),u=n(r(36)),d=n(r(559)),c=n(r(111)),f=r(406),p=r(1193),m=n(r(565));class h extends p.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var t,{id:a}=this.item,r=[];return(0,l.default)(t=(0,o.default)(e)).call(t,(t=>{if((0,d.default)(this.item,t)&&(0,c.default)(this.item,t)!==e[t]){var a={op:"replace",path:"/".concat(t),value:e[t]};r.push(a)}else if(!(0,d.default)(this.item,t)&&e[t]){var i={op:"add",path:"/".concat(t),value:e[t]};r.push(i)}})),0===r.length?s.default.resolve():m.default.update({id:a},r)}))}get name(){return t("edit instance snapshot")}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"),isImage:!0,required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditAction=h,(0,u.default)(h,"id","edit"),(0,u.default)(h,"title",t("Edit Instance Snapshot")),(0,u.default)(h,"buttonText",t("Edit")),(0,u.default)(h,"policy","modify_image"),(0,u.default)(h,"allowed",(()=>s.default.resolve(!0)));var v=(0,f.inject)("rootStore")((0,f.observer)(h));a.default=v},3607:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(565));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_image"),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Instance Snapshot")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete instance snapshot")}}a.default=u},3608:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=t.Flavor=void 0;var n=i(a(57)),l=i(a(51)),o=a(406),s=i(a(1234)),u=i(a(1276)),d=a(1213),c=i(a(3611)),f=i(a(3616)),p=i(a(3619)),m=i(a(3622)),h=i(a(3625));class v extends s.default{init(){this.settingStore=u.default,this.getSettings()}getSettings(){var e=this;return(0,l.default)((function*(){yield e.settingStore.fetchList();var t=(0,d.getAllArchitecture)(e.settingStore.list.data);e.setState({architectures:t})}))()}get tabs(){var{architectures:e=[]}=this.state,t={x86_architecture:c.default,heterogeneous_computing:f.default,bare_metal:m.default,arm_architecture:p.default,custom:h.default};return(0,n.default)(e).call(e,(e=>({title:d.flavorArchitectures[e],key:e,component:t[e]})))}}t.Flavor=v;var g=(0,o.inject)("rootStore")((0,o.observer)(v));t.default=g},3611:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(81)),m=f(r(36)),h=r(406),v=f(r(1194)),g=r(1218),y=r(334),b=r(1213),_=r(161),S=f(r(3612));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"x86_architecture"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.x86_architecture," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.x86CategoryList)}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3612:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3613)),l=i(a(1278)),o=i(a(1279)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3613:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(36)),s=n(r(1277));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=x86_architecture"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3614:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.AccessTypeSetting=void 0;var p=f(r(36)),m=r(406),h=f(r(1201)),v=r(407),g=r(1235);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 b(e){for(var t=1;t{var t,a=(0,l.default)(t=this.flavorCategoryList).call(t,(t=>t.value===e));return a?a.properties:[]})),(0,p.default)(this,"getDefaultResourcePropValues",(()=>{var e;return(0,o.default)(e=this.resourcePropNeedKeys).call(e,((e,t)=>({index:t,value:{key:e,value:"0"}})))})),(0,p.default)(this,"allowed",(()=>s.default.resolve())),(0,p.default)(this,"numaValidate",(e=>{var{getFieldValue:a}=e;return{validator(e,r){var i=a("category");if(!(0,_.isComputeOptimized)(i))return s.default.resolve();if(!r||0===r.length)return s.default.reject(t("Please set MUNA"));var n=a("vcpus"),l=a("memoryGb");if(!n||!l)return s.default.reject(t("Please set CPU && Ram first."));var o=1024*l,d=0,c=0;(0,u.default)(r).call(r,(e=>{d+=e.value.cpu,c+=e.value.ram}));var f=!1,p=t("Invalid: ");return d!==n&&(p+=t("CPU value is { cpu }, NUMA CPU value is { totalCpu }, need to be equal. ",{cpu:n,totalCpu:d}),f=!0),c!==1024*l&&(p+=t("Ram value is { ram }, NUMA RAM value is { totalRam }, need to be equal. ",{ram:o,totalRam:c}),f=!0),f?s.default.reject(p):s.default.resolve()}}})),(0,p.default)(this,"pageSizeValueValidate",((e,a)=>/^[1-9]\d*(Kb\(it\)|Kib\(it\)|Mb\(it\)|Mib\(it\)|Gb\(it\)|Gib\(it\)|Tb\(it\)|Tib\(it\)|KB|KiB|MB|MiB|GB|GiB|TB|TiB)?$/.test(a)?s.default.resolve():s.default.reject(t("Please enter right format memory page value!")))),(0,p.default)(this,"checkResourceProps",(e=>!(0,l.default)(e).call(e,((e,t)=>{var{key:a,value:r}=e.value||{};if(!r)return!0;if(t>=this.resourcePropNeedKeys.length){if(!/^CUSTOM_[A-Z0-9_]{1,248}$/.test(a))return!0}return!1})))),(0,p.default)(this,"checkTraitProps",(e=>!!(0,m.default)(e)||!(0,l.default)(e).call(e,(e=>!e.value))))}init(){this.settingStore=S.default,this.getSettings()}getSettings(){var e=this;return(0,f.default)((function*(){yield e.settingStore.fetchList(),e.updateDefaultValue()}))()}get familyItemValue(){return(0,_.getFamilyItemValue)(this.settingStore.list.data)}get tab(){var e,t=(0,I.parse)((0,d.default)(e=this.routing.location.search).call(e,1)),{tab:a}=t;return a}get flavorArchitectures(){var e;return(0,o.default)(e=(0,_.getAllArchitecture)(this.settingStore.list.data,!1)).call(e,(e=>({label:_.flavorArchitectures[e],value:e})))}get flavorCategoryList(){var e,t,{architecture:a}=this.state;if(!a)return[];var r=(0,l.default)(e=this.familyItemValue).call(e,(e=>e.architecture===a));return r?(0,o.default)(t=r.categories).call(t,(e=>({value:e.name,label:_.flavorCategoryList[e.name]||e.name,properties:e.properties}))):[]}get gpuTypes(){var e,t,a,r=(0,l.default)(e=this.settingStore.list.data||[]).call(e,(e=>"gpu_models"===e.key));return r&&r.value instanceof Array?(0,o.default)(t=r.value).call(t,(e=>({value:e,label:e}))):r&&"object"==typeof r.value?(0,o.default)(a=(0,c.default)(r.value)).call(a,(e=>({label:e,value:e}))):[]}get usbTypes(){var e,t,a,r=(0,l.default)(e=this.settingStore.list.data||[]).call(e,(e=>"usb_models"===e.key));return r&&r.value instanceof Array?(0,o.default)(t=r.value).call(t,(e=>({value:e,label:e}))):r&&"object"==typeof r.value?(0,o.default)(a=(0,c.default)(r.value)).call(a,(e=>({label:e,value:e}))):[]}get vgpuTypes(){return[{value:"vgpu",label:"vgpu"}]}get resourcePropNeedKeys(){return["VCPU","MEMORY_MB","DISK_GB"]}get defaultValue(){return{vcpus:1,memoryGb:1,numaNodesNum:1,settings:(0,g.toJS)(this.settingStore.list.data||[]),ephemeral:0,ephemeralTmp:0,disk:0,architecture:this.tab,attachUsb:!1,resourceProps:this.getDefaultResourcePropValues(),traitProps:[],memPageSizeMore:"any",memPageSize:"large"}}get defaultNUMAValue(){return{cpu:1,ram:1024}}get nameForStateUpdate(){return["architecture","category","attachUsb","memPageSizeMore","more","memPageSize"]}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get formItems(){var{architecture:e,category:a,attachUsb:r,memPageSizeMore:i,more:n=!1,memPageSize:l}=this.state,o="bare_metal"===e,u=(0,_.categoryHasIOPS)(a),d=(0,_.categoryHasEphemeral)(a),c=(0,_.isGpuCategory)(a),f=(0,_.isGpuVisual)(a),p=c&&!f,m=(0,_.isComputeOptimized)(a),v=_.flavorCategoryList[a]||a,g=!m&&!o,b=n&&g,S=b&&"custom"===i,I=m&&"custom"===l,A=t("It is recommended that { instanceType } instance simultaneously set NUMA affinity policy for PCIE device to force or priority matching. This configuration can further improve PCIE computing performance.",{instanceType:v}),w=t("It is recommended to set CPU binding strategy as binding on { instanceType } instance. This configuration further improves the performance of the instance CPU.",{instanceType:v}),N=t("It is recommended to set the CPU thread binding policy as thread binding in { instanceType } instance, which can further improve the CPU performance of instance.",{instanceType:v}),C=t("It is recommended that the { instanceType } instance simultaneously set large page memory to large. { instanceType } instances also require faster memory addressing capabilities.",{instanceType:v}),P=t("The unit suffix must be one of the following: Kb(it), Kib(it), Mb(it), Mib(it), Gb(it), Gib(it), Tb(it), Tib(it), KB, KiB, MB, MiB, GB, GiB, TB, TiB. If the unit suffix is not provided, it is assumed to be KB."),k=t("Please enter a memory page size, such as: 1024, 1024MiB");return[{name:"title1",label:t("Basic Parameters"),type:"title"},{name:"architecture",label:t("Architecture"),type:"radio",options:this.flavorArchitectures,required:!0},{name:"category",label:t("Type"),type:"radio",options:this.flavorCategoryList,required:!0,wrapperCol:{xs:{span:16},sm:{span:12}}},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"vcpus",label:t("CPU(Core)"),type:"input-int",min:1,extra:t("The number of vCPU cores should not exceed the maximum number of CPU cores of the physical node. Otherwise it will cause fail to schedule to any physical node when creating instance."),required:!0},{name:"memoryGb",label:t("Ram Size (GiB)"),type:"input-int",min:1,required:!0},{name:"bandwidth",label:t("Internal Network Bandwidth(Gbps)"),type:"input-int",hidden:o,min:1},{name:"ephemeral",label:t("Ephemeral Disk (GiB)"),type:"input-int",min:0,hidden:!d,required:d},{name:"ephemeralTmp",label:t("Ephemeral Disk (GiB)"),type:"input-int",min:0,hidden:o||d,disabled:!d},{name:"disk",label:t("Root Disk (GiB)"),type:"input-int",min:0,hidden:this.enableCinder},{name:"iops",label:t("Storage IOPS"),type:"input-int",min:1,hidden:o||!u},{name:"numaNodesNum",label:t("NUMA Nodes"),type:"input-int",min:1,required:!0,hidden:!g},{name:"more",label:t("Advanced Options"),type:"more",hidden:!g},{name:"memPageSizeMore",label:t("Memory Page"),type:"select",options:_.pageTypeList,hidden:!b,required:b,tip:C},{name:"memPageSizeValueMore",label:t("Memory Page Size"),type:"input",hidden:!S,required:S,extra:P,validator:this.pageSizeValueValidate,placeholder:k},{name:"gpu-type",label:t("GPU Parameters"),type:"title",hidden:!c},{name:"gpuType",label:t("GPU Model"),type:"select",hidden:!p,required:p,options:this.gpuTypes,tip:t("GPU pass-through will load GPU devices directly to the instance for use. VGPU is a GPU virtualization solution. GPU resources will be segmented and distributed to multiple instances for shared use.")},{name:"gpuNumber",label:t("Number of GPU"),type:"input-int",min:1,hidden:!c,required:c},{name:"title2",label:t("Optimized Parameters"),type:"title",hidden:!m},{name:"numaNodes",label:t("NUMA Nodes"),type:"add-select",dependencies:["vcpu","memoryGb"],required:m,defaultItemValue:this.defaultNUMAValue,itemComponent:y.default,minCount:1,maxCount:8,addTextTips:t("NUMA Node"),addText:t("Add NUMA Node"),otherRule:this.numaValidate,hidden:!m,tip:A},{name:"cpuPolicy",label:t("CPU Policy"),type:"radio",options:(0,M.getOptions)(_.cpuPolicyList),tip:w,hidden:!m,required:m},{name:"cpuThreadPolicy",label:t("CPU Thread Policy"),type:"select",options:_.cpuThreadPolicyList,tip:N,hidden:!m,required:m},{name:"memPageSize",label:t("Memory Page"),type:"select",options:_.pageTypeList,hidden:!m,required:m,tip:C},{name:"memPageSizeValue",label:t("Memory Page Size"),type:"input",hidden:!I,required:I,extra:P,validator:this.pageSizeValueValidate,placeholder:k},{name:"usb-type",label:t("USB Parameters"),type:"title",hidden:!this.usbTypes[0]},{name:"attachUsb",label:t("Attach USB"),type:"radio",optionType:"default",hidden:!this.usbTypes[0],options:[{label:t("Yes"),value:!0},{label:t("No"),value:!1}]},{name:"usbType",label:t("Usb Controller"),type:"select",hidden:!r,required:r,options:this.usbTypes},{name:"usbNumber",label:t("Number of Usb Controller"),type:"input-int",min:1,hidden:!r,required:r},{name:"bare-metal-type",label:t("BareMetal Parameters"),type:"title",hidden:!o},{name:"resourceProps",label:t("Resource Class Properties"),type:"add-select",itemComponent:x.default,addText:t("Add Property"),minCount:this.resourcePropNeedKeys.length,hidden:!o,required:o,readonlyKeys:this.resourcePropNeedKeys,extra:h.default.createElement("div",null,h.default.createElement("p",null,t("1. The name of the custom resource class property should start with CUSTOM_, can only contain uppercase letters A ~ Z, numbers 0 ~ 9 or underscores, and the length should not exceed 255 characters (for example: CUSTOM_BAREMETAL_SMALL).")),h.default.createElement("p",null,t("2. You can customize the resource class name of the flavor, but it needs to correspond to the resource class of the scheduled node (for example, the resource class name of the scheduling node is baremetal.with-GPU, and the custom resource class name of the flavor is CUSTOM_BAREMETAL_WITH_GPU=1)."))),validator:(e,a)=>this.checkResourceProps(a)?s.default.resolve():s.default.reject(t("Please enter right format key value!"))},{name:"traitProps",label:t("Trait Properties"),type:"add-select",isInput:!0,addText:t("Add Property"),hidden:!o,required:o,extra:t("The trait name of the flavor needs to correspond to the trait of the scheduling node; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all necessary traits (for example: the trait of the scheduling node has HW_CPU_X86_VMX trait, and the flavor adds HW_CPU_X86_VMX, it can be scheduled to this node for necessary traits)."),validator:(e,a)=>this.checkTraitProps(a)?s.default.resolve():s.default.reject(t("Please enter right format trait!"))}]}}a.ParamSetting=A;var w=(0,v.inject)("rootStore")((0,v.observer)(A));a.default=w},3616:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(81)),m=f(r(36)),h=r(406),v=f(r(1194)),g=r(1218),y=r(334),b=r(1213),_=r(161),S=f(r(3617));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.gpuColumns,...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"heterogeneous_computing"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.heterogeneous_computing," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.heterogeneousCategoryList),include:!1}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3617:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3618)),l=i(a(1278)),o=i(a(1279)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3618:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(36)),s=n(r(1277));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=heterogeneous_computing"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3619:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(81)),m=f(r(36)),h=r(406),v=f(r(1194)),g=r(1218),y=r(334),b=r(1213),_=r(161),S=f(r(3620));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 I(e){for(var t=1;t[...(0,b.getBaseColumns)(this),...b.extraColumns])),(0,m.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"arm_architecture"})))}init(){this.store=new g.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,p.default)(e="".concat(b.flavorArchitectures.arm_architecture," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:y.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Category"),name:"category",options:(0,_.getOptions)(b.armCategoryList)}]}}a.Flavor=x;var A=(0,h.inject)("rootStore")((0,h.observer)(x));a.default=A},3620:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3621)),l=i(a(1278)),o=i(a(1279)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3621:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(36)),s=n(r(1277));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=arm_architecture"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3622:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(32)),m=f(r(90)),h=f(r(81)),v=f(r(36)),g=r(406),y=f(r(1194)),b=r(1218),_=r(334),S=r(1213),M=f(r(3623));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 x(e){for(var t=1;t{var e=[...(0,S.getBaseColumns)(this),...S.extraColumns],t=["quota:vif_outbound_average","OS-FLV-EXT-DATA:ephemeral","quota:disk_total_iops_sec"];return(0,p.default)(e).call(e,(e=>(0,m.default)(t).call(t,e.dataIndex)<0))})),(0,v.default)(this,"updateFetchParams",(e=>x(x({},e),{},{tab:"bare_metal"})))}init(){this.store=new b.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,h.default)(e="".concat(S.flavorArchitectures.bare_metal," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?M.default:_.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Flavor=A;var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w},3623:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3624)),l=i(a(1278)),o=i(a(1279)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3624:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(65)),o=n(r(36)),s=n(r(1277));class u extends s.default{static allowed(){return l.default.resolve(!0)}}a.default=u,(0,o.default)(u,"id","flavor-create"),(0,o.default)(u,"title",t("Create Flavor")),(0,o.default)(u,"path","/compute/flavor-admin/create?tab=bare_metal"),(0,o.default)(u,"policy","os_compute_api:os-flavor-manage:create")},3625:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Flavor=void 0;var p=f(r(562)),m=f(r(81)),h=f(r(36)),v=r(406),g=f(r(1194)),y=r(1218),b=r(334),_=r(1213),S=f(r(3626));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 I(e){for(var t=1;t{var e=[...(0,_.getBaseColumns)(this)];return(0,p.default)(e).call(e,1,1),[...e,..._.extraColumns]})),(0,h.default)(this,"updateFetchParams",(e=>I(I({},e),{},{tab:"custom"})))}init(){this.store=new y.FlavorStore}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get name(){var e;return(0,m.default)(e="".concat(t("Custom")," ")).call(e,t("Flavors"))}get hasTab(){return!0}get actionConfigs(){return this.isAdminPage?S.default:b.emptyActionConfig}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Flavor=x;var A=(0,v.inject)("rootStore")((0,v.observer)(x));a.default=A},3626:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1278)),l=i(a(1279)),o=i(a(3627)),s={rowActions:{firstAction:n.default,moreActions:[{action:l.default},{action:o.default}]},batchActions:[n.default],primaryActions:[]};t.default=s},3627:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var l=n(r(102)),o=n(r(90)),s=n(r(33)),u=n(r(27)),d=n(r(65)),c=n(r(51)),f=n(r(36)),p=n(r(559)),m=n(r(199)),h=r(406),v=n(r(1218)),g=r(1193),y=n(r(1214)),b=r(1243);class _ extends g.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,l.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,o.default)(a=(0,s.default)(r)).call(a,e)>=0}))})),(0,f.default)(this,"checkCustoms",(e=>!!(0,m.default)(e)||!(0,l.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,f.default)(this,"hasNoValue",(e=>{var t;return!!(0,l.default)(t=(0,s.default)(e)).call(t,(t=>void 0===e[t]))})),(0,f.default)(this,"onSubmit",(e=>{var t,a,{customs:r,systems:i}=this.parseExistMetadata(),{customs:n,systems:o}=e,d=[],c=[],f=[];return(0,u.default)(n).call(n,(e=>{var{key:t,value:a}=e.value||{},i=(0,l.default)(r).call(r,(e=>e.value.key===t));i?i.value.value!==a&&f.push(e.value):d.push(e.value)})),(0,u.default)(t=(0,s.default)(o)).call(t,(e=>{var t={key:e,value:o[e]};(0,p.default)(i,e)?o[e]!==i[e]&&f.push(t):d.push(t)})),(0,u.default)(r).call(r,(e=>{(0,l.default)(n).call(n,(t=>t.value.key===e.value.key))||c.push(e.value.key)})),(0,u.default)(a=(0,s.default)(i)).call(a,(e=>{(0,p.default)(o,e)||c.push(e)})),this.store.updateExtraSpecs(this.item.id,d,f,c)}))}init(){this.store=v.default,this.metadataStore=new b.MetadataStore,this.getMetadata()}get name(){return t("Manage Metadata")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,c.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Nova::Flavor"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}getItemMetadata(){var{extra_specs:e={},originData:t={}}=this.item||{};return(0,m.default)(t)?e:t.extra_specs||{}}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,r=this.getItemMetadata();(0,u.default)(a=(0,s.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:y.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?d.default.reject(t("Please input value")):d.default.resolve()}]}}a.ManageMetadata=_,(0,f.default)(_,"id","ManageMetadata"),(0,f.default)(_,"title",t("Manage Metadata")),(0,f.default)(_,"policy",["os_compute_api:os-flavor-extra-specs:create","os_compute_api:os-flavor-extra-specs:delete","os_compute_api:os-flavor-extra-specs:update"]),(0,f.default)(_,"allowed",(()=>d.default.resolve(!0)));var S=(0,h.inject)("rootStore")((0,h.observer)(_));a.default=S},3628:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(406),o=r(1218),s=n(r(1200)),u=r(1213),d=n(r(1332)),c=r(334),f=r(161),p=n(r(3629)),m=n(r(3630));class h extends s.default{get name(){return t("flavor")}get policy(){return"os_compute_api:os-flavor-extra-specs:index"}get listUrl(){return this.getRoutePath("flavor")}get actionConfigs(){return this.isAdminPage?p.default:c.emptyActionConfig}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Architecture"),dataIndex:"architecture",valueMap:u.flavorArchitectures},{title:t("Category"),dataIndex:"category",valueMap:u.flavorCategoryList},{title:t("CPU"),dataIndex:"vcpus",isHideable:!0},{title:t("Memory"),dataIndex:"ram",isHideable:!0,render:e=>(0,f.formatSize)(e,2)},{title:t("Public"),dataIndex:"is_public",isHideable:!0,valueRender:"yesNo"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:m.default},{title:t("Instances"),key:"members",component:d.default}]}init(){this.store=new o.FlavorStore}}a.Detail=h;var v=(0,l.inject)("rootStore")((0,l.observer)(h));a.default=v},3629:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1277)),l=i(a(1278)),o=i(a(1279)),s={rowActions:{firstAction:l.default,moreActions:[{action:o.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=s},3630:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(32)),o=n(r(33)),s=n(r(90)),u=n(r(57)),d=n(r(81)),c=n(r(335)),f=n(r(0)),p=r(406),m=n(r(1202)),h=r(1213);class v extends m.default{get leftCards(){var{category:e,disk:t,usbType:a}=this.detailData,r=(0,h.isGpuCategory)(e),i=(0,h.isComputeOptimized)(e),n=[this.baseInfoCard];return t&&n.push(this.diskCard),r&&n.push(this.gpuCard),"-"!==a&&n.push(this.usbCard),i&&n.push(this.ComputeOptimizedCard),n}get rightCards(){return[this.jsonCard]}getBareMetalCard(){var e=[{label:t("Resource Class Properties"),dataIndex:"extra_specs_traits",render:()=>{var e,{originData:{extra_specs:t={}}={}}=this.detailData,a=(0,l.default)(e=(0,o.default)(t)).call(e,(e=>0===(0,s.default)(e).call(e,"resources:")));return(0,u.default)(a).call(a,(e=>{var a,r=t[e];return f.default.createElement("div",{key:e},(0,d.default)(a="".concat(e.replace("resources:","")," = ")).call(a,r))}))}},{label:t("Trait Properties"),dataIndex:"extra_specs_traits",render:()=>{var e,{originData:{extra_specs:t={}}={}}=this.detailData,a=(0,l.default)(e=(0,o.default)(t)).call(e,(e=>0===(0,s.default)(e).call(e,"trait:")));return(0,u.default)(a).call(a,(e=>{var a,r=t[e];return f.default.createElement("div",{key:e},(0,d.default)(a="".concat(e.replace("trait:","")," = ")).call(a,r))}))}}];return{title:t("Base Info"),options:e}}get baseInfoCard(){var{category:e,architecture:a}=this.detailData,r=(0,h.categoryHasIOPS)(e),i=(0,h.categoryHasEphemeral)(e),n=(0,h.isComputeOptimized)(e);if((0,h.isBareMetal)(a))return this.getBareMetalCard();var l=[{label:t("Internal Network Bandwidth(Gbps)"),dataIndex:"quota:vif_outbound_average",render:e=>e?e/1e3/125:"-"}];if(i&&l.push({label:t("Ephemeral Disk (GiB)"),dataIndex:"OS-FLV-EXT-DATA:ephemeral"}),r&&l.push({label:t("Storage IOPS"),dataIndex:"quota:disk_total_iops_sec",render:e=>e||"-"}),!n){var o={label:t("NUMA Node Count"),dataIndex:"hw:numa_nodes"},s={label:t("Memory Page Size"),dataIndex:"hw:mem_page_size",render:e=>e&&h.pageTypeMap[e]||e||"-"};l.push(o,s)}return{title:t("Base Info"),options:l}}get diskCard(){var e=[{label:t("Root Disk (GiB)"),dataIndex:"disk"}];return{title:t("Disk Info"),options:e}}get gpuCard(){var e=[{label:t("GPU Type"),dataIndex:"gpuType"},{label:t("GPU Count"),dataIndex:"gpuCount"}];return{title:t("GPU Info"),options:e}}get usbCard(){var e=[{label:t("Usb Controller"),dataIndex:"usbType"},{label:t("Number of Usb Controller"),dataIndex:"usbCount"}];return{title:t("USB Info"),options:e}}get ComputeOptimizedCard(){var e,a=[{label:t("NUMA Node Count"),dataIndex:"hw:numa_nodes"}],r=this.detailData["hw:numa_nodes"]||0,i=(0,u.default)(e=new Array(r)).call(e,((e,a)=>{var r,i=this.detailData["hw:numa_cpus.".concat(a)],n=this.detailData["hw:numa_mem.".concat(a)];return{label:(0,d.default)(r="".concat(t("NUMA Node"),"-")).call(r,a+1),dataIndex:"hw:numa_nodes.".concat(a),render:()=>f.default.createElement("div",{key:"hw:numa_nodes.".concat(a)},f.default.createElement("span",{style:{marginRight:16}},t("CPU")," : ",i),t("Mem")," : ",n,"MiB")}}));a.push(...i);var n=[{label:t("CPU Policy"),dataIndex:"hw:cpu_policy",valueMap:h.cpuPolicyList},{label:t("CPU Thread Policy"),dataIndex:"hw:cpu_thread_policy",valueMap:h.cpuThreadPolicyMap},{label:t("Memory Page Size"),dataIndex:"hw:mem_page_size",valueMap:h.pageTypeMap}],l=[...a,...n];return{title:t("Compute Optimized Info"),options:l}}get jsonCard(){var{originData:e}=this.detailData,a=[{label:"",content:f.default.createElement("div",null,f.default.createElement("pre",null,(0,c.default)(e,null,4)))}];return{labelCol:0,title:t("Parameter"),options:a}}}a.BaseDetail=v;var g=(0,p.inject)("rootStore")((0,p.observer)(v));a.default=g},3631:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.TabImage=void 0;var l=r(406),o=n(r(1234)),s=n(r(1553));class u extends o.default{get tabs(){var e=[{title:t("Current Project Images"),key:"project",component:s.default},{title:t("Public Images"),key:"public",component:s.default},{title:t("Shared Images"),key:"shared",component:s.default}];return this.hasAdminRole&&e.push({title:t("All Images"),key:"all",component:s.default}),e}}a.TabImage=u;var d=(0,l.inject)("rootStore")((0,l.observer)(u));a.default=d},3638:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(27)),m=f(r(33)),h=f(r(65)),v=f(r(57)),g=f(r(62)),y=f(r(36)),b=f(r(111)),_=f(r(559)),S=r(406),M=r(1193),I=f(r(565)),x=r(563),A=r(1195),w=r(161),N=r(1213);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 P(e){for(var t=1;t{var t,{more:a,protected:r=!1,visibility:i=!1,hw_cpu_policy:n,hw_cpu_thread_policy:l,min_ram:o}=e,s=P({protected:r,visibility:i?"public":"private"},(0,g.default)(e,["more","protected","visibility","hw_cpu_policy","hw_cpu_thread_policy","min_ram"]));o&&(s.min_ram=1024*o),n!==w.NoSetValue&&(s.hw_cpu_policy=n||this.item.originData.hw_cpu_policy),l!==w.NoSetValue&&(s.hw_cpu_thread_policy=l||this.item.originData.hw_cpu_thread_policy);var u=[];return(0,p.default)(t=(0,m.default)(s)).call(t,(e=>{if((0,_.default)(this.item.originData,e)&&(0,b.default)(this.item.originData,e)!==s[e]){var t={op:"replace",path:"/".concat(e),value:s[e]};u.push(t)}else if(!(0,_.default)(this.item.originData,e)&&s[e]){var a={op:"add",path:"/".concat(e),value:s[e]};u.push(a)}})),this.item.originData.hw_cpu_policy&&n===w.NoSetValue&&u.push({op:"remove",path:"/hw_cpu_policy"}),this.item.originData.hw_cpu_thread_policy&&l===w.NoSetValue&&u.push({op:"remove",path:"/hw_cpu_thread_policy"}),0===u.length?h.default.resolve():this.store.update({id:this.item.id},u)}))}init(){this.store=I.default}get name(){return t("edit image")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get labelCol(){return{xs:{span:8},sm:{span:8}}}get defaultValue(){var{visibility:e,hw_qemu_guest_agent:t,hw_cpu_policy:a,hw_cpu_thread_policy:r,min_ram:i}=this.item;return P(P({},this.item),{},{protected:this.item.protected,visibility:"public"===e,hw_qemu_guest_agent:t,hw_cpu_policy:a||w.NoSetValue,hw_cpu_thread_policy:r||w.NoSetValue,min_ram:i/1024})}get osList(){var e;return(0,v.default)(e=(0,m.default)(x.imageOS)).call(e,(e=>({value:e,label:x.imageOS[e]})))}get yesNoList(){return[{value:"yes",label:t("Yes")},{value:"no",label:t("No")}]}getOptions(){return[{label:t("Protected"),value:"protected"}]}get formItems(){var{more:e}=this.state;return[{name:"name",label:t("Name"),type:"input-name",isImage:!0,required:!0},{name:"os_distro",label:t("OS"),type:"select",options:this.osList,required:!0},{name:"os_version",label:t("OS Version"),type:"input",required:!0},{name:"os_admin_user",label:t("OS Admin"),type:"input",required:!0,extra:t("In general, administrator for Windows,root for Linux, please fill by image uploading.")},{name:"min_disk",label:t("Min System Disk (GiB)"),type:"input-int",min:0,max:500,display:this.enableCinder},{name:"min_ram",label:t("Min Memory (GiB)"),type:"input-int",min:0,max:500},{name:"visibility",label:t("Visibility"),type:"check",content:t("Public"),hidden:!this.isAdminPage},{name:"protected",label:t("Protected"),type:"check",content:t("Protected")},{name:"description",label:t("Description"),type:"textarea",maxLength:255},{name:"more",label:t("Advanced Options"),type:"more"},{name:"hw_qemu_guest_agent",label:t("qemu_guest_agent enabled"),type:"radio",onlyRadio:!0,options:this.yesNoList,tip:t("It is recommended to install and use this agent. The instance created with this image can be used to modify the password (qemu_guest_agent needs to be installed when creating the image)."),hidden:!e},{name:"hw_cpu_policy",label:t("CPU Policy"),type:"select",options:(0,w.getOptionsWithNoSet)(N.cpuPolicyList),hidden:!e},{name:"hw_cpu_thread_policy",label:t("CPU Thread Policy"),type:"select",options:(0,w.getOptionsWithNoSet)(N.cpuThreadPolicyList),hidden:!e}]}}a.Edit=k,(0,y.default)(k,"id","image-edit"),(0,y.default)(k,"title",t("Edit Image")),(0,y.default)(k,"buttonText",t("Edit")),(0,y.default)(k,"policy","modify_image"),(0,y.default)(k,"allowed",((e,t)=>{var{isAdminPage:a}=t;return h.default.resolve((0,A.isActive)(e)&&(0,x.isOwner)(e)||a)}));var j=(0,S.inject)("rootStore")((0,S.observer)(k));a.default=j},3639:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(565)),u=r(563);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_image"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.notDeleted(e)&&this.notProtected(e)&&((0,u.isOwner)(e)||this.isAdminPage))),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Image")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete image")}notDeleted(e){return"deleted"!==e.status}notProtected(e){return!e.protected}}a.default=d},3640:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(81)),o=n(r(65)),s=n(r(36)),u=r(406),d=n(r(1253)),c=r(563);class f extends d.default{static path(e){var t;return(0,l.default)(t="/compute/instance/create?image=".concat(e.id,"&os_distro=")).call(t,e.os_distro)}static allowed(e,t){var{isAdminPage:a}=t;return o.default.resolve(!a&&(0,c.canImageCreateInstance)(e))}}a.StepCreate=f,(0,s.default)(f,"id","instance-create"),(0,s.default)(f,"title",t("Create Instance")),(0,s.default)(f,"policy","os_compute_api:servers:create:trusted_certs");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3641:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateIronic=void 0;var l=n(r(81)),o=n(r(65)),s=n(r(36)),u=r(406),d=n(r(1253)),c=r(563),f=r(1195);class p extends d.default{static path(e){var t;return(0,l.default)(t="/compute/ironic-instance/create?image=".concat(e.id,"&os_distro=")).call(t,e.os_distro)}static allowed(e,t){var{isAdminPage:a}=t;return o.default.resolve(!a&&(0,f.canCreateIronicByEndpoint)()&&(0,c.canImageCreateIronicInstance)(e))}}a.CreateIronic=p,(0,s.default)(p,"id","ironic-create"),(0,s.default)(p,"title",t("Create Ironic Instance")),(0,s.default)(p,"policy","os_compute_api:servers:create:trusted_certs");var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3642:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.CreateVolume=void 0;var l=n(r(1204)),o=n(r(81)),s=n(r(65)),u=n(r(36)),d=r(406),c=r(1193),f=n(r(410)),p=n(r(140)),m=r(557);class h extends c.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{name:t,size:a,volume_type:r}=e,i={imageRef:this.item.id,name:t,size:a,volume_type:r};return f.default.create(i)}))}init(){this.volumeStore=f.default,this.getVolumeTypes();var e=this.getMinSize();(0,m.fetchQuota)(this,e)}getVolumeTypes(){this.volumeStore.fetchVolumeTypes()}get volumeTypes(){return this.volumeStore.volumeTypes}getMinSize(){var{min_disk:e,size:t}=this.item;return Math.max(e,Math.ceil(t/1024/1024/1024))}get name(){return t("Create Volume")}get instanceName(){return(0,l.default)(this).name}static get disableSubmit(){return(0,m.checkQuotaDisable)()}static get showQuota(){return!0}get showQuota(){return!0}get quotaInfo(){return(0,m.getQuotaInfo)(this)}get defaultValue(){var{name:e}=this.item;return{image:e,size:this.getMinSize()}}get formItems(){var e,a=this.getMinSize();return[{name:"image",label:t("Image"),type:"label",iconType:"image"},{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"volume_type",label:t("Volume Type"),type:"select",required:!0,options:this.volumeTypes,placeholder:t("Please select volume type"),onChange:m.onVolumeTypeChange},{name:"size",label:t("Capacity (GiB)"),type:"input-int",min:a,extra:(0,o.default)(e="".concat(t("Min size"),": ")).call(e,a,"GiB"),required:!0,onChange:m.onVolumeSizeChange}]}}a.CreateVolume=h,(0,u.default)(h,"id","create"),(0,u.default)(h,"title",t("Create Volume")),(0,u.default)(h,"policy","volume:create_from_image"),(0,u.default)(h,"allowed",((e,t)=>{var{isAdminPage:a}=t;return s.default.resolve(p.default.checkEndpoint("cinder")&&!a)}));var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},3643:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var l=n(r(102)),o=n(r(90)),s=n(r(33)),u=n(r(27)),d=n(r(65)),c=n(r(62)),f=n(r(51)),p=n(r(36)),m=n(r(559)),h=n(r(199)),v=r(406),g=n(r(565)),y=r(1193),b=n(r(1214)),_=r(1243),S=r(563);class M extends y.ModalAction{constructor(){super(...arguments),(0,p.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,l.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,o.default)(a=(0,s.default)(r)).call(a,e)>=0}))})),(0,p.default)(this,"checkCustoms",(e=>!!(0,h.default)(e)||!(0,l.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,p.default)(this,"hasNoValue",(e=>{var t;return!!(0,l.default)(t=(0,s.default)(e)).call(t,(t=>void 0===e[t]))})),(0,p.default)(this,"onSubmit",(e=>{var t,a,{customs:r,systems:i}=this.parseExistMetadata(),{customs:n,systems:o}=e,c=[],f=[],p=[];(0,u.default)(n).call(n,(e=>{var{key:t,value:a}=e.value||{},i=(0,l.default)(r).call(r,(e=>e.value.key===t));i?i.value.value!==a&&p.push(e.value):c.push(e.value)})),(0,u.default)(t=(0,s.default)(o)).call(t,(e=>{var t={key:e,value:o[e]};(0,m.default)(i,e)?o[e]!==i[e]&&p.push(t):c.push(t)})),(0,u.default)(r).call(r,(e=>{(0,l.default)(n).call(n,(t=>t.value.key===e.value.key))||f.push(e.value.key)})),(0,u.default)(a=(0,s.default)(i)).call(a,(e=>{(0,m.default)(o,e)||f.push(e)}));var h=[];return(0,u.default)(c).call(c,(e=>{h.push({op:"add",path:"/".concat(e.key),value:e.value})})),(0,u.default)(p).call(p,(e=>{h.push({op:"replace",path:"/".concat(e.key),value:e.value})})),(0,u.default)(f).call(f,(e=>{h.push({op:"remove",path:"/".concat(e)})})),0===h.length?d.default.resolve():this.store.update({id:this.item.id},h)}))}init(){this.store=g.default,this.metadataStore=new _.MetadataStore,this.getMetadata()}get name(){return t("Manage Metadata")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,f.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Glance::Image"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}getItemMetadata(){var e=this.item.originData,{container_format:t,disk_format:a,id:r,min_disk:i,min_ram:n,name:l,protected:o,tags:s,visibility:u,owner:d,created_at:f,is_public:p,updated_at:m,status:h,locations:v,file:g,size:y,image_type:b,self:_,virtual_size:S}=e;return(0,c.default)(e,["container_format","disk_format","id","min_disk","min_ram","name","protected","tags","visibility","owner","created_at","is_public","updated_at","status","locations","file","size","image_type","self","virtual_size"])}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,r=this.getItemMetadata();(0,u.default)(a=(0,s.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:b.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?d.default.reject(t("Please input value")):d.default.resolve()}]}}a.ManageMetadata=M,(0,p.default)(M,"id","ManageMetadata"),(0,p.default)(M,"title",t("Manage Metadata")),(0,p.default)(M,"policy","modify_image"),(0,p.default)(M,"allowed",((e,t)=>{var{isAdminPage:a}=t;return d.default.resolve((0,S.isOwner)(e)||a)}));var I=(0,v.inject)("rootStore")((0,v.observer)(M));a.default=I},3644:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageAccess=void 0;var m=p(r(65)),h=p(r(32)),v=p(r(90)),g=p(r(57)),y=p(r(51)),b=p(r(36)),_=r(406),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=A(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(565)),M=r(1193),I=r(407),x=r(1235);function A(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(A=function(e){return e?a:t})(e)}function w(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 t,{members:a}=e;if(!a)return m.default.resolve();var{selectedRowKeys:r}=a,{id:i}=this.item,n=(0,h.default)(r).call(r,(e=>{var t;return(0,v.default)(t=this.currentMembers).call(t,e)<0})),l=(0,h.default)(t=this.currentMembers).call(t,(e=>(0,v.default)(r).call(r,e)<0));return S.default.updateMembers(i,n,l)}))}init(){this.store=new S.ImageStore,this.projectStore=new I.ProjectStore,this.getMembers(),this.getProjects()}get name(){return t("Manage Access")}static get modalSize(){return"large"}getModalSize(){return"large"}getMembers(){var e=this;return(0,y.default)((function*(){var{id:t}=e.item;yield e.store.getMembers(t),e.updateDefaultValue()}))()}getProjects(){var e=this;return(0,y.default)((function*(){yield e.projectStore.fetchList(),e.updateDefaultValue()}))()}get projects(){return this.projectStore.list.data||[]}get defaultValue(){var{name:e}=this.item;return{name:e,members:{selectedRowKeys:this.currentMembers}}}get currentMembers(){var e;return(0,g.default)(e=this.store.members||[]).call(e,(e=>e.member_id))}get formItems(){return[{name:"name",label:t("Image Name"),type:"label",iconType:"image"},N({name:"members",label:t("Project"),type:"select-table",isMulti:!0,required:!0,data:this.projects,isLoading:this.projectStore.list.isLoading},x.projectTableOptions)]}}a.ManageAccess=C,(0,b.default)(C,"id","manage-access"),(0,b.default)(C,"title",t("Manage Access")),(0,b.default)(C,"policy",["get_members","add_member","delete_member"]),(0,b.default)(C,"allowed",(e=>m.default.resolve("shared"===e.visibility)));var P=(0,_.inject)("rootStore")((0,_.observer)(C));a.default=P},3645:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Keypair=void 0;var l=n(r(36)),o=r(406),s=n(r(1194)),u=n(r(420)),d=n(r(1556));class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name",idKey:"name",routeName:this.getRouteName("keypairDetail")},{title:t("Fingerprint"),dataIndex:"fingerprint"}]))}init(){this.store=u.default}get policy(){return"os_compute_api:os-keypairs:index"}get name(){return t("keypairs")}get hideCustom(){return!0}get actionConfigs(){return d.default}get rowKey(){return"name"}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.Keypair=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3646:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(420));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-keypairs:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.isOwnerOrAdmin(e))),(0,l.default)(this,"onSubmit",(e=>s.default.delete({id:e.name})))}get id(){return"delete"}get title(){return t("Delete Keypair")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete keypair")}isOwnerOrAdmin(e){return!!e||!0}}a.default=u},3647:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.KeypairDetail=void 0;var l=r(406),o=r(420),s=n(r(1200)),u=n(r(3648)),d=n(r(1556));class c extends s.default{get name(){return t("keypair")}get policy(){return"os_compute_api:os-keypairs:show"}get listUrl(){return this.getRoutePath("keypair")}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:u.default}]}init(){this.store=new o.KeypairStore}}a.KeypairDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},3648:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=r(406),o=n(r(1202));class s extends o.default{get leftCards(){return[this.keypairInfoCard]}get keypairInfoCard(){var e=[{label:t("Fingerprint"),dataIndex:"fingerprint"},{label:t("Public Key"),dataIndex:"public_key",copyable:!0},{label:t("User ID"),dataIndex:"user_id"}];return{title:t("Keypair Info"),options:e}}}a.BaseDetail=s;var u=(0,l.inject)("rootStore")((0,l.observer)(s));a.default=u},3649:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ServerGroup=void 0;var l=n(r(36)),o=r(406),s=n(r(1194)),u=n(r(585)),d=n(r(1300)),c=r(161),f=n(r(1557));class p extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("serverGroupDetail")},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage},{title:t("Member Count"),dataIndex:"members",isHideable:!0,render:e=>e.length},{title:t("Policy"),dataIndex:"policy",valueMap:d.default}]))}init(){this.store=u.default}get policy(){return this.isAdminPage,"os_compute_api:os-server-groups:index"}get name(){return t("server groups")}get adminPageHasProjectFilter(){return!0}get actionConfigs(){return this.isAdminPage?f.default.actionConfigsAdmin:f.default.actionConfigs}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Policy"),name:"policy",options:(0,c.getOptions)(d.default)}]}}a.ServerGroup=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3650:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(57)),m=f(r(33)),h=f(r(65)),v=f(r(51)),g=f(r(36)),y=f(r(0)),b=r(406),_=f(r(585)),S=r(1193),M=f(r(1300)),I=f(r(407));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 A(e){for(var t=1;t_.default.create(e)))}init(){this.state.quota={},this.state.quotaLoading=!0,this.store=_.default,this.projectStore=I.default,this.getQuota()}get name(){return t("Create server group")}static get disableSubmit(){var{novaQuota:{server_groups:{left:e=0}={}}={}}=I.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.fetchProjectNovaQuota(),{server_groups: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[A(A({},e),{},{add:i,name:"server_groups",title:t("Server Group")})]}get formItems(){var e,a=(0,p.default)(e=(0,m.default)(M.default)).call(e,(e=>({value:e,label:M.default[e]})));return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"policy",label:t("Policy"),type:"select",placeholder:t("Please select policy"),options:a,required:!0,tip:y.default.createElement("div",null,y.default.createElement("p",null,t("Affinity (mandatory):")),y.default.createElement("p",null,t("The instances in the affinity group are strictly allocated to the same physical machine. When there are no more physical machines to allocate, the allocation fails.")),y.default.createElement("p",null,t("Anti-affinity (mandatory):")),y.default.createElement("p",null,t("The instances in the anti-affinity group are strictly allocated to different physical machines. When there are no more physical machines to allocate, the allocation fails.")),y.default.createElement("p",null,t("Affinity (not mandatory):")),y.default.createElement("p",null,t("The instances in the affinity group are allocated to the same physical machine as much as possible, and when there are no more physical machines to allocate, the normal allocation strategy is returned.")),y.default.createElement("p",null,t("Anti-affinity (not mandatory):")),y.default.createElement("p",null,t("The instances in the anti-affinity group are allocated to different physical machines as much as possible. When there are no more physical machines to allocate, the normal allocation strategy is returned.")))}]}}a.Create=w,(0,g.default)(w,"id","create"),(0,g.default)(w,"title",t("Create Server Group")),(0,g.default)(w,"policy","os_compute_api:os-server-groups:create"),(0,g.default)(w,"allowed",(()=>h.default.resolve(!0)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},3651:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(585));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-server-groups:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.members||0===e.members.length)),(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 Server Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Server Group")}}a.default=u},3652:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=n(r(36)),o=r(406),s=n(r(1253));class u extends s.default{static path(e){return"/compute/instance/create?servergroup=".concat(e.id)}static allowed(){return!0}}a.StepCreate=u,(0,l.default)(u,"id","instance-create"),(0,l.default)(u,"title",t("Create Instance")),(0,l.default)(u,"policy","os_compute_api:servers:create");var d=(0,o.inject)("rootStore")((0,o.observer)(u));a.default=d},3653:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ServerGroupDetail=void 0;var l=r(406),o=r(585),s=n(r(1200)),u=n(r(1332)),d=n(r(1300)),c=n(r(1557));class f extends s.default{get name(){return t("server group")}get policy(){return"os_compute_api:os-server-groups:show"}get listUrl(){return this.getRoutePath("serverGroup")}get actionConfigs(){return this.isAdminPage?c.default.actionConfigsAdmin:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Project ID"),dataIndex:"project_id",hidden:!this.isAdminPage},{title:t("Policy"),dataIndex:"policy",valueMap:d.default},{title:t("Member Count"),dataIndex:"members",render:e=>e.length}]}get tabs(){return[{title:t("Members"),key:"members",component:u.default}]}init(){this.store=new o.ServerGroupStore}}a.ServerGroupDetail=f;var p=(0,l.inject)("rootStore")((0,l.observer)(f));a.default=p},3654:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ImageDetail=void 0;var l=n(r(198)),o=r(406),s=r(563),u=r(565),d=r(1339),c=n(r(1552)),f=n(r(1200)),p=n(r(3655)),m=n(r(1554));class h extends f.default{get name(){return this.isImageDetail?t("image"):t("instance snapshot")}get policy(){return"get_image"}get isImageDetail(){var e;return(0,l.default)(e=this.path).call(e,"image")}get listUrl(){return this.isImageDetail?this.getRoutePath("image"):this.getRoutePath("instanceSnapshot")}get actionConfigs(){return this.isImageDetail?this.isAdminPage?m.default.actionConfigsAdmin:m.default.actionConfigs:this.isAdminPage?c.default.adminConfigs:c.default.actionConfigs}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Status"),dataIndex:"status",valueMap:s.imageStatus},{title:t("Project ID"),dataIndex:"owner"},{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:p.default}]}init(){this.store=this.isImageDetail?new u.ImageStore:new d.InstanceSnapshotStore}}a.ImageDetail=h;var v=(0,o.inject)("rootStore")((0,o.observer)(h));a.default=v},3655:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=n(r(335)),o=n(r(198)),s=n(r(32)),u=n(r(33)),d=n(r(90)),c=n(r(57)),f=n(r(36)),p=n(r(91)),m=n(r(99)),h=r(34),v=r(406),g=r(563),y=n(r(1202));class b extends y.default{constructor(){super(...arguments),(0,f.default)(this,"getPropertyItem",((e,t,a)=>{var r=g.imageProperties[t]||t,i=(0,m.default)(r)?r.label:r,n=(0,m.default)(r)?i.filters:null,s=e[t];return{label:i,dataIndex:t,valueRender:n||null,render:n||(0,m.default)(s)||(0,p.default)(s)?e=>(0,l.default)(e):null,copyable:(0,o.default)(a).call(a,t)}}))}get isImageDetail(){var e;return(0,o.default)(e=this.path).call(e,"image")}get leftCards(){var e=[this.baseInfoCard,this.securityCard];return this.isImageDetail?e:[this.InstanceCard,...e]}get rightCards(){return[this.propertiesCard]}get baseInfoCard(){var e=[{label:t("Size"),dataIndex:"size",valueRender:"bytes"},{label:t("Min System Disk (GiB)"),dataIndex:"min_disk"},{label:t("Min Memory (GiB)"),dataIndex:"min_ram",valueRender:"GiBValue"},{label:t("Disk Format"),dataIndex:"disk_format",valueRender:"uppercase"},{label:t("OS"),dataIndex:"os_distro",valueMap:g.imageOS},{label:t("OS Version"),dataIndex:"os_version"},{label:t("Container Format"),dataIndex:"container_format",valueRender:"uppercase"}];return{title:t("Base Info"),options:e}}get securityCard(){var e=[{label:t("Owner"),dataIndex:"owner",copyable:!0},{label:t("Filename"),dataIndex:"file",copyable:!0},{label:t("Visibility"),dataIndex:"visibility",valueMap:g.imageVisibility},{label:t("Protected"),dataIndex:"protected",valueRender:"yesNo"},{label:t("Checksum"),dataIndex:"checksum",copyable:!0}];return{title:t("Security Info"),options:e}}get InstanceCard(){var e=[{label:t("Instance"),dataIndex:"instance",render:e=>{if(!e)return"-";if(e.server_name){var{server_id:t,server_name:a}=e;return this.getLinkRender("instanceDetail",a,{id:t},{tab:"snapshots"})}return e.server_id}}];return{title:t("Instance Info"),options:e}}get propertiesCard(){var e,a=["locations","file","direct_url"],r=["checksum","created_at","min_disk","min_ram","name","updated_at","status","protected","visibility","owner","disk_format","container_format","size","id"],i=(0,h.toJS)(this.detailData)||{},n=i.originData||i,l=(0,s.default)(e=(0,u.default)(n)).call(e,(e=>(0,d.default)(r).call(r,e)<0)),o=(0,c.default)(l).call(l,(e=>this.getPropertyItem(n,e,a)));return{title:t("Custom Properties Info"),options:o}}}a.BaseDetail=b;var _=(0,v.inject)("rootStore")((0,v.observer)(b));a.default=_},3656:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Hypervisors=void 0;var l=r(406),o=n(r(1234)),s=n(r(3657)),u=n(r(3658));class d extends o.default{get tabs(){return[{title:t("Hypervisors"),key:"Hypervisor",component:s.default},{title:t("Compute Hosts"),key:"ComputeHost",component:u.default}]}}a.Hypervisors=d;var c=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=c},3657:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Hypervisors=void 0;var l=n(r(36)),o=r(406),s=n(r(1194)),u=n(r(586)),d=r(1337);class c extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>{var e=[...d.hypervisorColumns];return e[0]={title:t("ID/Name"),dataIndex:"service_host",routeName:"hypervisorDetailAdmin",isLink:!0},e}))}init(){this.store=u.default}get policy(){return"os_compute_api:os-hypervisors:list"}get name(){return t("Hypervisors")}get hasTab(){return!0}get fetchDataByAllProjects(){return!1}get hideCustom(){return!0}get searchFilters(){return d.hypervisorFilters}}a.Hypervisors=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3658:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ComputeHost=void 0;var p=f(r(81)),m=f(r(36)),h=r(406),v=f(r(1194)),g=r(1254),y=f(r(583)),b=r(161),_=f(r(3659));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 M(e){for(var t=1;tM(M({},e),{},{binary:"nova-compute"}))),(0,m.default)(this,"getColumns",(()=>[{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"zone"},{title:t("Service Status"),dataIndex:"status",valueMap:g.serviceStatus,tip:(e,a)=>{var r,{disabled_reason:i}=a||{};return i?(0,p.default)(r="".concat(t("Reason: ")," ")).call(r,i):""}},{title:t("Service State"),dataIndex:"state",valueMap:g.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",valueRender:"sinceTime",isHideable:!0}]))}init(){this.store=y.default}get policy(){return"os_compute_api:os-services:list"}get name(){return t("compute hosts")}get hasTab(){return!0}get fetchDataByAllProjects(){return!1}get actionConfigs(){return _.default}get searchFilters(){return[{label:t("Host"),name:"host"},{label:t("Service Status"),name:"status",options:(0,b.getOptions)(g.serviceStatus)},{label:t("Service State"),name:"state",options:(0,b.getOptions)(g.serviceState)}]}}a.ComputeHost=I;var x=(0,h.inject)("rootStore")((0,h.observer)(I));a.default=x},3659:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3660)),l=i(a(3661)),o={rowActions:{moreActions:[{action:n.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=o},3660:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var p=f(r(1204)),m=f(r(65)),h=f(r(36)),v=r(406),g=f(r(583)),y=r(1193);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 _(e){for(var t=1;t{var{binary:t,id:a}=this.item,r=_(_({},e),{},{binary:t,id:a});return g.default.disable(r)}))}init(){this.store=g.default}get instanceName(){return this.item.host||(0,p.default)(this).host||this.item.id}get name(){return t("Disable compute host")}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get tips(){return t("After disable the compute service, the new instance will not schedule to the compute node.")}get formItems(){return[{name:"host",label:t("Current Host"),type:"label",iconType:"instance"},{name:"disabled_reason",label:t("Reason"),type:"textarea",maxLength:64}]}}a.DisableAction=S,(0,h.default)(S,"id","disable-host"),(0,h.default)(S,"title",t("Disable Compute Host")),(0,h.default)(S,"buttonText",t("Disable")),(0,h.default)(S,"isDanger",!0),(0,h.default)(S,"allowed",(e=>m.default.resolve("enabled"===e.status))),(0,h.default)(S,"policy","os_compute_api:os-services:update");var M=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=M},3661:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(583));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.host)),(0,l.default)(this,"policy","os_compute_api:os-services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"disabled"===e.status)),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return s.default.enable({id:e})}))}get id(){return"enable-host"}get title(){return t("Enable Compute Host")}get buttonText(){return t("Enable")}get actionName(){return t("Enable compute host")}}a.default=u},3662:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HypervisorDetail=void 0;var l=n(r(81));r(411);var o=n(r(227)),s=n(r(0)),u=r(406),d=r(586),c=n(r(1200)),f=n(r(1332));r(173);class p extends c.default{get name(){return t("hypervisor")}get policy(){return"os_compute_api:os-hypervisors:show"}get listUrl(){return this.getRoutePath("hypervisor")}get detailInfos(){var e=[{title:t("Hostname"),dataIndex:"service_host"},{title:t("Type"),dataIndex:"hypervisor_type"},{title:t("VCPU (Core)"),dataIndex:"vcpus_used_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?s.default.createElement(o.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},s.default.createElement("span",null,"-")):(0,l.default)(r="".concat(a.vcpus_used," / ")).call(r,a.vcpus)}},{title:t("Configured Memory (GiB)"),dataIndex:"memory_mb_percent",render:(e,a)=>{var r;return"ironic"===a.hypervisor_type?s.default.createElement(o.default,{title:t("vCPUs and ram are not used for bare metal scheduling")},s.default.createElement("span",null,"-")):(0,l.default)(r="".concat(a.memory_mb_used_gb," / ")).call(r,a.memory_mb_gb)}}],{vgpus:a,vgpus_used:r}=this.store.detail;return a&&e.push({title:t("VGPU (Core)"),dataIndex:"vgpus",render:()=>{var e;return(0,l.default)(e="".concat(r," / ")).call(e,a)}}),e}get tabs(){return[{title:t("Members"),key:"members",component:f.default}]}init(){this.store=new d.HypervisorStore}}a.HypervisorDetail=p;var m=(0,u.inject)("rootStore")((0,u.observer)(p));a.default=m},3663:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HostAggregate=void 0;var l=r(406),o=n(r(1234)),s=n(r(3664)),u=n(r(3671));class d extends o.default{get tabs(){return[{title:t("Host Aggregate"),key:"hostAggregate",component:s.default},{title:t("Availability Zones"),key:"availabilityZone",component:u.default}]}}a.HostAggregate=d;var c=(0,l.inject)("rootStore")((0,l.observer)(d));a.default=c},3664:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.HostAggregate=void 0;var l=n(r(57)),o=n(r(33)),s=n(r(81)),u=n(r(36)),d=n(r(199)),c=n(r(0)),f=r(406),p=n(r(1194)),m=n(r(1280)),h=n(r(3665));class v extends p.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name"},{title:t("Availability Zone"),dataIndex:"availability_zone",isHideable:!0},{title:t("Hosts"),dataIndex:"hosts",isHideable:!0,render:e=>e&&0!==e.length?(0,l.default)(e).call(e,(e=>c.default.createElement("div",{key:e},e))):"-"},{title:t("Metadata"),dataIndex:"metadata",isHideable:!0,render:e=>{var t;return!e||(0,d.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(t=>c.default.createElement("div",{key:t},t,"=",e[t])))},stringify:e=>{var t;return!e||(0,d.default)(e)?"-":(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("Created At"),dataIndex:"created_at",valueRender:"sinceTime",isHideable:!0}]))}init(){this.store=m.default}get policy(){return"os_compute_api:os-aggregates:index"}get name(){return t("host aggregates")}get hasTab(){return!0}get actionConfigs(){return h.default}get searchFilters(){return[{label:t("Name"),name:"name"}]}}a.HostAggregate=v;var g=(0,f.inject)("rootStore")((0,f.observer)(v));a.default=g},3665:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(3666)),l=i(a(3667)),o=i(a(3668)),s=i(a(3669)),u=i(a(3670)),d={rowActions:{firstAction:l.default,moreActions:[{action:s.default},{action:u.default},{action:o.default}]},batchActions:[o.default],primaryActions:[n.default]};t.default=d},3666:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(57)),m=f(r(65)),h=f(r(62)),v=f(r(36)),g=r(406),y=f(r(1280)),b=r(1193),_=f(r(1262)),S=r(161);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 I(e){for(var t=1;t{var{isCreate:t,availabilityZone:a,newAz:r}=e,i="noSelect"!==a?a:null,n=I(I({},(0,h.default)(e,["isCreate","availabilityZone","newAz"])),{},{availability_zone:t?r:i});return y.default.create(n)}))}init(){this.store=y.default,this.azStore=_.default,this.getAvailabilityZones()}getAvailabilityZones(){this.azStore.fetchListWithoutDetail()}get azList(){var e,a=(0,p.default)(e=this.azStore.list.data||[]).call(e,(e=>({label:e.zoneName,value:e.zoneName})));return a.push({label:t("Not select"),value:"noSelect"}),a}get name(){return t("Create host aggregate")}get defaultValue(){return{isCreate:!1,availabilityZone:(this.azList[0]||[]).value}}get formItems(){var{isCreate:e=!1}=this.state,a=t("It is suggested to use the marked AZ directly, too much AZ will lead to the fragmentation of available resources"),r=t("A host aggregate can be associated with at most one AZ. Once the association is established, the AZ cannot be disassociated.");return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"isCreate",label:t("Create new AZ"),tip:a,type:"radio",options:(0,S.getYesNoList)()},{name:"availabilityZone",label:t("Availability Zone"),type:"select",options:this.azList,tip:r,hidden:e},{name:"newAz",label:t("New Availability Zone"),type:"input",help:a,hidden:!e}]}}a.Create=x,(0,v.default)(x,"id","create"),(0,v.default)(x,"title",t("Create Host Aggregate")),(0,v.default)(x,"policy","os_compute_api:os-aggregates:create"),(0,v.default)(x,"allowed",(()=>m.default.resolve(!0)));var A=(0,g.inject)("rootStore")((0,g.observer)(x));a.default=A},3667:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(57)),m=f(r(65)),h=f(r(62)),v=f(r(36)),g=r(406),y=f(r(1280)),b=r(1193),_=f(r(1262)),S=r(161);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}class I extends b.ModalAction{constructor(){super(...arguments),(0,v.default)(this,"onSubmit",(e=>{var{id:t,hosts:a=[]}=this.item,{isCreate:r,availabilityZone:i,newAz:n}=e,l="noSelect"!==i?i:null,f=function(e){for(var t=1;t({label:e.zoneName,value:e.zoneName}))),{availability_zone:r}=this.item;return null===r&&a.push({label:t("Not select"),value:"noSelect"}),a}get name(){return t("Edit host aggregate")}get defaultValue(){var{name:e,availability_zone:t}=this.item;return{isCreate:!1,name:e,availabilityZone:t}}get formItems(){var{hosts:e=[]}=this.item,{isCreate:a=!1}=this.state,r=e.length>0,i=t("It is suggested to use the marked AZ directly, too much AZ will lead to the fragmentation of available resources"),n=t("A host aggregate can be associated with at most one AZ. Once the association is established, the AZ cannot be disassociated.");return[{name:"name",label:t("Name"),type:"input-name",placeholder:t("Please input name"),required:!0},{name:"isCreate",label:t("Create new AZ"),tip:i,type:"radio",options:(0,S.getYesNoList)(),hidden:r},{name:"availabilityZone",label:t("Availability Zone"),type:"select",options:this.azList,required:!0,tip:n,hidden:r||!r&&a,disabled:r},{name:"newAz",label:t("New Availability Zone"),type:"input",required:!0,help:i,hidden:r||!r&&!a,disabled:r}]}}a.Edit=I,(0,v.default)(I,"id","edit"),(0,v.default)(I,"title",t("Edit Host Aggregate")),(0,v.default)(I,"buttonText",t("Edit")),(0,v.default)(I,"policy","os_compute_api:os-aggregates:update"),(0,v.default)(I,"allowed",(()=>m.default.resolve(!0)));var x=(0,g.inject)("rootStore")((0,g.observer)(I));a.default=x},3668:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1280));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","os_compute_api:os-aggregates:delete"),(0,l.default)(this,"canDelete",(e=>e&&e.hosts&&0===e.hosts.length)),(0,l.default)(this,"allowedCheckFunc",(e=>this.canDelete(e))),(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 Host Aggregate")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Host Aggregate")}}a.default=u},3669:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageHost=void 0;var p=f(r(32)),m=f(r(90)),h=f(r(65)),v=f(r(57)),g=f(r(81)),y=f(r(36)),b=r(406),_=r(1280),S=f(r(583)),M=r(1193),I=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 A(e){for(var t=1;t{var{hosts:t}=e,{selectedRowKeys:a}=t,{id:r,hosts:i}=this.item,n=(0,p.default)(a).call(a,(e=>(0,m.default)(i).call(i,e)<0)),l=(0,p.default)(i).call(i,(e=>(0,m.default)(a).call(a,e)<0));return 0===n.length&&0===l.length?h.default.resolve():this.store.manageHost({id:r,adds:n,dels:l})}))}init(){this.store=new _.AggregateStore,this.getComputeHosts()}get name(){return t("Manage host")}static get modalSize(){return"large"}getModalSize(){return"large"}get tips(){return t("Add hosts to the aggregate or remove hosts from it. Hosts can be in multiple aggregates.")}getComputeHosts(){S.default.fetchList({binary:"nova-compute"})}get computeHosts(){var e;return(0,v.default)(e=S.default.list.data||[]).call(e,(e=>A(A({},e),{},{name:e.host,id:e.host})))}get defaultValue(){var{name:e,hosts:t}=this.item;return{name:e,hosts:{selectedRowKeys:t}}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"hosts",label:t("Hosts"),type:"select-table",isMulti:!0,data:this.computeHosts,isLoading:S.default.list.isLoading,filterParams:[{label:t("Host"),name:"name"}],columns:[{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"zone"},{title:t("Admin Status"),dataIndex:"status",isHideable:!0,valueMap:I.serviceStatus,tip:(e,a)=>{var r,{disabled_reason:i}=a||{};return i?(0,g.default)(r="".concat(t("Reason: ")," ")).call(r,i):""}},{title:t("State"),dataIndex:"state",isHideable:!0,valueMap:I.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",valueRender:"sinceTime",isHideable:!0}]}]}}a.ManageHost=w,(0,y.default)(w,"id","ManageHost"),(0,y.default)(w,"title",t("Manage Host")),(0,y.default)(w,"policy",["os_compute_api:os-aggregates:add_host","os_compute_api:os-aggregates:remove_host"]),(0,y.default)(w,"allowed",(()=>h.default.resolve(!0)));var N=(0,b.inject)("rootStore")((0,b.observer)(w));a.default=N},3670:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageMetadata=void 0;var p=f(r(102)),m=f(r(90)),h=f(r(33)),v=f(r(27)),g=f(r(65)),y=f(r(51)),b=f(r(36)),_=f(r(559)),S=f(r(199)),M=r(406),I=r(1280),x=r(1193),A=f(r(1214)),w=r(1243);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}class C extends x.ModalAction{constructor(){super(...arguments),(0,b.default)(this,"checkKeyInSystem",(e=>{var t;return!!(0,p.default)(t=this.metadata).call(t,(t=>{var a,{detail:{properties:r={}}={}}=t;return(0,m.default)(a=(0,h.default)(r)).call(a,e)>=0}))})),(0,b.default)(this,"checkCustoms",(e=>!!(0,S.default)(e)||!(0,p.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,b.default)(this,"hasNoValue",(e=>{var t;return!!(0,p.default)(t=(0,h.default)(e)).call(t,(t=>void 0===e[t]))})),(0,b.default)(this,"onSubmit",(e=>{var t,{customs:a,systems:r}=e,{id:i,metadata:n}=this.item,l=function(e){for(var t=1;t{l[e.value.key]=e.value.value})),(0,v.default)(t=(0,h.default)(n)).call(t,(e=>{(0,_.default)(l,e)||(l[e]=null)})),this.store.manageMetadata({id:i,metadata:l})}))}init(){this.store=new I.AggregateStore,this.metadataStore=new w.MetadataStore,this.getMetadata()}get name(){return t("Manage host")}static get modalSize(){return"large"}getModalSize(){return"large"}get wrapperCol(){return{xs:{span:18},sm:{span:20}}}getMetadata(){var e=this;return(0,y.default)((function*(){yield e.metadataStore.fetchList({manage:!0,resource_types:"OS::Nova::Aggregate"}),e.updateDefaultValue()}))()}get metadata(){return this.metadataStore.list.data||[]}parseExistMetadata(){var e=[],t={};if(this.metadata.length>0){var a,{metadata:r}=this.item;(0,v.default)(a=(0,h.default)(r)).call(a,(a=>{this.checkKeyInSystem(a)?t[a]=r[a]:e.push({index:e.length,value:{key:a,value:r[a]}})}))}return{customs:e,systems:t}}get defaultValue(){var{name:e}=this.item,{customs:t,systems:a}=this.parseExistMetadata();return{name:e,customs:t,systems:a}}get formItems(){return[{name:"name",label:t("Name"),type:"label",iconType:"aggregate"},{name:"customs",label:t("Custom Metadata"),type:"add-select",itemComponent:A.default,addText:t("Add Custom Metadata"),validator:(e,a)=>this.checkCustoms(a)?g.default.resolve():g.default.reject(t("Please enter complete key value!"))},{name:"systems",label:t("Metadata"),type:"metadata-transfer",metadata:this.metadata,validator:(e,a)=>this.hasNoValue(a)?g.default.reject(t("Please input value")):g.default.resolve()}]}}a.ManageMetadata=C,(0,b.default)(C,"id","ManageMetadata"),(0,b.default)(C,"title",t("Manage Metadata")),(0,b.default)(C,"policy","os_compute_api:os-aggregates:set_metadata"),(0,b.default)(C,"allowed",(()=>g.default.resolve(!0)));var P=(0,M.inject)("rootStore")((0,M.observer)(C));a.default=P},3671:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.AvailabilityZone=void 0;var l=n(r(57)),o=n(r(33)),s=n(r(36)),u=n(r(199)),d=n(r(0)),c=r(406),f=n(r(1194)),p=n(r(1262));class m extends f.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Availability Zone Name"),dataIndex:"zoneName"},{title:t("Hosts"),dataIndex:"hosts",isHideable:!0,render:e=>{var t;return!e||(0,u.default)(e)?"-":(0,l.default)(t=(0,o.default)(e)).call(t,(e=>d.default.createElement("div",{key:e},e)))},stringify:e=>!e||(0,u.default)(e)?"-":(0,o.default)(e)},{title:t("Available"),dataIndex:"available",isHideable:!0,valueRender:"yesNo"}]))}init(){this.store=p.default}get policy(){return"os_compute_api:os-availability-zone:detail"}get name(){return t("availability zones")}get rowKey(){return"zoneName"}get hasTab(){return!0}get searchFilters(){return[{label:t("Availability Zone Name"),name:"zoneName"}]}}a.AvailabilityZone=m;var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3672:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BareMetalNode=void 0;var l=n(r(62)),o=n(r(36)),s=r(406),u=n(r(1194)),d=n(r(1225)),c=r(1281),f=r(76),p=r(161),m=n(r(1558));class h extends u.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("Node ID/Name"),dataIndex:"name",routeName:"baremetalNodeDetailAdmin"},{title:t("Ironic Instance Name"),dataIndex:"instance_info",render:e=>{var{display_name:t=""}=e||{};return t||"-"}},{title:t("Power State"),dataIndex:"power_state",valueMap:c.powerState},{title:t("Provision State"),dataIndex:"provision_state",valueMap:c.provisioningState},{title:t("Maintained"),dataIndex:"maintenance",valueRender:"yesNo",tip:(e,t)=>t.maintenance_reason},{title:t("Number of Ports"),dataIndex:"portCount",isHideable:!0},{title:t("Driver"),dataIndex:"driver",isHideable:!0},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=d.default}get policy(){return"baremetal:node:get"}get name(){return t("bare metal nodes")}get rowKey(){return"uuid"}get checkEndpoint(){return!0}get endpoint(){return(0,f.ironicOriginEndpoint)()}get actionConfigs(){return m.default}get searchFilters(){return[{label:t("Name"),name:"name"},{label:t("Power State"),name:"power_state",options:(0,p.getOptions)(c.powerState)},{label:t("Provision State"),name:"provision_state",options:(0,p.getOptions)(c.provisioningState)}]}}a.BareMetalNode=h;var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},3673:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageState=void 0;var l=n(r(36)),o=r(406),s=n(r(1225)),u=r(1193),d=r(1281),c=r(161);class f extends u.ModalAction{constructor(){super(...arguments),(0,l.default)(this,"onSubmit",(e=>{var{target:t}=e,{uuid:a,provision_state:r}=this.item,i="";if("available"===t)i="provide";else if("manageable"===t)switch(r){case"available":case"enroll":i="manage";break;default:i="delete"}var n={target:i};return s.default.changeProvision(a,n)}))}get name(){return t("Manage State")}get defaultValue(){var{name:e,uuid:t}=this.item;return{name:e||t}}get stateOptions(){var{provision_state:e}=this.item;if("available"===e||"active"===e||"enroll"===e){var t={manageable:d.provisioningState.manageable};return(0,c.getOptions)(t)}var a={available:d.provisioningState.available};return(0,c.getOptions)(a)}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"target",label:t("State"),type:"select",required:!0,options:this.stateOptions}]}}a.ManageState=f,(0,l.default)(f,"id","ManageState"),(0,l.default)(f,"title",t("Manage State")),(0,l.default)(f,"policy","baremetal:node:set_provision_state"),(0,l.default)(f,"allowed",(e=>(0,d.canChangeStatus)(e)));var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3674:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1225));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_power_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"power on"===e.power_state)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.changePower(e,{target:"power off"})}))}get id(){return"power-off"}get title(){return t("Power Off")}get actionName(){return t("Power Off")}get isAsyncAction(){return!0}}a.default=u},3675:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1225));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_power_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"power off"===e.power_state)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.changePower(e,{target:"power on"})}))}get id(){return"power-on"}get title(){return t("Power On")}get actionName(){return t("Power On")}get isAsyncAction(){return!0}}a.default=u},3676:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SetMaintenance=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=n(r(1225)),d=r(1193);class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{reason:t}=e,{uuid:a}=this.item,r={reason:t};return u.default.setMaintenance(a,r)}))}get name(){return t("Enter Maintenance Mode")}get defaultValue(){var{name:e,uuid:t}=this.item;return{name:e||t}}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"reason",label:t("Reason"),type:"textarea"}]}}a.SetMaintenance=c,(0,o.default)(c,"id","SetMaintenance"),(0,o.default)(c,"title",t("Enter Maintenance Mode")),(0,o.default)(c,"policy","baremetal:node:set_maintenance"),(0,o.default)(c,"allowed",(e=>l.default.resolve(!e.maintenance)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3677:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1225));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:clear_maintenance"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>e.maintenance)),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return s.default.clearMaintenance(e)}))}get id(){return"ClearMaintenance"}get title(){return t("Leave Maintenance Mode")}get actionName(){return t("Leave Maintenance Mode")}}a.default=u},3678:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.SetBootDevice=void 0;var l=n(r(57)),o=n(r(65)),s=n(r(51)),u=n(r(36)),d=r(406),c=r(1225),f=r(1193),p=r(334);class m extends f.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{boot_device:t,persistent:a}=e,{uuid:r}=this.item,i={boot_device:t,persistent:a};return this.store.setBootDevice(r,i)}))}init(){this.store=new c.IronicStore,this.getSupportedBootDevice(),this.getBootDevice()}get name(){return t("Set Boot Device")}getSupportedBootDevice(){var e=this;return(0,s.default)((function*(){yield e.store.getSupportedBootDevice(e.item.uuid),e.updateDefaultValue()}))()}getBootDevice(){var e=this;return(0,s.default)((function*(){yield e.store.getBootDevice(e.item.uuid),e.updateDefaultValue()}))()}get defaultValue(){var{name:e,uuid:t}=this.item,{boot_device:a,persistent:r=!1}=this.store.bootDevice||{};return{name:e||t,boot_device:a,persistent:r}}get deviceOptions(){var{supportedBootDevices:e=[]}=this.store;return(0,l.default)(e).call(e,(e=>({value:e,label:e})))}get formItems(){return[{name:"name",label:t("Node"),type:"label",iconType:"host"},{name:"boot_device",label:t("Boot Device"),type:"select",required:!0,options:this.deviceOptions},{name:"persistent",label:t("Persistent"),type:"radio",tip:t("Whether the boot device should be set only for the next reboot, or persistently."),options:p.yesNoOptions}]}}a.SetBootDevice=m,(0,u.default)(m,"id","SetBootDevice"),(0,u.default)(m,"title",t("Set Boot Device")),(0,u.default)(m,"policy",["baremetal:node:get_boot_device","baremetal:node:set_boot_device"]),(0,u.default)(m,"allowed",(()=>o.default.resolve(!0)));var h=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=h},3679:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1225));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Node")}get name(){return t("Delete Node")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Node")}}a.default=u},3680:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInterface=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=n(r(1201));class d extends u.default{constructor(){super(...arguments),(0,o.default)(this,"allowed",(()=>l.default.resolve()))}get bootInterfaces(){return[{value:"pxe",label:t("PXE")},{value:"ipxe",label:t("IPXE")},{value:"fake",label:t("FAKE")}]}get consoleInterfaces(){return[{value:"no-console",label:t("No Console")}]}get networkInterfaces(){return[{value:"flat",label:t("FLAT")},{value:"noop",label:t("NOOP")}]}get raidInterfaces(){return[{value:"no-raid",label:t("No Raid")},{value:"agent",label:t("Agent")}]}get storageInterfaces(){return[{value:"noop",label:t("NOOP")}]}get venderInterfaces(){return[{value:"ipmitool",label:t("IPMITool")}]}get defaultValue(){var{boot_interface:e="pxe",console_interface:t="no-console",network_interface:a="noop",raid_interface:r="no-raid",storage_interface:i="noop",vendor_interface:n="ipmitool"}=this.props.extra||{};return{boot_interface:e,console_interface:t,network_interface:a,raid_interface:r,storage_interface:i,vendor_interface:n}}get formItems(){return[{name:"boot_interface",label:t("Boot Interface"),type:"select",options:this.bootInterfaces},{name:"console_interface",label:t("Console Interface"),type:"select",options:this.consoleInterfaces},{name:"network_interface",label:t("Network Interface"),type:"select",options:this.networkInterfaces,tip:t("Which Network Interface provider to use when plumbing the network connections for this Node")},{name:"raid_interface",label:t("Raid Interface"),type:"select",options:this.raidInterfaces,tip:t("Interface used for configuring RAID on this node")},{name:"storage_interface",label:t("Storage Interface"),type:"select",options:this.storageInterfaces,tip:t("Interface used for attaching and detaching volumes on this node")},{name:"vendor_interface",label:t("Vendor Interface"),type:"select",options:this.venderInterfaces,tip:t("Interface for vendor-specific functionality on this node")}]}}a.NodeInterface=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3681:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInfo=void 0;var l=n(r(65)),o=n(r(57)),s=n(r(32)),u=n(r(51)),d=n(r(36)),c=r(406),f=n(r(1201)),p=r(565);class m extends f.default{constructor(){super(...arguments),(0,d.default)(this,"allowed",(()=>l.default.resolve()))}init(){this.imageStore=new p.ImageStore,this.getImages()}getImages(){var e=this;return(0,u.default)((function*(){yield e.imageStore.fetchList({all_projects:!0}),e.updateDefaultValue()}))()}get kernelImages(){var e,t=this.imageStore.list.data||[];return(0,o.default)(e=(0,s.default)(t).call(t,(e=>"aki"===e.disk_format))).call(e,(e=>({value:e.id,label:e.name})))}get ramdiskImages(){var e,t=this.imageStore.list.data||[];return(0,o.default)(e=(0,s.default)(t).call(t,(e=>"ari"===e.disk_format))).call(e,(e=>({value:e.id,label:e.name})))}get ipmiBridges(){return[{value:"no",label:t("No")}]}get ipmiPrivLevels(){return[{value:"ADMINISTRATOR",label:t("ADMINISTRATOR")},{value:"USER",label:t("USER")}]}get ipmiProtocolVersions(){return[{value:"1.5",label:"1.5"},{value:"2.0",label:"2.0"}]}get defaultValue(){var{driver_info_deploy_kernel:e,driver_info_deploy_ramdisk:t,driver_info_ipmi_address:a,driver_info_ipmi_port:r,driver_info_ipmi_username:i,driver_info_ipmi_bridge:n="no",driver_info_ipmi_priv_level:l="ADMINISTRATOR",driver_info_ipmi_protocol_version:o="2.0",driver_info_ipmi_password:s=""}=this.props.extra||{};return{driver_info_deploy_kernel:e,driver_info_deploy_ramdisk:t,driver_info_ipmi_address:a,driver_info_ipmi_port:r,driver_info_ipmi_username:i,driver_info_ipmi_password:s,driver_info_ipmi_bridge:n,driver_info_ipmi_priv_level:l,driver_info_ipmi_protocol_version:o}}get formItems(){var{more:e}=this.state;return[{name:"driver_info_deploy_kernel",label:t("Kernel Image"),type:"select",options:this.kernelImages,required:!0},{name:"driver_info_deploy_ramdisk",label:t("Ramdisk Image"),type:"select",options:this.ramdiskImages,required:!0},{name:"driver_info_ipmi_address",label:t("IPMI Address"),type:"ip-input",required:!0},{name:"driver_info_ipmi_port",label:t("IPMI Port"),type:"input-int",max:65535},{name:"driver_info_ipmi_username",label:t("IPMI Username"),type:"input",required:!0},{name:"driver_info_ipmi_password",label:t("IPMI Password"),type:"input",required:!0},{name:"more",label:t("Advanced Options"),type:"more"},{name:"driver_info_ipmi_bridge",label:t("IPMI Bridge"),type:"select",options:this.ipmiBridges,hidden:!e},{name:"driver_info_ipmi_priv_level",label:t("IPMI Privilege Level"),type:"select",options:this.ipmiPrivLevels,hidden:!e},{name:"driver_info_ipmi_protocol_version",label:t("IPMI Protocol Version"),type:"select",options:this.ipmiProtocolVersions,hidden:!e}]}}a.NodeInfo=m;var h=(0,c.inject)("rootStore")((0,c.observer)(m));a.default=h},3682:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.NodeInfo=void 0;var l=n(r(90)),o=n(r(65)),s=n(r(102)),u=n(r(27)),d=n(r(588)),c=n(r(32)),f=n(r(57)),p=n(r(226)),m=n(r(51)),h=n(r(36)),v=n(r(199)),g=n(r(0)),y=r(406),b=n(r(1201)),_=n(r(1214)),S=n(r(1225)),M=e=>(0,l.default)(e).call(e,"CUSTOM_")<0;class I extends b.default{constructor(){super(...arguments),(0,h.default)(this,"allowed",(()=>o.default.resolve())),(0,h.default)(this,"checkKeyValues",(e=>!!(0,v.default)(e)||!(0,s.default)(e).call(e,(e=>{var t,{key:a,value:r}=e.value||{};return!((0,l.default)(t=this.needKeys).call(t,a)>=0)&&(!a||null==r)})))),(0,h.default)(this,"checkCustomTrait",(e=>!!(0,v.default)(e)||!(0,s.default)(e).call(e,(e=>{var{value:t}=e||{};if(!t)return!0;return!/^CUSTOM_[A-Z0-9_]{1,248}$/.test(t)})))),(0,h.default)(this,"getDefaultPropValues",(e=>{var t,a=[];return(0,u.default)(t=this.needKeys).call(t,(t=>{var r=(0,s.default)(e).call(e,(e=>e.value.key===t)),i=r?r.value.value:"";a.push({index:a.length,value:{key:t,value:i}})})),(0,u.default)(e).call(e,(e=>{var t,{key:r}=e.value;(0,l.default)(t=this.needKeys).call(t,r)<0&&a.push(e)})),a})),(0,h.default)(this,"getDefaultStandardTrait",(e=>{var t=[...e];return(0,d.default)(t).call(t),(0,c.default)(t).call(t,(e=>M(e)))})),(0,h.default)(this,"getDefaultCustomTrait",(e=>{var t,a=[...e];return(0,d.default)(a).call(a),(0,f.default)(t=(0,c.default)(a).call(a,(e=>!M(e)))).call(t,((e,t)=>({index:t,value:e})))})),(0,h.default)(this,"hasPropValues",(e=>(0,p.default)(e).call(e,(e=>{var t;return(0,l.default)(t=this.needKeys).call(t,e.value.key)&&e.value.value}))))}init(){this.getTraits()}getTraits(){var e=this;return(0,m.default)((function*(){yield S.default.getTraits(),e.updateDefaultValue()}))()}get traits(){var e,{traits:t=[]}=S.default;return(0,f.default)(e=(0,c.default)(t).call(t,(e=>M(e)))).call(e,(e=>({value:e,label:e})))}get drivers(){return[{value:"ipmi",label:"IPMI"}]}get needKeys(){return["cpus","memory_mb","local_gb","cpu_arch"]}get defaultValue(){var{extra:{driver:e="ipmi",name:t,properties:a=[],extra:r=[],traits:i=[],resource_class:n}={}}=this.props;return{name:t||void 0,driver:e,properties:this.getDefaultPropValues(a),extra:r,resource_class:n,standard_trait:this.getDefaultStandardTrait(i),custom_trait:this.getDefaultCustomTrait(i)}}get formItems(){return[{name:"name",label:t("Node Name"),type:"input-name"},{name:"driver",label:t("Node Driver"),type:"select",options:this.drivers,required:!0},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:_.default,addText:t("Add Property"),minCount:this.needKeys.length,readonlyKeys:this.needKeys,tips:t('If you do not fill in parameters such as cpus, memory_mb, local_gb, cpu_arch, etc., you can automatically inject the configuration and Mac address of the physical machine by performing the "Auto Inspect" operation.'),validator:(e,a)=>this.checkKeyValues(a)?o.default.resolve():o.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:_.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?o.default.resolve():o.default.reject(t("Please enter complete key value!"))},{name:"standard_trait",label:t("Standard Trait"),type:"select",mode:"multiple",options:this.traits,extra:t("The trait of the scheduled node needs to correspond to the trait of the flavor used by the ironic instance; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all the necessary traits (for example, the ironic instance which use the flavor that has HW_CPU_X86_VMX as a necessary trait, can be scheduled to the node which has the trait of HW_CPU_X86_VMX).")},{name:"custom_trait",label:t("Custom Trait"),type:"add-select",isInput:!0,extra:g.default.createElement("div",null,g.default.createElement("p",null,t("1. The name of the trait should start with CUSTOM_, can only contain uppercase letters A ~ Z, numbers 0 ~ 9 or underscores, and the length should not exceed 255 characters (for example: CUSTOM_TRAIT1).")),g.default.createElement("p",null,t("2. The trait of the scheduled node needs to correspond to the trait of the flavor used by the ironic instance; by injecting the necessary traits into the ironic instance, the computing service will only schedule the instance to the bare metal node with all the necessary traits (for example, the ironic instance which use the flavor that has CUSTOM_TRAIT1 as a necessary trait, can be scheduled to the node which has the trait of CUSTOM_TRAIT1)."))),validator:(e,a)=>this.checkCustomTrait(a)?o.default.resolve():o.default.reject(t("Please enter right format custom trait!"))},{name:"resource_class",label:t("Resource Class"),type:"input",extra:t("The resource class of the scheduled node needs to correspond to the resource class name of the flavor used by the ironic instance (for example, the resource class name of the scheduling node is baremetal.with-GPU, and the custom resource class name of the flavor is CUSTOM_BAREMETAL_WITH_GPU=1).")}]}}a.NodeInfo=I;var x=(0,y.inject)("rootStore")((0,y.observer)(I));a.default=x},3683:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(65)),o=n(r(36)),s=r(406),u=n(r(1406));class d extends u.default{get listUrl(){return this.getRoutePath("baremetalNode")}get name(){return t("Edit Bare Metal Node")}static allowed(){return l.default.resolve(!0)}}a.Edit=d,(0,o.default)(d,"id","edit-node"),(0,o.default)(d,"title",t("Edit Bare Metal Node")),(0,o.default)(d,"buttonText",t("Edit")),(0,o.default)(d,"path",(e=>"/compute/baremetal-node-admin/edit/".concat(e.uuid))),(0,o.default)(d,"policy","baremetal:node:update");var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3684:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=n(r(0)),s=r(1193),u=n(r(1225));class d extends s.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:node:set_provision_state"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(e=>"manageable"===e.provision_state&&"ipmi"!==e.driver)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return o.default.createElement("div",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a})),o.default.createElement("ul",null,o.default.createElement("li",null,t("This service will automatically query the configuration (CPU, memory, etc.) and mac address of the physical machine, and the ironic-inspector service will automatically register this information in the node information.")),o.default.createElement("li",null,t("The entire inspection process takes 5 to 10 minutes, so you need to be patient. After the registration is completed, the node configuration status will return to the manageable status."))))})),(0,l.default)(this,"onSubmit",(()=>{var{uuid:e}=this.item;return u.default.changeProvision(e,{target:"inspect"})}))}get id(){return"Inspect"}get title(){return t("Auto Inspect")}get actionName(){return t("Auto Inspect")}}a.default=d},3685:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var l=r(406),o=r(1225),s=n(r(1200)),u=r(1281),d=n(r(3686)),c=n(r(3687)),f=n(r(3691)),p=n(r(1558));class m extends s.default{get name(){return t("bare metal node")}get policy(){return"baremetal:node:get"}get listUrl(){return this.getRoutePath("baremetalNode")}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Node Name"),dataIndex:"name"},{title:t("Ironic Instance Name"),dataIndex:"instance_info.display_name"},{title:t("Power State"),dataIndex:"power_state",valueMap:u.powerState},{title:t("Provision State"),dataIndex:"provision_state",valueMap:u.provisioningState},{title:t("Maintained"),dataIndex:"maintenance",valueRender:"yesNo",tip:(e,t)=>t.maintenance_reason},{title:t("Number of Ports"),dataIndex:"portsNew",render:e=>e&&e.length||"-"},{title:t("Driver"),dataIndex:"driver"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:d.default},{title:t("Ports"),key:"ports",component:c.default},{title:t("Port Groups"),key:"portGroups",component:f.default}]}init(){this.store=new o.IronicStore}}a.Detail=m;var h=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=h},3686:function(e,a,r){"use strict";var i=r(33),n=r(44),l=r(32),o=r(25),s=r(27),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var p=f(r(36)),m=f(r(57)),h=f(r(33)),v=f(r(0)),g=r(406),y=f(r(1202)),b=f(r(1451));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 S extends y.default{get leftCards(){return[this.baseInfoCard,this.driverCard,this.bootDeviceCard,this.propertiesCard,this.traitCard,this.resourceClassCard]}get rightCards(){return[this.validateCard]}get baseInfoCard(){var e=[{label:t("Chassis ID"),dataIndex:"chassis_uuid"},{label:t("Resource Class"),dataIndex:"resource_class"},{label:t("Management"),dataIndex:"maintenance",valueRender:"yesNo"},{label:t("Management Reason"),dataIndex:"maintenance_reason"}];return{title:t("Base Info"),options:e}}get driverCard(){var e,{driver_info:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Driver Info"),options:r}}get bootDeviceCard(){var e=[{label:t("Boot Device"),dataIndex:"bootDevice.boot_device"},{label:t("Persistent"),dataIndex:"bootDevice.persistent",valueRender:"yesNo"}];return{title:t("Boot Device"),options:e}}get propertiesCard(){var e,{properties:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Properties"),options:r}}get traitCard(){var e=[{label:t("Traits"),dataIndex:"traits",render:e=>e?(0,m.default)(e).call(e,(e=>v.default.createElement("div",null,e))):"-"}];return{title:t("Traits"),options:e}}get resourceClassCard(){var e=[{label:t("Resource Class"),dataIndex:"resource_class"}];return{title:t("Resource Class"),options:e}}get validateCard(){var e,{validate:a={}}=this.detailData||{},r=(0,m.default)(e=(0,h.default)(a)).call(e,(e=>function(e){for(var t=1;t[{title:t("ID"),dataIndex:"uuid"},{title:t("Mac Address"),dataIndex:"address"},{title:t("PXE Enabled"),dataIndex:"pxe_enabled",valueRender:"yesNo"},{title:t("Port Group"),dataIndex:"portgroup_uuid"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=new d.IronicPortStore}get policy(){return"baremetal:port:get"}get name(){return t("ports")}get rowKey(){return"uuid"}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.BareMetalNodePort=f;var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},3688:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1559)),l=i(a(3689)),o={rowActions:{firstAction:i(a(3690)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},3689:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1342));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:port:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Port")}get name(){return t("Delete Port")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Port")}}a.default=u},3690:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(27)),o=n(r(33)),s=n(r(102)),u=n(r(90)),d=n(r(65)),c=n(r(57)),f=n(r(62)),p=n(r(36)),m=n(r(111)),h=n(r(202)),v=n(r(559)),g=n(r(199)),y=r(406),b=n(r(1342)),_=r(1282),S=r(1193),M=r(334),I=n(r(1214)),x=r(556),A=r(161),w=r(1281);class N extends S.ModalAction{constructor(){super(...arguments),(0,p.default)(this,"updateItemValueToArray",((e,t)=>{var a,r=e[t]||{},i=[];(0,l.default)(a=(0,o.default)(r)).call(a,((e,t)=>{i.push({index:t,value:{key:e,value:r[e]}})})),e[t]=i})),(0,p.default)(this,"checkKeyValues",(e=>!!(0,g.default)(e)||!(0,s.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,p.default)(this,"getKeyPath",(e=>{var t="local_link_connection.";return 0===(0,u.default)(e).call(e,t)?"/local_link_connection/".concat(e.substring(t.length)):"/".concat(e)})),(0,p.default)(this,"onSubmit",(e=>{var t,a=[],r=[],i=[],n=(0,A.updateObjToAddSelectArray)(this.item.extra),{extra:s,node:u}=e,c=(0,f.default)(e,["extra","node"]);(0,l.default)(t=(0,o.default)(c)).call(t,(t=>{var i={value:e[t],path:this.getKeyPath(t)};if(!(0,v.default)(this.item,t)&&e[t])i.op="add",a.push(i);else{var n=(0,m.default)(this.item,t);(0,h.default)(n,e[t])||(i.op="replace",r.push(i))}}));var{adds:p,replaces:g,dels:y}=(0,w.getDifFromAddSelectValue)(s,n,"extra");a.push(...p),r.push(...g),i.push(...y);var _=[...a,...r,...i];return 0===_.length?d.default.resolve():b.default.edit({id:this.item.uuid},_)}))}init(){this.groupStore=new _.IronicPortGroupStore,this.getPortGroups()}get name(){return t("Edit Port")}get instanceName(){return this.item.uuid}getPortGroups(){var{uuid:e}=this.containerProps.detail||{};this.groupStore.fetchList({id:e})}get defaultValue(){var{name:e,uuid:t}=this.containerProps.detail||{},{port_id:a,switch_id:r,switch_info:i}=this.item.local_link_connection||{},{pxe_enabled:n,address:l,portgroup_uuid:o,extra:s={},physical_network:u}=this.item;return{node:e||t,address:l,pxe_enabled:n,portgroup_uuid:o,physical_network:u,"local_link_connection.port_id":a,"local_link_connection.switch_id":r,"local_link_connection.switch_info":i,extra:(0,A.updateObjToAddSelectArray)(s)}}get portGroups(){var e;return(0,c.default)(e=this.groupStore.list.data||[]).call(e,(e=>({value:e.uuid,label:e.name||e.uuid})))}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"address",label:t("MAC Address"),required:!0,type:"input",validator:x.macAddressValidate},{name:"pxe_enabled",label:t("PXE Enabled"),type:"radio",options:M.yesNoOptions},{name:"portgroup_uuid",label:t("Port Group"),type:"select",options:this.portGroups},{label:t("Local Link Connection"),type:"title"},{name:"local_link_connection.port_id",label:t("Port ID"),type:"input",tip:t("Identifier of the physical port on the switch to which node’s port is connected to")},{name:"local_link_connection.switch_id",label:t("Switch ID"),type:"input",tip:t("Only a MAC address or an OpenFlow based datapath_id of the switch are accepted in this field")},{name:"local_link_connection.switch_info",label:t("Switch Info"),type:"input",tip:t("an optional string field to be used to store any vendor-specific information")},{name:"physical_network",label:t("Physical Network"),type:"input",tip:t("The name of the physical network to which a port is connected")},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:I.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))}]}}a.Edit=N,(0,p.default)(N,"id","EditPort"),(0,p.default)(N,"title",t("Edit Port")),(0,p.default)(N,"buttonText",t("Edit")),(0,p.default)(N,"policy","baremetal:port:update"),(0,p.default)(N,"allowed",(()=>d.default.resolve(!0)));var C=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=C},3691:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.BareMetalNodePortGroup=void 0;var l=n(r(62)),o=n(r(36)),s=r(406),u=n(r(1194)),d=r(1282),c=n(r(3692));class f extends u.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID"),dataIndex:"uuid"},{title:t("Name"),dataIndex:"name"},{title:t("Mac Address"),dataIndex:"address"},{title:t("Stand Alone Ports Supported"),dataIndex:"standalone_ports_supported",valueRender:"yesNo"},{title:t("Created At"),dataIndex:"created_at",isHideable:!0,valueRender:"sinceTime"}])),(0,o.default)(this,"updateFetchParams",(e=>{var{all_projects:t}=e;return(0,l.default)(e,["all_projects"])}))}init(){this.store=new d.IronicPortGroupStore}get policy(){return"baremetal:portgroup:get"}get name(){return t("port groups")}get rowKey(){return"uuid"}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.BareMetalNodePortGroup=f;var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},3692:function(e,t,a){"use strict";var r=a(19),i=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=i(a(1560)),l=i(a(3693)),o={rowActions:{firstAction:i(a(3694)).default,moreActions:[{action:l.default}]},batchActions:[l.default],primaryActions:[n.default]};t.default=o},3693:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=void 0;var l=n(r(36)),o=r(1193),s=n(r(1282));class u extends o.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","baremetal:portgroup:delete"),(0,l.default)(this,"getItemId",(e=>e.uuid)),(0,l.default)(this,"allowedCheckFunc",(()=>!0)),(0,l.default)(this,"onSubmit",(e=>{var{uuid:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Port Group")}get name(){return t("Delete Port Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete Port Group")}}a.default=u},3694:function(e,a,r){"use strict";var i=r(19),n=r(21);i(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=n(r(27)),o=n(r(33)),s=n(r(102)),u=n(r(90)),d=n(r(65)),c=n(r(62)),f=n(r(36)),p=n(r(111)),m=n(r(202)),h=n(r(559)),v=n(r(199)),g=r(406),y=n(r(1282)),b=r(1193),_=r(334),S=n(r(1214)),M=r(556),I=r(161),x=r(1281);class A extends b.ModalAction{constructor(){super(...arguments),(0,f.default)(this,"updateItemValueToArray",((e,t)=>{var a,r=e[t]||{},i=[];(0,l.default)(a=(0,o.default)(r)).call(a,((e,t)=>{i.push({index:t,value:{key:e,value:r[e]}})})),e[t]=i})),(0,f.default)(this,"checkKeyValues",(e=>!!(0,v.default)(e)||!(0,s.default)(e).call(e,(e=>{var{key:t,value:a}=e.value||{};return!t||null==a})))),(0,f.default)(this,"getKeyPath",(e=>{var t="local_link_connection.";return 0===(0,u.default)(e).call(e,t)?"/local_link_connection/".concat(e.substring(t.length)):"/".concat(e)})),(0,f.default)(this,"onSubmit",(e=>{var t,a=[],r=[],i=[],n=(0,I.updateObjToAddSelectArray)(this.item.extra),s=(0,I.updateObjToAddSelectArray)(this.item.properties),{properties:u,extra:f,node:v}=e,g=(0,c.default)(e,["properties","extra","node"]);(0,l.default)(t=(0,o.default)(g)).call(t,(t=>{var i={value:e[t],path:this.getKeyPath(t)};if(!(0,h.default)(this.item,t)&&e[t])i.op="add",a.push(i);else{var n=(0,p.default)(this.item,t);(0,m.default)(n,e[t])||(i.op="replace",r.push(i))}}));var{adds:b,replaces:_,dels:S}=(0,x.getDifFromAddSelectValue)(f,n,"extra"),{adds:M,replaces:A,dels:w}=(0,x.getDifFromAddSelectValue)(u,s,"properties");a.push(...M,...b),r.push(...A,..._),i.push(...w,...S);var N=[...a,...r,...i];return 0===N.length?d.default.resolve():y.default.edit({id:this.item.uuid},N)}))}get name(){return t("Edit Port Group")}get instanceName(){return this.item.uuid}get defaultValue(){var{name:e,uuid:t}=this.containerProps.detail||{},{name:a,standalone_ports_supported:r,address:i,extra:n={},properties:l={}}=this.item;return{node:e||t,name:a,address:i,standalone_ports_supported:r,extra:(0,I.updateObjToAddSelectArray)(n),properties:(0,I.updateObjToAddSelectArray)(l)}}get formItems(){return[{name:"node",label:t("Node"),type:"label",iconType:"host"},{name:"name",label:t("Name"),type:"input"},{name:"address",label:t("MAC Address"),type:"input",required:!0,validator:M.macAddressValidate},{name:"standalone_ports_supported",label:t("Stand Alone Ports Supported"),type:"radio",options:_.yesNoOptions},{name:"properties",label:t("Properties"),type:"add-select",itemComponent:S.default,addText:t("Add Property"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))},{name:"extra",label:t("Extra Infos"),type:"add-select",itemComponent:S.default,addText:t("Add Extra Info"),validator:(e,a)=>this.checkKeyValues(a)?d.default.resolve():d.default.reject(t("Please enter complete key value!"))}]}}a.Edit=A,(0,f.default)(A,"id","EditPortGroup"),(0,f.default)(A,"title",t("Edit Port Group")),(0,f.default)(A,"buttonText",t("Edit")),(0,f.default)(A,"policy","baremetal:portgroup:update"),(0,f.default)(A,"allowed",(()=>d.default.resolve(!0)));var w=(0,g.inject)("rootStore")((0,g.observer)(A));a.default=w}}]); \ No newline at end of file diff --git a/skyline_console/static/compute.bundle.1663167892.js.gz b/skyline_console/static/compute.bundle.1663167892.js.gz new file mode 100644 index 00000000..47845c36 Binary files /dev/null and b/skyline_console/static/compute.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/configuration.bundle.1658297502.js b/skyline_console/static/configuration.bundle.1658297502.js deleted file mode 100644 index 3d82e3d5..00000000 --- a/skyline_console/static/configuration.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{1265:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.NeutronAgentStore=void 0;var i=n(a(49)),l=n(a(54));class u extends l.default{get client(){return i.default.neutron.agents}get listFilterByProject(){return!0}}t.NeutronAgentStore=u;var s=new u;t.default=s},1325:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.ServiceStore=void 0;var i,l=n(a(25)),u=n(a(55)),s=a(32),o=n(a(49)),d=n(a(54)),c=(i=class extends d.default{get client(){return o.default.cinder.services}enable(e){return this.submitting(this.client.enable(e))}disable(e){return this.submitting(this.client.reason(e))}},(0,u.default)(i.prototype,"enable",[s.action],(0,l.default)(i.prototype,"enable"),i.prototype),(0,u.default)(i.prototype,"disable",[s.action],(0,l.default)(i.prototype,"disable"),i.prototype),i);t.ServiceStore=c;var f=new c;t.default=f},1326:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),u=a(28),s=a(45),o=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.NeutronAgentRouterStore=void 0;var f,v,m,p=c(a(62)),g=c(a(65)),h=c(a(52)),b=c(a(72)),y=c(a(37)),_=c(a(55)),S=(c(a(73)),a(32)),x=c(a(49)),I=a(47),w=c(a(54));function A(e,t){var a=r(e);if(n){var u=n(e);t&&(u=i(u).call(u,(function(t){return l(e,t).enumerable}))),a.push.apply(a,u)}return a}function C(e){for(var t=1;te.agentId)),(0,b.default)(this,"remove",v,this),(0,b.default)(this,"add",m,this)}get client(){return x.default.neutron.agents.l3Routers}get listFilterByProject(){return!0}get isSubResource(){return!0}get mapper(){return e=>{var{external_gateway_info:t,created_at:a}=e||{};return C(C({},e),{},{hasExternalGateway:!!t,externalNetworkId:t&&t.network_id||"",externalNetworkName:t&&t.network_name||"",externalFixedIps:t&&t.external_fixed_ips||[],standard_attr_id:a})}}listDidFetch(e,t,a){return(0,h.default)((function*(){var{agentId:t}=a;return(0,p.default)(e).call(e,(e=>C(C({},e),{},{agentId:t})))}))()}},v=(0,_.default)(f.prototype,"remove",[S.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{agentId:t,id:a}=e;return this.submitting(this.client.delete(t,a))}}}),m=(0,_.default)(f.prototype,"add",[S.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{agentId:a}=e;if(!(0,I.isArray)(t))return this.submitting(this.client.create(a,t));var r=(0,p.default)(t).call(t,(e=>this.client.create(a,e)));return this.submitting(g.default.allSettled(r))}}}),f);t.NeutronAgentRouterStore=N;var k=new N;t.default=k},1327:function(e,t,a){"use strict";var r=a(35),n=a(44),i=a(33),l=a(25),u=a(28),s=a(45),o=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.NeutronAgentNetworkStore=void 0;var f,v,m,p=c(a(62)),g=c(a(65)),h=c(a(52)),b=c(a(72)),y=c(a(37)),_=c(a(55)),S=(c(a(73)),a(32)),x=c(a(49)),I=a(47),w=c(a(54));function A(e,t){var a=r(e);if(n){var u=n(e);t&&(u=i(u).call(u,(function(t){return l(e,t).enumerable}))),a.push.apply(a,u)}return a}function C(e){for(var t=1;te.agentId)),(0,b.default)(this,"remove",v,this),(0,b.default)(this,"add",m,this)}get client(){return x.default.neutron.agents.dhcpNetworks}get isSubResource(){return!0}get listFilterByProject(){return!0}get mapper(){return e=>{var{created_at:t}=e;return C(C({},e),{},{standard_attr_id:t})}}listDidFetch(e,t,a){return(0,h.default)((function*(){var{agentId:t}=a;return(0,p.default)(e).call(e,(e=>C(C({},e),{},{agentId:t})))}))()}},v=(0,_.default)(f.prototype,"remove",[S.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{agentId:t,id:a}=e;return this.submitting(this.client.delete(t,a))}}}),m=(0,_.default)(f.prototype,"add",[S.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{agentId:a}=e;if(!(0,I.isArray)(t))return this.submitting(this.client.create(a,t));var r=(0,p.default)(t).call(t,(e=>this.client.create(a,e)));return this.submitting(g.default.allSettled(r))}}}),f);t.NeutronAgentNetworkStore=N;var k=new N;t.default=k},1509:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3873)),l=n(a(3874)),u={rowActions:{firstAction:null,moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},1510:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3893)),l=n(a(3894)),u=n(a(3895)),s=n(a(3896)),o={rowActions:{firstAction:u.default,moreActions:[{action:s.default},{action:l.default}]},batchActions:[l.default],primaryActions:[i.default]};t.default=o},3860:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(389)),l=n(a(3861)),u=e=>(0,i.default)(l.default,e);t.default=u},3861:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(1130)),l=n(a(525)),u=n(a(3862)),s=n(a(3877)),o=n(a(3882)),d=n(a(3892)),c=n(a(3897)),f="/configuration-admin",v=[{path:f,component:i.default,routes:[{path:"".concat(f,"/info"),component:u.default,exact:!0},{path:"".concat(f,"/neutron/detail/:id"),component:o.default,exact:!0},{path:"".concat(f,"/setting"),component:s.default,exact:!0},{path:"".concat(f,"/metadata"),component:d.default,exact:!0},{path:"".concat(f,"/metadata/detail/:id"),component:c.default,exact:!0},{path:"*",component:l.default}]}];t.default=v},3862:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Service=void 0;var l=i(r(518)),u=r(382),s=i(r(1152)),o=i(r(3863)),d=i(r(3864)),c=i(r(3868)),f=i(r(3872)),v=i(r(3875));class m extends s.default{get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get tabs(){var e=[{title:t("Services"),key:"catalog",component:o.default},{title:t("Compute Services"),key:"computeServices",component:d.default},{title:t("Neutron Agents"),key:"neutronAgent",component:f.default},{title:t("Orchestration Services"),key:"heatService",component:v.default}];return this.enableCinder&&(0,l.default)(e).call(e,3,0,{title:t("Block Storage Services"),key:"cinderService",component:c.default}),e}}a.Service=m;var p=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=p},3863:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Catalog=void 0;var l=i(r(62)),u=i(r(82)),s=i(r(37)),o=i(r(0)),d=r(382),c=i(r(1114)),f=r(135),v=i(r(1420));class m extends c.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name",width:150},{title:t("Service"),dataIndex:"type",isHideable:!0,width:150},{title:t("Region"),dataIndex:"region",isHideable:!0,width:150},{title:t("Endpoints"),dataIndex:"endpoints",isHideable:!0,render:e=>e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:"endpoint-".concat((0,f.generateId)())},o.default.createElement("b",null,e.interface,": "),o.default.createElement("span",null,e.url)))):"-",stringify:e=>e.length?(0,l.default)(e).call(e,(e=>{var t;return(0,u.default)(t="".concat(e.interface,": ")).call(t,e.url)})).join("\n"):"-"}]))}init(){this.store=v.default}get policy(){return"identity:get_auth_catalog"}get name(){return t("services")}get hasTab(){return!0}get searchFilters(){return[]}}a.Catalog=m;var p=(0,d.inject)("rootStore")((0,d.observer)(m));a.default=p},3864:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ComputeService=void 0;var l=i(r(82)),u=i(r(37)),s=r(382),o=i(r(1114)),d=r(1181),c=r(540),f=r(135),v=i(r(3865));class m extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"zone",isHideable:!0},{title:t("Service Status"),dataIndex:"status",render:e=>d.serviceStatus[e]||"-",tip:(e,a)=>{var r,{disabled_reason:n}=a||{};return n?(0,l.default)(r="".concat(t("Reason: ")," ")).call(r,n):""}},{title:t("Service State"),dataIndex:"state",render:e=>d.serviceState[e]||"-"},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=new c.ComputeHostStore}get policy(){return"os_compute_api:os-services:list"}get name(){return t("compute services")}get hasTab(){return!0}get actionConfigs(){return v.default}get fetchDataByAllProjects(){return!1}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"status",options:(0,f.getOptions)(d.serviceStatus)},{label:t("Service State"),name:"state",options:(0,f.getOptions)(d.serviceState)}]}}a.ComputeService=m;var p=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=p},3865:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3866)),l=n(a(3867)),u={rowActions:{moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},3866:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),u=r(25),s=r(28),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var v=f(r(516)),m=f(r(65)),p=f(r(37)),g=r(382),h=f(r(540)),b=r(1113);function y(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function _(e){for(var t=1;t{var{binary:t,id:a}=this.item,r=_(_({},e),{},{binary:t,id:a});return h.default.disable(r)}))}init(){this.store=h.default}get name(){return t("disable compute service")}get instanceName(){return this.item.binary||(0,v.default)(this).binary}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get formItems(){return[{name:"binary",label:t("Compute Service"),type:"label",iconType:"instance"},{name:"host",label:t("Current Host"),type:"label",iconType:"host"},{name:"disabled_reason",label:t("Reason"),type:"textarea",maxLength:64}]}}a.DisableAction=S,(0,p.default)(S,"id","disable-host"),(0,p.default)(S,"title",t("Disable Compute Service")),(0,p.default)(S,"buttonText",t("Disable")),(0,p.default)(S,"isDanger",!0),(0,p.default)(S,"allowed",(e=>m.default.resolve("enabled"===e.status&&"nova-compute"===e.binary))),(0,p.default)(S,"policy","os_compute_api:os-services:update");var x=(0,g.inject)("rootStore")((0,g.observer)(S));a.default=x},3867:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(540));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.host)),(0,l.default)(this,"policy","os_compute_api:os-services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"disabled"===e.status)),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return s.default.enable({id:e})}))}get id(){return"enable-service"}get title(){return t("Enable Compute Service")}get buttonText(){return t("Enable")}get actionName(){return t("enable compute service")}}a.default=o},3868:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CinderService=void 0;var l=i(r(82)),u=i(r(37)),s=r(382),o=i(r(1114)),d=r(1181),c=i(r(1325)),f=r(135),v=i(r(3869));class m extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"zone",isHideable:!0},{title:t("Service Status"),dataIndex:"status",render:e=>d.serviceStatus[e]||"-",tip:(e,a)=>{if("enabled"===e)return"";var r,{disabled_reason:n}=a||{};return n?(0,l.default)(r="".concat(t("Reason: ")," ")).call(r,n):""}},{title:t("Service State"),dataIndex:"state",render:e=>d.serviceState[e]||"-"},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"volume_extension:services:index"}get name(){return t("cinder services")}get rowKey(){return"binary"}get hasTab(){return!0}get actionConfigs(){return v.default}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"status",options:(0,f.getOptions)(d.serviceStatus)},{label:t("Service State"),name:"state",options:(0,f.getOptions)(d.serviceState)}]}}a.CinderService=m;var p=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=p},3869:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3870)),l=n(a(3871)),u={rowActions:{firstAction:null,moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},3870:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1325));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","volume_extension:services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canEnable(e))),(0,l.default)(this,"onSubmit",(e=>{var{host:t,binary:a}=e||this.item,r={host:t,binary:a};return s.default.enable(r)}))}get id(){return"enable"}get title(){return t("Enable Service")}get buttonText(){return t("Enable")}get actionName(){return t("enable cinder service")}canEnable(e){return"disabled"===e.status}}a.default=o},3871:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),u=r(25),s=r(28),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var v=f(r(516)),m=f(r(65)),p=f(r(37)),g=r(382),h=f(r(1325)),b=r(1113);function y(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function _(e){for(var t=1;t{var{binary:t,host:a}=this.item,r=_(_({},e),{},{binary:t,host:a});return h.default.disable(r)}))}init(){this.store=h.default}get name(){return t("disable cinder service")}get instanceName(){return this.item.binary||(0,v.default)(this).binary}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get formItems(){return[{name:"binary",label:t("Cinder Service"),type:"label",iconType:"volume"},{name:"host",label:t("Host"),type:"label",iconType:"host"},{name:"disabled_reason",label:t("Reason"),type:"textarea",required:!0,maxLength:200}]}}a.DisableAction=S,(0,p.default)(S,"id","disable-service"),(0,p.default)(S,"title",t("Disable Cinder Service")),(0,p.default)(S,"buttonText",t("Disable")),(0,p.default)(S,"isDanger",!0),(0,p.default)(S,"allowed",(e=>m.default.resolve("enabled"===e.status))),(0,p.default)(S,"policy","volume_extension:services:update");var x=(0,g.inject)("rootStore")((0,g.observer)(S));a.default=x},3872:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.NeutronAgent=void 0;var l=i(r(62)),u=i(r(37)),s=r(382),o=i(r(1114)),d=r(1181),c=i(r(1265)),f=i(r(1509));class v extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"binary",isLink:!0,routeName:"neutronAgentDetailAdmin"},{title:t("Type"),dataIndex:"agent_type",isHideable:!0},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"availability_zone",render:e=>e||"-"},{title:t("Service Status"),dataIndex:"admin_state_up",render:e=>(0,d.getNeutronAgentServiceStatus)(e)||"-"},{title:t("Service State"),dataIndex:"alive",render:e=>(0,d.getNeutronAgentServiceState)(e)||"-",isStatus:!0},{title:t("Last Updated"),dataIndex:"heartbeat_timestamp",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"get_agent"}get name(){return t("neutron agents")}get hasTab(){return!0}get actionConfigs(){return f.default}get searchFilters(){var e,a;return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"admin_state_up",options:(0,l.default)(e=[!0,!1]).call(e,(e=>({label:(0,d.getNeutronAgentServiceStatus)(e),key:e})))},{label:t("Service State"),name:"alive",options:(0,l.default)(a=[!0,!1]).call(a,(e=>({label:(0,d.getNeutronAgentServiceState)(e),key:e})))}]}}a.NeutronAgent=v;var m=(0,s.inject)("rootStore")((0,s.observer)(v));a.default=m},3873:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1265));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","update_agent"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canEnable(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.edit({id:t},{admin_state_up:!0})}))}get id(){return"enable"}get title(){return t("Enable Neutron Agent")}get buttonText(){return t("Enable")}get actionName(){return t("enable neutron agent")}canEnable(e){return!1===e.admin_state_up}}a.default=o},3874:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1265));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","update_agent"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canDisable(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.edit({id:t},{admin_state_up:!1})}))}get id(){return"disable"}get title(){return t("Disable Neutron Agent")}get isDanger(){return!0}get buttonText(){return t("Disable")}get actionName(){return t("disable neutron agent")}canDisable(e){return!0===e.admin_state_up}}a.default=o},3875:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.HeatService=void 0;var l=i(r(37)),u=r(382),s=i(r(1114)),o=r(1181),d=r(135),c=i(r(3876));class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Engine ID"),dataIndex:"engine_id",isHideable:!0},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Status"),dataIndex:"status",render:e=>o.serviceState[e]||"-"},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"service:index"}get aliasPolicy(){return"heat:service:index"}get name(){return t("heat services")}get hasTab(){return!0}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Status"),name:"status",options:(0,d.getOptions)(o.serviceState)}]}}a.HeatService=f;var v=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=v},3876:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.HeatServiceStore=void 0;var i=n(a(49)),l=n(a(54));class u extends l.default{get client(){return i.default.heat.services}}t.HeatServiceStore=u;var s=new u;t.default=s},3877:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Setting=void 0;var l=i(r(37)),u=r(382),s=i(r(1114)),o=i(r(1196)),d=r(1123),c=i(r(3878));class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Type"),dataIndex:"key"},{title:t("Effective Mode"),dataIndex:"restart_service",titleTip:t("Effective mode after configuration changes"),render:e=>e?t("Take effect after restart"):t("Immediate effect")}]))}init(){this.store=o.default}get policy(){return d.onlyAdminCanReadPolicy}get name(){return t("settings")}get rowKey(){return"key"}get hideCustom(){return!0}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.Setting=f;var v=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=v},3878:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3879)),l=n(a(3880)),u=n(a(3881)),s={rowActions:{firstAction:i.default,moreActions:[{action:l.default},{action:u.default}]},batchActions:[u.default],primaryActions:[]};t.default=s},3879:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.View=void 0;var l=i(r(65)),u=i(r(37)),s=i(r(0)),o=r(1113),d=r(382),c=r(1123),f=i(r(1234));class v extends o.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"renderContent",(()=>{var e={value:this.item.value,mode:"json",options:{readOnly:!0}};return s.default.createElement(f.default,e)})),(0,u.default)(this,"onSubmit",null)}get id(){return"view"}get name(){return t("View")}get instanceName(){return this.item.key}static allowed(){return l.default.resolve(!0)}get defaultValue(){var{key:e}=this.item;return{key:e}}get labelCol(){return{xs:{span:4},sm:{span:4}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get formItems(){return[{name:"key",type:"label",label:t("Name")},{name:"value",type:"other",label:t("Value"),content:this.renderContent()}]}}a.View=v,(0,u.default)(v,"title",t("View Detail")),(0,u.default)(v,"readOnly",!0),(0,u.default)(v,"enableSystemReader",!0),(0,u.default)(v,"policy",c.onlyAdminCanReadPolicy);var m=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=m},3880:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=i(r(65)),u=i(r(322)),s=i(r(37)),o=i(r(0)),d=r(1113),c=i(r(1196)),f=i(r(1234)),v=r(382),m=r(1123);class p extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onChange",(e=>{var t={};try{t=JSON.parse(e)}catch(e){t=this.item.value}this.setState({value:t,inputValue:e})})),(0,s.default)(this,"renderContent",(()=>{var e={value:this.item.value,mode:"json",onChange:this.onChange};return o.default.createElement(f.default,e)})),(0,s.default)(this,"checkKeyValues",(()=>{var{inputValue:e}=this.state;try{return JSON.parse(e),!0}catch(e){return!1}})),(0,s.default)(this,"onSubmit",(()=>{var{key:e}=this.item,{value:t}=this.state,a={key:e,value:t};return c.default.update(a)}))}get id(){return"edit"}get instanceName(){return this.item.key}static allowed(){return l.default.resolve(!0)}init(){this.state.value=this.item.value,this.state.inputValue=(0,u.default)(this.item.value)}get defaultValue(){var{key:e}=this.item;return{key:e}}get labelCol(){return{xs:{span:4},sm:{span:4}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get formItems(){return[{name:"key",type:"label",label:t("Name")},{name:"value",type:"other",label:t("Value"),content:this.renderContent(),validator:()=>this.checkKeyValues()?l.default.resolve():l.default.reject(t("Please enter JSON in the correct format!"))}]}}a.Edit=p,(0,s.default)(p,"policy",m.onlyAdminCanChangePolicy);var g=(0,v.inject)("rootStore")((0,v.observer)(p));a.default=g},3881:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1196)),o=r(1123);class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.key)),(0,l.default)(this,"policy",o.onlyAdminCanChangePolicy),(0,l.default)(this,"onSubmit",(e=>{var{key:t}=e||this.item;return s.default.delete({id:t})}))}get id(){return"reset"}get title(){return t("Reset To Initial Value")}get buttonType(){return"primary"}get isDanger(){return!0}get actionName(){return t("Reset To Initial Value")}}a.default=d},3882:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.KeypairDetail=void 0;var l=r(382),u=r(1265),s=i(r(1119)),o=r(1181),d=i(r(3883)),c=i(r(3884)),f=i(r(3888)),v=i(r(1509));class m extends s.default{get name(){return t("neutron agent")}get policy(){return"get_agent"}get listUrl(){return this.getRoutePath("systemInfo",null,{tab:"neutronAgent"})}get actionConfigs(){return v.default}get detailInfos(){return[{title:t("Type"),dataIndex:"agent_type"},{title:t("Service Status"),dataIndex:"admin_state_up",render:e=>(0,o.getNeutronAgentServiceStatus)(e)||"-"},{title:t("Service State"),dataIndex:"alive",render:e=>(0,o.getNeutronAgentServiceState)(e)||"-"},{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"availability_zone"},{title:t("Created At"),dataIndex:"created_at"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("BaseDetail"),key:"BaseDetail",component:d.default}];return"L3 agent"===this.detailData.agent_type?e.push({title:t("Router"),key:"router",component:c.default}):"DHCP agent"===this.detailData.agent_type&&e.push({title:t("Network"),key:"network",component:f.default}),e}init(){this.store=new u.NeutronAgentStore}}a.KeypairDetail=m;var p=(0,l.inject)("rootStore")((0,l.observer)(m));a.default=p},3883:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(322)),u=i(r(0)),s=r(382),o=i(r(1122));class d extends o.default{get leftCards(){return[this.baseCard]}get rightCards(){return[this.configCard]}get baseCard(){var e=[{label:t("Name"),dataIndex:"binary"},{label:t("Topic"),dataIndex:"topic"},{label:t("Resources Synced"),dataIndex:"resources_synced"},{label:t("Heartbeat Timestamp"),dataIndex:"heartbeat_timestamp",valueRender:"toLocalTime"},{label:t("Started At"),dataIndex:"started_at"}];return{title:t("Base Info"),options:e}}get configCard(){var{configurations:e="{}"}=this.detailData||{},a=[{label:"",content:u.default.createElement("div",null,u.default.createElement("pre",null,(0,l.default)(e,null,4)))}];return{labelCol:0,title:t("Configuration"),options:a}}}a.BaseDetail=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3884:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),u=r(25),s=r(28),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Router=void 0;var v=f(r(71)),m=f(r(37)),p=r(382),g=f(r(1114)),h=r(1137),b=r(1326),y=f(r(3885));function _(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.default{constructor(){super(...arguments),(0,m.default)(this,"getColumns",(()=>(0,h.getRouterColumns)(this))),(0,m.default)(this,"updateFetchParams",(e=>{var{id:t}=e;return function(e){for(var t=1;t{var t,{id:a}=e;return(0,v.default)(t=this.l3Routes).call(t,a)>=0})),(0,b.default)(this,"onSubmit",(e=>{var{router:{selectedRowKeys:t=[]}={}}=e,a=(0,m.default)(t).call(t,(e=>({router_id:e}))),{agentId:r}=this;return this.store.add({agentId:r},a)}))}init(){this.store=S.default,this.routerStore=new _.RouterStore,this.getL3Routes()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("add router")}get instanceName(){var{router:{selectedRows:e=[]}={}}=(0,p.default)(this);return(0,m.default)(e).call(e,(e=>e.name)).join(", ")}get detail(){var{detail:e={}}=this.containerProps;return e}get agentId(){return this.detail.id}getL3Routes(){var e=this;return(0,h.default)((function*(){var{agentId:t}=e;t&&(yield e.store.fetchList({agentId:t,all_projects:!0}),e.updateDefaultValue())}))()}get l3Routes(){var e;return(0,m.default)(e=this.store.list.data||[]).call(e,(e=>e.id))}get defaultValue(){var{binary:e}=this.detail;return{binary:e}}getColumns(){var e=(0,I.getRouterColumns)(this);return e[0].render=null,e[1].render=w.projectRender,e}getFilters(){return[...I.routerFilters,{label:t("Project ID"),name:"project_id"}]}get formItems(){return[{name:"binary",label:t("Name"),type:"label",iconType:"host"},C({name:"router",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,disabledFunc:this.disabledFunc,extraParams:{all_projects:!0},required:!0,isMulti:!0,filterParams:this.getFilters(),columns:this.getColumns()},I.routerSortProps)]}}a.AddRouter=N,(0,b.default)(N,"id","add-router"),(0,b.default)(N,"title",t("Add Router")),(0,b.default)(N,"policy","create_l3-router"),(0,b.default)(N,"allowed",(()=>g.default.resolve(!0)));var k=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=k},3887:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1326));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_l3-router"),(0,l.default)(this,"onSubmit",(e=>{var{id:t,agentId:a}=e;return s.default.remove({id:t,agentId:a})}))}get id(){return"remove"}get title(){return t("Remove Router")}get isDanger(){return!0}get buttonText(){return t("Remove")}get actionName(){return t("remove router")}}a.default=o},3888:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),u=r(25),s=r(28),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Networks=void 0;var v=f(r(518)),m=f(r(71)),p=f(r(37)),g=r(382),h=f(r(1114)),b=r(522),y=r(1327),_=r(319),S=f(r(3889));function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends h.default{constructor(){super(...arguments),(0,p.default)(this,"getColumns",(()=>{var e=(0,b.networkColumns)(this);return(0,v.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0}),e})),(0,p.default)(this,"updateFetchParams",(e=>{var{id:t}=e;return function(e){for(var t=1;t{var t,{id:a}=e;return(0,v.default)(t=this.dhcpNetworks).call(t,a)})),(0,y.default)(this,"getColumns",(()=>{var e=(0,w.networkColumns)(this);return(0,m.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",render:C.projectRender,sortKey:"project_id"}),e})),(0,y.default)(this,"onSubmit",(e=>{var{network:{selectedRowKeys:t=[]}={}}=e,a=(0,p.default)(t).call(t,(e=>({network_id:e}))),{agentId:r}=this;return this.store.add({agentId:r},a)}))}init(){this.store=x.default,this.networkStore=new S.NetworkStore,this.getDhcpNetworks()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("add network")}get instanceName(){var{network:{selectedRows:e=[]}={}}=(0,g.default)(this);return(0,p.default)(e).call(e,(e=>e.name)).join(", ")}get detail(){var{detail:e={}}=this.containerProps;return e}get agentId(){return this.detail.id}getDhcpNetworks(){var e=this;return(0,b.default)((function*(){var{agentId:t}=e;t&&(yield e.store.fetchList({agentId:t,all_projects:!0}),e.updateDefaultValue())}))()}get dhcpNetworks(){var e;return(0,p.default)(e=this.store.list.data||[]).call(e,(e=>e.id))}get defaultValue(){var{binary:e}=this.detail;return{binary:e}}getSearchFilters(){return[{label:t("Name"),name:"name"},{label:t("Shared"),name:"shared",options:A.yesNoOptions},{label:t("External"),name:"router:external",options:A.yesNoOptions},{label:t("Project ID"),name:"project_id"}]}get formItems(){return[{name:"binary",label:t("Name"),type:"label",iconType:"host"},k({name:"network",label:t("Network"),type:"select-table",backendPageStore:this.networkStore,disabledFunc:this.disabledFunc,extraParams:{all_projects:!0},required:!0,isMulti:!0,filterParams:this.getSearchFilters(),columns:this.getColumns()},w.networkSortProps)]}}a.AddNetwork=j,(0,y.default)(j,"id","add-network"),(0,y.default)(j,"title",t("Add Network")),(0,y.default)(j,"policy","create_dhcp-network"),(0,y.default)(j,"allowed",(()=>h.default.resolve(!0)));var M=(0,_.inject)("rootStore")((0,_.observer)(j));a.default=M},3891:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1327));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_dhcp-network"),(0,l.default)(this,"onSubmit",(e=>{var{id:t,agentId:a}=e;return s.default.remove({id:t,agentId:a})}))}get id(){return"remove"}get title(){return t("Remove Network")}get isDanger(){return!0}get buttonText(){return t("Remove")}get actionName(){return t("remove network")}}a.default=o},3892:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Metadata=void 0;var l=i(r(62)),u=i(r(37)),s=i(r(0)),o=r(382),d=r(196),c=i(r(1114)),f=i(r(1161)),v=i(r(1510));class m extends c.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"display_name",render:(e,t)=>e?s.default.createElement(d.Link,{to:"/configuration-admin/metadata/detail/".concat(t.namespace)},e):"-"},{title:t("Description"),dataIndex:"description",isHideable:!0,width:350},{title:t("Resource Types"),dataIndex:"resource_type_associations",isHideable:!0,render:e=>e?(0,l.default)(e).call(e,(e=>s.default.createElement("div",{key:e.name},e.name))):"-",stringify:e=>e?(0,l.default)(e).call(e,(e=>e.name)).join(";"):"-"},{title:t("Public"),dataIndex:"public",valueRender:"yesNo",isHideable:!0},{title:t("Protected"),dataIndex:"protected",valueRender:"yesNo",isHideable:!0}]))}init(){this.store=f.default}get policy(){return"get_metadef_namespaces"}get name(){return t("metadata")}get actionConfigs(){return v.default}}a.Metadata=m;var p=(0,o.inject)("rootStore")((0,o.observer)(m));a.default=p},3893:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=i(r(65)),u=i(r(37)),s=r(382),o=i(r(1161)),d=r(1113);class c extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{metadata:t,options:a={}}=e,r={};try{r=JSON.parse(t)}catch(e){}var{isPublic:n=!1,isProtected:i=!1}=a;return r.protected=i||!1,r.visibility=!0===n?"public":"private",this.store.create(r)}))}init(){this.store=o.default}get name(){return t("Import metadata")}get formItems(){return[{name:"metadata",label:t("Metadata"),type:"textarea-from-file",placeholder:t("Please input metadata"),required:!0,rows:6},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Public"),value:"isPublic"},{label:t("Protected"),value:"isProtected"}]}]}}a.Create=c,(0,u.default)(c,"id","create"),(0,u.default)(c,"title",t("Import Metadata")),(0,u.default)(c,"policy","add_metadef_namespace"),(0,u.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3894:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),u=r(1113),s=i(r(1161));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_metadef_namespace"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.protected)),(0,l.default)(this,"onSubmit",(e=>{var{namespace:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Metadata")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete metadata")}}a.default=o},3895:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=i(r(65)),u=i(r(37)),s=r(382),o=i(r(1161)),d=r(1113);class c extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{display_name:t,description:a}=this.item,{namespace:r,options:n}=e,{isPublic:i,isProtected:l}=n,u={display_name:t,description:a,namespace:r,protected:l,visibility:!0===i?"public":"private"};return o.default.edit({id:r},u)}))}init(){this.store=o.default}get name(){return t("Edit metadata")}get instanceName(){return this.item.display_name}get defaultValue(){var{namespace:e,protected:t,visibility:a}=this.item;return{namespace:e,options:{isProtected:t,isPublic:"public"===a}}}get formItems(){return[{name:"namespace",label:t("Namespace"),iconType:"metadata",type:"label"},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Public"),value:"isPublic"},{label:t("Protected"),value:"isProtected"}]}]}}a.Edit=c,(0,u.default)(c,"id","edit"),(0,u.default)(c,"title",t("Edit Metadata")),(0,u.default)(c,"buttonText",t("Edit")),(0,u.default)(c,"policy","modify_metadef_namespace"),(0,u.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3896:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),u=r(25),s=r(28),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Manage=void 0;var v=f(r(28)),m=f(r(62)),p=f(r(65));r(1124);var g=f(r(1125)),h=f(r(37)),b=f(r(0)),y=r(382),_=r(32),S=r(1161),x=r(1113);r(167);function I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{name:a}=t;t.prefix=e;var r=(0,_.toJS)(this.store.resourceTypes);(0,v.default)(r).call(r,(t=>{t.name===a&&(t.prefix=e)})),this.store.resourceTypes=r})),(0,h.default)(this,"renderInput",((e,a)=>{var r=t("Please input prefix");return b.default.createElement(g.default,{placeholder:r,value:e,onChange:e=>{this.updatePrefix(e.currentTarget.value,a)},onClick:e=>{e&&e.stopPropagation()}})})),(0,h.default)(this,"onSubmit",(e=>{var t,{associations:a={}}=e,{selectedRowKeys:r=[]}=a,{resource_type_associations:n=[],namespace:i}=this.item,l={},u={},s={},o=[],d=[];(0,v.default)(t=this.resourceTypes).call(t,(e=>{e.prefix=e.prefix||"",l[e.name]=e}));var c=(0,m.default)(r).call(r,(e=>(u[e]=l[e],{name:e,prefix:l[e].prefix||""})));return(0,v.default)(n).call(n,(e=>{s[e.name]=e,u[e.name]?u[e.name].prefix!==e.prefix&&o.push(e):o.push(e)})),(0,v.default)(c).call(c,(e=>{s[e.name]?s[e.name].prefix!==e.prefix&&d.push(e):d.push(e)})),0===d.length&&0===o.length?p.default.resolve():this.store.manageResourceTypes(i,o,d)}))}init(){this.store=new S.MetadataStore,this.getResourceTypes()}get name(){return t("manage resource types")}static get modalSize(){return"large"}getModalSize(){return"large"}getResourceTypes(){this.store.fetchResourceTypes(this.item)}get resourceTypes(){var e;return(0,m.default)(e=this.store.resourceTypes||[]).call(e,(e=>w(w({},e),{},{id:e.name})))}get defaultValue(){var{namespace:e,resource_type_associations:t=[]}=this.item;return{namespace:e,associations:{selectedRowKeys:(0,m.default)(t).call(t,(e=>e.name))}}}get formItems(){return[{name:"namespace",label:t("Namespace"),iconType:"metadata",type:"label"},{name:"associations",label:t("Resource Types"),type:"select-table",data:this.resourceTypes,isLoading:this.store.resourceTypeLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Prefix"),dataIndex:"prefix",render:(e,t)=>this.renderInput(e,t)}]}]}}a.Manage=A,(0,h.default)(A,"id","manage"),(0,h.default)(A,"title",t("Manage Resource Types")),(0,h.default)(A,"policy",["list_metadef_resource_types","add_metadef_resource_type_association","remove_metadef_resource_type_association"]),(0,h.default)(A,"allowed",(e=>p.default.resolve(!e.protected)));var C=(0,y.inject)("rootStore")((0,y.observer)(A));a.default=C},3897:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.MetadataDetail=void 0;var l=r(382),u=r(1161),s=i(r(1119)),o=i(r(3898)),d=i(r(1510));class c extends s.default{get name(){return t("metadata")}get policy(){return"get_metadef_namespace"}get listUrl(){return this.getRoutePath("metadata")}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"display_name"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("BaseDetail"),key:"BaseDetail",component:o.default}]}init(){this.store=new u.MetadataStore}}a.MetadataDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},3898:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(62)),u=i(r(82)),s=i(r(322)),o=i(r(0)),d=r(382),c=i(r(1122)),f=i(r(3899));class v extends c.default{get leftCards(){return[this.baseInfoCard,this.resourceCard]}get rightCards(){return[this.jsonCard]}get baseInfoCard(){var e=[{label:t("Namespace"),dataIndex:"namespace"},{label:t("Description"),dataIndex:"description"}];return{title:t("Base Info"),options:e}}get resourceCard(){var{resource_type_associations:e=[]}=this.detailData||{},a=(0,l.default)(e).call(e,(e=>{var a,{name:r,prefix:n}=e;return{label:r,content:(0,u.default)(a="".concat(t("Prefix"),": ")).call(a,n||"-")}}));return{title:t("Associated Resource Types"),options:a}}get jsonCard(){var e=[{label:"",content:o.default.createElement("pre",{className:f.default["json-data"]},(0,s.default)(this.detailData,null,4))}];return{labelCol:0,title:t("Content"),options:e}}}a.BaseDetail=v;var m=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=m},3899:function(e,t,a){var r=a(3900);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,n);r.locals&&(e.exports=r.locals)},3900:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,".styles__json-data--euQUb {\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n",""]),t.locals={"json-data":"styles__json-data--euQUb"}}}]); \ No newline at end of file diff --git a/skyline_console/static/configuration.bundle.1658297502.js.gz b/skyline_console/static/configuration.bundle.1658297502.js.gz deleted file mode 100644 index 8adecc46..00000000 Binary files a/skyline_console/static/configuration.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/configuration.bundle.1663167892.js b/skyline_console/static/configuration.bundle.1663167892.js new file mode 100644 index 00000000..48cc21c0 --- /dev/null +++ b/skyline_console/static/configuration.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{1349:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.NeutronAgentStore=void 0;var i=n(a(48)),l=n(a(53));class u extends l.default{get client(){return i.default.neutron.agents}get listFilterByProject(){return!0}}t.NeutronAgentStore=u;var s=new u;t.default=s},1411:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),u=a(27),s=a(45),o=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ServiceStore=void 0;var f,v=c(a(57)),p=c(a(25)),m=c(a(36)),g=c(a(54)),h=a(34),b=c(a(48)),y=c(a(53));function _(e,t){var a=r(e);if(n){var u=n(e);t&&(u=i(u).call(u,(function(t){return l(e,t).enumerable}))),a.push.apply(a,u)}return a}function S(e){for(var t=1;tS(S({},e),{},{id:t}))):e}},(0,g.default)(f.prototype,"enable",[h.action],(0,p.default)(f.prototype,"enable"),f.prototype),(0,g.default)(f.prototype,"disable",[h.action],(0,p.default)(f.prototype,"disable"),f.prototype),f);t.ServiceStore=x;var I=new x;t.default=I},1412:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),u=a(27),s=a(45),o=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.NeutronAgentRouterStore=void 0;var f,v,p,m=c(a(57)),g=c(a(65)),h=c(a(51)),b=c(a(71)),y=c(a(36)),_=c(a(54)),S=(c(a(72)),c(a(91))),x=a(34),I=c(a(48)),w=c(a(53));function A(e,t){var a=r(e);if(n){var u=n(e);t&&(u=i(u).call(u,(function(t){return l(e,t).enumerable}))),a.push.apply(a,u)}return a}function C(e){for(var t=1;te.agentId)),(0,b.default)(this,"remove",v,this),(0,b.default)(this,"add",p,this)}get client(){return I.default.neutron.agents.l3Routers}get listFilterByProject(){return!0}get isSubResource(){return!0}get mapper(){return e=>{var{external_gateway_info:t,created_at:a}=e||{};return C(C({},e),{},{hasExternalGateway:!!t,externalNetworkId:t&&t.network_id||"",externalNetworkName:t&&t.network_name||"",externalFixedIps:t&&t.external_fixed_ips||[],standard_attr_id:a})}}listDidFetch(e,t,a){return(0,h.default)((function*(){var{agentId:t}=a;return(0,m.default)(e).call(e,(e=>C(C({},e),{},{agentId:t})))}))()}},v=(0,_.default)(f.prototype,"remove",[x.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{agentId:t,id:a}=e;return this.submitting(this.client.delete(t,a))}}}),p=(0,_.default)(f.prototype,"add",[x.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{agentId:a}=e;if(!(0,S.default)(t))return this.submitting(this.client.create(a,t));var r=(0,m.default)(t).call(t,(e=>this.client.create(a,e)));return this.submitting(g.default.allSettled(r))}}}),f);t.NeutronAgentRouterStore=N;var k=new N;t.default=k},1413:function(e,t,a){"use strict";var r=a(33),n=a(44),i=a(32),l=a(25),u=a(27),s=a(45),o=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.NeutronAgentNetworkStore=void 0;var f,v,p,m=c(a(57)),g=c(a(65)),h=c(a(51)),b=c(a(71)),y=c(a(36)),_=c(a(54)),S=(c(a(72)),c(a(91))),x=a(34),I=c(a(48)),w=c(a(53));function A(e,t){var a=r(e);if(n){var u=n(e);t&&(u=i(u).call(u,(function(t){return l(e,t).enumerable}))),a.push.apply(a,u)}return a}function C(e){for(var t=1;te.agentId)),(0,b.default)(this,"remove",v,this),(0,b.default)(this,"add",p,this)}get client(){return I.default.neutron.agents.dhcpNetworks}get isSubResource(){return!0}get listFilterByProject(){return!0}get mapper(){return e=>{var{created_at:t}=e;return C(C({},e),{},{standard_attr_id:t})}}listDidFetch(e,t,a){return(0,h.default)((function*(){var{agentId:t}=a;return(0,m.default)(e).call(e,(e=>C(C({},e),{},{agentId:t})))}))()}},v=(0,_.default)(f.prototype,"remove",[x.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{agentId:t,id:a}=e;return this.submitting(this.client.delete(t,a))}}}),p=(0,_.default)(f.prototype,"add",[x.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return(e,t)=>{var{agentId:a}=e;if(!(0,S.default)(t))return this.submitting(this.client.create(a,t));var r=(0,m.default)(t).call(t,(e=>this.client.create(a,e)));return this.submitting(g.default.allSettled(r))}}}),f);t.NeutronAgentNetworkStore=N;var k=new N;t.default=k},1600:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3977)),l=n(a(3978)),u={rowActions:{firstAction:null,moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},1601:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3997)),l=n(a(3998)),u=n(a(3999)),s=n(a(4e3)),o={rowActions:{firstAction:u.default,moreActions:[{action:s.default},{action:l.default}]},batchActions:[l.default],primaryActions:[i.default]};t.default=o},3964:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(413)),l=n(a(3965)),u=e=>(0,i.default)(l.default,e);t.default=u},3965:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(1212)),l=n(a(567)),u=n(a(3966)),s=n(a(3981)),o=n(a(3986)),d=n(a(3996)),c=n(a(4001)),f="/configuration-admin",v=[{path:f,component:i.default,routes:[{path:"".concat(f,"/info"),component:u.default,exact:!0},{path:"".concat(f,"/neutron/detail/:id"),component:o.default,exact:!0},{path:"".concat(f,"/setting"),component:s.default,exact:!0},{path:"".concat(f,"/metadata"),component:d.default,exact:!0},{path:"".concat(f,"/metadata/detail/:id"),component:c.default,exact:!0},{path:"*",component:l.default}]}];t.default=v},3966:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Service=void 0;var l=r(406),u=i(r(1234)),s=i(r(3967)),o=i(r(3968)),d=i(r(3972)),c=i(r(3976)),f=i(r(3979));class v extends u.default{get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get enableHeat(){return this.props.rootStore.checkEndpoint("heat")}get tabs(){var e=[{title:t("Services"),key:"catalog",component:s.default},{title:t("Compute Services"),key:"computeServices",component:o.default},{title:t("Neutron Agents"),key:"neutronAgent",component:c.default}];return this.enableCinder&&e.push({title:t("Block Storage Services"),key:"cinderService",component:d.default}),this.enableHeat&&e.push({title:t("Orchestration Services"),key:"heatService",component:f.default}),e}}a.Service=v;var p=(0,l.inject)("rootStore")((0,l.observer)(v));a.default=p},3967:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Catalog=void 0;var l=i(r(57)),u=i(r(81)),s=i(r(36)),o=i(r(0)),d=r(406),c=i(r(1194)),f=r(161),v=i(r(1511));class p extends c.default{constructor(){super(...arguments),(0,s.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"name",width:150},{title:t("Service"),dataIndex:"type",isHideable:!0,width:150},{title:t("Region"),dataIndex:"region",isHideable:!0,width:150},{title:t("Endpoints"),dataIndex:"endpoints",isHideable:!0,render:e=>e.length?(0,l.default)(e).call(e,(e=>o.default.createElement("div",{key:"endpoint-".concat((0,f.generateId)())},o.default.createElement("b",null,e.interface,": "),o.default.createElement("span",null,e.url)))):"-",stringify:e=>e.length?(0,l.default)(e).call(e,(e=>{var t;return(0,u.default)(t="".concat(e.interface,": ")).call(t,e.url)})).join("\n"):"-"}]))}init(){this.store=v.default}get policy(){return"identity:get_auth_catalog"}get name(){return t("services")}get hasTab(){return!0}get searchFilters(){return[]}}a.Catalog=p;var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},3968:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.ComputeService=void 0;var l=i(r(81)),u=i(r(36)),s=r(406),o=i(r(1194)),d=r(1254),c=r(583),f=r(161),v=i(r(3969));class p extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"zone",isHideable:!0},{title:t("Service Status"),dataIndex:"status",valueMap:d.serviceStatus,tip:(e,a)=>{var r,{disabled_reason:n}=a||{};return n?(0,l.default)(r="".concat(t("Reason: ")," ")).call(r,n):""}},{title:t("Service State"),dataIndex:"state",valueMap:d.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=new c.ComputeHostStore}get policy(){return"os_compute_api:os-services:list"}get name(){return t("compute services")}get hasTab(){return!0}get actionConfigs(){return v.default}get fetchDataByAllProjects(){return!1}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"status",options:(0,f.getOptions)(d.serviceStatus)},{label:t("Service State"),name:"state",options:(0,f.getOptions)(d.serviceState)}]}}a.ComputeService=p;var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3969:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3970)),l=n(a(3971)),u={rowActions:{moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},3970:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),u=r(25),s=r(27),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var v=f(r(1204)),p=f(r(65)),m=f(r(36)),g=r(406),h=f(r(583)),b=r(1193);function y(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function _(e){for(var t=1;t{var{binary:t,id:a}=this.item,r=_(_({},e),{},{binary:t,id:a});return h.default.disable(r)}))}init(){this.store=h.default}get name(){return t("disable compute service")}get instanceName(){return this.item.binary||(0,v.default)(this).binary}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get formItems(){return[{name:"binary",label:t("Compute Service"),type:"label",iconType:"instance"},{name:"host",label:t("Current Host"),type:"label",iconType:"host"},{name:"disabled_reason",label:t("Reason"),type:"textarea",maxLength:64}]}}a.DisableAction=S,(0,m.default)(S,"id","disable-host"),(0,m.default)(S,"title",t("Disable Compute Service")),(0,m.default)(S,"buttonText",t("Disable")),(0,m.default)(S,"isDanger",!0),(0,m.default)(S,"allowed",(e=>p.default.resolve("enabled"===e.status&&"nova-compute"===e.binary))),(0,m.default)(S,"policy","os_compute_api:os-services:update");var x=(0,g.inject)("rootStore")((0,g.observer)(S));a.default=x},3971:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(583));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.host)),(0,l.default)(this,"policy","os_compute_api:os-services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||"disabled"===e.status)),(0,l.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return s.default.enable({id:e})}))}get id(){return"enable-service"}get title(){return t("Enable Compute Service")}get buttonText(){return t("Enable")}get actionName(){return t("enable compute service")}}a.default=o},3972:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.CinderService=void 0;var l=i(r(81)),u=i(r(36)),s=r(406),o=i(r(1194)),d=r(1254),c=i(r(1411)),f=r(161),v=i(r(3973));class p extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"zone",isHideable:!0},{title:t("Service Status"),dataIndex:"status",valueMap:d.serviceStatus,tip:(e,a)=>{if("enabled"===e)return"";var r,{disabled_reason:n}=a||{};return n?(0,l.default)(r="".concat(t("Reason: ")," ")).call(r,n):""}},{title:t("Service State"),dataIndex:"state",valueMap:d.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"volume_extension:services:index"}get name(){return t("cinder services")}get hasTab(){return!0}get actionConfigs(){return v.default}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"status",options:(0,f.getOptions)(d.serviceStatus)},{label:t("Service State"),name:"state",options:(0,f.getOptions)(d.serviceState)}]}}a.CinderService=p;var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3973:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3974)),l=n(a(3975)),u={rowActions:{firstAction:null,moreActions:[{action:i.default},{action:l.default}]},batchActions:[],primaryActions:[]};t.default=u},3974:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1411));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","volume_extension:services:update"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canEnable(e))),(0,l.default)(this,"onSubmit",(e=>{var{host:t,binary:a}=e||this.item,r={host:t,binary:a};return s.default.enable(r)}))}get id(){return"enable"}get title(){return t("Enable Service")}get buttonText(){return t("Enable")}get actionName(){return t("enable cinder service")}canEnable(e){return"disabled"===e.status}}a.default=o},3975:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),u=r(25),s=r(27),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.DisableAction=void 0;var v=f(r(1204)),p=f(r(65)),m=f(r(36)),g=r(406),h=f(r(1411)),b=r(1193);function y(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function _(e){for(var t=1;t{var{binary:t,host:a}=this.item,r=_(_({},e),{},{binary:t,host:a});return h.default.disable(r)}))}init(){this.store=h.default}get name(){return t("disable cinder service")}get instanceName(){return this.item.binary||(0,v.default)(this).binary}get defaultValue(){var{host:e,binary:t}=this.item;return{host:e,binary:t}}get formItems(){return[{name:"binary",label:t("Cinder Service"),type:"label",iconType:"volume"},{name:"host",label:t("Host"),type:"label",iconType:"host"},{name:"disabled_reason",label:t("Reason"),type:"textarea",required:!0,maxLength:200}]}}a.DisableAction=S,(0,m.default)(S,"id","disable-service"),(0,m.default)(S,"title",t("Disable Cinder Service")),(0,m.default)(S,"buttonText",t("Disable")),(0,m.default)(S,"isDanger",!0),(0,m.default)(S,"allowed",(e=>p.default.resolve("enabled"===e.status))),(0,m.default)(S,"policy","volume_extension:services:update");var x=(0,g.inject)("rootStore")((0,g.observer)(S));a.default=x},3976:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.NeutronAgent=void 0;var l=i(r(57)),u=i(r(36)),s=r(406),o=i(r(1194)),d=r(1254),c=i(r(1349)),f=i(r(1600));class v extends o.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"binary",isLink:!0,routeName:"neutronAgentDetailAdmin"},{title:t("Type"),dataIndex:"agent_type",isHideable:!0},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Availability Zone"),dataIndex:"availability_zone",render:e=>e||"-"},{title:t("Service Status"),dataIndex:"admin_state_up",render:e=>(0,d.getNeutronAgentServiceStatus)(e)||"-"},{title:t("Service State"),dataIndex:"alive",render:e=>(0,d.getNeutronAgentServiceState)(e)||"-",isStatus:!0},{title:t("Last Updated"),dataIndex:"heartbeat_timestamp",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"get_agent"}get name(){return t("neutron agents")}get hasTab(){return!0}get actionConfigs(){return f.default}get searchFilters(){var e,a;return[{label:t("Name"),name:"binary"},{label:t("Service Status"),name:"admin_state_up",options:(0,l.default)(e=[!0,!1]).call(e,(e=>({label:(0,d.getNeutronAgentServiceStatus)(e),key:e})))},{label:t("Service State"),name:"alive",options:(0,l.default)(a=[!0,!1]).call(a,(e=>({label:(0,d.getNeutronAgentServiceState)(e),key:e})))}]}}a.NeutronAgent=v;var p=(0,s.inject)("rootStore")((0,s.observer)(v));a.default=p},3977:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1349));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","update_agent"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canEnable(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.edit({id:t},{admin_state_up:!0})}))}get id(){return"enable"}get title(){return t("Enable Neutron Agent")}get buttonText(){return t("Enable")}get actionName(){return t("enable neutron agent")}canEnable(e){return!1===e.admin_state_up}}a.default=o},3978:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1349));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.binary)),(0,l.default)(this,"policy","update_agent"),(0,l.default)(this,"allowedCheckFunc",(e=>!e||this.canDisable(e))),(0,l.default)(this,"onSubmit",(e=>{var{id:t}=e||this.item;return s.default.edit({id:t},{admin_state_up:!1})}))}get id(){return"disable"}get title(){return t("Disable Neutron Agent")}get isDanger(){return!0}get buttonText(){return t("Disable")}get actionName(){return t("disable neutron agent")}canDisable(e){return!0===e.admin_state_up}}a.default=o},3979:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.HeatService=void 0;var l=i(r(36)),u=r(406),s=i(r(1194)),o=r(1254),d=r(161),c=i(r(3980));class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"binary"},{title:t("Engine ID"),dataIndex:"engine_id",isHideable:!0},{title:t("Host"),dataIndex:"host",isHideable:!0},{title:t("Status"),dataIndex:"status",valueMap:o.serviceState},{title:t("Last Updated"),dataIndex:"updated_at",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=c.default}get policy(){return"service:index"}get aliasPolicy(){return"heat:service:index"}get name(){return t("heat services")}get hasTab(){return!0}get searchFilters(){return[{label:t("Name"),name:"binary"},{label:t("Status"),name:"status",options:(0,d.getOptions)(o.serviceState)}]}}a.HeatService=f;var v=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=v},3980:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.HeatServiceStore=void 0;var i=n(a(48)),l=n(a(53));class u extends l.default{get client(){return i.default.heat.services}}t.HeatServiceStore=u;var s=new u;t.default=s},3981:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Setting=void 0;var l=i(r(36)),u=r(406),s=i(r(1194)),o=i(r(1276)),d=r(1203),c=i(r(3982));class f extends s.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Type"),dataIndex:"key"},{title:t("Effective Mode"),dataIndex:"restart_service",titleTip:t("Effective mode after configuration changes"),render:e=>e?t("Take effect after restart"):t("Immediate effect")}]))}init(){this.store=o.default}get policy(){return d.onlyAdminCanReadPolicy}get name(){return t("settings")}get rowKey(){return"key"}get hideCustom(){return!0}get actionConfigs(){return c.default}get searchFilters(){return[]}}a.Setting=f;var v=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=v},3982:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3983)),l=n(a(3984)),u=n(a(3985)),s={rowActions:{firstAction:i.default,moreActions:[{action:l.default},{action:u.default}]},batchActions:[u.default],primaryActions:[]};t.default=s},3983:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.View=void 0;var l=i(r(65)),u=i(r(36)),s=i(r(0)),o=r(1193),d=r(406),c=r(1203),f=i(r(1316));class v extends o.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"renderContent",(()=>{var e={value:this.item.value,mode:"json",options:{readOnly:!0}};return s.default.createElement(f.default,e)})),(0,u.default)(this,"onSubmit",null)}get id(){return"view"}get name(){return t("View")}get instanceName(){return this.item.key}static allowed(){return l.default.resolve(!0)}get defaultValue(){var{key:e}=this.item;return{key:e}}get labelCol(){return{xs:{span:4},sm:{span:4}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get formItems(){return[{name:"key",type:"label",label:t("Name")},{name:"value",type:"other",label:t("Value"),content:this.renderContent()}]}}a.View=v,(0,u.default)(v,"title",t("View Detail")),(0,u.default)(v,"readOnly",!0),(0,u.default)(v,"enableSystemReader",!0),(0,u.default)(v,"policy",c.onlyAdminCanReadPolicy);var p=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=p},3984:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=i(r(65)),u=i(r(335)),s=i(r(36)),o=i(r(0)),d=r(1193),c=i(r(1276)),f=i(r(1316)),v=r(406),p=r(1203);class m extends d.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onChange",(e=>{var t={};try{t=JSON.parse(e)}catch(e){t=this.item.value}this.setState({value:t,inputValue:e})})),(0,s.default)(this,"renderContent",(()=>{var e={value:this.item.value,mode:"json",onChange:this.onChange};return o.default.createElement(f.default,e)})),(0,s.default)(this,"checkKeyValues",(()=>{var{inputValue:e}=this.state;try{return JSON.parse(e),!0}catch(e){return!1}})),(0,s.default)(this,"onSubmit",(()=>{var{key:e}=this.item,{value:t}=this.state,a={key:e,value:t};return c.default.update(a)}))}get id(){return"edit"}get instanceName(){return this.item.key}static allowed(){return l.default.resolve(!0)}init(){this.state.value=this.item.value,this.state.inputValue=(0,u.default)(this.item.value)}get defaultValue(){var{key:e}=this.item;return{key:e}}get labelCol(){return{xs:{span:4},sm:{span:4}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get formItems(){return[{name:"key",type:"label",label:t("Name")},{name:"value",type:"other",label:t("Value"),content:this.renderContent(),validator:()=>this.checkKeyValues()?l.default.resolve():l.default.reject(t("Please enter JSON in the correct format!"))}]}}a.Edit=m,(0,s.default)(m,"policy",p.onlyAdminCanChangePolicy);var g=(0,v.inject)("rootStore")((0,v.observer)(m));a.default=g},3985:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1276)),o=r(1203);class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"getItemName",(e=>e.key)),(0,l.default)(this,"policy",o.onlyAdminCanChangePolicy),(0,l.default)(this,"onSubmit",(e=>{var{key:t}=e||this.item;return s.default.delete({id:t})}))}get id(){return"reset"}get title(){return t("Reset To Initial Value")}get buttonType(){return"primary"}get isDanger(){return!0}get actionName(){return t("Reset To Initial Value")}}a.default=d},3986:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.KeypairDetail=void 0;var l=r(406),u=r(1349),s=i(r(1200)),o=r(1254),d=i(r(3987)),c=i(r(3988)),f=i(r(3992)),v=i(r(1600));class p extends s.default{get name(){return t("neutron agent")}get policy(){return"get_agent"}get listUrl(){return this.getRoutePath("systemInfo",null,{tab:"neutronAgent"})}get actionConfigs(){return v.default}get detailInfos(){return[{title:t("Type"),dataIndex:"agent_type"},{title:t("Service Status"),dataIndex:"admin_state_up",render:e=>(0,o.getNeutronAgentServiceStatus)(e)||"-"},{title:t("Service State"),dataIndex:"alive",render:e=>(0,o.getNeutronAgentServiceState)(e)||"-"},{title:t("Host"),dataIndex:"host"},{title:t("Availability Zone"),dataIndex:"availability_zone"},{title:t("Created At"),dataIndex:"created_at"},{title:t("Description"),dataIndex:"description"}]}get tabs(){var e=[{title:t("Detail"),key:"detail",component:d.default}];return"L3 agent"===this.detailData.agent_type?e.push({title:t("Routers"),key:"router",component:c.default}):"DHCP agent"===this.detailData.agent_type&&e.push({title:t("Networks"),key:"network",component:f.default}),e}init(){this.store=new u.NeutronAgentStore}}a.KeypairDetail=p;var m=(0,l.inject)("rootStore")((0,l.observer)(p));a.default=m},3987:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(335)),u=i(r(0)),s=r(406),o=i(r(1202));class d extends o.default{get leftCards(){return[this.baseCard]}get rightCards(){return[this.configCard]}get baseCard(){var e=[{label:t("Name"),dataIndex:"binary"},{label:t("Topic"),dataIndex:"topic"},{label:t("Resources Synced"),dataIndex:"resources_synced"},{label:t("Heartbeat Timestamp"),dataIndex:"heartbeat_timestamp",valueRender:"toLocalTime"},{label:t("Started At"),dataIndex:"started_at"}];return{title:t("Base Info"),options:e}}get configCard(){var{configurations:e="{}"}=this.detailData||{},a=[{label:"",content:u.default.createElement("div",null,u.default.createElement("pre",null,(0,l.default)(e,null,4)))}];return{labelCol:0,title:t("Configuration"),options:a}}}a.BaseDetail=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},3988:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),u=r(25),s=r(27),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Router=void 0;var v=f(r(62)),p=f(r(36)),m=r(406),g=f(r(1194)),h=r(1219),b=r(1412),y=f(r(3989));function _(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}class S extends g.default{constructor(){super(...arguments),(0,p.default)(this,"getColumns",(()=>(0,h.getRouterColumns)(this))),(0,p.default)(this,"updateFetchParams",(e=>{var{id:t}=e;return function(e){for(var t=1;t{var t,{id:a}=e;return(0,v.default)(t=this.l3Routes).call(t,a)>=0})),(0,b.default)(this,"onSubmit",(e=>{var{router:{selectedRowKeys:t=[]}={}}=e,a=(0,p.default)(t).call(t,(e=>({router_id:e}))),{agentId:r}=this;return this.store.add({agentId:r},a)}))}init(){this.store=S.default,this.routerStore=new _.RouterStore,this.getL3Routes()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("add router")}get instanceName(){var{router:{selectedRows:e=[]}={}}=(0,m.default)(this);return(0,p.default)(e).call(e,(e=>e.name)).join(", ")}get detail(){var{detail:e={}}=this.containerProps;return e}get agentId(){return this.detail.id}getL3Routes(){var e=this;return(0,h.default)((function*(){var{agentId:t}=e;t&&(yield e.store.fetchList({agentId:t,all_projects:!0}),e.updateDefaultValue())}))()}get l3Routes(){var e;return(0,p.default)(e=this.store.list.data||[]).call(e,(e=>e.id))}get defaultValue(){var{binary:e}=this.detail;return{binary:e}}getColumns(){var e=(0,I.getRouterColumns)(this);return e[0].render=null,e[1].render=w.projectRender,e}getFilters(){return[...I.routerFilters,{label:t("Project ID"),name:"project_id"}]}get formItems(){return[{name:"binary",label:t("Name"),type:"label",iconType:"host"},C({name:"router",label:t("Router"),type:"select-table",backendPageStore:this.routerStore,disabledFunc:this.disabledFunc,extraParams:{all_projects:!0},required:!0,isMulti:!0,filterParams:this.getFilters(),columns:this.getColumns()},I.routerSortProps)]}}a.AddRouter=N,(0,b.default)(N,"id","add-router"),(0,b.default)(N,"title",t("Add Router")),(0,b.default)(N,"policy","create_l3-router"),(0,b.default)(N,"allowed",(()=>g.default.resolve(!0)));var k=(0,y.inject)("rootStore")((0,y.observer)(N));a.default=k},3991:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1412));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_l3-router"),(0,l.default)(this,"onSubmit",(e=>{var{id:t,agentId:a}=e;return s.default.remove({id:t,agentId:a})}))}get id(){return"remove"}get title(){return t("Remove Router")}get isDanger(){return!0}get buttonText(){return t("Remove")}get actionName(){return t("remove router")}}a.default=o},3992:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),u=r(25),s=r(27),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Networks=void 0;var v=f(r(562)),p=f(r(62)),m=f(r(36)),g=r(406),h=f(r(1194)),b=r(564),y=r(1413),_=r(334),S=f(r(3993));function x(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends h.default{constructor(){super(...arguments),(0,m.default)(this,"getColumns",(()=>{var e=(0,b.networkColumns)(this);return(0,v.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0}),e})),(0,m.default)(this,"updateFetchParams",(e=>{var{id:t}=e;return function(e){for(var t=1;t{var t,{id:a}=e;return(0,v.default)(t=this.dhcpNetworks).call(t,a)})),(0,y.default)(this,"getColumns",(()=>{var e=(0,w.networkColumns)(this);return(0,p.default)(e).call(e,1,0,{title:t("Project ID/Name"),dataIndex:"project_name",render:C.projectRender,sortKey:"project_id"}),e})),(0,y.default)(this,"onSubmit",(e=>{var{network:{selectedRowKeys:t=[]}={}}=e,a=(0,m.default)(t).call(t,(e=>({network_id:e}))),{agentId:r}=this;return this.store.add({agentId:r},a)}))}init(){this.store=x.default,this.networkStore=new S.NetworkStore,this.getDhcpNetworks()}static get modalSize(){return"large"}getModalSize(){return"large"}get name(){return t("add network")}get instanceName(){var{network:{selectedRows:e=[]}={}}=(0,g.default)(this);return(0,m.default)(e).call(e,(e=>e.name)).join(", ")}get detail(){var{detail:e={}}=this.containerProps;return e}get agentId(){return this.detail.id}getDhcpNetworks(){var e=this;return(0,b.default)((function*(){var{agentId:t}=e;t&&(yield e.store.fetchList({agentId:t,all_projects:!0}),e.updateDefaultValue())}))()}get dhcpNetworks(){var e;return(0,m.default)(e=this.store.list.data||[]).call(e,(e=>e.id))}get defaultValue(){var{binary:e}=this.detail;return{binary:e}}getSearchFilters(){return[{label:t("Name"),name:"name"},{label:t("Shared"),name:"shared",options:A.yesNoOptions},{label:t("External"),name:"router:external",options:A.yesNoOptions},{label:t("Project ID"),name:"project_id"}]}get formItems(){return[{name:"binary",label:t("Name"),type:"label",iconType:"host"},k({name:"network",label:t("Network"),type:"select-table",backendPageStore:this.networkStore,disabledFunc:this.disabledFunc,extraParams:{all_projects:!0},required:!0,isMulti:!0,filterParams:this.getSearchFilters(),columns:this.getColumns()},w.networkSortProps)]}}a.AddNetwork=M,(0,y.default)(M,"id","add-network"),(0,y.default)(M,"title",t("Add Network")),(0,y.default)(M,"policy","create_dhcp-network"),(0,y.default)(M,"allowed",(()=>h.default.resolve(!0)));var j=(0,_.inject)("rootStore")((0,_.observer)(M));a.default=j},3995:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1413));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_dhcp-network"),(0,l.default)(this,"onSubmit",(e=>{var{id:t,agentId:a}=e;return s.default.remove({id:t,agentId:a})}))}get id(){return"remove"}get title(){return t("Remove Network")}get isDanger(){return!0}get buttonText(){return t("Remove")}get actionName(){return t("remove network")}}a.default=o},3996:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Metadata=void 0;var l=i(r(57)),u=i(r(36)),s=i(r(0)),o=r(406),d=r(201),c=i(r(1194)),f=i(r(1243)),v=i(r(1601));class p extends c.default{constructor(){super(...arguments),(0,u.default)(this,"getColumns",(()=>[{title:t("Name"),dataIndex:"display_name",render:(e,t)=>e?s.default.createElement(d.Link,{to:"/configuration-admin/metadata/detail/".concat(t.namespace)},e):"-"},{title:t("Description"),dataIndex:"description",isHideable:!0,width:350},{title:t("Resource Types"),dataIndex:"resource_type_associations",isHideable:!0,render:e=>e?(0,l.default)(e).call(e,(e=>s.default.createElement("div",{key:e.name},e.name))):"-",stringify:e=>e?(0,l.default)(e).call(e,(e=>e.name)).join(";"):"-"},{title:t("Public"),dataIndex:"public",valueRender:"yesNo",isHideable:!0},{title:t("Protected"),dataIndex:"protected",valueRender:"yesNo",isHideable:!0}]))}init(){this.store=f.default}get policy(){return"get_metadef_namespaces"}get name(){return t("metadata")}get actionConfigs(){return v.default}}a.Metadata=p;var m=(0,o.inject)("rootStore")((0,o.observer)(p));a.default=m},3997:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var l=i(r(65)),u=i(r(36)),s=r(406),o=i(r(1243)),d=r(1193);class c extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{metadata:t,options:a={}}=e,r={};try{r=JSON.parse(t)}catch(e){}var{isPublic:n=!1,isProtected:i=!1}=a;return r.protected=i||!1,r.visibility=!0===n?"public":"private",this.store.create(r)}))}init(){this.store=o.default}get name(){return t("Import metadata")}get formItems(){return[{name:"metadata",label:t("Metadata"),type:"textarea-from-file",placeholder:t("Please input metadata"),required:!0,rows:6},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Public"),value:"isPublic"},{label:t("Protected"),value:"isProtected"}]}]}}a.Create=c,(0,u.default)(c,"id","create"),(0,u.default)(c,"title",t("Import Metadata")),(0,u.default)(c,"policy","add_metadef_namespace"),(0,u.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},3998:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),u=r(1193),s=i(r(1243));class o extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","delete_metadef_namespace"),(0,l.default)(this,"allowedCheckFunc",(e=>!e.protected)),(0,l.default)(this,"onSubmit",(e=>{var{namespace:t}=e;return s.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Metadata")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("Delete metadata")}}a.default=o},3999:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var l=i(r(65)),u=i(r(36)),s=r(406),o=i(r(1243)),d=r(1193);class c extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"onSubmit",(e=>{var{display_name:t,description:a}=this.item,{namespace:r,options:n}=e,{isPublic:i,isProtected:l}=n,u={display_name:t,description:a,namespace:r,protected:l,visibility:!0===i?"public":"private"};return o.default.edit({id:r},u)}))}init(){this.store=o.default}get name(){return t("Edit metadata")}get instanceName(){return this.item.display_name}get defaultValue(){var{namespace:e,protected:t,visibility:a}=this.item;return{namespace:e,options:{isProtected:t,isPublic:"public"===a}}}get formItems(){return[{name:"namespace",label:t("Namespace"),iconType:"metadata",type:"label"},{name:"options",label:t("Options"),type:"check-group",options:[{label:t("Public"),value:"isPublic"},{label:t("Protected"),value:"isProtected"}]}]}}a.Edit=c,(0,u.default)(c,"id","edit"),(0,u.default)(c,"title",t("Edit Metadata")),(0,u.default)(c,"buttonText",t("Edit")),(0,u.default)(c,"policy","modify_metadef_namespace"),(0,u.default)(c,"allowed",(()=>l.default.resolve(!0)));var f=(0,s.inject)("rootStore")((0,s.observer)(c));a.default=f},4e3:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),u=r(25),s=r(27),o=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Manage=void 0;var v=f(r(27)),p=f(r(57)),m=f(r(65));r(1205);var g=f(r(1206)),h=f(r(36)),b=f(r(0)),y=r(406),_=r(34),S=r(1243),x=r(1193);r(173);function I(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return u(e,t).enumerable}))),a.push.apply(a,r)}return a}function w(e){for(var t=1;t{var{name:a}=t;t.prefix=e;var r=(0,_.toJS)(this.store.resourceTypes);(0,v.default)(r).call(r,(t=>{t.name===a&&(t.prefix=e)})),this.store.resourceTypes=r})),(0,h.default)(this,"renderInput",((e,a)=>{var r=t("Please input prefix");return b.default.createElement(g.default,{placeholder:r,value:e,onChange:e=>{this.updatePrefix(e.currentTarget.value,a)},onClick:e=>{e&&e.stopPropagation()}})})),(0,h.default)(this,"onSubmit",(e=>{var t,{associations:a={}}=e,{selectedRowKeys:r=[]}=a,{resource_type_associations:n=[],namespace:i}=this.item,l={},u={},s={},o=[],d=[];(0,v.default)(t=this.resourceTypes).call(t,(e=>{e.prefix=e.prefix||"",l[e.name]=e}));var c=(0,p.default)(r).call(r,(e=>(u[e]=l[e],{name:e,prefix:l[e].prefix||""})));return(0,v.default)(n).call(n,(e=>{s[e.name]=e,u[e.name]?u[e.name].prefix!==e.prefix&&o.push(e):o.push(e)})),(0,v.default)(c).call(c,(e=>{s[e.name]?s[e.name].prefix!==e.prefix&&d.push(e):d.push(e)})),0===d.length&&0===o.length?m.default.resolve():this.store.manageResourceTypes(i,o,d)}))}init(){this.store=new S.MetadataStore,this.getResourceTypes()}get name(){return t("manage resource types")}static get modalSize(){return"large"}getModalSize(){return"large"}getResourceTypes(){this.store.fetchResourceTypes(this.item)}get resourceTypes(){var e;return(0,p.default)(e=this.store.resourceTypes||[]).call(e,(e=>w(w({},e),{},{id:e.name})))}get defaultValue(){var{namespace:e,resource_type_associations:t=[]}=this.item;return{namespace:e,associations:{selectedRowKeys:(0,p.default)(t).call(t,(e=>e.name))}}}get formItems(){return[{name:"namespace",label:t("Namespace"),iconType:"metadata",type:"label"},{name:"associations",label:t("Resource Types"),type:"select-table",data:this.resourceTypes,isLoading:this.store.resourceTypeLoading,isMulti:!0,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Prefix"),dataIndex:"prefix",render:(e,t)=>this.renderInput(e,t)}]}]}}a.Manage=A,(0,h.default)(A,"id","manage"),(0,h.default)(A,"title",t("Manage Resource Types")),(0,h.default)(A,"policy",["list_metadef_resource_types","add_metadef_resource_type_association","remove_metadef_resource_type_association"]),(0,h.default)(A,"allowed",(e=>m.default.resolve(!e.protected)));var C=(0,y.inject)("rootStore")((0,y.observer)(A));a.default=C},4001:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.MetadataDetail=void 0;var l=r(406),u=r(1243),s=i(r(1200)),o=i(r(4002)),d=i(r(1601));class c extends s.default{get name(){return t("metadata")}get policy(){return"get_metadef_namespace"}get listUrl(){return this.getRoutePath("metadata")}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"display_name"},{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:o.default}]}init(){this.store=new u.MetadataStore}}a.MetadataDetail=c;var f=(0,l.inject)("rootStore")((0,l.observer)(c));a.default=f},4002:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(57)),u=i(r(81)),s=i(r(335)),o=i(r(0)),d=r(406),c=i(r(1202)),f=i(r(4003));class v extends c.default{get leftCards(){return[this.baseInfoCard,this.resourceCard]}get rightCards(){return[this.jsonCard]}get baseInfoCard(){var e=[{label:t("Namespace"),dataIndex:"namespace"},{label:t("Description"),dataIndex:"description"}];return{title:t("Base Info"),options:e}}get resourceCard(){var{resource_type_associations:e=[]}=this.detailData||{},a=(0,l.default)(e).call(e,(e=>{var a,{name:r,prefix:n}=e;return{label:r,content:(0,u.default)(a="".concat(t("Prefix"),": ")).call(a,n||"-")}}));return{title:t("Associated Resource Types"),options:a}}get jsonCard(){var e=[{label:"",content:o.default.createElement("pre",{className:f.default["json-data"]},(0,s.default)(this.detailData,null,4))}];return{labelCol:0,title:t("Content"),options:e}}}a.BaseDetail=v;var p=(0,d.inject)("rootStore")((0,d.observer)(v));a.default=p},4003:function(e,t,a){var r=a(4004);"string"==typeof r&&(r=[[e.i,r,""]]);var n={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,n);r.locals&&(e.exports=r.locals)},4004:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,".styles__json-data--euQUb {\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n",""]),t.locals={"json-data":"styles__json-data--euQUb"}}}]); \ No newline at end of file diff --git a/skyline_console/static/configuration.bundle.1663167892.js.gz b/skyline_console/static/configuration.bundle.1663167892.js.gz new file mode 100644 index 00000000..641219be Binary files /dev/null and b/skyline_console/static/configuration.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/container-infra.bundle.1658297502.js b/skyline_console/static/container-infra.bundle.1658297502.js deleted file mode 100644 index a241d4e3..00000000 --- a/skyline_console/static/container-infra.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{1230:function(e,t,a){"use strict";var r=a(35),l=a(44),n=a(33),i=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ClustersStore=void 0;var f,p=c(a(25)),m=c(a(37)),v=c(a(52)),b=c(a(55)),g=c(a(54)),h=c(a(49)),_=a(32);function y(e,t){var a=r(e);if(l){var s=l(e);t&&(s=n(s).call(s,(function(t){return i(e,t).enumerable}))),a.push.apply(a,s)}return a}function k(e){for(var t=1;tk(k({},e),{},{id:e.uuid})}},(0,b.default)(f.prototype,"create",[_.action],(0,p.default)(f.prototype,"create"),f.prototype),(0,b.default)(f.prototype,"delete",[_.action],(0,p.default)(f.prototype,"delete"),f.prototype),(0,b.default)(f.prototype,"resize",[_.action],(0,p.default)(f.prototype,"resize"),f.prototype),f);t.ClustersStore=x;var C=new x;t.default=C},1231:function(e,t,a){"use strict";var r=a(35),l=a(44),n=a(33),i=a(25),s=a(28),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ClusterTemplatesStore=void 0;var f,p=c(a(62)),m=c(a(33)),v=c(a(35)),b=c(a(219)),g=c(a(322)),h=c(a(25)),_=c(a(37)),y=c(a(52)),k=c(a(55)),x=c(a(54)),C=c(a(49)),S=a(32);function E(e,t){var a=r(e);if(l){var s=l(e);t&&(s=n(s).call(s,(function(t){return i(e,t).enumerable}))),a.push.apply(a,s)}return a}function I(e){for(var t=1;t{var a;return!((0,b.default)(a=["network_driver","external_network_id"]).call(a,e)&&!t[e])}))).call(r,(e=>{var a;return{path:"/".concat(e),value:"labels"===e?(0,g.default)(t[e]||{}):t[e],op:(0,b.default)(a=[null,void 0,""]).call(a,t[e])?"remove":"replace"}}));return a.submitting(a.client.patch(n,i))}))()}get mapper(){return e=>I(I({},e),{},{id:e.uuid})}},(0,k.default)(f.prototype,"create",[S.action],(0,h.default)(f.prototype,"create"),f.prototype),(0,k.default)(f.prototype,"delete",[S.action],(0,h.default)(f.prototype,"delete"),f.prototype),(0,k.default)(f.prototype,"update",[S.action],(0,h.default)(f.prototype,"update"),f.prototype),f);t.ClusterTemplatesStore=w;var L=new w;t.default=L},1280:function(e,a,r){"use strict";r(19)(a,"__esModule",{value:!0}),a.getBaseTemplateColumns=a.admission_control_list=void 0;a.admission_control_list="NodeRestriction,NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,TaintNodesByCondition,Priority,DefaultTolerationSeconds,DefaultStorageClass,StorageObjectInUseProtection,PersistentVolumeClaimResize,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,RuntimeClass";a.getBaseTemplateColumns=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e.getRouteName("containerInfraClusterTemplateDetail")},{title:t("COE"),isHideable:!0,dataIndex:"coe"},{title:t("Network Driver"),isHideable:!0,dataIndex:"network_driver"},{title:t("Keypair"),isHideable:!0,dataIndex:"keypair_id",render:t=>t?e.getLinkRender("keypairDetail",t,{id:t}):"-"}]},1336:function(e,a,r){"use strict";var l=r(35),n=r(44),i=r(33),s=r(25),o=r(28),u=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(r(28)),m=f(r(402)),v=f(r(65)),b=f(r(219)),g=f(r(52)),h=f(r(71)),_=f(r(37)),y=r(382),k=r(1113),x=f(r(1231)),C=r(32),S=f(r(4073)),E=f(r(4074)),I=f(r(4075)),w=f(r(4076));function L(e,t){var a=l(e);if(n){var r=n(e);t&&(r=i(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}class N extends k.StepAction{constructor(){super(...arguments),(0,_.default)(this,"onSubmit",(e=>{var{flavor:t,masterFlavor:a,additionalLabels:r,images:l,keypairs:n,externalNetwork:i,fixedNetwork:f,fixedSubnet:v}=e,b=(0,h.default)(e,["flavor","masterFlavor","additionalLabels","images","keypairs","externalNetwork","fixedNetwork","fixedSubnet"]),g={};r&&(0,p.default)(r).call(r,(e=>{var t,a,r=(0,m.default)(t=e.value.key.toLowerCase()).call(t),l=(0,m.default)(a=e.value.value.toLowerCase()).call(a);g[r]=l}));var y=function(e){for(var t=1;t{var{additionalLabels:t,clusterTemplate:a,keypair:r,auto_healing_enabled:l,auto_scaling_enabled:n,newNetwork:i,fixed_network:s,flavor:o,masterFlavor:u}=e,d=(0,b.default)(e,["additionalLabels","clusterTemplate","keypair","auto_healing_enabled","auto_scaling_enabled","newNetwork","fixed_network","flavor","masterFlavor"]),c={};t&&(0,p.default)(t).call(t,(e=>{var t,a,r=(0,m.default)(t=e.value.key.toLowerCase()).call(t),l=(0,m.default)(a=e.value.value.toLowerCase()).call(a);c[r]=l}));var f=w({name:e.name,labels:w(w({},c),{},{auto_healing_enabled:"".concat(l),auto_scaling_enabled:"".concat(n)}),master_flavor_id:u.selectedRowKeys[0],flavor_id:o.selectedRowKeys[0],cluster_template_id:a.selectedRowKeys[0],keypair:r.selectedRowKeys[0]},d);if(!i&&s){var{selectedRowKeys:v=[]}=s;f.fixed_network=v[0]}return this.store.create(f)}))}init(){this.store=y.default}static allowed(){return v.default.resolve(!0)}get name(){return t("Create Instance")}get listUrl(){return this.getRoutePath("containerInfraClusters")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Info *"),component:k.default},{title:t("Node Spec *"),component:x.default},{title:t("Networks"),component:C.default},{title:t("Management"),component:S.default},{title:t("Labels"),component:E.default}]}}a.StepCreate=L,(0,g.default)(L,"id","create-cluster"),(0,g.default)(L,"title",t("Create Cluster")),(0,g.default)(L,"path","/container-infra/clusters/create"),(0,g.default)(L,"policy","cluster:create");var N=(0,h.inject)("rootStore")((0,h.observer)(L));a.default=N},1531:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=l(a(1336)),i=l(a(4077)),s=l(a(1532)),o={rowActions:{firstAction:i.default,moreActions:[{action:s.default}]},batchActions:[i.default],primaryActions:[n.default]};t.default=o},1532:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var i=n(r(65)),s=n(r(37)),o=r(382),u=r(517),d=r(1336);class c extends d.StepCreate{get name(){return t("Update Cluster Template")}get listUrl(){return this.getRoutePath("clusterTemplate")}static allowed(){return i.default.resolve(!0)}}a.Edit=c,(0,s.default)(c,"id","update-cluster-template"),(0,s.default)(c,"title",t("Edit")),(0,s.default)(c,"policy","clustertemplate:update"),(0,s.default)(c,"path",(e=>{var{id:t}=e;return(0,u.getPath)({key:"containerInfraUpdateClusterTemplate",params:{id:t}})}));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4060:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=l(a(389)),i=l(a(4061)),s=e=>(0,n.default)(i.default,e);t.default=s},4061:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var n=l(a(1130)),i=l(a(525)),s=l(a(4062)),o=l(a(4070)),u=l(a(4072)),d=l(a(4078)),c=l(a(1530)),f=l(a(1336)),p=l(a(1532)),m="/container-infra",v=[{path:m,component:n.default,routes:[{path:"".concat(m,"/clusters"),component:s.default,exact:!0},{path:"".concat(m,"/clusters/detail/:id"),component:o.default,exact:!0},{path:"".concat(m,"/clusters/create"),component:c.default,exact:!0},{path:"".concat(m,"/cluster-template"),component:u.default,exact:!0},{path:"".concat(m,"/cluster-template/detail/:id"),component:d.default,exact:!0},{path:"".concat(m,"/cluster-template/create"),component:f.default,exact:!0},{path:"".concat(m,"/cluster-template/update/:id"),component:p.default,exact:!0},{path:"*",component:i.default}]}];t.default=v},4062:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.Clusters=void 0;var i=n(r(37)),s=n(r(1114)),o=r(382),u=r(1528),d=n(r(1230)),c=n(r(1529));class f extends s.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("containerInfraClusterDetail")},{title:t("Status"),isHideable:!0,dataIndex:"status",render:e=>u.clusterStatus[e]||e},{title:t("Health Status"),isHideable:!0,dataIndex:"health_status",render:e=>u.healthStatus[e]||e||"-"},{title:t("Keypair"),isHideable:!0,dataIndex:"keypair",render:e=>e?this.getLinkRender("keypairDetail",e,{id:e}):"-"}]))}init(){this.store=d.default,this.downloadStore=d.default}get name(){return t("clusters")}get policy(){return"cluster:get_all"}get actionConfigs(){return c.default}}a.Clusters=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4063:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var i=n(r(37)),s=r(1113),o=n(r(1230));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","cluster:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>o.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Clusters")}get actionName(){return t("Delete Clusters")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=u},4064:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.Resize=void 0;var i=n(r(65)),s=n(r(37)),o=r(382),u=r(1113),d=n(r(1230));class c extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"policy","cluster:resize"),(0,s.default)(this,"onSubmit",(e=>{this.store.resize({id:this.item.id},e)}))}init(){this.store=d.default}static allowed(){return i.default.resolve(!0)}get name(){return t("Resize Cluster")}get defaultValue(){var{node_count:e}=this.item;return{node_count:e||1}}get formItems(){return[{name:"node_count",label:t("Node Count"),type:"input-int",min:1,required:!0}]}}a.Resize=c,(0,s.default)(c,"id","resize-cluster"),(0,s.default)(c,"title",t("Resize Cluster")),(0,s.default)(c,"buttonText",t("Resize"));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4065:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=n(r(52)),s=n(r(1121)),o=r(382),u=n(r(1231)),d=n(r(396)),c=r(1280);class f extends s.default{init(){this.getClustertemplates(),this.getKeypairs()}get title(){return t("Info")}get name(){return t("Info")}getClustertemplates(){return(0,i.default)((function*(){yield u.default.fetchList()}))()}get clusterTemplates(){return u.default.list.data||[]}getKeypairs(){return(0,i.default)((function*(){yield d.default.fetchList()}))()}get keypairs(){return d.default.list.data||[]}get formItems(){return[{name:"name",label:t("Cluster Name"),type:"input",placeholder:t("Cluster Name"),required:!0},{name:"clusterTemplate",label:t("Cluster Template"),type:"select-table",data:this.clusterTemplates,isLoading:u.default.list.isLoading,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getBaseTemplateColumns)(this)},{name:"keypair",label:t("Keypair"),type:"select-table",required:!0,data:this.keypairs,isLoading:d.default.list.isLoading,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}]}]}}a.StepInfo=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4066:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepNodeSpec=void 0;var i=n(r(65)),s=n(r(37)),o=n(r(0)),u=r(382),d=n(r(1121)),c=n(r(1195));class f extends d.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>i.default.resolve())),(0,s.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}get title(){return t("Node Spec")}get name(){return t("Node Spec")}getFlavorComponent(){return o.default.createElement(c.default,{onChange:this.onFlavorChange})}get defaultValue(){return{master_count:1,node_count:1}}get formItems(){return[{name:"master_count",label:t("Number of Master Nodes"),type:"input-int",min:1,required:!0},{name:"masterFlavor",label:t("Flavor of Master Nodes"),type:"select-table",component:this.getFlavorComponent(),required:!0},{type:"divider"},{name:"node_count",label:t("Number of Worker Nodes"),type:"input-int",min:1,required:!0},{name:"flavor",label:t("Flavor of Worker Nodes"),type:"select-table",component:this.getFlavorComponent(),required:!0}]}}a.StepNodeSpec=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4067:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepNetworks=void 0;var i=n(r(65)),s=n(r(37)),o=n(r(1121)),u=r(382);class d extends o.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>i.default.resolve()))}get title(){return t("Cluster Network")}get name(){return t("Cluster Network")}get defaultValue(){return{newNetwork:!0}}get nameForStateUpdate(){return["newNetwork"]}get formItems(){var{newNetwork:e}=this.state;return[{name:"master_lb_enabled",label:t("Enable Load Balancer"),type:"check",content:t("Enabled Load Balancer for Master Nodes")},{name:"newNetwork",label:t("Enabled Network"),type:"check",content:t("Create New Network")},{name:"fixed_network",label:t("Use an Existing Network"),type:"network-select-table",hidden:e},{type:"divider"},{name:"floating_ip_enabled",label:t("Enable Floating IP"),type:"check",tip:t("Whether enable or not using the floating IP of cloud provider. If it’s not set, the value of this in template will be used.")}]}}a.StepNetworks=d;var c=(0,u.inject)("rootStore")((0,u.observer)(d));a.default=c},4068:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepManagement=void 0;var i=n(r(1121)),s=r(382);class o extends i.default{get title(){return t("Cluster Management")}get name(){return t("Cluster Management")}get defaultValue(){return{create_timeout:60}}get formItems(){return[{name:"auto_healing_enabled",label:t("Auto Healing"),type:"check",content:t("Automatically repair unhealhty nodes")},{type:"divider"},{name:"auto_scaling_enabled",label:t("Auto Scaling"),type:"check",content:t("Auto scaling feature will be enabled")},{type:"divider"},{name:"create_timeout",label:t("Timeout(Minute)"),type:"input-int",min:1,tip:t("The timeout for cluster creation in minutes.")}]}}a.StepManagement=o;var u=(0,s.inject)("rootStore")((0,s.observer)(o));a.default=u},4069:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepLabel=void 0;var i=n(r(1121)),s=r(382),o=n(r(1132)),u=r(1280);class d extends i.default{get title(){return t("Labels")}get name(){return t("Labels")}get defaultValue(){return{additionalLabels:[{value:{key:"admission_control_list",value:u.admission_control_list}}]}}get formItems(){return[{name:"additionalLabels",label:t("Additional Labels"),type:"add-select",itemComponent:o.default,addText:t("Add Label")}]}}a.StepLabel=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},4070:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.ClustersDetail=void 0;var i=n(r(322)),s=r(382),o=n(r(1119)),u=r(1528),d=n(r(1230)),c=r(47),f=n(r(4071)),p=n(r(1529));class m extends o.default{init(){this.store=d.default}get name(){return t("Cluster Detail")}get listUrl(){return this.getRoutePath("containerInfraClusters")}get policy(){return"cluster:detail"}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Status"),dataIndex:"status",render:e=>u.clusterStatus[e]||e},{title:t("Status Reason"),dataIndex:"status_reason"},{title:t("Health Status"),dataIndex:"health_status",render:e=>u.healthStatus[e]||e||"-"},{title:t("Health Status Reason"),dataIndex:"health_status_reason",render:e=>(0,c.isEmpty)(e)?"-":(0,i.default)(e)}]}get tabs(){return[{title:t("General Info"),key:"general_info",component:f.default}]}}a.ClustersDetail=m;var v=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=v},4071:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=n(r(62)),s=n(r(1184)),o=n(r(1122)),u=r(47),d=r(382),c=n(r(0));class f extends o.default{get leftCards(){return[this.baseInfoCard,this.miscellaneousCard]}get rightCards(){return[this.nodesCard,this.labelCard,this.stackCard]}get baseInfoCard(){var{template:e={}}=this.detailData,a=e?this.getLinkRender("containerInfraClusterTemplateDetail",e.name,{id:e.uuid}):"-",r=[{label:t("Name"),dataIndex:"template.name",content:a},{label:t("ID"),dataIndex:"template.uuid"},{label:t("COE"),dataIndex:"template.coe"},{label:t("Image ID"),dataIndex:"template.image_id"}];return{title:t("Cluster Template"),options:r,labelCol:6,contentCol:18}}get miscellaneousCard(){var{master_flavor_id:e,flavor_id:a,keypair:r}=this.detailData,l=e?this.getLinkRender("flavorDetail",e,{id:e}):"-",n=a?this.getLinkRender("flavorDetail",a,{id:a}):"-",i=r?this.getLinkRender("keypairDetail",r,{id:r}):"-",s=[{label:t("Discovery URL"),dataIndex:"discovery_url",render:e=>e?c.default.createElement("a",{href:e,target:"blank"},e):"-"},{label:t("Timeout(Minute)"),dataIndex:"create_timeout"},{label:t("Keypair"),content:i},{label:t("Docker Volume Size"),dataIndex:"docker_volume_size"},{label:t("Master Flavor ID"),content:l},{label:t("Node Flavor ID"),content:n},{label:t("COE Version"),dataIndex:"coe_version"},{label:t("Container Version"),dataIndex:"container_version"}];return{title:t("Miscellaneous"),options:s}}get nodesCard(){var e=[{label:t("Master Count"),dataIndex:"master_count"},{label:t("Node Count"),dataIndex:"node_count"},{label:t("API Address"),dataIndex:"api_address"},{label:t("Master Addresses"),dataIndex:"master_addresses",render:e=>e&&e.length?(0,i.default)(e).call(e,(e=>c.default.createElement("div",null,e))):"-"},{label:t("Node Addresses"),dataIndex:"node_addresses",render:e=>e&&e.length?(0,i.default)(e).call(e,(e=>c.default.createElement("div",null,e))):"-"}];return{title:t("Nodes"),labelCol:3,options:e}}get labelCard(){var e=[{label:t("Labels"),dataIndex:"labels",render:e=>{var t;return(0,u.isEmpty)(e)?"-":c.default.createElement("ul",null,(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return c.default.createElement("li",{key:t},t," : ",a)})))}}];return{title:t("Labels"),labelCol:2,options:e}}get stackCard(){var e=[{label:t("Stack ID"),dataIndex:"stack_id"},{label:t("Stack Faults"),dataIndex:"faults",render:e=>{var t;return(0,u.isEmpty)(e)?"-":c.default.createElement("ul",null,(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return c.default.createElement("li",{key:t},t," : ",a)})))}}];return{title:t("Stack"),labelCol:2,options:e}}}a.BaseDetail=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));a.default=p},4072:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.ClusterTemplates=void 0;var i=n(r(37)),s=n(r(1114)),o=r(382),u=n(r(1231)),d=r(1280),c=n(r(1531));class f extends s.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>(0,d.getBaseTemplateColumns)(this)))}init(){this.store=u.default,this.downloadStore=u.default}get name(){return t("clustertemplates")}get policy(){return"clustertemplate:get_all"}get actionConfigs(){return c.default}}a.ClusterTemplates=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4073:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=n(r(1121)),s=r(382);class o extends i.default{get title(){return t("Info")}get name(){return t("Info")}get isEdit(){return!!this.props.extra}get isStep(){return!0}get defaultValue(){var e={};if(this.isEdit){var{extra:{name:t,coe:a,public:r,hidden:l,registry_enabled:n,tls_disabled:i}={}}=this.props;e={name:t,coe:a,public:r,hidden:l,registry_enabled:n,tls_disabled:i}}return e}get formItems(){return[{name:"name",label:t("Cluster Template Name"),type:"input",placeholder:t("Cluster Template Name")},{name:"coe",label:t("Container Orchestration Engine"),type:"select",options:[{label:t("Kubernetes"),value:"kubernetes"},{label:t("Docker Swarm"),value:"swarm"},{label:t("Docker Swarm Mode"),value:"swarm-mode"},{label:t("Mesos"),value:"mesos"},{label:t("DC/OS"),value:"dcos"}],required:!0},{name:"public",label:t("Public"),type:"check"},{name:"hidden",label:t("Hidden"),type:"check"},{name:"registry_enabled",label:t("Enable Registry"),type:"check"},{name:"tls_disabled",label:t("Disable TLS"),type:"check"}]}}a.StepInfo=o;var u=(0,s.inject)("rootStore")((0,s.observer)(o));a.default=u},4074:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepNodeSpec=void 0;var i=n(r(219)),s=n(r(33)),o=n(r(65)),u=n(r(52)),d=n(r(37)),c=n(r(0)),f=r(382),p=n(r(1121)),m=n(r(523)),v=n(r(396)),b=n(r(1195)),g=r(520);class h extends p.default{constructor(){super(...arguments),(0,d.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,d.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}init(){this.getImageList()}get title(){return t("Node Spec")}get name(){return t("Node Spec")}get isStep(){return!0}get isEdit(){return!!this.props.extra}getImageList(){var e=this;return(0,u.default)((function*(){yield m.default.fetchList(),e.updateDefaultValue()}))()}get acceptedImageOs(){var e,t,{context:{coe:a=""}={}}=this.props,r=[];return"kubernetes"===a?r=["fedora","coreos"]:(0,i.default)(e=["swarm","swarm-mode"]).call(e,a)?r=["fedora"]:(0,i.default)(t=["mesos","dcos"]).call(t,a)&&(r=["ubuntu"]),r}get imageColumns(){return(0,g.getImageColumns)(this)}get systemTabs(){var e=(0,g.getImageSystemTabs)();return(0,s.default)(e).call(e,(e=>{var t;return(0,i.default)(t=this.acceptedImageOs).call(t,e.value)}))}get imageList(){var e,t,{imageTab:a}=this.state;return(0,s.default)(e=(0,s.default)(t=m.default.list.data||[]).call(t,(e=>{var t;return e.owner===this.currentProjectId&&(0,i.default)(t=this.acceptedImageOs).call(t,e.os_distro)}))).call(e,(e=>(0,g.getImageOS)(e)===a))}get volumeDrivers(){var e,{context:{coe:t=""}={}}=this.props,a=[];return"kubernetes"===t?a=[{value:"cinder",label:"Cinder"}]:(0,i.default)(e=["swarm","mesos"]).call(e,t)&&(a=[{value:"rexray",label:"Rexray"}]),a}get defaultValue(){var e={};if(this.isEdit){var{extra:{image_id:t,keypair_id:a,flavor_id:r,master_flavor_id:l,volume_driver:n,docker_storage_driver:i,docker_volume_size:s}={}}=this.props;e={volume_driver:n,docker_storage_driver:i,docker_volume_size:s},r&&(e.flavor={selectedRowKeys:[r]}),l&&(e.masterFlavor={selectedRowKeys:[l]}),t&&(e.images={selectedRowKeys:[t]}),a&&(e.keypairs={selectedRowKeys:[a]})}return e}get minVolumeSize(){var{docker_storage_driver:e}=this.state;return"devicemapper"===e?3:1}get nameForStateUpdate(){return["docker_storage_driver"]}get formItems(){return[{name:"images",label:t("Image"),type:"select-table",data:this.imageList,required:!0,isLoading:m.default.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,onTabChange:this.onImageTabChange,imageTabAuto:!0},{name:"keypairs",label:t("Keypair"),type:"select-table",data:this.keypairsList,isLoading:v.default.list.isLoading,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}]},{name:"flavor",label:t("Flavor"),type:"select-table",component:c.default.createElement(b.default,{onChange:this.onFlavorChange})},{name:"masterFlavor",label:t("Master Flavor"),type:"select-table",component:c.default.createElement(b.default,{onChange:this.onFlavorChange})},{name:"volume_driver",label:t("Volume Driver"),type:"select",options:this.volumeDrivers},{name:"docker_storage_driver",label:t("Docker Storage Driver"),type:"select",options:[{label:t("Devicemapper"),value:"devicemapper"},{label:t("Overlay"),value:"overlay"},{label:t("Overlay2"),value:"overlay2"}],onChange:()=>{this.resetFormValue(["docker_volume_size"])}},{name:"docker_volume_size",label:t("Docker Volume Size (GiB)"),type:"input-int",min:this.minVolumeSize,required:3===this.minVolumeSize,placeholder:t("Spec"),validator:(e,a)=>3===this.minVolumeSize&&(!a||at[0]===e.network_id))}get networkDrivers(){var e,t,{context:{coe:a=""}={}}=this.props,r=[];return"kubernetes"===a?r=[{value:"calico",label:"Calico"},{value:"flannel",label:"Flannel"}]:(0,s.default)(e=["swarm","swarm-mode"]).call(e,a)?r=[{value:"docker",label:"Docker"},{value:"flannel",label:"Flannel"}]:(0,s.default)(t=["mesos","dcos"]).call(t,a)&&(r=[{value:"docker",label:"Docker"}]),r}get nameForStateUpdate(){return["fixedNetwork"]}get defaultValue(){var e={};if(this.isEdit){var{extra:{network_driver:t,http_proxy:a,https_proxy:r,no_proxy:l,external_network_id:n,fixed_network:i,fixed_subnet:s,dns_nameserver:o,master_lb_enabled:u,floating_ip_enabled:d}={}}=this.props;if(e={network_driver:t,http_proxy:a,https_proxy:r,no_proxy:l,externalNetwork:{selectedRowKeys:[n]},fixed_network:i,fixed_subnet:s,dns_nameserver:o,master_lb_enabled:u,floating_ip_enabled:d},i&&(e.fixedNetwork={selectedRowKeys:[i]}),s){var{subnetInitValue:c}=this.state;e.fixedSubnet=c||{selectedRowKeys:[s]}}}return e}get formItems(){var{extra:{network_driver:e}={}}=this.props,{subnetInitValue:a}=this.state;return[{name:"network_driver",label:t("Network Driver"),placeholder:t("Choose a Network Driver"),type:"select",options:this.networkDrivers,disabled:e&&this.isEdit},{name:"http_proxy",label:t("HTTP Proxy"),placeholder:t("The http_proxy address to use for nodes in cluster"),type:"input"},{name:"https_proxy",label:t("HTTPS Proxy"),placeholder:t("The https_proxy address to use for nodes in cluster"),type:"input"},{name:"no_proxy",label:t("No Proxy"),placeholder:t("The no_proxy address to use for nodes in cluster"),type:"input"},{name:"externalNetwork",label:t("External Network"),type:"select-table",backendPageStore:this.externalNetworkStore,extraParams:{"router:external":!0,project_id:this.currentProjectId},required:!0,loading:this.externalNetworkStore.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:(0,v.networkColumns)(this)},{name:"fixedNetwork",label:t("Fixed Network"),type:"select-table",backendPageStore:this.privateNetworkStore,extraParams:{"router:external":!1,project_id:this.currentProjectId},loading:this.privateNetworkStore.list.isLoading,header:u.default.createElement("div",null,t(" You can go to the console to "),(0,m.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")})),filterParams:[{label:t("Name"),name:"name"}],columns:(0,v.networkColumns)(this),onChange:e=>{this.setState({fixedNetwork:e,subnetInitValue:{selectedRowKeys:[],selectedRows:[]}},(()=>{this.formRef.current.resetFields(["fixedSubnet"])}))}},{name:"fixedSubnet",label:t("Fixed Subnet"),type:"select-table",data:this.subnetList,initValue:a,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("CIDR"),dataIndex:"cidr"},{title:t("Gateway IP"),dataIndex:"gateway_ip"},{title:t("IP Version"),dataIndex:"ip_version"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]},{name:"dns_nameserver",label:t("DNS"),placeholder:t("The DNS nameserver to use for this cluster template"),type:"input"},{name:"master_lb_enabled",label:t("Master LB"),type:"check"},{name:"floating_ip_enabled",label:t("Floating IP"),type:"check"}]}}a.StepNetwork=b;var g=(0,c.inject)("rootStore")((0,c.observer)(b));a.default=g},4076:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.StepLabel=void 0;var i=n(r(62)),s=n(r(35)),o=n(r(1121)),u=r(382),d=n(r(1132)),c=r(1280);class f extends o.default{get title(){return t("Labels")}get name(){return t("Labels")}get isStep(){return!0}get isEdit(){return!!this.props.extra}get defaultValue(){var e={additionalLabels:[{value:{key:"admission_control_list",value:c.admission_control_list}}]};if(this.isEdit){var t,{extra:{labels:a}}=this.props;e.additionalLabels=(0,i.default)(t=(0,s.default)(a||{})).call(t,(e=>({value:{key:e,value:a[e]}})))}return e}get formItems(){return[{name:"additionalLabels",label:t("Additional Labels"),type:"add-select",itemComponent:d.default,addText:t("Add Label")}]}}a.StepLabel=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4077:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var i=n(r(37)),s=r(1113),o=n(r(1231));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","clustertemplate:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>o.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Template")}get actionName(){return t("Delete Clusters Templates")}get isDanger(){return!0}get buttonText(){return t("Delete")}}a.default=u},4078:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.ClusterTemplateDetail=void 0;var i=r(382),s=n(r(1119)),o=n(r(1231)),u=n(r(4079)),d=n(r(1531));class c extends s.default{init(){this.store=o.default}get name(){return t("Cluster Template Detail")}get listUrl(){return this.getRoutePath("clusterTemplate")}get policy(){return"clustertemplate:detail"}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("General Info"),key:"general_info",component:u.default}]}}a.ClusterTemplateDetail=c;var f=(0,i.inject)("rootStore")((0,i.observer)(c));a.default=f},4079:function(e,a,r){"use strict";var l=r(19),n=r(21);l(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=n(r(62)),s=n(r(1184)),o=n(r(0)),u=n(r(1122)),d=r(382),c=r(47);class f extends u.default{get leftCards(){return[this.baseInfoCard,this.networkCard]}get leftCardsStyle(){return{flex:1}}get rightCards(){return[this.specCard,this.labelCard]}get baseInfoCard(){var e=[{label:t("COE"),dataIndex:"coe"},{label:t("Cluster Distro"),dataIndex:"cluster_distro"},{label:t("Server Type"),dataIndex:"server_type"},{label:t("Public"),dataIndex:"public",valueRender:"yesNo"},{label:t("Registry Enabled"),dataIndex:"registry_enabled",valueRender:"yesNo"},{label:t("TLS Disabled"),dataIndex:"tls_disabled",valueRender:"yesNo"}];return{title:t("Cluster Type"),options:e}}get networkCard(){var{external_network_id:e,fixed_network:a}=this.detailData||{},r=e?this.getLinkRender("networkDetail",e,{id:e}):"-",l=a?this.getLinkRender("networkDetail",a,{id:a}):"-",n=[{label:t("Network Driver"),dataIndex:"network_driver"},{label:t("HTTP Proxy"),dataIndex:"http_proxy"},{label:t("HTTPS Proxy"),dataIndex:"https_proxy"},{label:t("No Proxy"),dataIndex:"no_proxy"},{label:t("External Network ID"),content:r},{label:t("Fixed Network ID"),content:l},{label:t("Fixed Subnet ID"),dataIndex:"fixed_subnet"},{label:t("DNS"),dataIndex:"dns_nameserver"},{label:t("Master LB Enabled"),dataIndex:"master_lb_enabled",valueRender:"yesNo"},{label:t("Floating IP Enabled"),dataIndex:"floating_ip_enabled",valueRender:"yesNo"}];return{title:t("Network"),options:n}}get specCard(){var{image_id:e,keypair_id:a,flavor_id:r,master_flavor_id:l}=this.detailData,n=e?this.getLinkRender("imageDetail",e,{id:e}):"-",i=a?this.getLinkRender("keypairDetail",a,{id:a}):"-",s=r?this.getLinkRender("flavorDetail",r,{id:r}):"-",o=l?this.getLinkRender("flavorDetail",l,{id:l}):"-",u=[{label:t("Image ID"),content:n},{label:t("Keypair"),content:i},{label:t("Flavor ID"),content:s},{label:t("Master Flavor ID"),content:o},{label:t("Volume Driver"),dataIndex:"volume_driver"},{label:t("Docker Storage Driver"),dataIndex:"docker_storage_driver"},{label:t("Docker Volume Size"),dataIndex:"docker_volume_size"},{label:t("Insecure Registry"),dataIndex:"insecure_registry"}];return{title:t("Node Spec"),options:u}}get labelCard(){var e=[{label:t("labels"),dataIndex:"labels",render:e=>{var t;return(0,c.isEmpty)(e)?"-":(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return o.default.createElement("div",{key:t},o.default.createElement("ul",null,o.default.createElement("li",null,t," : ",a)))}))}}];return{title:t("Labels"),labelCol:2,options:e}}}a.BaseDetail=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));a.default=p}}]); \ No newline at end of file diff --git a/skyline_console/static/container-infra.bundle.1658297502.js.gz b/skyline_console/static/container-infra.bundle.1658297502.js.gz deleted file mode 100644 index 90ead913..00000000 Binary files a/skyline_console/static/container-infra.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/container-infra.bundle.1663167892.js b/skyline_console/static/container-infra.bundle.1663167892.js new file mode 100644 index 00000000..bb4965ca --- /dev/null +++ b/skyline_console/static/container-infra.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{1312:function(e,t,a){"use strict";var l=a(33),r=a(44),n=a(32),i=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ClustersStore=void 0;var f,p=c(a(25)),m=c(a(36)),v=c(a(51)),b=c(a(54)),g=c(a(53)),h=c(a(48)),_=a(34);function y(e,t){var a=l(e);if(r){var s=r(e);t&&(s=n(s).call(s,(function(t){return i(e,t).enumerable}))),a.push.apply(a,s)}return a}function k(e){for(var t=1;tk(k({},e),{},{id:e.uuid})}},(0,b.default)(f.prototype,"create",[_.action],(0,p.default)(f.prototype,"create"),f.prototype),(0,b.default)(f.prototype,"delete",[_.action],(0,p.default)(f.prototype,"delete"),f.prototype),(0,b.default)(f.prototype,"resize",[_.action],(0,p.default)(f.prototype,"resize"),f.prototype),f);t.ClustersStore=x;var C=new x;t.default=C},1313:function(e,t,a){"use strict";var l=a(33),r=a(44),n=a(32),i=a(25),s=a(27),o=a(45),u=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.ClusterTemplatesStore=void 0;var f,p=c(a(57)),m=c(a(32)),v=c(a(33)),b=c(a(198)),g=c(a(335)),h=c(a(25)),_=c(a(36)),y=c(a(51)),k=c(a(54)),x=c(a(53)),C=c(a(48)),S=a(34);function I(e,t){var a=l(e);if(r){var s=r(e);t&&(s=n(s).call(s,(function(t){return i(e,t).enumerable}))),a.push.apply(a,s)}return a}function w(e){for(var t=1;t{var a;return!((0,b.default)(a=["network_driver","external_network_id"]).call(a,e)&&!t[e])}))).call(l,(e=>{var a;return{path:"/".concat(e),value:"labels"===e?(0,g.default)(t[e]||{}):t[e],op:(0,b.default)(a=[null,void 0,""]).call(a,t[e])?"remove":"replace"}}));return a.submitting(a.client.patch(n,i))}))()}get mapper(){return e=>w(w({},e),{},{id:e.uuid})}},(0,k.default)(f.prototype,"create",[S.action],(0,h.default)(f.prototype,"create"),f.prototype),(0,k.default)(f.prototype,"delete",[S.action],(0,h.default)(f.prototype,"delete"),f.prototype),(0,k.default)(f.prototype,"update",[S.action],(0,h.default)(f.prototype,"update"),f.prototype),f);t.ClusterTemplatesStore=E;var L=new E;t.default=L},1364:function(e,a,l){"use strict";l(19)(a,"__esModule",{value:!0}),a.getBaseTemplateColumns=a.admission_control_list=void 0;a.admission_control_list="NodeRestriction,NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,TaintNodesByCondition,Priority,DefaultTolerationSeconds,DefaultStorageClass,StorageObjectInUseProtection,PersistentVolumeClaimResize,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,RuntimeClass";a.getBaseTemplateColumns=e=>[{title:t("ID/Name"),dataIndex:"name",routeName:e.getRouteName("containerInfraClusterTemplateDetail")},{title:t("COE"),isHideable:!0,dataIndex:"coe"},{title:t("Network Driver"),isHideable:!0,dataIndex:"network_driver"},{title:t("Keypair"),isHideable:!0,dataIndex:"keypair_id",render:t=>t?e.getLinkRender("keypairDetail",t,{id:t}):"-"}]},1422:function(e,a,l){"use strict";var r=l(33),n=l(44),i=l(32),s=l(25),o=l(27),u=l(45),d=l(46),c=l(19),f=l(21);c(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var p=f(l(27)),m=f(l(427)),v=f(l(65)),b=f(l(198)),g=f(l(51)),h=f(l(62)),_=f(l(36)),y=l(406),k=l(1193),x=f(l(1313)),C=l(34),S=f(l(4191)),I=f(l(4192)),w=f(l(4193)),E=f(l(4194));function L(e,t){var a=r(e);if(n){var l=n(e);t&&(l=i(l).call(l,(function(t){return s(e,t).enumerable}))),a.push.apply(a,l)}return a}class N extends k.StepAction{constructor(){super(...arguments),(0,_.default)(this,"onSubmit",(e=>{var{flavor:t,masterFlavor:a,additionalLabels:l,images:r,keypairs:n,externalNetwork:i,fixedNetwork:f,fixedSubnet:v}=e,b=(0,h.default)(e,["flavor","masterFlavor","additionalLabels","images","keypairs","externalNetwork","fixedNetwork","fixedSubnet"]),g={};l&&(0,p.default)(l).call(l,(e=>{var t,a,l=(0,m.default)(t=e.value.key.toLowerCase()).call(t),r=(0,m.default)(a=e.value.value.toLowerCase()).call(a);g[l]=r}));var y=function(e){for(var t=1;t{var{additionalLabels:t,clusterTemplate:a,keypair:l,auto_healing_enabled:r,auto_scaling_enabled:n,newNetwork:i,fixed_network:s,flavor:o,masterFlavor:u}=e,d=(0,b.default)(e,["additionalLabels","clusterTemplate","keypair","auto_healing_enabled","auto_scaling_enabled","newNetwork","fixed_network","flavor","masterFlavor"]),c={};t&&(0,p.default)(t).call(t,(e=>{var t,a,l=(0,m.default)(t=e.value.key.toLowerCase()).call(t),r=(0,m.default)(a=e.value.value.toLowerCase()).call(a);c[l]=r}));var f=E({name:e.name,labels:E(E({},c),{},{auto_healing_enabled:"".concat(r),auto_scaling_enabled:"".concat(n)}),master_flavor_id:u.selectedRowKeys[0],flavor_id:o.selectedRowKeys[0],cluster_template_id:a.selectedRowKeys[0],keypair:l.selectedRowKeys[0]},d);if(!i&&s){var{selectedRowKeys:v=[]}=s;f.fixed_network=v[0]}return this.store.create(f)}))}init(){this.store=y.default}static allowed(){return v.default.resolve(!0)}get name(){return t("Create Instance")}get listUrl(){return this.getRoutePath("containerInfraClusters")}get hasConfirmStep(){return!1}get steps(){return[{title:t("Info *"),component:k.default},{title:t("Node Spec *"),component:x.default},{title:t("Networks"),component:C.default},{title:t("Management"),component:S.default},{title:t("Labels"),component:I.default}]}}a.StepCreate=L,(0,g.default)(L,"id","create-cluster"),(0,g.default)(L,"title",t("Create Cluster")),(0,g.default)(L,"path","/container-infra/clusters/create"),(0,g.default)(L,"policy","cluster:create");var N=(0,h.inject)("rootStore")((0,h.observer)(L));a.default=N},1624:function(e,t,a){"use strict";var l=a(19),r=a(21);l(t,"__esModule",{value:!0}),t.default=void 0;var n=r(a(1422)),i=r(a(4195)),s=r(a(1625)),o={rowActions:{firstAction:i.default,moreActions:[{action:s.default}]},batchActions:[i.default],primaryActions:[n.default]};t.default=o},1625:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var i=n(l(65)),s=n(l(36)),o=l(406),u=l(558),d=l(1422);class c extends d.StepCreate{get name(){return t("Update Cluster Template")}get listUrl(){return this.getRoutePath("clusterTemplate")}static allowed(){return i.default.resolve(!0)}}a.Edit=c,(0,s.default)(c,"id","update-cluster-template"),(0,s.default)(c,"title",t("Edit")),(0,s.default)(c,"policy","clustertemplate:update"),(0,s.default)(c,"path",(e=>{var{id:t}=e;return(0,u.getPath)({key:"containerInfraUpdateClusterTemplate",params:{id:t}})}));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4178:function(e,t,a){"use strict";var l=a(19),r=a(21);l(t,"__esModule",{value:!0}),t.default=void 0;var n=r(a(413)),i=r(a(4179)),s=e=>(0,n.default)(i.default,e);t.default=s},4179:function(e,t,a){"use strict";var l=a(19),r=a(21);l(t,"__esModule",{value:!0}),t.default=void 0;var n=r(a(1212)),i=r(a(567)),s=r(a(4180)),o=r(a(4188)),u=r(a(4190)),d=r(a(4196)),c=r(a(1623)),f=r(a(1422)),p=r(a(1625)),m="/container-infra",v=[{path:m,component:n.default,routes:[{path:"".concat(m,"/clusters"),component:s.default,exact:!0},{path:"".concat(m,"/clusters/detail/:id"),component:o.default,exact:!0},{path:"".concat(m,"/clusters/create"),component:c.default,exact:!0},{path:"".concat(m,"/cluster-template"),component:u.default,exact:!0},{path:"".concat(m,"/cluster-template/detail/:id"),component:d.default,exact:!0},{path:"".concat(m,"/cluster-template/create"),component:f.default,exact:!0},{path:"".concat(m,"/cluster-template/update/:id"),component:p.default,exact:!0},{path:"*",component:i.default}]}];t.default=v},4180:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.Clusters=void 0;var i=n(l(36)),s=n(l(1194)),o=l(406),u=l(1621),d=n(l(1312)),c=n(l(1622));class f extends s.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"name",routeName:this.getRouteName("containerInfraClusterDetail")},{title:t("Status"),isHideable:!0,dataIndex:"status",valueMap:u.clusterStatus},{title:t("Health Status"),isHideable:!0,dataIndex:"health_status",valueMap:u.healthStatus},{title:t("Keypair"),isHideable:!0,dataIndex:"keypair",render:e=>e?this.getLinkRender("keypairDetail",e,{id:e}):"-"}]))}init(){this.store=d.default,this.downloadStore=d.default}get name(){return t("clusters")}get policy(){return"cluster:get_all"}get actionConfigs(){return c.default}}a.Clusters=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4181:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=n(l(36)),s=l(1193),o=n(l(1312));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","cluster:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>o.default.delete({id:e.id})))}get id(){return"delete"}get title(){return t("Delete Clusters")}get actionName(){return t("Delete Clusters")}get buttonText(){return t("Delete")}get isDanger(){return!0}}a.default=u},4182:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.Resize=void 0;var i=n(l(65)),s=n(l(36)),o=l(406),u=l(1193),d=n(l(1312));class c extends u.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"policy","cluster:resize"),(0,s.default)(this,"onSubmit",(e=>{this.store.resize({id:this.item.id},e)}))}init(){this.store=d.default}static allowed(){return i.default.resolve(!0)}get name(){return t("Resize Cluster")}get defaultValue(){var{node_count:e}=this.item;return{node_count:e||1}}get formItems(){return[{name:"node_count",label:t("Node Count"),type:"input-int",min:1,required:!0}]}}a.Resize=c,(0,s.default)(c,"id","resize-cluster"),(0,s.default)(c,"title",t("Resize Cluster")),(0,s.default)(c,"buttonText",t("Resize"));var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},4183:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=n(l(51)),s=n(l(1201)),o=l(406),u=n(l(1313)),d=n(l(420)),c=l(1364);class f extends s.default{init(){this.getClustertemplates(),this.getKeypairs()}get title(){return t("Info")}get name(){return t("Info")}getClustertemplates(){return(0,i.default)((function*(){yield u.default.fetchList()}))()}get clusterTemplates(){return u.default.list.data||[]}getKeypairs(){return(0,i.default)((function*(){yield d.default.fetchList()}))()}get keypairs(){return d.default.list.data||[]}get formItems(){return[{name:"name",label:t("Cluster Name"),type:"input",placeholder:t("Cluster Name"),required:!0},{name:"clusterTemplate",label:t("Cluster Template"),type:"select-table",data:this.clusterTemplates,isLoading:u.default.list.isLoading,required:!0,filterParams:[{label:t("Name"),name:"name"}],columns:(0,c.getBaseTemplateColumns)(this)},{name:"keypair",label:t("Keypair"),type:"select-table",required:!0,data:this.keypairs,isLoading:d.default.list.isLoading,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}]}]}}a.StepInfo=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4184:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepNodeSpec=void 0;var i=n(l(65)),s=n(l(36)),o=n(l(0)),u=l(406),d=n(l(1201)),c=n(l(1275));class f extends d.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>i.default.resolve())),(0,s.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}get title(){return t("Node Spec")}get name(){return t("Node Spec")}getFlavorComponent(){return o.default.createElement(c.default,{onChange:this.onFlavorChange})}get defaultValue(){return{master_count:1,node_count:1}}get formItems(){return[{name:"master_count",label:t("Number of Master Nodes"),type:"input-int",min:1,required:!0},{name:"masterFlavor",label:t("Flavor of Master Nodes"),type:"select-table",component:this.getFlavorComponent(),required:!0},{type:"divider"},{name:"node_count",label:t("Number of Worker Nodes"),type:"input-int",min:1,required:!0},{name:"flavor",label:t("Flavor of Worker Nodes"),type:"select-table",component:this.getFlavorComponent(),required:!0}]}}a.StepNodeSpec=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4185:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepNetworks=void 0;var i=n(l(65)),s=n(l(36)),o=n(l(1201)),u=l(406);class d extends o.default{constructor(){super(...arguments),(0,s.default)(this,"allowed",(()=>i.default.resolve()))}get title(){return t("Cluster Network")}get name(){return t("Cluster Network")}get defaultValue(){return{newNetwork:!0}}get nameForStateUpdate(){return["newNetwork"]}get formItems(){var{newNetwork:e}=this.state;return[{name:"master_lb_enabled",label:t("Enable Load Balancer"),type:"check",content:t("Enabled Load Balancer for Master Nodes")},{name:"newNetwork",label:t("Enabled Network"),type:"check",content:t("Create New Network")},{name:"fixed_network",label:t("Use an Existing Network"),type:"network-select-table",hidden:e},{type:"divider"},{name:"floating_ip_enabled",label:t("Enable Floating IP"),type:"check",tip:t("Whether enable or not using the floating IP of cloud provider. If it’s not set, the value of this in template will be used.")}]}}a.StepNetworks=d;var c=(0,u.inject)("rootStore")((0,u.observer)(d));a.default=c},4186:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepManagement=void 0;var i=n(l(1201)),s=l(406);class o extends i.default{get title(){return t("Cluster Management")}get name(){return t("Cluster Management")}get defaultValue(){return{create_timeout:60}}get formItems(){return[{name:"auto_healing_enabled",label:t("Auto Healing"),type:"check",content:t("Automatically repair unhealhty nodes")},{type:"divider"},{name:"auto_scaling_enabled",label:t("Auto Scaling"),type:"check",content:t("Auto scaling feature will be enabled")},{type:"divider"},{name:"create_timeout",label:t("Timeout(Minute)"),type:"input-int",min:1,tip:t("The timeout for cluster creation in minutes.")}]}}a.StepManagement=o;var u=(0,s.inject)("rootStore")((0,s.observer)(o));a.default=u},4187:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepLabel=void 0;var i=n(l(1201)),s=l(406),o=n(l(1214)),u=l(1364);class d extends i.default{get title(){return t("Labels")}get name(){return t("Labels")}get defaultValue(){return{additionalLabels:[{value:{key:"admission_control_list",value:u.admission_control_list}}]}}get formItems(){return[{name:"additionalLabels",label:t("Additional Labels"),type:"add-select",itemComponent:o.default,addText:t("Add Label")}]}}a.StepLabel=d;var c=(0,s.inject)("rootStore")((0,s.observer)(d));a.default=c},4188:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.ClustersDetail=void 0;var i=n(l(335)),s=n(l(199)),o=l(406),u=n(l(1200)),d=l(1621),c=n(l(1312)),f=n(l(4189)),p=n(l(1622));class m extends u.default{init(){this.store=c.default}get name(){return t("Cluster Detail")}get listUrl(){return this.getRoutePath("containerInfraClusters")}get policy(){return"cluster:detail"}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated"),dataIndex:"updated_at",valueRender:"toLocalTime"},{title:t("Status"),dataIndex:"status",valueMap:d.clusterStatus},{title:t("Status Reason"),dataIndex:"status_reason"},{title:t("Health Status"),dataIndex:"health_status",valueMap:d.healthStatus},{title:t("Health Status Reason"),dataIndex:"health_status_reason",render:e=>(0,s.default)(e)?"-":(0,i.default)(e)}]}get tabs(){return[{title:t("Detail"),key:"general_info",component:f.default}]}}a.ClustersDetail=m;var v=(0,o.inject)("rootStore")((0,o.observer)(m));a.default=v},4189:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=n(l(57)),s=n(l(1265)),o=n(l(199)),u=n(l(1202)),d=l(406),c=n(l(0));class f extends u.default{get leftCards(){return[this.baseInfoCard,this.miscellaneousCard]}get rightCards(){return[this.nodesCard,this.labelCard,this.stackCard]}get baseInfoCard(){var{template:e={}}=this.detailData,a=e?this.getLinkRender("containerInfraClusterTemplateDetail",e.name,{id:e.uuid}):"-",l=[{label:t("Name"),dataIndex:"template.name",content:a},{label:t("ID"),dataIndex:"template.uuid"},{label:t("COE"),dataIndex:"template.coe"},{label:t("Image ID"),dataIndex:"template.image_id"}];return{title:t("Cluster Template"),options:l,labelCol:6,contentCol:18}}get miscellaneousCard(){var{master_flavor_id:e,flavor_id:a,keypair:l}=this.detailData,r=e?this.getLinkRender("flavorDetail",e,{id:e}):"-",n=a?this.getLinkRender("flavorDetail",a,{id:a}):"-",i=l?this.getLinkRender("keypairDetail",l,{id:l}):"-",s=[{label:t("Discovery URL"),dataIndex:"discovery_url",render:e=>e?c.default.createElement("a",{href:e,target:"blank"},e):"-"},{label:t("Timeout(Minute)"),dataIndex:"create_timeout"},{label:t("Keypair"),content:i},{label:t("Docker Volume Size"),dataIndex:"docker_volume_size"},{label:t("Master Flavor ID"),content:r},{label:t("Node Flavor ID"),content:n},{label:t("COE Version"),dataIndex:"coe_version"},{label:t("Container Version"),dataIndex:"container_version"}];return{title:t("Miscellaneous"),options:s}}get nodesCard(){var e=[{label:t("Master Count"),dataIndex:"master_count"},{label:t("Node Count"),dataIndex:"node_count"},{label:t("API Address"),dataIndex:"api_address"},{label:t("Master Addresses"),dataIndex:"master_addresses",render:e=>e&&e.length?(0,i.default)(e).call(e,(e=>c.default.createElement("div",null,e))):"-"},{label:t("Node Addresses"),dataIndex:"node_addresses",render:e=>e&&e.length?(0,i.default)(e).call(e,(e=>c.default.createElement("div",null,e))):"-"}];return{title:t("Nodes"),labelCol:3,options:e}}get labelCard(){var e=[{label:t("Labels"),dataIndex:"labels",render:e=>{var t;return(0,o.default)(e)?"-":c.default.createElement("ul",null,(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return c.default.createElement("li",{key:t},t," : ",a)})))}}];return{title:t("Labels"),labelCol:2,options:e}}get stackCard(){var e=[{label:t("Stack ID"),dataIndex:"stack_id"},{label:t("Stack Faults"),dataIndex:"faults",render:e=>{var t;return(0,o.default)(e)?"-":c.default.createElement("ul",null,(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return c.default.createElement("li",{key:t},t," : ",a)})))}}];return{title:t("Stack"),labelCol:2,options:e}}}a.BaseDetail=f;var p=(0,d.inject)("rootStore")((0,d.observer)(f));a.default=p},4190:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.ClusterTemplates=void 0;var i=n(l(36)),s=n(l(1194)),o=l(406),u=n(l(1313)),d=l(1364),c=n(l(1624));class f extends s.default{constructor(){super(...arguments),(0,i.default)(this,"getColumns",(()=>(0,d.getBaseTemplateColumns)(this)))}init(){this.store=u.default,this.downloadStore=u.default}get name(){return t("clustertemplates")}get policy(){return"clustertemplate:get_all"}get actionConfigs(){return c.default}}a.ClusterTemplates=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},4191:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepInfo=void 0;var i=n(l(1201)),s=l(406);class o extends i.default{get title(){return t("Info")}get name(){return t("Info")}get isEdit(){return!!this.props.extra}get isStep(){return!0}get defaultValue(){var e={};if(this.isEdit){var{extra:{name:t,coe:a,public:l,hidden:r,registry_enabled:n,tls_disabled:i}={}}=this.props;e={name:t,coe:a,public:l,hidden:r,registry_enabled:n,tls_disabled:i}}return e}get formItems(){return[{name:"name",label:t("Cluster Template Name"),type:"input",placeholder:t("Cluster Template Name")},{name:"coe",label:t("Container Orchestration Engine"),type:"select",options:[{label:t("Kubernetes"),value:"kubernetes"},{label:t("Docker Swarm"),value:"swarm"},{label:t("Docker Swarm Mode"),value:"swarm-mode"},{label:t("Mesos"),value:"mesos"},{label:t("DC/OS"),value:"dcos"}],required:!0},{name:"public",label:t("Public"),type:"check"},{name:"hidden",label:t("Hidden"),type:"check"},{name:"registry_enabled",label:t("Enable Registry"),type:"check"},{name:"tls_disabled",label:t("Disable TLS"),type:"check"}]}}a.StepInfo=o;var u=(0,s.inject)("rootStore")((0,s.observer)(o));a.default=u},4192:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepNodeSpec=void 0;var i=n(l(198)),s=n(l(32)),o=n(l(65)),u=n(l(51)),d=n(l(36)),c=n(l(0)),f=l(406),p=n(l(1201)),m=n(l(565)),v=n(l(420)),b=n(l(1275)),g=l(563);class h extends p.default{constructor(){super(...arguments),(0,d.default)(this,"onImageTabChange",(e=>{this.setState({imageTab:e})})),(0,d.default)(this,"onFlavorChange",(e=>{this.updateContext({flavor:e})}))}init(){this.getImageList()}get title(){return t("Node Spec")}get name(){return t("Node Spec")}get isStep(){return!0}get isEdit(){return!!this.props.extra}getImageList(){var e=this;return(0,u.default)((function*(){yield m.default.fetchList(),e.updateDefaultValue()}))()}get acceptedImageOs(){var e,t,{context:{coe:a=""}={}}=this.props,l=[];return"kubernetes"===a?l=["fedora","coreos"]:(0,i.default)(e=["swarm","swarm-mode"]).call(e,a)?l=["fedora"]:(0,i.default)(t=["mesos","dcos"]).call(t,a)&&(l=["ubuntu"]),l}get imageColumns(){return(0,g.getImageColumns)(this)}get systemTabs(){var e=(0,g.getImageSystemTabs)();return(0,s.default)(e).call(e,(e=>{var t;return(0,i.default)(t=this.acceptedImageOs).call(t,e.value)}))}get imageList(){var e,t,{imageTab:a}=this.state;return(0,s.default)(e=(0,s.default)(t=m.default.list.data||[]).call(t,(e=>{var t;return e.owner===this.currentProjectId&&(0,i.default)(t=this.acceptedImageOs).call(t,e.os_distro)}))).call(e,(e=>(0,g.getImageOS)(e)===a))}get volumeDrivers(){var e,{context:{coe:t=""}={}}=this.props,a=[];return"kubernetes"===t?a=[{value:"cinder",label:"Cinder"}]:(0,i.default)(e=["swarm","mesos"]).call(e,t)&&(a=[{value:"rexray",label:"Rexray"}]),a}get defaultValue(){var e={};if(this.isEdit){var{extra:{image_id:t,keypair_id:a,flavor_id:l,master_flavor_id:r,volume_driver:n,docker_storage_driver:i,docker_volume_size:s}={}}=this.props;e={volume_driver:n,docker_storage_driver:i,docker_volume_size:s},l&&(e.flavor={selectedRowKeys:[l]}),r&&(e.masterFlavor={selectedRowKeys:[r]}),t&&(e.images={selectedRowKeys:[t]}),a&&(e.keypairs={selectedRowKeys:[a]})}return e}get minVolumeSize(){var{docker_storage_driver:e}=this.state;return"devicemapper"===e?3:1}get nameForStateUpdate(){return["docker_storage_driver"]}get formItems(){return[{name:"images",label:t("Image"),type:"select-table",data:this.imageList,required:!0,isLoading:m.default.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:this.imageColumns,tabs:this.systemTabs,defaultTabValue:this.systemTabs[0].value,onTabChange:this.onImageTabChange,imageTabAuto:!0},{name:"keypairs",label:t("Keypair"),type:"select-table",data:this.keypairsList,isLoading:v.default.list.isLoading,tip:t("The SSH key is a way to remotely log in to the instance. The cloud platform only helps to keep the public key. Please keep your private key properly."),filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("Fingerprint"),dataIndex:"fingerprint"}]},{name:"flavor",label:t("Flavor"),type:"select-table",component:c.default.createElement(b.default,{onChange:this.onFlavorChange})},{name:"masterFlavor",label:t("Master Flavor"),type:"select-table",component:c.default.createElement(b.default,{onChange:this.onFlavorChange})},{name:"volume_driver",label:t("Volume Driver"),type:"select",options:this.volumeDrivers},{name:"docker_storage_driver",label:t("Docker Storage Driver"),type:"select",options:[{label:t("Devicemapper"),value:"devicemapper"},{label:t("Overlay"),value:"overlay"},{label:t("Overlay2"),value:"overlay2"}],onChange:()=>{this.resetFormValue(["docker_volume_size"])}},{name:"docker_volume_size",label:t("Docker Volume Size (GiB)"),type:"input-int",min:this.minVolumeSize,required:3===this.minVolumeSize,placeholder:t("Spec"),validator:(e,a)=>3===this.minVolumeSize&&(!a||at[0]===e.network_id))}get networkDrivers(){var e,t,{context:{coe:a=""}={}}=this.props,l=[];return"kubernetes"===a?l=[{value:"calico",label:"Calico"},{value:"flannel",label:"Flannel"}]:(0,s.default)(e=["swarm","swarm-mode"]).call(e,a)?l=[{value:"docker",label:"Docker"},{value:"flannel",label:"Flannel"}]:(0,s.default)(t=["mesos","dcos"]).call(t,a)&&(l=[{value:"docker",label:"Docker"}]),l}get nameForStateUpdate(){return["fixedNetwork"]}get defaultValue(){var e={};if(this.isEdit){var{extra:{network_driver:t,http_proxy:a,https_proxy:l,no_proxy:r,external_network_id:n,fixed_network:i,fixed_subnet:s,dns_nameserver:o,master_lb_enabled:u,floating_ip_enabled:d}={}}=this.props;if(e={network_driver:t,http_proxy:a,https_proxy:l,no_proxy:r,externalNetwork:{selectedRowKeys:[n]},fixed_network:i,fixed_subnet:s,dns_nameserver:o,master_lb_enabled:u,floating_ip_enabled:d},i&&(e.fixedNetwork={selectedRowKeys:[i]}),s){var{subnetInitValue:c}=this.state;e.fixedSubnet=c||{selectedRowKeys:[s]}}}return e}get formItems(){var{extra:{network_driver:e}={}}=this.props,{subnetInitValue:a}=this.state;return[{name:"network_driver",label:t("Network Driver"),placeholder:t("Choose a Network Driver"),type:"select",options:this.networkDrivers,disabled:e&&this.isEdit},{name:"http_proxy",label:t("HTTP Proxy"),placeholder:t("The http_proxy address to use for nodes in cluster"),type:"input"},{name:"https_proxy",label:t("HTTPS Proxy"),placeholder:t("The https_proxy address to use for nodes in cluster"),type:"input"},{name:"no_proxy",label:t("No Proxy"),placeholder:t("The no_proxy address to use for nodes in cluster"),type:"input"},{name:"externalNetwork",label:t("External Network"),type:"select-table",backendPageStore:this.externalNetworkStore,extraParams:{"router:external":!0,project_id:this.currentProjectId},required:!0,loading:this.externalNetworkStore.list.isLoading,filterParams:[{label:t("Name"),name:"name"}],columns:(0,v.networkColumns)(this)},{name:"fixedNetwork",label:t("Fixed Network"),type:"select-table",backendPageStore:this.privateNetworkStore,extraParams:{"router:external":!1,project_id:this.currentProjectId},loading:this.privateNetworkStore.list.isLoading,header:u.default.createElement("div",null,t(" You can go to the console to "),(0,m.getLinkRender)({key:"network",value:"".concat(t("create a new network/subnet")," > ")})),filterParams:[{label:t("Name"),name:"name"}],columns:(0,v.networkColumns)(this),onChange:e=>{this.setState({fixedNetwork:e,subnetInitValue:{selectedRowKeys:[],selectedRows:[]}},(()=>{this.formRef.current.resetFields(["fixedSubnet"])}))}},{name:"fixedSubnet",label:t("Fixed Subnet"),type:"select-table",data:this.subnetList,initValue:a,filterParams:[{label:t("Name"),name:"name"}],columns:[{title:t("Name"),dataIndex:"name"},{title:t("CIDR"),dataIndex:"cidr"},{title:t("Gateway IP"),dataIndex:"gateway_ip"},{title:t("IP Version"),dataIndex:"ip_version"},{title:t("Created At"),dataIndex:"created_at",valueRender:"toLocalTime"}]},{name:"dns_nameserver",label:t("DNS"),placeholder:t("The DNS nameserver to use for this cluster template"),type:"input"},{name:"master_lb_enabled",label:t("Master LB"),type:"check"},{name:"floating_ip_enabled",label:t("Floating IP"),type:"check"}]}}a.StepNetwork=b;var g=(0,c.inject)("rootStore")((0,c.observer)(b));a.default=g},4194:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.StepLabel=void 0;var i=n(l(57)),s=n(l(33)),o=n(l(1201)),u=l(406),d=n(l(1214)),c=l(1364);class f extends o.default{get title(){return t("Labels")}get name(){return t("Labels")}get isStep(){return!0}get isEdit(){return!!this.props.extra}get defaultValue(){var e={additionalLabels:[{value:{key:"admission_control_list",value:c.admission_control_list}}]};if(this.isEdit){var t,{extra:{labels:a}}=this.props;e.additionalLabels=(0,i.default)(t=(0,s.default)(a||{})).call(t,(e=>({value:{key:e,value:a[e]}})))}return e}get formItems(){return[{name:"additionalLabels",label:t("Additional Labels"),type:"add-select",itemComponent:d.default,addText:t("Add Label")}]}}a.StepLabel=f;var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},4195:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=void 0;var i=n(l(36)),s=l(1193),o=n(l(1313));class u extends s.ConfirmAction{constructor(){super(...arguments),(0,i.default)(this,"policy","clustertemplate:delete"),(0,i.default)(this,"allowedCheckFunc",(()=>!0)),(0,i.default)(this,"onSubmit",(e=>o.default.delete({id:e.uuid})))}get id(){return"delete"}get title(){return t("Delete Template")}get actionName(){return t("Delete Clusters Templates")}get isDanger(){return!0}get buttonText(){return t("Delete")}}a.default=u},4196:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.ClusterTemplateDetail=void 0;var i=l(406),s=n(l(1200)),o=n(l(1313)),u=n(l(4197)),d=n(l(1624));class c extends s.default{init(){this.store=o.default}get name(){return t("Cluster Template Detail")}get listUrl(){return this.getRoutePath("clusterTemplate")}get policy(){return"clustertemplate:detail"}get actionConfigs(){return d.default}get detailInfos(){return[{title:t("Name"),dataIndex:"name"},{title:t("Created"),dataIndex:"created_at",valueRender:"toLocalTime"},{title:t("Updated"),dataIndex:"updated_at",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"general_info",component:u.default}]}}a.ClusterTemplateDetail=c;var f=(0,i.inject)("rootStore")((0,i.observer)(c));a.default=f},4197:function(e,a,l){"use strict";var r=l(19),n=l(21);r(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var i=n(l(57)),s=n(l(1265)),o=n(l(199)),u=n(l(0)),d=n(l(1202)),c=l(406);class f extends d.default{get leftCards(){return[this.baseInfoCard,this.networkCard]}get leftCardsStyle(){return{flex:1}}get rightCards(){return[this.specCard,this.labelCard]}get baseInfoCard(){var e=[{label:t("COE"),dataIndex:"coe"},{label:t("Cluster Distro"),dataIndex:"cluster_distro"},{label:t("Server Type"),dataIndex:"server_type"},{label:t("Public"),dataIndex:"public",valueRender:"yesNo"},{label:t("Registry Enabled"),dataIndex:"registry_enabled",valueRender:"yesNo"},{label:t("TLS Disabled"),dataIndex:"tls_disabled",valueRender:"yesNo"}];return{title:t("Cluster Type"),options:e}}get networkCard(){var{external_network_id:e,fixed_network:a}=this.detailData||{},l=e?this.getLinkRender("networkDetail",e,{id:e}):"-",r=a?this.getLinkRender("networkDetail",a,{id:a}):"-",n=[{label:t("Network Driver"),dataIndex:"network_driver"},{label:t("HTTP Proxy"),dataIndex:"http_proxy"},{label:t("HTTPS Proxy"),dataIndex:"https_proxy"},{label:t("No Proxy"),dataIndex:"no_proxy"},{label:t("External Network ID"),content:l},{label:t("Fixed Network ID"),content:r},{label:t("Fixed Subnet ID"),dataIndex:"fixed_subnet"},{label:t("DNS"),dataIndex:"dns_nameserver"},{label:t("Master LB Enabled"),dataIndex:"master_lb_enabled",valueRender:"yesNo"},{label:t("Floating IP Enabled"),dataIndex:"floating_ip_enabled",valueRender:"yesNo"}];return{title:t("Network"),options:n}}get specCard(){var{image_id:e,keypair_id:a,flavor_id:l,master_flavor_id:r}=this.detailData,n=e?this.getLinkRender("imageDetail",e,{id:e}):"-",i=a?this.getLinkRender("keypairDetail",a,{id:a}):"-",s=l?this.getLinkRender("flavorDetail",l,{id:l}):"-",o=r?this.getLinkRender("flavorDetail",r,{id:r}):"-",u=[{label:t("Image ID"),content:n},{label:t("Keypair"),content:i},{label:t("Flavor ID"),content:s},{label:t("Master Flavor ID"),content:o},{label:t("Volume Driver"),dataIndex:"volume_driver"},{label:t("Docker Storage Driver"),dataIndex:"docker_storage_driver"},{label:t("Docker Volume Size"),dataIndex:"docker_volume_size"},{label:t("Insecure Registry"),dataIndex:"insecure_registry"}];return{title:t("Node Spec"),options:u}}get labelCard(){var e=[{label:t("labels"),dataIndex:"labels",render:e=>{var t;return(0,o.default)(e)?"-":(0,i.default)(t=(0,s.default)(e)).call(t,(e=>{var[t,a]=e;return u.default.createElement("div",{key:t},u.default.createElement("ul",null,u.default.createElement("li",null,t," : ",a)))}))}}];return{title:t("Labels"),labelCol:2,options:e}}}a.BaseDetail=f;var p=(0,c.inject)("rootStore")((0,c.observer)(f));a.default=p}}]); \ No newline at end of file diff --git a/skyline_console/static/container-infra.bundle.1663167892.js.gz b/skyline_console/static/container-infra.bundle.1663167892.js.gz new file mode 100644 index 00000000..dea028e1 Binary files /dev/null and b/skyline_console/static/container-infra.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js b/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js new file mode 100644 index 00000000..1ba8efd3 --- /dev/null +++ b/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js @@ -0,0 +1 @@ +!function(t){if(!(void 0!==t.window&&t.document||t.require&&t.define)){t.console||(t.console=function(){var t=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:t})},t.console.error=t.console.warn=t.console.log=t.console.trace=t.console),t.window=t,t.ace=t,t.onerror=function(t,e,n,i,r){postMessage({type:"error",data:{message:t,data:r.data,file:e,line:n,col:i,stack:r.stack}})},t.normalizeModule=function(e,n){if(-1!==n.indexOf("!")){var i=n.split("!");return t.normalizeModule(e,i[0])+"!"+t.normalizeModule(e,i[1])}if("."==n.charAt(0)){var r=e.split("/").slice(0,-1).join("/");for(n=(r?r+"/":"")+n;-1!==n.indexOf(".")&&s!=n;){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},t.require=function(e,n){if(n||(n=e,e=null),!n.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");n=t.normalizeModule(e,n);var i=t.require.modules[n];if(i)return i.initialized||(i.initialized=!0,i.exports=i.factory().exports),i.exports;if(t.require.tlns){var r=function(t,e){var n=t,i="";for(;n;){var r=e[n];if("string"==typeof r)return r+i;if(r)return r.location.replace(/\/*$/,"/")+(i||r.main||r.name);if(!1===r)return"";var s=n.lastIndexOf("/");if(-1===s)break;i=n.substr(s)+i,n=n.slice(0,s)}return t}(n,t.require.tlns);return".js"!=r.slice(-3)&&(r+=".js"),t.require.id=n,t.require.modules[n]={},importScripts(r),t.require(e,n)}},t.require.modules={},t.require.tlns={},t.define=function(e,n,i){if(2==arguments.length?(i=n,"string"!=typeof e&&(n=e,e=t.require.id)):1==arguments.length&&(i=e,n=[],e=t.require.id),"function"==typeof i){n.length||(n=["require","exports","module"]);var r=function(n){return t.require(e,n)};t.require.modules[e]={exports:{},factory:function(){var t=this,e=i.apply(this,n.slice(0,i.length).map((function(e){switch(e){case"require":return r;case"exports":return t.exports;case"module":return t;default:return r(e)}})));return e&&(t.exports=e),t}}}else t.require.modules[e]={exports:i,initialized:!0}},t.define.amd={},require.tlns={},t.initBaseUrls=function(t){for(var e in t)require.tlns[e]=t[e]},t.initSender=function(){var e=t.require("ace/lib/event_emitter").EventEmitter,n=t.require("ace/lib/oop"),i=function(){};return function(){n.implement(this,e),this.callback=function(t,e){postMessage({type:"call",id:e,data:t})},this.emit=function(t,e){postMessage({type:"event",name:t,data:e})}}.call(i.prototype),new i};var e=t.main=null,n=t.sender=null;t.onmessage=function(i){var r=i.data;if(r.event&&n)n._signal(r.event,r.data);else if(r.command)if(e[r.command])e[r.command].apply(e,r.args);else{if(!t[r.command])throw new Error("Unknown command:"+r.command);t[r.command].apply(t,r.args)}else if(r.init){t.initBaseUrls(r.tlns),n=t.sender=t.initSender();var s=require(r.module)[r.classname];e=t.main=new s(n)}}}}(this),ace.define("ace/lib/oop",[],(function(t,e,n){"use strict";e.inherits=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})},e.mixin=function(t,e){for(var n in e)t[n]=e[n];return t},e.implement=function(t,n){e.mixin(t,n)}})),ace.define("ace/range",[],(function(t,e,n){"use strict";var i=function(t,e,n,i){this.start={row:t,column:e},this.end={row:n,column:i}};(function(){this.isEqual=function(t){return this.start.row===t.start.row&&this.end.row===t.end.row&&this.start.column===t.start.column&&this.end.column===t.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(t,e){return 0==this.compare(t,e)},this.compareRange=function(t){var e,n=t.end,i=t.start;return 1==(e=this.compare(n.row,n.column))?1==(e=this.compare(i.row,i.column))?2:0==e?1:0:-1==e?-2:-1==(e=this.compare(i.row,i.column))?-1:1==e?42:0},this.comparePoint=function(t){return this.compare(t.row,t.column)},this.containsRange=function(t){return 0==this.comparePoint(t.start)&&0==this.comparePoint(t.end)},this.intersects=function(t){var e=this.compareRange(t);return-1==e||0==e||1==e},this.isEnd=function(t,e){return this.end.row==t&&this.end.column==e},this.isStart=function(t,e){return this.start.row==t&&this.start.column==e},this.setStart=function(t,e){"object"==typeof t?(this.start.column=t.column,this.start.row=t.row):(this.start.row=t,this.start.column=e)},this.setEnd=function(t,e){"object"==typeof t?(this.end.column=t.column,this.end.row=t.row):(this.end.row=t,this.end.column=e)},this.inside=function(t,e){return 0==this.compare(t,e)&&(!this.isEnd(t,e)&&!this.isStart(t,e))},this.insideStart=function(t,e){return 0==this.compare(t,e)&&!this.isEnd(t,e)},this.insideEnd=function(t,e){return 0==this.compare(t,e)&&!this.isStart(t,e)},this.compare=function(t,e){return this.isMultiLine()||t!==this.start.row?tthis.end.row?1:this.start.row===t?e>=this.start.column?0:-1:this.end.row===t?e<=this.end.column?0:1:0:ethis.end.column?1:0},this.compareStart=function(t,e){return this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.compareEnd=function(t,e){return this.end.row==t&&this.end.column==e?1:this.compare(t,e)},this.compareInside=function(t,e){return this.end.row==t&&this.end.column==e?1:this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.clipRows=function(t,e){if(this.end.row>e)var n={row:e+1,column:0};else if(this.end.rowe)var r={row:e+1,column:0};else if(this.start.rowthis.row)){var n=function(e,n,i){var r="insert"==e.action,s=(r?1:-1)*(e.end.row-e.start.row),o=(r?1:-1)*(e.end.column-e.start.column),a=e.start,c=r?a:e.end;if(t(n,a,i))return{row:n.row,column:n.column};if(t(c,n,!i))return{row:n.row+s,column:n.column+(n.row==c.row?o:0)};return{row:a.row,column:a.column}}(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)}},this.setPosition=function(t,e,n){var i;if(i=n?{row:t,column:e}:this.$clipPositionToDocument(t,e),this.row!=i.row||this.column!=i.column){var r={row:this.row,column:this.column};this.row=i.row,this.column=i.column,this._signal("change",{old:r,value:i})}},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(t){this.document=t||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(t,e){var n={};return t>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):t<0?(n.row=0,n.column=0):(n.row=t,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,e))),e<0&&(n.column=0),n}}).call(s.prototype)})),ace.define("ace/document",[],(function(t,e,n){"use strict";var i=t("./lib/oop"),r=t("./apply_delta").applyDelta,s=t("./lib/event_emitter").EventEmitter,o=t("./range").Range,a=t("./anchor").Anchor,c=function(t){this.$lines=[""],0===t.length?this.$lines=[""]:Array.isArray(t)?this.insertMergedLines({row:0,column:0},t):this.insert({row:0,column:0},t)};(function(){i.implement(this,s),this.setValue=function(t){var e=this.getLength()-1;this.remove(new o(0,0,e,this.getLine(e).length)),this.insert({row:0,column:0},t)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(t,e){return new a(this,t,e)},0==="aaa".split(/a/).length?this.$split=function(t){return t.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(t){return t.split(/\r\n|\r|\n/)},this.$detectNewLine=function(t){var e=t.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=e?e[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(t){this.$newLineMode!==t&&(this.$newLineMode=t,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(t){return"\r\n"==t||"\r"==t||"\n"==t},this.getLine=function(t){return this.$lines[t]||""},this.getLines=function(t,e){return this.$lines.slice(t,e+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(t){return this.getLinesForRange(t).join(this.getNewLineCharacter())},this.getLinesForRange=function(t){var e;if(t.start.row===t.end.row)e=[this.getLine(t.start.row).substring(t.start.column,t.end.column)];else{(e=this.getLines(t.start.row,t.end.row))[0]=(e[0]||"").substring(t.start.column);var n=e.length-1;t.end.row-t.start.row==n&&(e[n]=e[n].substring(0,t.end.column))}return e},this.insertLines=function(t,e){return this.insertFullLines(t,e)},this.removeLines=function(t,e){return this.removeFullLines(t,e)},this.insertNewLine=function(t){return this.insertMergedLines(t,["",""])},this.insert=function(t,e){return this.getLength()<=1&&this.$detectNewLine(e),this.insertMergedLines(t,this.$split(e))},this.insertInLine=function(t,e){var n=this.clippedPos(t.row,t.column),i=this.pos(t.row,t.column+e.length);return this.applyDelta({start:n,end:i,action:"insert",lines:[e]},!0),this.clonePos(i)},this.clippedPos=function(t,e){var n=this.getLength();void 0===t?t=n:t<0?t=0:t>=n&&(t=n-1,e=void 0);var i=this.getLine(t);return null==e&&(e=i.length),{row:t,column:e=Math.min(Math.max(e,0),i.length)}},this.clonePos=function(t){return{row:t.row,column:t.column}},this.pos=function(t,e){return{row:t,column:e}},this.$clipPosition=function(t){var e=this.getLength();return t.row>=e?(t.row=Math.max(0,e-1),t.column=this.getLine(e-1).length):(t.row=Math.max(0,t.row),t.column=Math.min(Math.max(t.column,0),this.getLine(t.row).length)),t},this.insertFullLines=function(t,e){var n=0;(t=Math.min(Math.max(t,0),this.getLength()))0,i=e=0&&this.applyDelta({start:this.pos(t,this.getLine(t).length),end:this.pos(t+1,0),action:"remove",lines:["",""]})},this.replace=function(t,e){return t instanceof o||(t=o.fromPoints(t.start,t.end)),0===e.length&&t.isEmpty()?t.start:e==this.getTextRange(t)?t.end:(this.remove(t),e?this.insert(t.start,e):t.start)},this.applyDeltas=function(t){for(var e=0;e=0;e--)this.revertDelta(t[e])},this.applyDelta=function(t,e){var n="insert"==t.action;(n?t.lines.length<=1&&!t.lines[0]:!o.comparePoints(t.start,t.end))||(n&&t.lines.length>2e4?this.$splitAndapplyLargeDelta(t,2e4):(r(this.$lines,t,e),this._signal("change",t)))},this.$safeApplyDelta=function(t){var e=this.$lines.length;("remove"==t.action&&t.start.row0;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n};var i=/^\s\s*/,r=/\s\s*$/;e.stringTrimLeft=function(t){return t.replace(i,"")},e.stringTrimRight=function(t){return t.replace(r,"")},e.copyObject=function(t){var e={};for(var n in t)e[n]=t[n];return e},e.copyArray=function(t){for(var e=[],n=0,i=t.length;n="0"&&r<="9";)e+=r,u();if("."===r)for(e+=".";u()&&r>="0"&&r<="9";)e+=r;if("e"===r||"E"===r)for(e+=r,u(),"-"!==r&&"+"!==r||(e+=r,u());r>="0"&&r<="9";)e+=r,u();if(t=+e,!isNaN(t))return t;c("Bad number")},h=function(){var t,e,n,i="";if('"'===r)for(;u();){if('"'===r)return u(),i;if("\\"===r)if(u(),"u"===r){for(n=0,e=0;e<4&&(t=parseInt(u(),16),isFinite(t));e+=1)n=16*n+t;i+=String.fromCharCode(n)}else{if("string"!=typeof a[r])break;i+=a[r]}else{if("\n"==r||"\r"==r)break;i+=r}}c("Bad string")},f=function(){for(;r&&r<=" ";)u()};return o=function(){switch(f(),r){case"{":return function(){var t,e={};if("{"===r){if(u("{"),f(),"}"===r)return u("}"),e;for(;r;){if(t=h(),f(),u(":"),Object.hasOwnProperty.call(e,t)&&c('Duplicate key "'+t+'"'),e[t]=o(),f(),"}"===r)return u("}"),e;u(","),f()}}c("Bad object")}();case"[":return function(){var t=[];if("["===r){if(u("["),f(),"]"===r)return u("]"),t;for(;r;){if(t.push(o()),f(),"]"===r)return u("]"),t;u(","),f()}}c("Bad array")}();case'"':return h();case"-":return l();default:return r>="0"&&r<="9"?l():function(){switch(r){case"t":return u("t"),u("r"),u("u"),u("e"),!0;case"f":return u("f"),u("a"),u("l"),u("s"),u("e"),!1;case"n":return u("n"),u("u"),u("l"),u("l"),null}c("Unexpected '"+r+"'")}()}},function(t,e){var n;return s=t,i=0,r=" ",n=o(),f(),r&&c("Syntax error"),"function"==typeof e?function t(n,i){var r,s,o=n[i];if(o&&"object"==typeof o)for(r in o)Object.hasOwnProperty.call(o,r)&&(void 0!==(s=t(o,r))?o[r]=s:delete o[r]);return e.call(n,i,o)}({"":n},""):n}})),ace.define("ace/mode/json_worker",[],(function(t,e,n){"use strict";var i=t("../lib/oop"),r=t("../worker/mirror").Mirror,s=t("./json/json_parse"),o=e.JsonWorker=function(t){r.call(this,t),this.setTimeout(200)};i.inherits(o,r),function(){this.onUpdate=function(){var t=this.doc.getValue(),e=[];try{t&&s(t)}catch(t){var n=this.doc.indexToPosition(t.at-1);e.push({row:n.row,column:n.column,text:t.message,type:"error"})}this.sender.emit("annotate",e)}}.call(o.prototype)})); \ No newline at end of file diff --git a/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js.gz b/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js.gz new file mode 100644 index 00000000..a5ce6959 Binary files /dev/null and b/skyline_console/static/f7186078e00d958aa2b316483dfc7e1c.js.gz differ diff --git a/skyline_console/static/heat.bundle.1658297502.js b/skyline_console/static/heat.bundle.1658297502.js deleted file mode 100644 index 9b4b92a8..00000000 --- a/skyline_console/static/heat.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{1328:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=i(r(65)),s=i(r(91)),u=i(r(52)),o=i(r(71)),d=i(r(37)),c=r(382),m=r(1113),p=i(r(545)),f=r(1163),v=r(32),h=i(r(3907)),k=i(r(3908));class g extends m.StepAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{params:t,content:a,rollback:r,name:n,timeout_mins:i}=e,l=(0,o.default)(e,["params","content","rollback","name","timeout_mins"]),s={stack_name:n,disable_rollback:!r,timeout_mins:i,template:(0,f.getYaml)(a),parameters:l};if(this.isEdit){var{stack_name:u}=s,d=(0,o.default)(s,["stack_name"]);return this.store.edit(this.params,d)}return this.store.create(s)}))}static allowed(){return l.default.resolve(!0)}get listUrl(){return this.getRoutePath("stack")}get name(){return this.isEdit?t("update template"):t("create stack")}get hasConfirmStep(){return!1}get hasExtraProps(){return this.isEdit}get isEdit(){var{pathname:e}=this.props.location;return(0,s.default)(e).call(e,"edit")>=0}get params(){var{id:e,name:t}=this.props.match.params;return{id:e,name:t}}get steps(){return[{title:t("Prepare Template"),component:k.default},{title:t("Orchestration information"),component:h.default}]}init(){this.store=p.default,this.getDetail()}getDetail(){var e=this;return(0,u.default)((function*(){if(e.isEdit){var t=yield p.default.fetchDetail(e.params);e.setState({extra:(0,v.toJS)(t)})}}))()}}a.StepCreate=g,(0,d.default)(g,"id","stack-create"),(0,d.default)(g,"title",t("Create Stack")),(0,d.default)(g,"path",((e,t)=>{var{isAdminPage:a}=t;return a?"/heat/stack-admin/create":"/heat/stack/create"})),(0,d.default)(g,"policy","stacks:create");var y=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=y},1511:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(3906)),l=n(a(1328)),s=n(a(3909)),u=n(a(3910)),o={rowActions:{firstAction:i.default,moreActions:[{action:s.default},{action:u.default}]},batchActions:[i.default],primaryActions:[l.default]};t.default=o},3903:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(389)),l=n(a(3904)),s=e=>(0,i.default)(l.default,e);t.default=s},3904:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(1130)),l=n(a(525)),s=n(a(3905)),u=n(a(3911)),o=n(a(1328)),d="/heat",c=[{path:d,component:i.default,routes:[{path:"".concat(d,"/stack"),component:s.default,exact:!0},{path:"".concat(d,"/stack-admin"),component:s.default,exact:!0},{path:"".concat(d,"/stack/create"),component:o.default,exact:!0},{path:"".concat(d,"/stack-admin/create"),component:o.default,exact:!0},{path:"".concat(d,"/stack/edit/:id/:name"),component:o.default,exact:!0},{path:"".concat(d,"/stack-admin/edit/:id/:name"),component:o.default,exact:!0},{path:"".concat(d,"/stack/detail/:id/:name"),component:u.default,exact:!0},{path:"".concat(d,"/stack-admin/detail/:id/:name"),component:u.default,exact:!0},{path:"*",component:l.default}]}];t.default=c},3905:function(e,a,r){"use strict";var n=r(156),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.Stack=void 0;var u=s(r(62)),o=s(r(37)),d=r(382),c=s(r(1114)),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var u=n?l(e,s):null;u&&(u.get||u.set)?i(r,s,u):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(545)),p=r(1163),f=s(r(1511));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 h extends c.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"stack_name",routeName:this.getRouteName("stackDetail"),routeParamsFunc:e=>({id:e.id,name:e.stack_name}),isLink:!0},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sorter:!1},{title:t("Stack Status"),dataIndex:"stack_status",isHideable:!0,render:e=>p.stackStatus[e]||e},{title:t("Created At"),dataIndex:"creation_time",isHideable:!0,valueRender:"sinceTime"},{title:t("Updated At"),dataIndex:"updated_time",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=m.default,this.downloadStore=new m.StackStore}get policy(){return this.isAdminPage?"stacks:global_index":"stacks:index"}get name(){return t("stacks")}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"creation_time"}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"tenant"}get actionConfigs(){return f.default}get searchFilters(){var e=["CREATE_COMPLETE","CREATE_FAILED","ROLLBACK_COMPLETE","ROLLBACK_FAILED","UPDATE_COMPLETE","UPDATE_FAILED","DELETE_COMPLETE","DELETE_FAILED"],a=(0,u.default)(e).call(e,(e=>({key:e,label:p.stackStatus[e]})));return[{label:t("ID"),name:"id"},{label:t("Name"),name:"name"},{label:t("Stack Status"),name:"status",options:a}]}}a.Stack=h;var k=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=k},3906:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),s=i(r(0)),u=r(1113),o=i(r(545));class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","stacks:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return s.default.createElement("div",null,s.default.createElement("p",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a}))),s.default.createElement("p",null,t("Deleting this stack will delete all resources deployed by the stack.")))})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,name:a}=e||this.item;return o.default.delete({id:t,name:a})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete stack")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3907:function(e,a,r){"use strict";var n=r(35),i=r(44),l=r(33),s=r(25),u=r(28),o=r(45),d=r(46),c=r(19),m=r(21);c(a,"__esModule",{value:!0}),a.default=a.Parameter=void 0;var p=m(r(37)),f=r(382),v=m(r(1121)),h=r(1163);function k(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function g(e){for(var t=1;t{var{isAdminPage:a}=t,r=a?"stackEditAdmin":"stackEdit",{id:n,stack_name:i}=e;return(0,o.getPath)({key:r,params:{id:n,name:i}})})),(0,s.default)(c,"policy","stacks:update");var m=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=m},3910:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(37)),s=i(r(0)),u=r(1113),o=i(r(545));class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","stacks:abandon"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return s.default.createElement("div",null,s.default.createElement("p",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a}))),s.default.createElement("p",null,t("Abandoning this stack will preserve the resources deployed by the stack.")))})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,name:a}=e||this.item;return o.default.abandon({id:t,name:a})}))}get id(){return"abandon"}get title(){return t("Abandon Stack")}get actionName(){return t("abandon stack")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},3911:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StackDetail=void 0;var l=r(382),s=i(r(1119)),u=r(545),o=r(1163),d=i(r(3912)),c=i(r(3913)),m=i(r(3915)),p=i(r(3917)),f=i(r(1511));class v extends s.default{get name(){return t("stack")}get policy(){return"stacks:show"}get listUrl(){return this.getRoutePath("stack")}init(){this.store=new u.StackStore}get actionConfigs(){return f.default}get detailInfos(){return[{title:t("Name"),dataIndex:"stack_name"},{title:t("Stack Status"),dataIndex:"stack_status",render:e=>o.stackStatus[e]||e},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"creation_time",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_time",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:d.default},{title:t("Stack Resources"),key:"resource",component:c.default},{title:t("Stack Events"),key:"event",component:m.default},{title:t("YAML File"),key:"template",component:p.default}]}}a.StackDetail=v;var h=(0,l.inject)("rootStore")((0,l.observer)(v));a.default=h},3912:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(62)),s=i(r(35)),u=i(r(0)),o=r(382),d=i(r(1122)),c=r(1163);class m extends d.default{get leftCards(){return[this.startCard,this.outputCard]}get rightCards(){return[this.paramCard]}get outputCard(){var{outputs:e={}}=this.detailData,a=(0,l.default)(e).call(e,(e=>{var{output_key:t,output_value:a,description:r}=e;return{label:t,dataIndex:t,copyable:!1,render:()=>u.default.createElement("div",null,u.default.createElement("div",null,a),u.default.createElement("div",null,r))}}));return{title:t("Outputs"),options:a}}get paramCard(){var e,{parameters:a={}}=this.detailData,r=(0,l.default)(e=(0,s.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Deployment Parameters"),options:r}}get startCard(){var e=[{label:t("Timeout(Minute)"),dataIndex:"timeout_mins"},{label:t("Fail Rollback"),dataIndex:"disable_rollback",tooltip:c.rollbackTip,render:e=>e?t("Disable"):t("Enable")}];return{title:t("Startup Parameters"),options:e}}}a.BaseDetail=m;var p=(0,o.inject)("rootStore")((0,o.observer)(m));a.default=p},3913:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Resource=void 0;var l=i(r(101)),s=i(r(37)),u=r(382),o=i(r(1114)),d=r(3914),c=r(1163);class m extends o.default{constructor(){super(...arguments),(0,s.default)(this,"getResourceUrl",((e,t)=>{var a;if(!e)return"-";var{resource_type:r}=t,n=(0,l.default)(a=this.resourceMap).call(a,(e=>e.key===r));if(!n)return e;var{isAdmin:i,routeName:s}=n,u=this.getLinkRender(s,e,{id:e});return i?this.isAdminPage?u:e:s?u:e})),(0,s.default)(this,"getColumns",(()=>[{title:t("Stack Resource"),dataIndex:"logical_resource_id"},{title:t("Resource"),dataIndex:"physical_resource_id",render:(e,t)=>this.getResourceUrl(e,t)},{title:t("Stack Resource Type"),dataIndex:"resource_type"},{title:t("Created At"),dataIndex:"creation_time",isHideable:!0,valueRender:"sinceTime"},{title:t("Resource Status"),dataIndex:"resource_status",isHideable:!0,render:e=>c.stackStatus[e]||e},{title:t("Resource Status Reason"),dataIndex:"resource_status_reason",isStatus:!1,isHideable:!0,width:300}]))}init(){this.store=new d.StackResourceStore}get policy(){return"resource:index"}get name(){return t("stack resources")}get hideSearch(){return!0}get resourceMap(){return[{key:"OS::Cinder::EncryptedVolumeType",isAdmin:!0,routeName:"volumeTypeDetail"},{key:"OS::Cinder::QoSAssociation",isAdmin:!0,routeName:"volumeTypeQosDetail"},{key:"OS::Cinder::QoSSpecs",isAdmin:!0,routeName:"volumeTypeQosDetail"},{key:"OS::Cinder::Volume",routeName:"volumeDetail"},{key:"OS::Cinder::VolumeType",isAdmin:!0,routeName:"volumeTypeDetail"},{key:"OS::Glance::WebImage",routeName:"imageDetail"},{key:"OS::Heat::Stack",routeName:"stackDetail"},{key:"OS::Ironic::Port",routeName:"virtualAdapterDetail"},{key:"OS::Keystone::Domain",routeName:"domainDetail",isAdmin:!0},{key:"OS::Keystone::Group",routeName:"userGroupDetail",isAdmin:!0},{key:"OS::Keystone::Project",routeName:"projectDetail",isAdmin:!0},{key:"OS::Keystone::Role",routeName:"roleDetail",isAdmin:!0},{key:"OS::Keystone::User",routeName:"userDetail",isAdmin:!0},{key:"OS::Neutron::FloatingIP",routeName:"fipDetail"},{key:"OS::Neutron::LBaaS::LoadBalancer",routeName:"lbDetail"},{key:"OS::Neutron::Net",routeName:"networkDetail"},{key:"OS::Neutron::Port",routeName:"virtualAdapterDetail"},{key:"OS::Neutron::QoSPolicy",routeName:"networkQosDetail"},{key:"OS::Neutron::Router",routeName:"routerDetail"},{key:"OS::Neutron::SecurityGroup",routeName:"securityGroupDetail"},{key:"OS::Nova::Flavor",isAdmin:!0,routeName:"flavorDetail"},{key:"OS::Nova::KeyPair",routeName:"keypairDetail"},{key:"OS::Nova::Server",routeName:"instanceDetail"},{key:"OS::Nova::ServerGroup",routeName:"serverGroupDetail"},{key:"OS::Octavia::LoadBalancer",routeName:"lbDetail"}]}}a.Resource=m;var p=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=p},3914:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.StackResourceStore=void 0;var i=n(a(49)),l=n(a(54));class s extends l.default{get client(){return i.default.heat.stacks}get responseKey(){return"resource"}listFetchByClient(e,t){var{id:a,name:r}=t;return this.client.resources({id:a,name:r},e)}get paramsFunc(){return()=>{}}}t.StackResourceStore=s;var u=new s;t.default=u},3915:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Event=void 0;var l=i(r(37)),s=i(r(0)),u=r(382),o=i(r(1114)),d=r(3916),c=r(1163);class m extends o.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Event Time"),dataIndex:"event_time",valueRender:"toLocalTime"},{title:t("Stack Resource"),dataIndex:"logical_resource_id",render:e=>s.default.createElement("div",{style:{wordWrap:"break-word",wordBreak:"break-word"}},e)},{title:t("Resource"),dataIndex:"physical_resource_id",render:e=>s.default.createElement("div",{style:{wordWrap:"break-word",wordBreak:"break-word"}},e)},{title:t("Resource Status"),dataIndex:"resource_status",isHideable:!0,render:e=>c.stackStatus[e]||e},{title:t("Resource Status Reason"),dataIndex:"resource_status_reason",isHideable:!0,isStatus:!1,width:300}]))}init(){this.store=new d.StackEventStore}get policy(){return"events:index"}get aliasPolicy(){return"heat:events:index"}get name(){return t("stack events")}get hideSearch(){return!0}}a.Event=m;var p=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=p},3916:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.StackEventStore=void 0;var i=n(a(49)),l=n(a(54));class s extends l.default{get client(){return i.default.heat.stacks}get responseKey(){return"event"}listFetchByClient(e,t){var{id:a,name:r}=t;return this.client.events({id:a,name:r},e)}get paramsFunc(){return()=>{}}}t.StackEventStore=s;var u=new s;t.default=u},3917:function(e,t,a){"use strict";var r=a(156),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=t.Template=void 0,a(1146);var s=l(a(1147)),u=l(a(37)),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 r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var u=l?i(e,s):null;u&&(u.get||u.set)?n(r,s,u):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),d=a(382),c=a(545),m=l(a(1285)),p=(a(167),l(a(1234)));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 v extends o.Component{constructor(e){super(e),(0,u.default)(this,"fetchData",(()=>{this.store.getTemplate(this.params)})),(0,u.default)(this,"renderContent",(()=>{var{template:e}=this.store,t={value:m.default.dump(e),mode:"yaml",options:{readOnly:!0}};return o.default.createElement(p.default,t)})),this.store=new c.StackStore}componentDidMount(){this.fetchData()}get params(){var{params:e}=this.props.match;return e}render(){return o.default.createElement(s.default,{style:{marginLeft:16,marginRight:16}},this.renderContent())}}t.Template=v;var h=(0,d.inject)("rootStore")((0,d.observer)(v));t.default=h}}]); \ No newline at end of file diff --git a/skyline_console/static/heat.bundle.1658297502.js.gz b/skyline_console/static/heat.bundle.1658297502.js.gz deleted file mode 100644 index c8d97d0c..00000000 Binary files a/skyline_console/static/heat.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/heat.bundle.1663167892.js b/skyline_console/static/heat.bundle.1663167892.js new file mode 100644 index 00000000..7e257ebf --- /dev/null +++ b/skyline_console/static/heat.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{1414:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StepCreate=void 0;var l=i(r(65)),s=i(r(90)),u=i(r(51)),o=i(r(62)),d=i(r(36)),c=r(406),m=r(1193),p=i(r(587)),f=r(1245),v=r(34),h=i(r(4011)),k=i(r(4012));class g extends m.StepAction{constructor(){super(...arguments),(0,d.default)(this,"onSubmit",(e=>{var{params:t,content:a,rollback:r,name:n,timeout_mins:i}=e,l=(0,o.default)(e,["params","content","rollback","name","timeout_mins"]),s={stack_name:n,disable_rollback:!r,timeout_mins:i,template:(0,f.getYaml)(a),parameters:l};if(this.isEdit){var{stack_name:u}=s,d=(0,o.default)(s,["stack_name"]);return this.store.edit(this.params,d)}return this.store.create(s)}))}static allowed(){return l.default.resolve(!0)}get listUrl(){return this.getRoutePath("stack")}get name(){return this.isEdit?t("update template"):t("create stack")}get hasConfirmStep(){return!1}get hasExtraProps(){return this.isEdit}get isEdit(){var{pathname:e}=this.props.location;return(0,s.default)(e).call(e,"edit")>=0}get params(){var{id:e,name:t}=this.props.match.params;return{id:e,name:t}}get steps(){return[{title:t("Prepare Template"),component:k.default},{title:t("Orchestration information"),component:h.default}]}init(){this.store=p.default,this.getDetail()}getDetail(){var e=this;return(0,u.default)((function*(){if(e.isEdit){var t=yield p.default.fetchDetail(e.params);e.setState({extra:(0,v.toJS)(t)})}}))()}}a.StepCreate=g,(0,d.default)(g,"id","stack-create"),(0,d.default)(g,"title",t("Create Stack")),(0,d.default)(g,"path",((e,t)=>{var{isAdminPage:a}=t;return a?"/heat/stack-admin/create":"/heat/stack/create"})),(0,d.default)(g,"policy","stacks:create");var y=(0,c.inject)("rootStore")((0,c.observer)(g));a.default=y},1602:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(4010)),l=n(a(1414)),s=n(a(4013)),u=n(a(4014)),o={rowActions:{firstAction:i.default,moreActions:[{action:s.default},{action:u.default}]},batchActions:[i.default],primaryActions:[l.default]};t.default=o},4007:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(413)),l=n(a(4008)),s=e=>(0,i.default)(l.default,e);t.default=s},4008:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=n(a(1212)),l=n(a(567)),s=n(a(4009)),u=n(a(4015)),o=n(a(1414)),d="/heat",c=[{path:d,component:i.default,routes:[{path:"".concat(d,"/stack"),component:s.default,exact:!0},{path:"".concat(d,"/stack/create"),component:o.default,exact:!0},{path:"".concat(d,"/stack/edit/:id/:name"),component:o.default,exact:!0},{path:"".concat(d,"/stack/detail/:id/:name"),component:u.default,exact:!0},{path:"*",component:l.default}]}];t.default=c},4009:function(e,a,r){"use strict";var n=r(160),i=r(19),l=r(25),s=r(21);i(a,"__esModule",{value:!0}),a.default=a.Stack=void 0;var u=s(r(57)),o=s(r(36)),d=r(406),c=s(r(1194)),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 r={},n=i&&l;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var u=n?l(e,s):null;u&&(u.get||u.set)?i(r,s,u):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(r(587)),p=r(1245),f=s(r(1602));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 h extends c.default{constructor(){super(...arguments),(0,o.default)(this,"getColumns",(()=>[{title:t("ID/Name"),dataIndex:"stack_name",routeName:this.getRouteName("stackDetail"),routeParamsFunc:e=>({id:e.id,name:e.stack_name}),isLink:!0},{title:t("Project ID/Name"),dataIndex:"project_name",isHideable:!0,hidden:!this.isAdminPage,sorter:!1},{title:t("Stack Status"),dataIndex:"stack_status",isHideable:!0,valueMap:p.stackStatus},{title:t("Created At"),dataIndex:"creation_time",isHideable:!0,valueRender:"sinceTime"},{title:t("Updated At"),dataIndex:"updated_time",isHideable:!0,valueRender:"sinceTime"}]))}init(){this.store=m.default,this.downloadStore=new m.StackStore}get policy(){return this.isAdminPage?"stacks:global_index":"stacks:index"}get name(){return t("stacks")}get isFilterByBackend(){return!0}get isSortByBackend(){return!0}get defaultSortKey(){return"creation_time"}get adminPageHasProjectFilter(){return!0}get projectFilterKey(){return"tenant"}get actionConfigs(){return f.default}get searchFilters(){var e=["CREATE_COMPLETE","CREATE_FAILED","ROLLBACK_COMPLETE","ROLLBACK_FAILED","UPDATE_COMPLETE","UPDATE_FAILED","DELETE_COMPLETE","DELETE_FAILED"],a=(0,u.default)(e).call(e,(e=>({key:e,label:p.stackStatus[e]})));return[{label:t("ID"),name:"id"},{label:t("Name"),name:"name"},{label:t("Stack Status"),name:"status",options:a}]}}a.Stack=h;var k=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=k},4010:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),s=i(r(0)),u=r(1193),o=i(r(587));class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","stacks:delete"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return s.default.createElement("div",null,s.default.createElement("p",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a}))),s.default.createElement("p",null,t("Deleting this stack will delete all resources deployed by the stack.")))})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,name:a}=e||this.item;return o.default.delete({id:t,name:a})}))}get id(){return"delete"}get title(){return t("Delete")}get actionName(){return t("delete stack")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},4011:function(e,a,r){"use strict";var n=r(33),i=r(44),l=r(32),s=r(25),u=r(27),o=r(45),d=r(46),c=r(19),m=r(21);c(a,"__esModule",{value:!0}),a.default=a.Parameter=void 0;var p=m(r(36)),f=r(406),v=m(r(1201)),h=r(1245);function k(e,t){var a=n(e);if(i){var r=i(e);t&&(r=l(r).call(r,(function(t){return s(e,t).enumerable}))),a.push.apply(a,r)}return a}function g(e){for(var t=1;t{var{isAdminPage:a}=t,r=a?"stackEditAdmin":"stackEdit",{id:n,stack_name:i}=e;return(0,o.getPath)({key:r,params:{id:n,name:i}})})),(0,s.default)(c,"policy","stacks:update");var m=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=m},4014:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=void 0;var l=i(r(36)),s=i(r(0)),u=r(1193),o=i(r(587));class d extends u.ConfirmAction{constructor(){super(...arguments),(0,l.default)(this,"policy","stacks:abandon"),(0,l.default)(this,"allowedCheckFunc",(e=>!0)),(0,l.default)(this,"confirmContext",(e=>{var a=this.getName(e);return s.default.createElement("div",null,s.default.createElement("p",null,this.unescape(t("Are you sure to {action} (instance: {name})?",{action:this.actionNameDisplay||this.title,name:a}))),s.default.createElement("p",null,t("Abandoning this stack will preserve the resources deployed by the stack.")))})),(0,l.default)(this,"onSubmit",(e=>{var{id:t,name:a}=e||this.item;return o.default.abandon({id:t,name:a})}))}get id(){return"abandon"}get title(){return t("Abandon Stack")}get actionName(){return t("abandon stack")}get isDanger(){return!0}get isAsyncAction(){return!0}}a.default=d},4015:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.StackDetail=void 0;var l=r(406),s=i(r(1200)),u=r(587),o=r(1245),d=i(r(4016)),c=i(r(4017)),m=i(r(4019)),p=i(r(4021)),f=i(r(1602));class v extends s.default{get name(){return t("stack")}get policy(){return"stacks:show"}get listUrl(){return this.getRoutePath("stack")}init(){this.store=new u.StackStore}get actionConfigs(){return f.default}get detailInfos(){return[{title:t("Name"),dataIndex:"stack_name"},{title:t("Stack Status"),dataIndex:"stack_status",valueMap:o.stackStatus},{title:t("Description"),dataIndex:"description"},{title:t("Created At"),dataIndex:"creation_time",valueRender:"toLocalTime"},{title:t("Updated At"),dataIndex:"updated_time",valueRender:"toLocalTime"}]}get tabs(){return[{title:t("Detail"),key:"detail",component:d.default},{title:t("Stack Resources"),key:"resource",component:c.default},{title:t("Stack Events"),key:"event",component:m.default},{title:t("YAML File"),key:"template",component:p.default}]}}a.StackDetail=v;var h=(0,l.inject)("rootStore")((0,l.observer)(v));a.default=h},4016:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var l=i(r(57)),s=i(r(33)),u=i(r(0)),o=r(406),d=i(r(1202)),c=r(1245);class m extends d.default{get leftCards(){return[this.startCard,this.outputCard]}get rightCards(){return[this.paramCard]}get outputCard(){var{outputs:e={}}=this.detailData,a=(0,l.default)(e).call(e,(e=>{var{output_key:t,output_value:a,description:r}=e;return{label:t,dataIndex:t,copyable:!1,render:()=>u.default.createElement("div",null,u.default.createElement("div",null,a),u.default.createElement("div",null,r))}}));return{title:t("Outputs"),options:a}}get paramCard(){var e,{parameters:a={}}=this.detailData,r=(0,l.default)(e=(0,s.default)(a)).call(e,(e=>({label:e,dataIndex:e,render:()=>a[e]})));return{title:t("Deployment Parameters"),options:r}}get startCard(){var e=[{label:t("Timeout(Minute)"),dataIndex:"timeout_mins"},{label:t("Fail Rollback"),dataIndex:"disable_rollback",tooltip:c.rollbackTip,render:e=>e?t("Disable"):t("Enable")}];return{title:t("Startup Parameters"),options:e}}}a.BaseDetail=m;var p=(0,o.inject)("rootStore")((0,o.observer)(m));a.default=p},4017:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Resource=void 0;var l=i(r(102)),s=i(r(36)),u=r(406),o=i(r(1194)),d=r(4018),c=r(1245);class m extends o.default{constructor(){super(...arguments),(0,s.default)(this,"getResourceUrl",((e,t)=>{var a;if(!e)return"-";var{resource_type:r}=t,n=(0,l.default)(a=this.resourceMap).call(a,(e=>e.key===r));if(!n)return e;var{isAdmin:i,routeName:s}=n,u=this.getLinkRender(s,e,{id:e});return i?this.isAdminPage?u:e:s?u:e})),(0,s.default)(this,"getColumns",(()=>[{title:t("Stack Resource"),dataIndex:"logical_resource_id"},{title:t("Resource"),dataIndex:"physical_resource_id",render:(e,t)=>this.getResourceUrl(e,t)},{title:t("Stack Resource Type"),dataIndex:"resource_type"},{title:t("Created At"),dataIndex:"creation_time",isHideable:!0,valueRender:"sinceTime"},{title:t("Resource Status"),dataIndex:"resource_status",isHideable:!0,valueMap:c.stackStatus},{title:t("Resource Status Reason"),dataIndex:"resource_status_reason",isStatus:!1,isHideable:!0,width:300}]))}init(){this.store=new d.StackResourceStore}get policy(){return"resource:index"}get name(){return t("stack resources")}get hideSearch(){return!0}get resourceMap(){return[{key:"OS::Cinder::EncryptedVolumeType",isAdmin:!0,routeName:"volumeTypeDetail"},{key:"OS::Cinder::QoSAssociation",isAdmin:!0,routeName:"volumeTypeQosDetail"},{key:"OS::Cinder::QoSSpecs",isAdmin:!0,routeName:"volumeTypeQosDetail"},{key:"OS::Cinder::Volume",routeName:"volumeDetail"},{key:"OS::Cinder::VolumeType",isAdmin:!0,routeName:"volumeTypeDetail"},{key:"OS::Glance::WebImage",routeName:"imageDetail"},{key:"OS::Heat::Stack",routeName:"stackDetail"},{key:"OS::Ironic::Port",routeName:"portDetail"},{key:"OS::Keystone::Domain",routeName:"domainDetail",isAdmin:!0},{key:"OS::Keystone::Group",routeName:"userGroupDetail",isAdmin:!0},{key:"OS::Keystone::Project",routeName:"projectDetail",isAdmin:!0},{key:"OS::Keystone::Role",routeName:"roleDetail",isAdmin:!0},{key:"OS::Keystone::User",routeName:"userDetail",isAdmin:!0},{key:"OS::Neutron::FloatingIP",routeName:"fipDetail"},{key:"OS::Neutron::LBaaS::LoadBalancer",routeName:"lbDetail"},{key:"OS::Neutron::Net",routeName:"networkDetail"},{key:"OS::Neutron::Port",routeName:"portDetail"},{key:"OS::Neutron::QoSPolicy",routeName:"networkQosDetail"},{key:"OS::Neutron::Router",routeName:"routerDetail"},{key:"OS::Neutron::SecurityGroup",routeName:"securityGroupDetail"},{key:"OS::Nova::Flavor",isAdmin:!0,routeName:"flavorDetail"},{key:"OS::Nova::KeyPair",routeName:"keypairDetail"},{key:"OS::Nova::Server",routeName:"instanceDetail"},{key:"OS::Nova::ServerGroup",routeName:"serverGroupDetail"},{key:"OS::Octavia::LoadBalancer",routeName:"lbDetail"}]}}a.Resource=m;var p=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=p},4018:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.StackResourceStore=void 0;var i=n(a(48)),l=n(a(53));class s extends l.default{get client(){return i.default.heat.stacks}get responseKey(){return"resource"}listFetchByClient(e,t){var{id:a,name:r}=t;return this.client.resources({id:a,name:r},e)}get paramsFunc(){return()=>{}}}t.StackResourceStore=s;var u=new s;t.default=u},4019:function(e,a,r){"use strict";var n=r(19),i=r(21);n(a,"__esModule",{value:!0}),a.default=a.Event=void 0;var l=i(r(36)),s=i(r(0)),u=r(406),o=i(r(1194)),d=r(4020),c=r(1245);class m extends o.default{constructor(){super(...arguments),(0,l.default)(this,"getColumns",(()=>[{title:t("Event Time"),dataIndex:"event_time",valueRender:"toLocalTime"},{title:t("Stack Resource"),dataIndex:"logical_resource_id",render:e=>s.default.createElement("div",{style:{wordWrap:"break-word",wordBreak:"break-word"}},e)},{title:t("Resource"),dataIndex:"physical_resource_id",render:e=>s.default.createElement("div",{style:{wordWrap:"break-word",wordBreak:"break-word"}},e)},{title:t("Resource Status"),dataIndex:"resource_status",isHideable:!0,valueMap:c.stackStatus},{title:t("Resource Status Reason"),dataIndex:"resource_status_reason",isHideable:!0,isStatus:!1,width:300}]))}init(){this.store=new d.StackEventStore}get policy(){return"events:index"}get aliasPolicy(){return"heat:events:index"}get name(){return t("stack events")}get hideSearch(){return!0}}a.Event=m;var p=(0,u.inject)("rootStore")((0,u.observer)(m));a.default=p},4020:function(e,t,a){"use strict";var r=a(19),n=a(21);r(t,"__esModule",{value:!0}),t.default=t.StackEventStore=void 0;var i=n(a(48)),l=n(a(53));class s extends l.default{get client(){return i.default.heat.stacks}get responseKey(){return"event"}listFetchByClient(e,t){var{id:a,name:r}=t;return this.client.events({id:a,name:r},e)}get paramsFunc(){return()=>{}}}t.StackEventStore=s;var u=new s;t.default=u},4021:function(e,t,a){"use strict";var r=a(160),n=a(19),i=a(25),l=a(21);n(t,"__esModule",{value:!0}),t.default=t.Template=void 0,a(1229);var s=l(a(1230)),u=l(a(36)),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 r={},l=n&&i;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var u=l?i(e,s):null;u&&(u.get||u.set)?n(r,s,u):r[s]=e[s]}r.default=e,a&&a.set(e,r);return r}(a(0)),d=a(406),c=a(587),m=l(a(1369)),p=(a(173),l(a(1316)));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 v extends o.Component{constructor(e){super(e),(0,u.default)(this,"fetchData",(()=>{this.store.getTemplate(this.params)})),(0,u.default)(this,"renderContent",(()=>{var{template:e}=this.store,t={value:m.default.dump(e),mode:"yaml",options:{readOnly:!0}};return o.default.createElement(p.default,t)})),this.store=new c.StackStore}componentDidMount(){this.fetchData()}get params(){var{params:e}=this.props.match;return e}render(){return o.default.createElement(s.default,{style:{marginLeft:16,marginRight:16}},this.renderContent())}}t.Template=v;var h=(0,d.inject)("rootStore")((0,d.observer)(v));t.default=h}}]); \ No newline at end of file diff --git a/skyline_console/static/heat.bundle.1663167892.js.gz b/skyline_console/static/heat.bundle.1663167892.js.gz new file mode 100644 index 00000000..0ecb0f0d Binary files /dev/null and b/skyline_console/static/heat.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/identity.bundle.1658297502.js b/skyline_console/static/identity.bundle.1658297502.js deleted file mode 100644 index cb41ebb2..00000000 --- a/skyline_console/static/identity.bundle.1658297502.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{1138:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.transferFilterOption=a.nameDomainColumns=a.enabledColumn=a.getDomainFormItem=a.getCheckedOptions=a.getDomainOptions=a.statusTypes=void 0,r(548);var n=i(r(549)),o=i(r(33)),u=i(r(91)),s=i(r(62)),d=i(r(219)),c=i(r(0)),f=(r(167),i(r(1148))),p=i(r(136)),m=[{label:t("Enable"),value:!0},{label:t("Forbidden"),value:!1}];a.statusTypes=m;var h=e=>{var t,{baseDomains:a}=p.default,{domains:r}=f.default,l=(0,o.default)(t=r||[]).call(t,(t=>-1===(0,u.default)(a).call(a,t.name)||t.id===(e.item||{}).domain_id));return(0,s.default)(l).call(l,(e=>({label:e.name,value:e.id,key:e.id})))};a.getDomainOptions=h;var v=()=>{var e,{domains:t}=f.default;return(0,s.default)(e=t||[]).call(e,(e=>({label:e.name,value:e.id,key:e.id})))};a.getCheckedOptions=v;a.getDomainFormItem=e=>({name:"domain_id",label:t("Affiliated Domain"),type:"select",checkOptions:v(),checkBoxInfo:t("Show All Domain"),options:h(e),allowClear:!1,onChange:t=>{e.setState({domain:t})},required:!0});var g={title:t("Enabled"),dataIndex:"enabled",isHideable:!0,render:e=>!0===e?c.default.createElement(n.default,{color:"green",text:t("Yes")}):c.default.createElement(n.default,{color:"red",text:t("No")}),stringify:e=>e?t("Yes"):t("No")};a.enabledColumn=g;var b=[{dataIndex:"name",title:t("Name")},{dataIndex:"domainName",title:t("Domain")}];a.nameDomainColumns=b;a.transferFilterOption=(e,t)=>{var{domainName:a,name:r}=t;return(0,d.default)(r).call(r,e)||(0,d.default)(a).call(a,e)}},1148:function(e,t,a){"use strict";var r=a(35),l=a(44),i=a(33),n=a(25),o=a(28),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.DomainStore=void 0;var f,p,m=c(a(65)),h=c(a(62)),v=c(a(33)),g=c(a(25)),b=c(a(52)),y=c(a(72)),j=c(a(37)),_=c(a(55)),D=(c(a(73)),a(32)),S=c(a(49)),x=c(a(54));function C(e,t){var a=r(e);if(l){var o=l(e);t&&(o=i(o).call(o,(function(t){return n(e,t).enumerable}))),a.push.apply(a,o)}return a}function R(e){for(var t=1;t{var t,i,n,o=(0,v.default)(t=a.users||[]).call(t,(t=>t.domain_id===e.id)),u=(0,v.default)(i=r.projects||[]).call(i,(t=>t.domain_id===e.id)),s=(0,v.default)(n=l.groups||[]).call(n,(t=>t.domain_id===e.id));return R(R({},e),{},{users:o,userCount:o.length,projects:u,projectCount:u.length,groups:s,groupCount:s.length})}))}))()}detailDidFetch(e){var t=this;return(0,b.default)((function*(){var{id:a}=e,[r,l,i]=yield m.default.all([t.userClient.list({domain_id:a}),t.projectClient.list({domain_id:a}),t.userGroupClient.list({domain_id:a})]),{users:n=[]}=r||{},{projects:o=[]}=l||{},{groups:u=[]}=i||{};return R(R({},e),{},{users:n,userCount:n.length,projects:o,projectCount:o.length,groups:u,groupCount:u.length})}))()}fetchDomain(){var e=this;return(0,b.default)((function*(){var t=yield e.client.list();e.domains=t.domains}))()}edit(e){var t=this;return(0,b.default)((function*(){var{id:a,description:r}=e,l={domain:{description:r}};return t.submitting(t.client.patch(a,l))}))()}forbidden(e){var t=this;return(0,b.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{domain:{enabled:!1}}))}))()}enable(e){var t=this;return(0,b.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{domain:{enabled:!0}}))}))()}},p=(0,_.default)(f.prototype,"domains",[D.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,_.default)(f.prototype,"fetchDomain",[D.action],(0,g.default)(f.prototype,"fetchDomain"),f.prototype),(0,_.default)(f.prototype,"edit",[D.action],(0,g.default)(f.prototype,"edit"),f.prototype),(0,_.default)(f.prototype,"forbidden",[D.action],(0,g.default)(f.prototype,"forbidden"),f.prototype),(0,_.default)(f.prototype,"enable",[D.action],(0,g.default)(f.prototype,"enable"),f.prototype),f);t.DomainStore=w;var I=new w;t.default=I},1162:function(e,t,a){"use strict";var r=a(35),l=a(44),i=a(33),n=a(25),o=a(28),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.RoleStore=void 0;var f,p,m,h=c(a(33)),v=c(a(25)),g=c(a(52)),b=c(a(72)),y=c(a(37)),j=c(a(55)),_=(c(a(73)),a(32)),D=c(a(49)),S=c(a(54)),x=c(a(403));function C(e,t){var a=r(e);if(l){var o=l(e);t&&(o=i(o).call(o,(function(t){return n(e,t).enumerable}))),a.push.apply(a,o)}return a}function R(e){for(var t=1;t"admin"===e.name||"reader"===e.name))}get client(){return D.default.keystone.roles}detailDidFetch(e){var t=this;return(0,g.default)((function*(){var{id:a}=e,{role_inference:{implies:r=[]}={}}=yield t.client.implies.list(a);return R(R({},e),{},{implies:r})}))()}fetchSystemRoles(){var e=this;return(0,g.default)((function*(){e.systemRoles.isLoading=!0;var t=yield e.client.list(),{roles:a=[]}=t,r=(0,h.default)(a).call(a,(t=>e.checkSystemRole(t)));return e.systemRoles.data=r,e.systemRoles.isLoading=!1,r}))()}update(e,t){var{id:a}=e,r={};return r[this.responseKey]=t,this.submitting(this.client.patch(a,r))}},p=(0,j.default)(f.prototype,"implyRoles",[_.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),m=(0,j.default)(f.prototype,"systemRoles",[_.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new x.default}}),(0,j.default)(f.prototype,"fetchSystemRoles",[_.action],(0,v.default)(f.prototype,"fetchSystemRoles"),f.prototype),(0,j.default)(f.prototype,"update",[_.action],(0,v.default)(f.prototype,"update"),f.prototype),f);t.RoleStore=w;var I=new w;t.default=I},1224:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.User=void 0;var m=p(r(219)),h=p(r(62)),v=p(r(1252)),g=p(r(33)),b=p(r(37)),y=p(r(0)),j=r(382),_=p(r(1114)),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=R(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(1126)),S=r(319),x=r(1138),C=p(r(1498));function R(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(R=function(e){return e?a:t})(e)}function w(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends _.default{constructor(){super(...arguments),(0,b.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var a,{projects:r}=t;return(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t=[]}=e||{};return(0,h.default)(t).call(t,(e=>y.default.createElement("div",{key:e.id},e.name)))}))},stringify:(e,t)=>{var a,{projects:r}=t;return(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t=[]}=e||{};return(0,h.default)(t).call(t,(e=>e.name)).join(", ")}))}},{title:t("Project Scope"),dataIndex:"projects",isHideable:!0,render:e=>{var t;return(0,h.default)(t=(0,v.default)(e)).call(t,(e=>{var{project:{id:t,name:a}}=e,r=this.getLinkRender("projectDetail",a,{id:t});return y.default.createElement("div",{key:t},r)}))},stringify:e=>{var t;return(0,h.default)(t=(0,v.default)(e)).call(t,(e=>{var{project:t}=e;return t.name})).join("; ")}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},{title:t("System Roles"),dataIndex:"systemRoles",render:e=>{var t;return(0,h.default)(t=e||[]).call(t,(e=>y.default.createElement("div",{key:e.id},e.name)))},stringify:e=>{var t;return(0,h.default)(t=e||[]).call(t,(e=>e.name)).join("; ")}},{title:t("Email"),dataIndex:"email",isHideable:!0},{title:t("phone"),dataIndex:"phone",isHideable:!0},x.enabledColumn]}getColumns(){var e=this.getBaseColumns();return!this.inDetailPage||this.inUserGroupDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projectRoles","projects"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["domainName","projects","projectRoles"]).call(t,e.dataIndex)})):this.inRoleDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projectRoles"]).call(t,e.dataIndex)})):this.inProjectDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?S.emptyActionConfig:C.default}get searchFilters(){return[{label:t("User Name"),name:"name"},{label:t("Real Name"),name:"real_name"},{label:t("Enabled"),name:"enabled",options:S.yesNoOptions}]}}a.User=I;var P=(0,j.inject)("rootStore")((0,j.observer)(I));a.default=P},1225:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.roleFilterOption=t.editable=void 0;var i=l(a(219));t.editable=e=>{var{options:{immutable:t}={}}=e||{};return!t&&"true"!==t&&"True"!==t};t.roleFilterOption=(e,t)=>{var a,{label:r=""}=t;return(0,i.default)(a=r.toLowerCase()).call(a,(e||"").toLowerCase())}},1226:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.UserGroups=void 0;var m=p(r(219)),h=p(r(62)),v=p(r(35)),g=p(r(82)),b=p(r(33));r(1189);var y=p(r(1190)),j=p(r(37)),_=p(r(0)),D=r(382),S=p(r(1114)),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=I(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(1156)),C=(r(167),r(319)),R=r(47),w=p(r(1501));function I(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(I=function(e){return e?a:t})(e)}function P(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class U extends S.default{constructor(){super(...arguments),(0,j.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var t;return(0,R.isEmpty)(e)?"-":(0,h.default)(t=(0,v.default)(e)).call(t,(t=>{var{project:a,roles:r}=e[t],l=(0,h.default)(r).call(r,(e=>e.name)).join(", "),{id:i,name:n}=a,o=this.getLinkRender("projectDetail",n,{id:i},{tab:"userGroup"});return _.default.createElement("div",{key:t},_.default.createElement(y.default.Text,{strong:!0},o),": ",l)}))},stringify:e=>{var t;return(0,R.isEmpty)(e)?"-":(0,h.default)(t=(0,v.default)(e)).call(t,(t=>{var a,{project:r,roles:l}=e[t],i=(0,h.default)(l).call(l,(e=>e.name)).join("|");return(0,g.default)(a="".concat(r.name,": ")).call(a,i)})).join(";")}},{title:t("Roles"),dataIndex:"rolesInProjectDetailPage",isHideable:!0,render:(e,t)=>{var a,{projects:r={}}=t;return(0,R.isEmpty)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t}=r[e];return(0,h.default)(t).call(t,(e=>{var{id:t,name:a}=e,r=this.getLinkRender("roleDetail",a,{id:t},{tab:"group"});return _.default.createElement("div",{key:t},r)}))}))},stringify:(e,t)=>{var a,{projects:r={}}=t;return(0,R.isEmpty)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t}=r[e];return(0,h.default)(t).call(t,(e=>e.name)).join(";")}))}},{title:t("Project Scope"),dataIndex:"projectsInRoleDetailPage",isHideable:!0,render:(e,t)=>{var a,{projects:r={}}=t;return(0,R.isEmpty)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{project:t}=r[e],{id:a,name:l}=t,i=this.getLinkRender("projectDetail",l,{id:a},{tab:"userGroup"});return _.default.createElement("div",{key:a},i)}))},stringify:(e,t)=>{var a,{projects:r={}}=t;return(0,R.isEmpty)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{project:t}=r[e];return t.name})).join(";")}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]}getColumns(){var e=this.getBaseColumns();return!this.inDetailPage||this.inUserDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["rolesInProjectDetailPage","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["domainName","rolesInProjectDetailPage","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inProjectDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inRoleDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects","rolesInProjectDetailPage"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?C.emptyActionConfig:w.default}get searchFilters(){return[{label:t("User Group Name"),name:"name"}]}}a.UserGroups=U;var N=(0,D.inject)("rootStore")((0,D.observer)(U));a.default=N},1264:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(156),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Projects=void 0;var m=p(r(28)),h=p(r(35)),v=p(r(33)),g=p(r(219)),b=p(r(101)),y=p(r(62)),j=p(r(82)),_=p(r(320));r(1167);var D=p(r(1168)),S=p(r(37)),x=p(r(0)),C=r(382),R=(r(167),p(r(1114))),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=M(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(384)),I=r(319),P=r(1120),U=r(1138),N=p(r(1504)),T=p(r(3818));function M(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(M=function(e){return e?a:t})(e)}function k(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class E extends R.default{constructor(){super(...arguments),(0,S.default)(this,"getUserProjectRole",(e=>{var t,a,{users:r={},groups:l={}}=e||{},i=[],n=[];return(0,m.default)(t=(0,h.default)(r)).call(t,(e=>{var t=r[e];(0,m.default)(t).call(t,(e=>{n.push({role:e}),i.push(e.id)}))})),(0,m.default)(a=(0,h.default)(l)).call(a,(e=>{var{roles:t,group:a}=l[e],r=(0,v.default)(t).call(t,(e=>!(0,g.default)(i).call(i,e.id)));(0,m.default)(r).call(r,(e=>{var t=(0,b.default)(n).call(n,(t=>t.role.id===e.id));t?t.groups.push(a):n.push({role:e,groups:[a]})}))})),n})),(0,S.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var r=this.getUserProjectRole(a),l=(0,y.default)(r).call(r,(e=>{var{role:{id:a,name:r},groups:l=[]}=e;if(!l.length){var i=this.getLinkRender("roleDetail",r,{id:a},{tab:"user"});return x.default.createElement("div",{key:"user-role-".concat(a)},i)}var n=this.getLinkRender("roleDetail",r,{id:a},{tab:"groups"}),o=(0,y.default)(l).call(l,(e=>{var t=this.getLinkRender("groupDetail",e.name,{id:e.id});return x.default.createElement("span",{style:{marginRight:"8px"}},t)}));return x.default.createElement("div",{key:"group-role-".concat(a)},n," (",t("authorized by group "),o,")")}));return x.default.createElement("div",null,l)},stringify:(e,a)=>{var r=this.getUserProjectRole(a);return(0,y.default)(r).call(r,(e=>{var a,r,{role:{name:l},groups:i=[]}=e;if(!i.length)return l;var n=(0,y.default)(i).call(i,(e=>e.name)).join("; ");return(0,j.default)(a=(0,j.default)(r="".concat(l," (")).call(r,t("authorized by group "))).call(a,n,")")})).join("; ")}},a={title:t("Role"),dataIndex:"groupProjectRole",render:(e,t)=>{var a,{groups:r={}}=t;return(0,y.default)(a=(0,h.default)(r)).call(a,(e=>{var t=r[e];return(0,y.default)(t).call(t,(t=>{var a,{id:r,name:l}=t,i=this.getLinkRender("roleDetail",l,{id:r},{tab:"group"});return x.default.createElement("div",{key:(0,j.default)(a="".concat(e,"-")).call(a,r)},i)}))}))},stringify:(e,t)=>{var a,{groups:r={}}=t;return(0,y.default)(a=(0,h.default)(r)).call(a,(e=>{var t=r[e];return(0,y.default)(t).call(t,(e=>e.name)).join(" ; ")}))}};return[{title:t("Project ID/Name"),dataIndex:"name",routeName:"projectDetailAdmin"},e,a,{title:t("Member Num"),dataIndex:"num",isHideable:!0,render:(e,a)=>{var{userCount:r,groupCount:l}=a;return x.default.createElement("div",null,x.default.createElement("span",null,t("User Num: "),r),x.default.createElement(D.default,{type:"vertical",className:T.default["header-divider"]}),x.default.createElement("span",null,t("User Group Num: "),l))},stringify:(e,a)=>{var r,l,i,{userCount:n,groupCount:o}=a;return(0,j.default)(r=(0,j.default)(l=(0,j.default)(i="".concat(t("User Num: "))).call(i,n," | ")).call(l,t("User Group Num: "))).call(r,o)}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},U.enabledColumn,{title:t("Tags"),dataIndex:"tags",render:e=>(0,y.default)(e).call(e,((e,t)=>(0,P.SimpleTag)({tag:e,index:t}))),isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]}getColumns(){var e=this.getBaseColumns();return this.inProject?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["userProjectRole","groupProjectRole"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["domainName","userProjectRole","groupProjectRole"]).call(t,e.dataIndex)})):this.inUserDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["num","groupProjectRole"]).call(t,e.dataIndex)})):this.inUserGroupDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["num","userProjectRole"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?I.emptyActionConfig:N.default}get searchFilters(){return[{label:t("Project Name"),name:"name"},{label:t("Enabled"),name:"enabled",options:I.yesNoOptions},{label:t("Tags"),name:"tags",filterFunc:(e,t)=>{var a=t.toLowerCase();return(0,_.default)(e).call(e,(e=>{var t;return(0,g.default)(t=e.toLowerCase()).call(t,a)}))}}]}}a.Projects=E;var G=(0,C.inject)("rootStore")((0,C.observer)(E));a.default=G},1497:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3797)),n=l(a(3798)),o=l(a(3799)),u=l(a(3800)),s=l(a(3801)),d={rowActions:{firstAction:o.default,moreActions:[{action:n.default},{action:u.default},{action:s.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=d},1498:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1499)),n=l(a(3803)),o=l(a(1500)),u=l(a(3804)),s=l(a(3805)),d=l(a(3806)),c=l(a(3807)),f={rowActions:{firstAction:o.default,moreActions:[{action:d.default},{action:c.default},{action:n.default},{action:u.default},{action:s.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=f},1499:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(62)),m=f(r(28)),h=f(r(35)),v=f(r(219)),g=f(r(65)),b=f(r(33)),y=f(r(91)),j=f(r(71)),_=f(r(52));r(519);var D=f(r(388)),S=f(r(37)),x=f(r(0)),C=r(382),R=r(1156),w=f(r(1126)),I=r(1113),P=(r(167),r(384)),U=f(r(1162)),N=f(r(1148)),T=r(514),M=r(1138),k=r(1225);function E(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}function G(e){for(var t=1;t{var t;return(0,p.default)(t=this.projectRoleList||[]).call(t,(t=>({label:t.name,value:t.id,projectId:e})))})),(0,S.default)(this,"defaultRoles",(()=>[(this.projectRoleList[0]||{}).id])),(0,S.default)(this,"onSelectChange",((e,t,a)=>{var{projectRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]=[],this.setState({projectRoles:r})})),(0,S.default)(this,"renderSelect",(e=>x.default.createElement(D.default,{size:"small",mode:"multiple",options:this.projectRolesList(e),defaultValue:this.defaultRoles(),filterOption:k.roleFilterOption,onChange:(t,a)=>{this.onSelectChange(t,a,e)}}))),(0,S.default)(this,"onChangeProject",(e=>{var t,a,{projectRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles())})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,S.default)(this,"checkName",((e,a)=>{if(!a)return g.default.reject(t("Please input"));var{list:{data:r}}=this.store;return(0,b.default)(r).call(r,(e=>e.name===a))[0]?g.default.reject(t("Invalid: User name can not be duplicated")):g.default.resolve()})),(0,S.default)(this,"onSubmit",function(){var e=(0,_.default)((function*(e){var{projectRoles:t}=a.state;e.defaultRole=a.projectRoleList[0].id,e.projectRoles=t;var{confirmPassword:r,more:l}=e,i=(0,j.default)(e,["confirmPassword","more"]);return a.store.create(i)}));return function(t){return e.apply(this,arguments)}}()),this.state={domain:"default",more:!1,projectRoles:{}}}init(){this.store=w.default,this.userGroupStore=new R.GroupStore,this.projectStore=new P.ProjectStore,this.roleStore=U.default,this.getUserGroups(),this.getProjects(),this.getRoles(),this.getDomains()}getDomains(){N.default.fetchDomain()}getUserGroups(){this.userGroupStore.fetchList({withRole:!1})}getProjects(){this.projectStore.fetchList({withRole:!1})}getRoles(){this.roleStore.fetchList()}static allowed(e,t){var{match:{path:a}}=t;return(0,y.default)(a).call(a,"domain-admin/detail")>=0?g.default.resolve(!1):g.default.resolve(!0)}get name(){return t("Create User")}get listUrl(){return this.getRoutePath("user")}get defaultValue(){return{more:!1,enabled:M.statusTypes[0].value,domain_id:"default"}}get projectList(){var e;return(0,p.default)(e=this.projectStore.list.data||[]).call(e,(e=>({label:e.name,value:e.id})))}get userGroupList(){var e;return(0,p.default)(e=this.userGroupStore.list.data||[]).call(e,(e=>G(G({},e),{},{key:e.id})))}get projects(){var e;return(0,p.default)(e=this.projectStore.list.data||[]).call(e,(e=>G(G({},e),{},{key:e.id})))}get leftProjectTable(){return M.nameDomainColumns}get projectRoleList(){return this.roleStore.list.data||[]}get rightProjectTable(){return[...M.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get leftUserGroupTable(){return M.nameDomainColumns}get rightUserGroupTable(){return M.nameDomainColumns}get formItems(){var{more:e}=this.state,a={labelCol:{xs:{span:4},sm:{span:5}},wrapperCol:{xs:{span:16},sm:{span:15}},colNum:2},r=G(G({},(0,M.getDomainFormItem)(this)),a);return[G(G({name:"name",label:t("User Name"),type:"input",validator:this.checkName,extra:t("User name can not be duplicated"),required:!0},a),{},{maxLength:30}),G({name:"email",label:t("Email"),type:"input",required:!0,validator:T.emailValidate},a),G({name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,T.getPasswordOtherRule)("password")},a),G({name:"phone",label:t("Phone"),type:"phone",required:!0,validator:T.phoneNumberValidate},a),G({name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:!0,dependencies:["password"],otherRule:(0,T.getPasswordOtherRule)("confirmPassword")},a),r,G({name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:M.statusTypes,required:!0},a),G({name:"description",label:t("Description"),type:"textarea"},a),G(G({name:"real_name",label:t("Real Name"),type:"input",required:!0},a),{},{maxLength:30}),{type:"divider"},{name:"more",label:t("Advanced Options"),type:"more"},{name:"select_project",label:t("Select Project"),type:"transfer",leftTableColumns:this.leftProjectTable,rightTableColumns:this.rightProjectTable,dataSource:this.projects,showSearch:!0,hidden:!e,onChange:this.onChangeProject,filterOption:M.transferFilterOption,loading:this.projectStore.list.isLoading,onRowRight:()=>null},{name:"select_user_group",label:t("Select User Group"),type:"transfer",leftTableColumns:this.leftUserGroupTable,rightTableColumns:this.rightUserGroupTable,dataSource:this.userGroupList,showSearch:!0,hidden:!e,filterOption:M.transferFilterOption,loading:this.userGroupStore.list.isLoading}]}}a.Create=A,(0,S.default)(A,"id","user-create"),(0,S.default)(A,"title",t("Create User")),(0,S.default)(A,"path","/identity/user-admin/create"),(0,S.default)(A,"policy",["identity:create_user","identity:update_user","identity:list_roles"]),(0,S.default)(A,"allowed",(()=>g.default.resolve(!0)));var F=(0,C.inject)("rootStore")((0,C.observer)(A));a.default=F},1500:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(101)),u=i(r(82)),s=i(r(37)),d=r(382),c=r(1113),f=i(r(1126)),p=r(514),m=i(r(616));class h extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store,{id:l}=this.item;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==l))?n.default.reject(t("Invalid: User name can not be duplicated")):n.default.resolve()})),(0,s.default)(this,"onSubmit",(e=>{var{email:t,phone:a,real_name:r,description:l,name:i}=e,{id:n}=this.item;return f.default.edit(n,{email:t,phone:a,real_name:r,description:l,name:i})}))}init(){this.store=f.default}static allowed(){return n.default.resolve(!0)}get actionName(){return t("Edit User")}get defaultValue(){var e,{name:t,email:a,phone:r,real_name:l,description:i,domain:n,domain_id:o}=this.item,s=(0,m.default)(r||"","CN")||{countryCallingCode:"86",nationalNumber:""},{countryCallingCode:d,nationalNumber:c}=s;return{name:t,domainName:(n||{}).name||o,email:a,phone:(0,u.default)(e="+".concat(d," ")).call(e,c),real_name:l,description:i}}get formItems(){return[{name:"name",label:t("User Name"),type:"input",placeholder:t("Please input user name"),validator:this.checkName,extra:t("User")+t("Name can not be duplicated"),required:!0},{name:"email",label:t("Email"),type:"input",validator:p.emailValidate,required:!0},{name:"phone",label:t("Phone"),type:"phone",required:!0,validator:p.phoneNumberValidate},{name:"real_name",label:t("Real Name"),type:"input",required:!0},{name:"domainName",label:t("Affiliated Domain"),type:"input",disabled:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=h,(0,s.default)(h,"id","user-edit"),(0,s.default)(h,"title",t("Edit")),(0,s.default)(h,"policy","identity:update_user");var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},1501:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1502)),n=l(a(3808)),o=l(a(1503)),u=l(a(3809)),s={rowActions:{firstAction:o.default,moreActions:[{action:u.default},{action:n.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=s},1502:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(101)),u=i(r(37)),s=r(382),d=r(1113),c=i(r(1148)),f=i(r(1156)),p=r(1138);class m extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r=[]}={}}=this.store;return(0,o.default)(r).call(r,(e=>e.name===a))?n.default.reject(t("Invalid: User Group name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=f.default,this.domainStore=c.default,this.domainStore.fetchDomain()}static allowed(){return n.default.resolve(!0)}get name(){return t("Create User Group")}get defaultValue(){return{domain_id:"default"}}get formItems(){var e=(0,p.getDomainFormItem)(this);return[{name:"name",label:t("User Group Name"),type:"input",placeholder:t("Please input name"),required:!0,validator:this.checkName,extra:t("User Groups")+t("Name can not be duplicated"),maxLength:30},e,{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=m,(0,u.default)(m,"id","user-group-create"),(0,u.default)(m,"title",t("Create User Group")),(0,u.default)(m,"policy","identity:create_group");var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},1503:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(101)),u=i(r(37)),s=r(382),d=r(1113),c=i(r(1156));class f extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store,{id:l}=this.item;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==l))?n.default.reject(t("Invalid: User Group name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>{var{description:t,name:a}=e,{id:r}=this.item;return c.default.edit({id:r,description:t,name:a})}))}init(){this.store=c.default}static allowed(){return n.default.resolve(!0)}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("User Group Name"),type:"input",placeholder:t("Please input name"),required:!0,validator:this.checkName,extra:t("User Groups")+t("Name can not be duplicated")},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=f,(0,u.default)(f,"id","user-group-edit"),(0,u.default)(f,"title",t("Edit")),(0,u.default)(f,"policy","identity:update_group");var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},1504:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3810)),n=l(a(1505)),o=l(a(3811)),u=l(a(3812)),s=l(a(1506)),d=l(a(3813)),c=l(a(3814)),f=l(a(3815)),p=l(a(3816)),m={rowActions:{firstAction:n.default,moreActions:[{action:i.default},{action:f.default},{action:d.default},{action:c.default},{action:o.default},{action:u.default},{action:p.default}]},batchActions:[i.default],primaryActions:[s.default]};t.default=m},1505:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(101)),u=i(r(82)),s=i(r(37)),d=r(382),c=r(1113),f=i(r(384));class p extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==this.item.id))?n.default.reject(t("Invalid: Project name can not be duplicated")):n.default.resolve()})),(0,s.default)(this,"onSubmit",(e=>{var{description:t,name:a}=e,{id:r}=this.item;return f.default.edit({id:r,description:t,name:a})}))}init(){this.store=f.default,this.store.fetchList()}static allowed(){return n.default.resolve(!0)}get name(){var e,{name:a}=this.item;return(0,u.default)(e="".concat(t("Edit")," ")).call(e,a)}get defaultValue(){var{name:e,description:t,enabled:a}=this.item;return{name:e,description:t,enabled:a}}get formItems(){return[{name:"name",label:t("Name"),type:"input",value:this.item.name,validator:this.checkName,extra:t("Project")+t("Name can not be duplicated")},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=p,(0,s.default)(p,"id","project-edit"),(0,s.default)(p,"title",t("Edit")),(0,s.default)(p,"policy","identity:update_project");var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},1506:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(33)),u=i(r(37)),s=r(382),d=r(1113),c=i(r(1148)),f=i(r(384)),p=r(514),m=r(1138);class h extends d.ModalAction{constructor(e){super(e),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{nameRegexWithoutChinese:r}=p.regex;if(!r.test(a))return n.default.reject(t("Invalid: Project name can not be chinese"));var{list:{data:l}}=this.projectStore;return(0,o.default)(l).call(l,(e=>e.name===a))[0]?n.default.reject(t("Invalid: Project name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>(e.enabled=e.enabled.value,this.projectStore.create(e)))),this.state={domain:null,newUserRoles:{},newGroupRoles:{}}}init(){this.domainStore=c.default,this.projectStore=f.default,this.getDomains()}getDomains(){this.domainStore.fetchDomain()}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Project")}get defaultValue(){return{domain_id:"default",enabled:m.statusTypes[0]}}get formItems(){var e=(0,m.getDomainFormItem)(this);return[{name:"name",label:t("Name"),type:"input",required:!0,placeholder:t("Please input name"),validator:this.checkName,extra:t("Project")+t("Name can not be duplicated"),maxLength:30},e,{name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:m.statusTypes,required:!0,isWrappedValue:!0,tip:t("Disabling the project will have a negative impact. If the users associated with the project are only assigned to the project, they will not be able to log in")},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=h,(0,u.default)(h,"id","project-create"),(0,u.default)(h,"title",t("Create Project")),(0,u.default)(h,"policy",["identity:create_project","identity:list_domains","identity:list_roles","identity:list_users"]);var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},1508:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3855)),n=l(a(3856)),o={rowActions:{firstAction:l(a(3857)).default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=o},3794:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(389)),n=l(a(3795)),o=e=>(0,i.default)(n.default,e);t.default=o},3795:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1130)),n=l(a(525)),o=l(a(3796)),u=l(a(3802)),s=l(a(1264)),d=l(a(1506)),c=l(a(1505)),f=l(a(3820)),p=l(a(1224)),m=l(a(1499)),h=l(a(1500)),v=l(a(3824)),g=l(a(1226)),b=l(a(1502)),y=l(a(1503)),j=l(a(3853)),_=l(a(3854)),D=l(a(3858)),S="/identity",x=[{path:S,component:i.default,routes:[{path:"".concat(S,"/domain-admin"),component:o.default,exact:!0},{path:"".concat(S,"/domain-admin/detail/:id"),component:u.default,exact:!0},{path:"".concat(S,"/project"),component:s.default,exact:!0},{path:"".concat(S,"/project-admin"),component:s.default,exact:!0},{path:"".concat(S,"/project/create"),component:d.default,exact:!0},{path:"".concat(S,"/project-admin/create"),component:d.default,exact:!0},{path:"".concat(S,"/project/edit/:id"),component:c.default,exact:!0},{path:"".concat(S,"/project-admin/edit/:id"),component:c.default,exact:!0},{path:"".concat(S,"/user"),component:p.default,exact:!0},{path:"".concat(S,"/user-admin"),component:p.default,exact:!0},{path:"".concat(S,"/user-admin/create"),component:m.default,exact:!0},{path:"".concat(S,"/user-admin/edit/:id"),component:h.default,exact:!0},{path:"".concat(S,"/user-admin/detail/:id"),component:v.default,exact:!0},{path:"".concat(S,"/user-group-admin"),component:g.default,exact:!0},{path:"".concat(S,"/user-group-admin/detail/:id"),component:j.default,exact:!0},{path:"".concat(S,"/user-group-admin/create"),component:b.default,exact:!0},{path:"".concat(S,"/user-group-admin/edit/:id"),component:y.default,exact:!0},{path:"".concat(S,"/role-admin"),component:_.default,exact:!0},{path:"".concat(S,"/role-admin/detail/:id"),component:D.default,exact:!0},{path:"".concat(S,"/project/detail/:id"),component:f.default,exact:!0},{path:"".concat(S,"/project-admin/detail/:id"),component:f.default,exact:!0},{path:"*",component:n.default}]}];t.default=x},3796:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Domains=void 0;var n=i(r(37)),o=r(382),u=i(r(1114)),s=i(r(1148)),d=r(1138),c=i(r(1497));class f extends u.default{constructor(){super(...arguments),(0,n.default)(this,"getColumns",(()=>[{title:t("Domain ID/Name"),dataIndex:"name",routeName:"domainDetailAdmin"},{title:t("Project Num"),dataIndex:"projectCount",isHideable:!0},{title:t("User Num"),dataIndex:"userCount",isHideable:!0},{title:t("User Group Num"),dataIndex:"groupCount",isHideable:!0},d.enabledColumn,{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=s.default}get policy(){return"identity:list_domains"}get name(){return t("domains")}get isFilterByBackend(){return!1}get actionConfigs(){return c.default}get searchFilters(){return[{label:t("Domain Name"),name:"name"}]}}a.Domains=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3797:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(37)),u=r(382),s=i(r(1148)),d=r(1113),c=r(1138);class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>(e.enabled=e.enabled.value,this.store.create(e))))}init(){this.store=s.default}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Domain")}get defaultValue(){return{enabled:c.statusTypes[0]}}get formItems(){return[{name:"name",label:t("Name"),type:"input",placeholder:t("Please input name"),required:!0,help:t("The name cannot be modified after creation")},{name:"description",label:t("Description"),type:"textarea"},{name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:c.statusTypes,required:!0,isWrappedValue:!0,help:t("Forbidden the domain will have a negative impact, all project and user in domain will be forbidden")}]}}a.Create=f,(0,o.default)(f,"id","domain-create"),(0,o.default)(f,"title",t("Create Domain")),(0,o.default)(f,"policy","identity:create_domain");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3798:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(1148));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_domain"),(0,n.default)(this,"allowedCheckFunc",(e=>!e.enabled)),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Domain")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete domain")}}a.default=s},3799:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(65)),m=f(r(52)),h=f(r(37)),v=r(382),g=r(1113),b=f(r(1148));function y(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class j extends g.ModalAction{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"onSubmit",function(){var t=(0,m.default)((function*(t){var{id:a}=e.item;return e.store.edit(function(e){for(var t=1;t!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable Domain")}get buttonText(){return t("Enable")}get actionName(){return t("Enable Domain")}isEnable(e){return!0!==e.enabled}}a.default=s},3801:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(62)),o=i(r(37)),u=r(1113),s=r(47),d=i(r(1148));class c extends u.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_domain"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,s.isArray)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden domain { name }? Forbidden the domain will have negative effect, and users associated with the domain will not be able to log in if they are only assigned to the domain",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden Domain")}get buttonText(){return t("Forbidden")}get actionName(){return t("Forbidden Domain")}get isDanger(){return!0}isForbidden(e){return!1!==e.enabled}}a.default=c},3802:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.DomainDetail=void 0;var n=r(382),o=r(1148),u=i(r(1119)),s=r(1138),d=i(r(1224)),c=i(r(1226)),f=i(r(1264)),p=i(r(1497));class m extends u.default{get name(){return t("domain")}get policy(){return"identity:get_domain"}get listUrl(){return this.getRoutePath("domain")}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Domain Name"),dataIndex:"name"},s.enabledColumn,{title:t("Project Num"),dataIndex:"projectCount"},{title:t("User Num"),dataIndex:"userCount"},{title:t("User Group Num"),dataIndex:"groupCount"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Projects"),key:"project",component:f.default},{title:t("Users"),key:"user",component:d.default},{title:t("User Groups"),key:"userGroup",component:c.default}]}init(){this.store=new o.DomainStore}}a.DomainDetail=m;var h=(0,n.inject)("rootStore")((0,n.observer)(m));a.default=h},3803:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(1126));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_user"),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete User")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete user")}}a.default=s},3804:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(1126));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:update_user"),(0,n.default)(this,"allowedCheckFunc",(e=>!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable User")}get buttonText(){return t("Enable")}get actionName(){return t("Enable User")}isEnable(e){return!e.enabled}}a.default=s},3805:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(62)),o=i(r(37)),u=r(1113),s=r(47),d=i(r(1126));class c extends u.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_user"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,s.isArray)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden user { name }? Forbidden the user will not allow login in ",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden User")}get buttonText(){return t("Forbidden")}get isDanger(){return!0}get actionName(){return t("Forbidden User")}isForbidden(e){return!!e.enabled}}a.default=c},3806:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.SystemRole=void 0;var n=i(r(62)),o=i(r(28)),u=i(r(219)),s=i(r(65)),d=i(r(91)),c=i(r(52)),f=i(r(37)),p=r(382),m=r(1113),h=r(1126),v=i(r(1162));class g extends m.ModalAction{constructor(){var e;super(...arguments),e=this,(0,f.default)(this,"onSubmit",function(){var t=(0,c.default)((function*(t){var{role:a}=t,{systemRoles:r,id:l}=e.item,i=[],d=a?[a]:[],c=(0,n.default)(r).call(r,(e=>e.id));return(0,o.default)(r).call(r,(t=>{var{id:a}=t;(0,u.default)(d).call(d,a)||i.push(e.store.deleteSystemRole({id:l,roleId:a}))})),(0,o.default)(d).call(d,(t=>{(0,u.default)(c).call(c,t)||i.push(e.store.assignSystemRole({id:l,roleId:t}))})),yield s.default.all(i)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new h.UserStore,this.roleStore=v.default,this.getRoleList()}getRoleList(){this.roleStore.fetchSystemRoles()}get name(){return t("edit system permission")}get rolesList(){var e;return(0,n.default)(e=this.roleStore.systemRoles.data||[]).call(e,(e=>({label:e.name,value:e.id})))}get defaultValue(){var{name:e,systemRoles:t=[]}=this.item,a=(0,n.default)(t).call(t,(e=>e.id))[0];return a?{name:e,role:a}:{name:e}}static allowed(e,t){var{match:{path:a=""}={}}=t||{};return(0,d.default)(a).call(a,"domain-admin/detail")>=0?s.default.resolve(!1):s.default.resolve(!0)}get formItems(){return[{name:"name",label:t("User"),type:"label",iconType:"user"},{name:"role",label:t("Role"),type:"select",options:this.rolesList,loading:this.roleStore.systemRoles.isLoading}]}}a.SystemRole=g,(0,f.default)(g,"id","edit-system-permission"),(0,f.default)(g,"title",t("Edit System Permission")),(0,f.default)(g,"policy","identity:list_roles");var b=(0,p.inject)("rootStore")((0,p.observer)(g));a.default=b},3807:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Password=void 0;var n=i(r(65)),o=i(r(37)),u=r(382),s=r(1113),d=r(514),c=i(r(1126));class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{password:a}=e;return c.default.changePassword({id:t,password:a})}))}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:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("password")},{name:"confirmPassword",label:t("Confirm Password"),dependencies:["password"],type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("confirmPassword")}]}}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","identity:update_user"),(0,o.default)(f,"allowed",(()=>n.default.resolve(!0)));var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3808:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(1156));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_group"),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete group")}}a.default=s},3809:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUser=void 0;var p=f(r(28)),m=f(r(91)),h=f(r(65)),v=f(r(62)),g=f(r(52)),b=f(r(37)),y=r(382),j=r(1126),_=r(1156),D=r(1113),S=r(1138);function x(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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{-1===(0,m.default)(r).call(r,t)&&i.push(e.store.deleteGroupUsers({id:l,userId:t}))})),(0,p.default)(r).call(r,(t=>{var a;-1===(0,m.default)(a=e.groupUsers).call(a,t)&&i.push(e.store.addGroupUsers({id:l,userId:t}))})),yield h.default.all(i)}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Manage user")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){var e=this;return(0,g.default)((function*(){e.state.groupUsers=[],e.store=new _.GroupStore,e.userStore=new j.UserStore,e.getGroupUsers(),e.getAllUser()}))()}getAllUser(){this.userStore.fetchList({withProjectRole:!1,withSystemRole:!1})}getGroupUsers(){var e=this;return(0,g.default)((function*(){yield e.store.fetchGroupUsers(e.item),e.setState({groupUsers:e.groupUsers}),e.updateDefaultValue()}))()}get userList(){var e=this.userStore.list.data||[];return(0,v.default)(e).call(e,(e=>C(C({},e),{},{key:e.id})))}get groupUsers(){var e;return(0,v.default)(e=this.store.groupUsers||[]).call(e,(e=>e.id))}get leftUserTable(){return S.nameDomainColumns}get rightUserTable(){return S.nameDomainColumns}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t,select_user:this.groupUsers}}get formItems(){return[{name:"name",type:"label",label:t("Name"),iconType:"group"},{name:"domain",type:"label",label:t("Domain")},{name:"select_user",type:"transfer",label:t("User"),leftTableColumns:this.leftUserTable,rightTableColumns:this.rightUserTable,dataSource:this.userList,disabled:!1,showSearch:!0,filterOption:S.transferFilterOption,loading:this.userStore.list.isLoading}]}}a.ManageUser=R,(0,b.default)(R,"id","manage-user"),(0,b.default)(R,"title",t("Manage User")),(0,b.default)(R,"policy",["identity:list_users_in_group","identity:list_users_in_group","identity:add_user_to_group"]),(0,b.default)(R,"allowed",(()=>h.default.resolve(!0)));var w=(0,y.inject)("rootStore")((0,y.observer)(R));a.default=w},3810:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(384));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_project"),(0,n.default)(this,"submitErrorMsg",((e,a)=>{var r=this.getName(e);return 400===a.status&&a.reason&&403===a.reason.code&&/^Resource(.*?)exists$/.test(a.reason.message)?t("There are resources under the project and cannot be deleted."):t("Unable to {action} {name}.",{action:this.actionName||this.title,name:r})})),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Project")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete project")}}a.default=s},3811:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(384));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:update_project"),(0,n.default)(this,"allowedCheckFunc",(e=>!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable Project")}get buttonText(){return t("Enable")}get actionName(){return t("Enable Project")}isEnable(e){return!0!==e.enabled}}a.default=s},3812:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(62)),o=i(r(37)),u=r(1113),s=r(47),d=i(r(384));class c extends u.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_project"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,s.isArray)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden project { name }? Forbidden the project will have negative effect, and users associated with the project will not be able to log in if they are only assigned to the project",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden Project")}get buttonText(){return t("Forbidden")}get actionName(){return t("Forbidden Project")}get isDanger(){return!0}isForbidden(e){return!1!==e.enabled}}a.default=c},3813:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUser=void 0;var p=f(r(62)),m=f(r(28)),h=f(r(35)),v=f(r(219)),g=f(r(65)),b=f(r(168)),y=f(r(52));r(519);var j=f(r(388)),_=f(r(37)),D=f(r(0)),S=r(382),x=(r(167),f(r(384))),C=r(1126),R=r(1162),w=r(1113),I=r(1138),P=r(1225);function U(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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 t;return(0,p.default)(t=this.projectRoleList).call(t,(t=>({label:t.name,value:t.id,key:t.id,user_id:e})))})),(0,_.default)(this,"defaultRoles",(e=>{var t,{users:a}=this.item;return a[e]?(0,p.default)(t=a[e]).call(t,(e=>e.id)):[this.projectRoleList[0].id]})),(0,_.default)(this,"renderSelect",(e=>D.default.createElement(j.default,{size:"small",mode:"multiple",options:this.userRolesList(e),defaultValue:this.defaultRoles(e),filterOption:P.roleFilterOption,onChange:(t,a)=>{this.onSelectChange(t,a,e)}}))),(0,_.default)(this,"onSelectChange",((e,t,a)=>{var{userRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]=[],this.setState({userRoles:r})})),(0,_.default)(this,"onChangeUser",(e=>{var t,a,{userRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles(e))})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,_.default)(this,"onSubmit",(0,y.default)((function*(){var t,a,{userRoles:r}=e.state,{id:l}=e.item,i=e.getInitRoleMap(),n=[];return(0,m.default)(t=(0,h.default)(i)).call(t,(e=>{var t;(0,m.default)(t=i[e]||[]).call(t,(t=>{var a=r[e]||[];(0,v.default)(a).call(a,t)||n.push(x.default.removeUserRole({id:l,userId:e,roleId:t}))}))})),(0,m.default)(a=(0,h.default)(r)).call(a,(e=>{var t,a=i[e]||[];(0,m.default)(t=r[e]).call(t,(t=>{(0,v.default)(a).call(a,t)||n.push(x.default.assignUserRole({id:l,userId:e,roleId:t}))}))})),yield g.default.all(n)})))}get name(){return t("Manage user")}init(){var e=this;return(0,y.default)((function*(){e.state.userRoles=e.getInitRoleMap(),e.store=new R.RoleStore,e.userStore=new C.UserStore,e.getRoleList(),e.getUser()}))()}getRoleList(){return this.store.fetchList()}getUser(){this.userStore.fetchList({withProjectRole:!1,withSystemRole:!1})}getInitRoleMap(){var e,{users:t={}}=this.item;return(0,b.default)(e=(0,h.default)(t)).call(e,((e,a)=>{var r;return e[a]=(0,p.default)(r=t[a]).call(r,(e=>e.id)),e}),{})}static get modalSize(){return"large"}getModalSize(){return"large"}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get userList(){var e=this.userStore.list.data||[];return(0,p.default)(e).call(e,(e=>N(N({},e),{},{key:e.id})))}get projectRoleList(){return this.store.list.data||[]}get leftUserTable(){return I.nameDomainColumns}get rightUserTable(){return[...I.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t}}get formItems(){var{users:e}=this.item;return[{name:"name",type:"label",label:t("Name"),iconType:"project"},{name:"domain",type:"label",label:t("Domain")},{name:"select_user",type:"transfer",label:t("User"),leftTableColumns:this.leftUserTable,rightTableColumns:this.rightUserTable,dataSource:this.userList,showSearch:!0,oriTargetKeys:e?(0,h.default)(e):[],onChange:this.onChangeUser,filterOption:I.transferFilterOption,wrapperCol:this.wrapperCol,loading:this.userStore.list.isLoading,onRowRight:()=>null}]}}a.ManageUser=T,(0,_.default)(T,"id","management-user"),(0,_.default)(T,"title",t("Manage User")),(0,_.default)(T,"policy","identity:update_project"),(0,_.default)(T,"allowed",(()=>g.default.resolve(!0)));var M=(0,S.inject)("rootStore")((0,S.observer)(T));a.default=M},3814:function(e,a,r){"use strict";var l=r(35),i=r(44),n=r(33),o=r(25),u=r(28),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUserGroup=void 0;var p=f(r(62)),m=f(r(28)),h=f(r(35)),v=f(r(219)),g=f(r(65)),b=f(r(168)),y=f(r(52));r(519);var j=f(r(388)),_=f(r(37)),D=f(r(0)),S=r(382),x=(r(167),f(r(384))),C=r(1156),R=f(r(1162)),w=r(1113),I=r(1138),P=r(1225);function U(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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 t;return(0,p.default)(t=this.projectRoleList).call(t,(t=>({label:t.name,value:t.id,key:t.id,groupId:e})))})),(0,_.default)(this,"defaultRoles",(e=>{var t,{groups:a}=this.item;return a[e]?(0,p.default)(t=a[e]).call(t,(e=>e.id)):[this.projectRoleList[0].id]})),(0,_.default)(this,"renderSelect",(e=>D.default.createElement(j.default,{size:"small",mode:"multiple",options:this.groupRolesList(e),defaultValue:this.defaultRoles(e),filterOption:P.roleFilterOption,onChange:(t,a)=>{this.onSubChange(t,a,e)}}))),(0,_.default)(this,"onSubChange",((e,t,a)=>{var{groupRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]={},this.setState({groupRoles:r})})),(0,_.default)(this,"onChangeUserGroup",(e=>{var t,a,{groupRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles(e))})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,_.default)(this,"onSubmit",(0,y.default)((function*(){var t,a,{groupRoles:r={}}=e.state,{id:l}=e.item,i=e.getInitRoleMap(),n=[];return(0,m.default)(t=(0,h.default)(i)).call(t,(e=>{var t;(0,m.default)(t=i[e]||[]).call(t,(t=>{var a=r[e]||[];(0,v.default)(a).call(a,t)||n.push(x.default.removeGroupRole({id:l,groupId:e,roleId:t}))}))})),(0,m.default)(a=(0,h.default)(r)).call(a,(e=>{var t,a=i[e]||[];(0,m.default)(t=r[e]).call(t,(t=>{(0,v.default)(a).call(a,t)||n.push(x.default.assignGroupRole({id:l,groupId:e,roleId:t}))}))})),yield g.default.all(n)})))}init(){var e=this;return(0,y.default)((function*(){e.state.groupRoles=e.getInitRoleMap(),e.userGroupStore=new C.GroupStore,e.store=R.default,e.getRoleList(),e.getGroupGroup()}))()}get name(){return t("Manage user group")}getInitRoleMap(){var e,{groups:t={}}=this.item;return(0,b.default)(e=(0,h.default)(t)).call(e,((e,a)=>{var r;return e[a]=(0,p.default)(r=t[a]).call(r,(e=>e.id)),e}),{})}getGroupGroup(){this.userGroupStore.fetchList()}getRoleList(){this.store.fetchList()}static get modalSize(){return"large"}getModalSize(){return"large"}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get groupList(){var e;return(0,p.default)(e=this.userGroupStore.list.data||[]).call(e,(e=>N(N({},e),{},{key:e.id})))}get projectRoleList(){return this.store.list.data||[]}get leftGroupGroupTable(){return I.nameDomainColumns}get rightGroupGroupTable(){return[...I.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t}}get formItems(){var{groups:e}=this.item;return[{name:"name",type:"label",label:t("Name"),iconType:"project"},{name:"domain",type:"label",label:t("Domain")},{name:"select_group",label:t("User Group"),type:"transfer",leftTableColumns:this.leftGroupGroupTable,rightTableColumns:this.rightGroupGroupTable,dataSource:this.groupList,disabled:!1,showSearch:!0,oriTargetKeys:e?(0,h.default)(e):[],filterOption:I.transferFilterOption,onChange:this.onChangeUserGroup,wrapperCol:this.wrapperCol,loading:this.userGroupStore.list.isLoading,onRowRight:()=>null}]}}a.ManageUserGroup=T,(0,_.default)(T,"id","manage-group-group"),(0,_.default)(T,"title",t("Manage User Group")),(0,_.default)(T,"policy","identity:update_project"),(0,_.default)(T,"allowed",(()=>g.default.resolve(!0)));var M=(0,S.inject)("rootStore")((0,S.observer)(T));a.default=M},3815:function(e,a,r){"use strict";var l=r(156),i=r(19),n=r(25),o=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageQuota=void 0;var u=o(r(65)),s=o(r(28)),d=o(r(35)),c=o(r(101)),f=o(r(62)),p=o(r(71)),m=o(r(52)),h=o(r(37)),v=r(382),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=D(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 u=l?n(e,o):null;u&&(u.get||u.set)?i(r,o,u):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(384)),b=o(r(0)),y=r(1113),j=r(524),_=r(1307);function D(e){if("function"!=typeof l)return null;var t=new l,a=new l;return(D=function(e){return e?a:t})(e)}class S extends y.ModalAction{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"checkMin",((e,a)=>{var{quota:r}=this.projectStore,{field:l}=e,{used:i}=r[l];return a({name:e,label:"",type:"label",content:b.default.createElement("div",{style:{textAlign:"center",fontWeight:"bolder"}},t),wrapperCol:{span:24},hidden:a}))),(0,h.default)(this,"onSubmit",function(){var t=(0,m.default)((function*(t){return e.store.updateProjectQuota(t)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=g.default,this.projectStore=new g.ProjectStore,this.volumeTypeStore=new j.VolumeTypeStore,this.getData()}get name(){return t("Edit quota")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get enableShare(){return this.props.rootStore.checkEndpoint("manilav2")}get enableZun(){return this.props.rootStore.checkEndpoint("zun")}getData(){var e=this;return(0,m.default)((function*(){var{id:t}=e.item,a=[e.projectStore.fetchProjectQuota({project_id:t})];e.enableCinder&&a.push(e.volumeTypeStore.fetchProjectVolumeTypes(t)),yield u.default.all(a),e.updateDefaultValue()}))()}get tips(){return t("quota set to -1 means there is no quota limit on the current resource")}get defaultValue(){var e,{quota:t={}}=this.projectStore,a={};return(0,s.default)(e=(0,d.default)(t)).call(e,(e=>{var r;if((0,c.default)(r=this.formItems).call(r,(t=>t.name===e))){var{limit:l}=t[e]||{};a[e]=l}})),a}getInputItem(e,t,a){return{name:e,label:t,type:"input-number",labelCol:{span:12},colNum:2,validator:this.checkMin,hidden:a}}get quotaCardList(){var e=[..._.quotaCardList];return this.enableShare&&e.push(_.shareQuotaCard),this.enableZun&&e.push(_.zunQuotaCard),e}getFormItemsByCards(e){var t,a=(0,c.default)(t=this.quotaCardList).call(t,(t=>t.type===e));if(!a)return[];var{type:r,text:l,value:i}=a;return[this.getTitleLabel(r,l),...(0,f.default)(i).call(i,(e=>{var{key:t,text:a}=e;return this.getInputItem(t,a)}))]}getComputeFormItems(){return[...this.getFormItemsByCards("compute"),this.getInputItem("server_group_members",t("Server Group Member"))]}get volumeTypeData(){var{projectVolumeTypes:e=[]}=this.volumeTypeStore;return e}getVolumeTypeFormItems(){var{more:e}=this.state,t=(0,_.getVolumeTypeCards)(this.volumeTypeData),{type:a,text:r,value:l}=t,i=[];return(0,s.default)(l).call(l,(e=>i.push(...e.value))),[this.getTitleLabel(a,r,!e),...(0,f.default)(i).call(i,(t=>this.getInputItem(t.key,t.text,!e)))]}get formItems(){var e=[...this.getComputeFormItems(),...this.getFormItemsByCards("networks")];if(this.enableShare&&e.push(...this.getFormItemsByCards("share")),this.enableZun&&e.push(...this.getFormItemsByCards("zun")),this.enableCinder){var a=this.getFormItemsByCards("storage"),r=this.getVolumeTypeFormItems();e.push(...a),e.push({name:"more",label:t("Advanced Options"),type:"more"},...r)}return e}getSubmitData(e){var{id:t}=this.item,{more:a,compute:r,storage:l,networks:i,volumeTypes:n,share:o,zun:u}=e;return{project_id:t,data:(0,p.default)(e,["more","compute","storage","networks","volumeTypes","share","zun"])}}}a.ManageQuota=S,(0,h.default)(S,"id","quota-management"),(0,h.default)(S,"title",t("Edit Quota")),(0,h.default)(S,"policy",["os_compute_api:os-quota-sets:update","os_compute_api:os-quota-sets:defaults"]),(0,h.default)(S,"allowed",(()=>u.default.resolve(!0)));var x=(0,v.inject)("rootStore")((0,v.observer)(S));a.default=x},3816:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.ModifyTags=void 0;var n=i(r(65)),o=i(r(320)),u=i(r(219)),s=i(r(37)),d=i(r(0)),c=r(382),f=r(1113),p=i(r(1451)),m=i(r(3817)),h=r(47);class v extends f.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>m.default.update({project_id:this.props.item.id},e)))}get name(){return t("modify project tags")}init(){this.state={tags:this.props.item.tags}}get formItems(){var{tags:e}=this.state;return[{name:"tags",label:t("Tags"),component:d.default.createElement(p.default,{tags:e}),validator:(e,a)=>{var r=this.props.item.tags||[];if((0,h.isEqual)(a,r))return n.default.resolve(!0);var l="";return(0,o.default)(a).call(a,(e=>{var t=(0,u.default)(e).call(e,"/")||(0,u.default)(e).call(e,",");return t&&(l=e),t}))?n.default.reject(new Error(t("Invalid Tag Value: {tag}",{tag:l}))):(0,o.default)(r).call(r,(function(e){return(0,o.default)(a).call(a,(t=>{var a=e!==t&&t.toLowerCase()===e.toLowerCase();return a&&(l=t),a}))}))?n.default.reject(new Error(t("Duplicate tag name: {tag}",{tag:l}))):n.default.resolve(!0)},extra:d.default.createElement("div",null,d.default.createElement("div",null,"1. ",t("Tags are not case sensitive")),d.default.createElement("div",null,"2. ",t("Forward Slash ‘/’ is not allowed to be in a tag name")),d.default.createElement("div",null,"3."," ",t("Commas ‘,’ are not allowed to be in a tag name in order to simplify requests that specify lists of tags")))}]}}a.ModifyTags=v,(0,s.default)(v,"id","modify-project-tags"),(0,s.default)(v,"title",t("Modify Project Tags")),(0,s.default)(v,"buttonText",t("Modify Project Tags")),(0,s.default)(v,"policy","identity:update_project_tags"),(0,s.default)(v,"allowed",(()=>n.default.resolve(!0)));var g=(0,c.inject)("rootStore")((0,c.observer)(v));a.default=g},3817:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=t.TagStore=void 0;var i,n=l(a(25)),o=l(a(55)),u=a(32),s=l(a(49)),d=l(a(54)),c=(i=class extends d.default{get client(){return s.default.keystone.projects.tags}get projectClient(){return s.default.keystone.projects}listFetchByClient(e,t){var{project_id:a}=t;return this.client.list(a,e)}get paramsFunc(){return()=>null}update(e,t){var{project_id:a}=e;return this.submitting(this.projectClient.updateTags(a,t))}},(0,o.default)(i.prototype,"update",[u.action],(0,n.default)(i.prototype,"update"),i.prototype),i);t.TagStore=c;var f=new c;t.default=f},3818:function(e,t,a){var r=a(3819);"string"==typeof r&&(r=[[e.i,r,""]]);var l={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,l);r.locals&&(e.exports=r.locals)},3819:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__header-divider--1YGJP {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n",""]),t.locals={"header-divider":"index__header-divider--1YGJP"}},3820:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var n=r(382),o=r(384),u=i(r(1119)),s=r(1138),d=i(r(1226)),c=i(r(1224)),f=i(r(3821)),p=i(r(1504));class m extends u.default{get name(){return t("project")}get policy(){return"identity:list_projects"}get listUrl(){return this.getRoutePath("project")}get actionConfigs(){return p.default}init(){this.store=new o.ProjectStore}get forceLoadingTabs(){return["quota"]}get detailInfos(){return[{title:t("Project Name"),dataIndex:"name"},s.enabledColumn,{title:t("Affiliated Domain"),dataIndex:"domainName"},{title:t("User Num"),dataIndex:"userCount"},{title:t("User Group Num"),dataIndex:"groupCount"},{title:t("Tags"),dataIndex:"tags",render:e=>e.join(",")},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Project User"),key:"user",component:c.default},{title:t("Project User Group"),key:"userGroup",component:d.default},{title:t("Project Quota"),key:"quota",component:f.default}]}}a.Detail=m;var h=(0,n.inject)("rootStore")((0,n.observer)(m));a.default=h},3821:function(e,t,a){"use strict";var r=a(156),l=a(19),i=a(25),n=a(21);l(t,"__esModule",{value:!0}),t.default=t.Quota=void 0;var o=n(a(65)),u=n(a(52)),s=n(a(37)),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=v(t);if(a&&a.has(e))return a.get(e);var r={},n=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var u=n?i(e,o):null;u&&(u.get||u.set)?l(r,o,u):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(a(0)),c=a(382),f=n(a(1307)),p=a(524),m=a(384),h=n(a(3822));function v(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(v=function(e){return e?a:t})(e)}class g extends d.Component{constructor(e){var t;super(e),t=this,(0,s.default)(this,"getData",(0,u.default)((function*(){var{id:e}=t.props.match.params,a=[t.projectStore.fetchProjectQuota({project_id:e})];return t.enableCinder&&a.push(t.volumeTypeStore.fetchProjectVolumeTypes(e)),o.default.all(a)}))),this.projectStore=new m.ProjectStore,this.volumeTypeStore=new p.VolumeTypeStore}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get volumeTypeData(){return this.enableCinder?this.volumeTypeStore.projectVolumeTypes:[]}render(){return d.default.createElement("div",{className:h.default.wrapper},d.default.createElement(f.default,{getData:this.getData,projectStore:this.projectStore,volumeTypeStore:this.volumeTypeStore,volumeTypeData:this.volumeTypeData}))}}t.Quota=g;var b=(0,c.inject)("rootStore")((0,c.observer)(g));t.default=b},3822:function(e,t,a){var r=a(3823);"string"==typeof r&&(r=[[e.i,r,""]]);var l={hmr:!0,transform:undefined,insertInto:void 0};a(76)(r,l);r.locals&&(e.exports=r.locals)},3823:function(e,t,a){(t=e.exports=a(75)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--14spR {\n min-height: calc(100vh - 108px);\n padding: 0 16px 16px 16px;\n}\n",""]),t.locals={wrapper:"index__wrapper--14spR"}},3824:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.UserDetail=void 0;var n=i(r(62)),o=i(r(0)),u=r(382),s=r(1126),d=i(r(1119)),c=i(r(1507)),f=r(319),p=r(1138),m=i(r(1226)),h=i(r(1264)),v=i(r(1498));class g extends d.default{get name(){return t("user")}get policy(){return"identity:get_user"}get listUrl(){return this.getRoutePath("user")}get actionConfigs(){return this.isAdminPage?v.default:f.emptyActionConfig}init(){this.store=new s.UserStore}get detailInfos(){return[{title:t("User Name"),dataIndex:"name"},p.enabledColumn,{title:t("System Roles"),dataIndex:"systemRoles",render:e=>{var t;return e&&e.length?(0,n.default)(t=e||[]).call(t,(e=>o.default.createElement("div",{key:e.id},e.name))):"-"}},{title:t("Real Name"),dataIndex:"real_name"},{title:t("Affiliated Domain"),dataIndex:"domainName"},{title:t("Email"),dataIndex:"email",render:e=>e||"-"},{title:t("phone"),dataIndex:"phone"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Subordinate Project"),key:"user",component:h.default},{title:t("Subordinate User Group"),key:"userGroup",component:m.default},{title:t("Application Credentials"),key:"applicationCredentials",component:c.default}]}}a.UserDetail=g;var b=(0,u.inject)("rootStore")((0,u.observer)(g));a.default=b},3853:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var n=r(382),o=r(1156),u=i(r(1119)),s=i(r(1224)),d=i(r(1264)),c=i(r(1501));class f extends u.default{get name(){return t("user group")}get policy(){return"identity:get_group"}get listUrl(){return this.getRoutePath("userGroup")}get actionConfigs(){return c.default}init(){this.store=new o.GroupStore}get detailInfos(){return[{title:t("User Group Name"),dataIndex:"name"},{title:t("Affiliated Domain"),dataIndex:"domain",render:(e,t)=>(e||{}).name||t.domain_id},{title:t("User Num"),dataIndex:"userCount"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Subordinate Project"),key:"project",component:d.default},{title:t("Sub User"),key:"userGroup",component:s.default}]}}a.Detail=f;var p=(0,n.inject)("rootStore")((0,n.observer)(f));a.default=p},3854:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Role=void 0;var n=i(r(37)),o=r(382),u=i(r(1114)),s=i(r(1162)),d=i(r(1508));class c extends u.default{constructor(){super(...arguments),(0,n.default)(this,"getColumns",(()=>[{title:t("Role Name"),dataIndex:"name",routeName:"roleDetailAdmin"},{title:t("ID"),dataIndex:"id",isHideable:!0,copyable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=s.default}get policy(){return"identity:list_roles"}get name(){return t("roles")}get isFilterByBackend(){return!1}get actionConfigs(){return d.default}get searchFilters(){return[{label:t("Role Name"),name:"name"}]}}a.Role=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3855:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(37)),u=r(382),s=i(r(1162)),d=r(1113);class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=s.default}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Role")}get formItems(){return[{name:"name",label:t("Name"),type:"input",placeholder:t("Please input name"),required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=c,(0,o.default)(c,"id","role-create"),(0,o.default)(c,"title",t("Create Role")),(0,o.default)(c,"policy","identity:create_role");var f=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=f},3856:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(37)),o=r(1113),u=i(r(1162)),s=r(1225);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_role"),(0,n.default)(this,"allowedCheckFunc",(e=>(0,s.editable)(e))),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Role")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete role")}}a.default=d},3857:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var n=i(r(65)),o=i(r(52)),u=i(r(37)),s=r(382),d=r(1113),c=i(r(1162)),f=r(1225);class p extends d.ModalAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"onSubmit",function(){var t=(0,o.default)((function*(t){var{id:a}=e.item;return e.store.update({id:a},t)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=c.default}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=p,(0,u.default)(p,"id","role-edit"),(0,u.default)(p,"title",t("Edit Role")),(0,u.default)(p,"buttonText",t("Edit")),(0,u.default)(p,"policy","identity:update_role"),(0,u.default)(p,"allowed",(e=>n.default.resolve((0,f.editable)(e))));var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3858:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.RoleDetail=void 0;var n=r(382),o=r(1162),u=i(r(1119)),s=i(r(1224)),d=i(r(1226)),c=i(r(3859)),f=i(r(1508));class p extends u.default{get name(){return t("role")}get policy(){return["identity:get_role","identity:list_role_assignments"]}get listUrl(){return this.getRoutePath("role")}get actionConfigs(){return f.default}init(){this.store=new o.RoleStore}get detailInfos(){return[{title:t("Role Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:c.default},{title:t("Binding User"),key:"user",component:s.default},{title:t("Binding Group"),key:"group",component:d.default}]}}a.RoleDetail=p;var m=(0,n.inject)("rootStore")((0,n.observer)(p));a.default=m},3859:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var n=i(r(62)),o=i(r(0)),u=r(382),s=i(r(1122));class d extends s.default{get leftCards(){return[this.roleCard]}get roleCard(){var e=[{label:t("Roles"),dataIndex:"implies",render:e=>e&&e.length?(0,n.default)(e).call(e,(e=>{var{id:t,name:a}=e,r=this.getLinkRender("roleDetail",a,{id:t});return o.default.createElement("div",{key:t},r)})):"-"}];return{title:t("Implied Roles"),options:e}}}a.BaseDetail=d;var c=(0,u.inject)("rootStore")((0,u.observer)(d));a.default=c}}]); \ No newline at end of file diff --git a/skyline_console/static/identity.bundle.1658297502.js.gz b/skyline_console/static/identity.bundle.1658297502.js.gz deleted file mode 100644 index adadb234..00000000 Binary files a/skyline_console/static/identity.bundle.1658297502.js.gz and /dev/null differ diff --git a/skyline_console/static/identity.bundle.1663167892.js b/skyline_console/static/identity.bundle.1663167892.js new file mode 100644 index 00000000..58460645 --- /dev/null +++ b/skyline_console/static/identity.bundle.1663167892.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{1220:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.transferFilterOption=a.nameDomainColumns=a.enabledColumn=a.getDomainFormItem=a.getCheckedOptions=a.getDomainOptions=a.statusTypes=void 0,r(589);var n=i(r(590)),o=i(r(32)),u=i(r(90)),s=i(r(57)),d=i(r(198)),c=i(r(0)),f=(r(173),i(r(1231))),p=i(r(140)),m=[{label:t("Enable"),value:!0},{label:t("Forbidden"),value:!1}];a.statusTypes=m;var h=e=>{var t,{baseDomains:a}=p.default,{domains:r}=f.default,l=(0,o.default)(t=r||[]).call(t,(t=>-1===(0,u.default)(a).call(a,t.name)||t.id===(e.item||{}).domain_id));return(0,s.default)(l).call(l,(e=>({label:e.name,value:e.id,key:e.id})))};a.getDomainOptions=h;var v=()=>{var e,{domains:t}=f.default;return(0,s.default)(e=t||[]).call(e,(e=>({label:e.name,value:e.id,key:e.id})))};a.getCheckedOptions=v;a.getDomainFormItem=e=>({name:"domain_id",label:t("Affiliated Domain"),type:"select",checkOptions:v(),checkBoxInfo:t("Show All Domain"),options:h(e),allowClear:!1,onChange:t=>{e.setState({domain:t})},required:!0});var g={title:t("Enabled"),dataIndex:"enabled",isHideable:!0,render:e=>!0===e?c.default.createElement(n.default,{color:"green",text:t("Yes")}):c.default.createElement(n.default,{color:"red",text:t("No")}),stringify:e=>e?t("Yes"):t("No")};a.enabledColumn=g;var b=[{dataIndex:"name",title:t("Name")},{dataIndex:"domainName",title:t("Domain")}];a.nameDomainColumns=b;a.transferFilterOption=(e,t)=>{var{domainName:a,name:r}=t;return(0,d.default)(r).call(r,e)||(0,d.default)(a).call(a,e)}},1231:function(e,t,a){"use strict";var r=a(33),l=a(44),i=a(32),n=a(25),o=a(27),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.DomainStore=void 0;var f,p,m=c(a(65)),h=c(a(57)),v=c(a(32)),g=c(a(25)),b=c(a(51)),y=c(a(71)),j=c(a(36)),_=c(a(54)),S=(c(a(72)),a(34)),D=c(a(48)),x=c(a(53));function C(e,t){var a=r(e);if(l){var o=l(e);t&&(o=i(o).call(o,(function(t){return n(e,t).enumerable}))),a.push.apply(a,o)}return a}function R(e){for(var t=1;t{var t,i,n,o=(0,v.default)(t=a.users||[]).call(t,(t=>t.domain_id===e.id)),u=(0,v.default)(i=r.projects||[]).call(i,(t=>t.domain_id===e.id)),s=(0,v.default)(n=l.groups||[]).call(n,(t=>t.domain_id===e.id));return R(R({},e),{},{users:o,userCount:o.length,projects:u,projectCount:u.length,groups:s,groupCount:s.length})}))}))()}detailDidFetch(e){var t=this;return(0,b.default)((function*(){var{id:a}=e,[r,l,i]=yield m.default.all([t.userClient.list({domain_id:a}),t.projectClient.list({domain_id:a}),t.userGroupClient.list({domain_id:a})]),{users:n=[]}=r||{},{projects:o=[]}=l||{},{groups:u=[]}=i||{};return R(R({},e),{},{users:n,userCount:n.length,projects:o,projectCount:o.length,groups:u,groupCount:u.length})}))()}fetchDomain(){var e=this;return(0,b.default)((function*(){var t=yield e.client.list();e.domains=t.domains}))()}edit(e){var t=this;return(0,b.default)((function*(){var{id:a,description:r}=e,l={domain:{description:r}};return t.submitting(t.client.patch(a,l))}))()}forbidden(e){var t=this;return(0,b.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{domain:{enabled:!1}}))}))()}enable(e){var t=this;return(0,b.default)((function*(){var{id:a}=e;return t.submitting(t.client.patch(a,{domain:{enabled:!0}}))}))()}},p=(0,_.default)(f.prototype,"domains",[S.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,_.default)(f.prototype,"fetchDomain",[S.action],(0,g.default)(f.prototype,"fetchDomain"),f.prototype),(0,_.default)(f.prototype,"edit",[S.action],(0,g.default)(f.prototype,"edit"),f.prototype),(0,_.default)(f.prototype,"forbidden",[S.action],(0,g.default)(f.prototype,"forbidden"),f.prototype),(0,_.default)(f.prototype,"enable",[S.action],(0,g.default)(f.prototype,"enable"),f.prototype),f);t.DomainStore=w;var I=new w;t.default=I},1244:function(e,t,a){"use strict";var r=a(33),l=a(44),i=a(32),n=a(25),o=a(27),u=a(45),s=a(46),d=a(19),c=a(21);d(t,"__esModule",{value:!0}),t.default=t.RoleStore=void 0;var f,p,m,h=c(a(32)),v=c(a(25)),g=c(a(51)),b=c(a(71)),y=c(a(36)),j=c(a(54)),_=(c(a(72)),a(34)),S=c(a(48)),D=c(a(53)),x=c(a(429));function C(e,t){var a=r(e);if(l){var o=l(e);t&&(o=i(o).call(o,(function(t){return n(e,t).enumerable}))),a.push.apply(a,o)}return a}function R(e){for(var t=1;t"admin"===e.name||"reader"===e.name))}get client(){return S.default.keystone.roles}detailDidFetch(e){var t=this;return(0,g.default)((function*(){var{id:a}=e,{role_inference:{implies:r=[]}={}}=yield t.client.implies.list(a);return R(R({},e),{},{implies:r})}))()}fetchSystemRoles(){var e=this;return(0,g.default)((function*(){e.systemRoles.isLoading=!0;var t=yield e.client.list(),{roles:a=[]}=t,r=(0,h.default)(a).call(a,(t=>e.checkSystemRole(t)));return e.systemRoles.data=r,e.systemRoles.isLoading=!1,r}))()}update(e,t){var{id:a}=e,r={};return r[this.responseKey]=t,this.submitting(this.client.patch(a,r))}},p=(0,j.default)(f.prototype,"implyRoles",[_.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),m=(0,j.default)(f.prototype,"systemRoles",[_.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new x.default}}),(0,j.default)(f.prototype,"fetchSystemRoles",[_.action],(0,v.default)(f.prototype,"fetchSystemRoles"),f.prototype),(0,j.default)(f.prototype,"update",[_.action],(0,v.default)(f.prototype,"update"),f.prototype),f);t.RoleStore=w;var I=new w;t.default=I},1306:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.User=void 0;var m=p(r(198)),h=p(r(57)),v=p(r(1299)),g=p(r(32)),b=p(r(36)),y=p(r(0)),j=r(406),_=p(r(1194)),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=R(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(1207)),D=r(334),x=r(1220),C=p(r(1589));function R(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(R=function(e){return e?a:t})(e)}function w(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class I extends _.default{constructor(){super(...arguments),(0,b.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var a,{projects:r}=t;return(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t=[]}=e||{};return(0,h.default)(t).call(t,(e=>y.default.createElement("div",{key:e.id},e.name)))}))},stringify:(e,t)=>{var a,{projects:r}=t;return(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t=[]}=e||{};return(0,h.default)(t).call(t,(e=>e.name)).join(", ")}))}},{title:t("Project Scope"),dataIndex:"projects",isHideable:!0,render:e=>{var t;return(0,h.default)(t=(0,v.default)(e)).call(t,(e=>{var{project:{id:t,name:a}}=e,r=this.getLinkRender("projectDetail",a,{id:t});return y.default.createElement("div",{key:t},r)}))},stringify:e=>{var t;return(0,h.default)(t=(0,v.default)(e)).call(t,(e=>{var{project:t}=e;return t.name})).join("; ")}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},{title:t("System Roles"),dataIndex:"systemRoles",render:e=>{var t;return(0,h.default)(t=e||[]).call(t,(e=>y.default.createElement("div",{key:e.id},e.name)))},stringify:e=>{var t;return(0,h.default)(t=e||[]).call(t,(e=>e.name)).join("; ")}},{title:t("Email"),dataIndex:"email",isHideable:!0},{title:t("phone"),dataIndex:"phone",isHideable:!0},x.enabledColumn]}getColumns(){var e=this.getBaseColumns();return!this.inDetailPage||this.inUserGroupDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projectRoles","projects"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["domainName","projects","projectRoles"]).call(t,e.dataIndex)})):this.inRoleDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projectRoles"]).call(t,e.dataIndex)})):this.inProjectDetail?(0,g.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?D.emptyActionConfig:C.default}get searchFilters(){return[{label:t("User Name"),name:"name"},{label:t("Real Name"),name:"real_name"},{label:t("Enabled"),name:"enabled",options:D.yesNoOptions}]}}a.User=I;var P=(0,j.inject)("rootStore")((0,j.observer)(I));a.default=P},1307:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.roleFilterOption=t.editable=void 0;var i=l(a(198));t.editable=e=>{var{options:{immutable:t}={}}=e||{};return!t&&"true"!==t&&"True"!==t};t.roleFilterOption=(e,t)=>{var a,{label:r=""}=t;return(0,i.default)(a=r.toLowerCase()).call(a,(e||"").toLowerCase())}},1308:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.UserGroups=void 0;var m=p(r(198)),h=p(r(57)),v=p(r(33)),g=p(r(81)),b=p(r(32));r(1270);var y=p(r(1271)),j=p(r(36)),_=p(r(199)),S=p(r(0)),D=r(406),x=p(r(1194)),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=I(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(1238)),R=(r(173),r(334)),w=p(r(1592));function I(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(I=function(e){return e?a:t})(e)}function P(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class U extends x.default{constructor(){super(...arguments),(0,j.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var t;return(0,_.default)(e)?"-":(0,h.default)(t=(0,v.default)(e)).call(t,(t=>{var{project:a,roles:r}=e[t],l=(0,h.default)(r).call(r,(e=>e.name)).join(", "),{id:i,name:n}=a,o=this.getLinkRender("projectDetail",n,{id:i},{tab:"userGroup"});return S.default.createElement("div",{key:t},S.default.createElement(y.default.Text,{strong:!0},o),": ",l)}))},stringify:e=>{var t;return(0,_.default)(e)?"-":(0,h.default)(t=(0,v.default)(e)).call(t,(t=>{var a,{project:r,roles:l}=e[t],i=(0,h.default)(l).call(l,(e=>e.name)).join("|");return(0,g.default)(a="".concat(r.name,": ")).call(a,i)})).join(";")}},{title:t("Roles"),dataIndex:"rolesInProjectDetailPage",isHideable:!0,render:(e,t)=>{var a,{projects:r={}}=t;return(0,_.default)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t}=r[e];return(0,h.default)(t).call(t,(e=>{var{id:t,name:a}=e,r=this.getLinkRender("roleDetail",a,{id:t},{tab:"group"});return S.default.createElement("div",{key:t},r)}))}))},stringify:(e,t)=>{var a,{projects:r={}}=t;return(0,_.default)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{roles:t}=r[e];return(0,h.default)(t).call(t,(e=>e.name)).join(";")}))}},{title:t("Project Scope"),dataIndex:"projectsInRoleDetailPage",isHideable:!0,render:(e,t)=>{var a,{projects:r={}}=t;return(0,_.default)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{project:t}=r[e],{id:a,name:l}=t,i=this.getLinkRender("projectDetail",l,{id:a},{tab:"userGroup"});return S.default.createElement("div",{key:a},i)}))},stringify:(e,t)=>{var a,{projects:r={}}=t;return(0,_.default)(r)?"-":(0,h.default)(a=(0,v.default)(r)).call(a,(e=>{var{project:t}=r[e];return t.name})).join(";")}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]}getColumns(){var e=this.getBaseColumns();return!this.inDetailPage||this.inUserDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["rolesInProjectDetailPage","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["domainName","rolesInProjectDetailPage","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inProjectDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects","projectsInRoleDetailPage"]).call(t,e.dataIndex)})):this.inRoleDetail?(0,b.default)(e).call(e,(e=>{var t;return!(0,m.default)(t=["projects","rolesInProjectDetailPage"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?R.emptyActionConfig:w.default}get searchFilters(){return[{label:t("User Group Name"),name:"name"}]}}a.UserGroups=U;var N=(0,D.inject)("rootStore")((0,D.observer)(U));a.default=N},1348:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(160),p=r(21);c(a,"__esModule",{value:!0}),a.default=a.Projects=void 0;var m=p(r(27)),h=p(r(33)),v=p(r(32)),g=p(r(198)),b=p(r(102)),y=p(r(57)),j=p(r(81)),_=p(r(226));r(1250);var S=p(r(1251)),D=p(r(36)),x=p(r(0)),C=r(406),R=(r(173),p(r(1194))),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=M(t);if(a&&a.has(e))return a.get(e);var r={},l=c&&o;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var n=l?o(e,i):null;n&&(n.get||n.set)?c(r,i,n):r[i]=e[i]}r.default=e,a&&a.set(e,r);return r}(r(407)),I=r(334),P=r(1195),U=r(1220),N=p(r(1595)),T=p(r(3922));function M(e){if("function"!=typeof f)return null;var t=new f,a=new f;return(M=function(e){return e?a:t})(e)}function k(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class G extends R.default{constructor(){super(...arguments),(0,D.default)(this,"getUserProjectRole",(e=>{var t,a,{users:r={},groups:l={}}=e||{},i=[],n=[];return(0,m.default)(t=(0,h.default)(r)).call(t,(e=>{var t=r[e];(0,m.default)(t).call(t,(e=>{n.push({role:e}),i.push(e.id)}))})),(0,m.default)(a=(0,h.default)(l)).call(a,(e=>{var{roles:t,group:a}=l[e],r=(0,v.default)(t).call(t,(e=>!(0,g.default)(i).call(i,e.id)));(0,m.default)(r).call(r,(e=>{var t=(0,b.default)(n).call(n,(t=>t.role.id===e.id));t?t.groups.push(a):n.push({role:e,groups:[a]})}))})),n})),(0,D.default)(this,"updateFetchParams",(e=>{var{match:t}=this.props,{id:a}=t.params||{},r=function(e){for(var t=1;t{var r=this.getUserProjectRole(a),l=(0,y.default)(r).call(r,(e=>{var{role:{id:a,name:r},groups:l=[]}=e;if(!l.length){var i=this.getLinkRender("roleDetail",r,{id:a},{tab:"user"});return x.default.createElement("div",{key:"user-role-".concat(a)},i)}var n=this.getLinkRender("roleDetail",r,{id:a},{tab:"groups"}),o=(0,y.default)(l).call(l,(e=>{var t=this.getLinkRender("groupDetail",e.name,{id:e.id});return x.default.createElement("span",{style:{marginRight:"8px"}},t)}));return x.default.createElement("div",{key:"group-role-".concat(a)},n," (",t("authorized by group "),o,")")}));return x.default.createElement("div",null,l)},stringify:(e,a)=>{var r=this.getUserProjectRole(a);return(0,y.default)(r).call(r,(e=>{var a,r,{role:{name:l},groups:i=[]}=e;if(!i.length)return l;var n=(0,y.default)(i).call(i,(e=>e.name)).join("; ");return(0,j.default)(a=(0,j.default)(r="".concat(l," (")).call(r,t("authorized by group "))).call(a,n,")")})).join("; ")}},a={title:t("Role"),dataIndex:"groupProjectRole",render:(e,t)=>{var a,{groups:r={}}=t;return(0,y.default)(a=(0,h.default)(r)).call(a,(e=>{var t=r[e];return(0,y.default)(t).call(t,(t=>{var a,{id:r,name:l}=t,i=this.getLinkRender("roleDetail",l,{id:r},{tab:"group"});return x.default.createElement("div",{key:(0,j.default)(a="".concat(e,"-")).call(a,r)},i)}))}))},stringify:(e,t)=>{var a,{groups:r={}}=t;return(0,y.default)(a=(0,h.default)(r)).call(a,(e=>{var t=r[e];return(0,y.default)(t).call(t,(e=>e.name)).join(" ; ")}))}};return[{title:t("Project ID/Name"),dataIndex:"name",routeName:"projectDetailAdmin"},e,a,{title:t("Member Num"),dataIndex:"num",isHideable:!0,render:(e,a)=>{var{userCount:r,groupCount:l}=a;return x.default.createElement("div",null,x.default.createElement("span",null,t("User Num: "),r),x.default.createElement(S.default,{type:"vertical",className:T.default["header-divider"]}),x.default.createElement("span",null,t("User Group Num: "),l))},stringify:(e,a)=>{var r,l,i,{userCount:n,groupCount:o}=a;return(0,j.default)(r=(0,j.default)(l=(0,j.default)(i="".concat(t("User Num: "))).call(i,n," | ")).call(l,t("User Group Num: "))).call(r,o)}},{title:t("Affiliated Domain"),dataIndex:"domainName",isHideable:!0},U.enabledColumn,{title:t("Tags"),dataIndex:"tags",render:e=>(0,y.default)(e).call(e,((e,t)=>(0,P.SimpleTag)({tag:e,index:t}))),isHideable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]}getColumns(){var e=this.getBaseColumns();return this.inProject?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["userProjectRole","groupProjectRole"]).call(t,e.dataIndex)})):this.inDomainDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["domainName","userProjectRole","groupProjectRole"]).call(t,e.dataIndex)})):this.inUserDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["num","groupProjectRole"]).call(t,e.dataIndex)})):this.inUserGroupDetail?(0,v.default)(e).call(e,(e=>{var t;return!(0,g.default)(t=["num","userProjectRole"]).call(t,e.dataIndex)})):e}get actionConfigs(){return this.inDetailPage?I.emptyActionConfig:N.default}get searchFilters(){return[{label:t("Project Name"),name:"name"},{label:t("Enabled"),name:"enabled",options:I.yesNoOptions},{label:t("Tags"),name:"tags",filterFunc:(e,t)=>{var a=t.toLowerCase();return(0,_.default)(e).call(e,(e=>{var t;return(0,g.default)(t=e.toLowerCase()).call(t,a)}))}}]}}a.Projects=G;var E=(0,C.inject)("rootStore")((0,C.observer)(G));a.default=E},1588:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3901)),n=l(a(3902)),o=l(a(3903)),u=l(a(3904)),s=l(a(3905)),d={rowActions:{firstAction:o.default,moreActions:[{action:n.default},{action:u.default},{action:s.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=d},1589:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1590)),n=l(a(3907)),o=l(a(1591)),u=l(a(3908)),s=l(a(3909)),d=l(a(3910)),c=l(a(3911)),f={rowActions:{firstAction:o.default,moreActions:[{action:d.default},{action:c.default},{action:n.default},{action:u.default},{action:s.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=f},1590:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var p=f(r(57)),m=f(r(27)),h=f(r(33)),v=f(r(198)),g=f(r(65)),b=f(r(32)),y=f(r(90)),j=f(r(62)),_=f(r(51));r(560);var S=f(r(412)),D=f(r(36)),x=f(r(0)),C=r(406),R=r(1238),w=f(r(1207)),I=r(1193),P=(r(173),r(407)),U=f(r(1244)),N=f(r(1231)),T=r(556),M=r(1220),k=r(1307);function G(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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{var t;return(0,p.default)(t=this.projectRoleList||[]).call(t,(t=>({label:t.name,value:t.id,projectId:e})))})),(0,D.default)(this,"defaultRoles",(()=>[(this.projectRoleList[0]||{}).id])),(0,D.default)(this,"onSelectChange",((e,t,a)=>{var{projectRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]=[],this.setState({projectRoles:r})})),(0,D.default)(this,"renderSelect",(e=>x.default.createElement(S.default,{size:"small",mode:"multiple",options:this.projectRolesList(e),defaultValue:this.defaultRoles(),filterOption:k.roleFilterOption,onChange:(t,a)=>{this.onSelectChange(t,a,e)}}))),(0,D.default)(this,"onChangeProject",(e=>{var t,a,{projectRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles())})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,D.default)(this,"checkName",((e,a)=>{if(!a)return g.default.reject(t("Please input"));var{list:{data:r}}=this.store;return(0,b.default)(r).call(r,(e=>e.name===a))[0]?g.default.reject(t("Invalid: User name can not be duplicated")):g.default.resolve()})),(0,D.default)(this,"onSubmit",function(){var e=(0,_.default)((function*(e){var{projectRoles:t}=a.state;e.defaultRole=a.projectRoleList[0].id,e.projectRoles=t;var{confirmPassword:r,more:l}=e,i=(0,j.default)(e,["confirmPassword","more"]);return a.store.create(i)}));return function(t){return e.apply(this,arguments)}}()),this.state={domain:"default",more:!1,projectRoles:{}}}init(){this.store=w.default,this.userGroupStore=new R.GroupStore,this.projectStore=new P.ProjectStore,this.roleStore=U.default,this.getUserGroups(),this.getProjects(),this.getRoles(),this.getDomains()}getDomains(){N.default.fetchDomain()}getUserGroups(){this.userGroupStore.fetchList({withRole:!1})}getProjects(){this.projectStore.fetchList({withRole:!1})}getRoles(){this.roleStore.fetchList()}static allowed(e,t){var{match:{path:a}}=t;return(0,y.default)(a).call(a,"domain-admin/detail")>=0?g.default.resolve(!1):g.default.resolve(!0)}get name(){return t("Create User")}get listUrl(){return this.getRoutePath("user")}get defaultValue(){return{more:!1,enabled:M.statusTypes[0].value,domain_id:"default"}}get projectList(){var e;return(0,p.default)(e=this.projectStore.list.data||[]).call(e,(e=>({label:e.name,value:e.id})))}get userGroupList(){var e;return(0,p.default)(e=this.userGroupStore.list.data||[]).call(e,(e=>E(E({},e),{},{key:e.id})))}get projects(){var e;return(0,p.default)(e=this.projectStore.list.data||[]).call(e,(e=>E(E({},e),{},{key:e.id})))}get leftProjectTable(){return M.nameDomainColumns}get projectRoleList(){return this.roleStore.list.data||[]}get rightProjectTable(){return[...M.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get leftUserGroupTable(){return M.nameDomainColumns}get rightUserGroupTable(){return M.nameDomainColumns}get formItems(){var{more:e}=this.state,a={labelCol:{xs:{span:4},sm:{span:5}},wrapperCol:{xs:{span:16},sm:{span:15}},colNum:2},r=E(E({},(0,M.getDomainFormItem)(this)),a);return[E(E({name:"name",label:t("User Name"),type:"input",validator:this.checkName,extra:t("User name can not be duplicated"),required:!0},a),{},{maxLength:30}),E({name:"email",label:t("Email"),type:"input",required:!0,validator:T.emailValidate},a),E({name:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,T.getPasswordOtherRule)("password")},a),E({name:"phone",label:t("Phone"),type:"phone",required:!0,validator:T.phoneNumberValidate},a),E({name:"confirmPassword",label:t("Confirm Password"),type:"input-password",required:!0,dependencies:["password"],otherRule:(0,T.getPasswordOtherRule)("confirmPassword")},a),r,E({name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:M.statusTypes,required:!0},a),E({name:"description",label:t("Description"),type:"textarea"},a),E(E({name:"real_name",label:t("Real Name"),type:"input",required:!0},a),{},{maxLength:30}),{type:"divider"},{name:"more",label:t("Advanced Options"),type:"more"},{name:"select_project",label:t("Select Project"),type:"transfer",leftTableColumns:this.leftProjectTable,rightTableColumns:this.rightProjectTable,dataSource:this.projects,showSearch:!0,hidden:!e,onChange:this.onChangeProject,filterOption:M.transferFilterOption,loading:this.projectStore.list.isLoading,onRowRight:()=>null},{name:"select_user_group",label:t("Select User Group"),type:"transfer",leftTableColumns:this.leftUserGroupTable,rightTableColumns:this.rightUserGroupTable,dataSource:this.userGroupList,showSearch:!0,hidden:!e,filterOption:M.transferFilterOption,loading:this.userGroupStore.list.isLoading}]}}a.Create=F,(0,D.default)(F,"id","user-create"),(0,D.default)(F,"title",t("Create User")),(0,D.default)(F,"path","/identity/user-admin/create"),(0,D.default)(F,"policy",["identity:create_user","identity:update_user","identity:list_roles"]),(0,D.default)(F,"allowed",(()=>g.default.resolve(!0)));var A=(0,C.inject)("rootStore")((0,C.observer)(F));a.default=A},1591:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(102)),u=i(r(81)),s=i(r(36)),d=r(406),c=r(1193),f=i(r(1207)),p=r(556),m=i(r(674));class h extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store,{id:l}=this.item;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==l))?n.default.reject(t("Invalid: User name can not be duplicated")):n.default.resolve()})),(0,s.default)(this,"onSubmit",(e=>{var{email:t,phone:a,real_name:r,description:l,name:i}=e,{id:n}=this.item;return f.default.edit(n,{email:t,phone:a,real_name:r,description:l,name:i})}))}init(){this.store=f.default}static allowed(){return n.default.resolve(!0)}get actionName(){return t("Edit User")}get defaultValue(){var e,{name:t,email:a,phone:r,real_name:l,description:i,domain:n,domain_id:o}=this.item,s=(0,m.default)(r||"","CN")||{countryCallingCode:"86",nationalNumber:""},{countryCallingCode:d,nationalNumber:c}=s;return{name:t,domainName:(n||{}).name||o,email:a,phone:(0,u.default)(e="+".concat(d," ")).call(e,c),real_name:l,description:i}}get formItems(){return[{name:"name",label:t("User Name"),type:"input",placeholder:t("Please input user name"),validator:this.checkName,extra:t("User")+t("Name can not be duplicated"),required:!0},{name:"email",label:t("Email"),type:"input",validator:p.emailValidate,required:!0},{name:"phone",label:t("Phone"),type:"phone",required:!0,validator:p.phoneNumberValidate},{name:"real_name",label:t("Real Name"),type:"input",required:!0},{name:"domainName",label:t("Affiliated Domain"),type:"input",disabled:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=h,(0,s.default)(h,"id","user-edit"),(0,s.default)(h,"title",t("Edit")),(0,s.default)(h,"policy","identity:update_user");var v=(0,d.inject)("rootStore")((0,d.observer)(h));a.default=v},1592:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1593)),n=l(a(3912)),o=l(a(1594)),u=l(a(3913)),s={rowActions:{firstAction:o.default,moreActions:[{action:u.default},{action:n.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=s},1593:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(102)),u=i(r(36)),s=r(406),d=r(1193),c=i(r(1231)),f=i(r(1238)),p=r(1220);class m extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r=[]}={}}=this.store;return(0,o.default)(r).call(r,(e=>e.name===a))?n.default.reject(t("Invalid: User Group name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=f.default,this.domainStore=c.default,this.domainStore.fetchDomain()}static allowed(){return n.default.resolve(!0)}get name(){return t("Create User Group")}get defaultValue(){return{domain_id:"default"}}get formItems(){var e=(0,p.getDomainFormItem)(this);return[{name:"name",label:t("User Group Name"),type:"input",placeholder:t("Please input name"),required:!0,validator:this.checkName,extra:t("User Groups")+t("Name can not be duplicated"),maxLength:30},e,{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=m,(0,u.default)(m,"id","user-group-create"),(0,u.default)(m,"title",t("Create User Group")),(0,u.default)(m,"policy","identity:create_group");var h=(0,s.inject)("rootStore")((0,s.observer)(m));a.default=h},1594:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(102)),u=i(r(36)),s=r(406),d=r(1193),c=i(r(1238));class f extends d.ModalAction{constructor(){super(...arguments),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store,{id:l}=this.item;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==l))?n.default.reject(t("Invalid: User Group name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>{var{description:t,name:a}=e,{id:r}=this.item;return c.default.edit({id:r,description:t,name:a})}))}init(){this.store=c.default}static allowed(){return n.default.resolve(!0)}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("User Group Name"),type:"input",placeholder:t("Please input name"),required:!0,validator:this.checkName,extra:t("User Groups")+t("Name can not be duplicated")},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=f,(0,u.default)(f,"id","user-group-edit"),(0,u.default)(f,"title",t("Edit")),(0,u.default)(f,"policy","identity:update_group");var p=(0,s.inject)("rootStore")((0,s.observer)(f));a.default=p},1595:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3914)),n=l(a(1596)),o=l(a(3915)),u=l(a(3916)),s=l(a(1597)),d=l(a(3917)),c=l(a(3918)),f=l(a(3919)),p=l(a(3920)),m={rowActions:{firstAction:n.default,moreActions:[{action:i.default},{action:f.default},{action:d.default},{action:c.default},{action:o.default},{action:u.default},{action:p.default}]},batchActions:[i.default],primaryActions:[s.default]};t.default=m},1596:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.EditForm=void 0;var n=i(r(65)),o=i(r(102)),u=i(r(81)),s=i(r(36)),d=r(406),c=r(1193),f=i(r(407));class p extends c.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{list:{data:r}}=this.store;return(0,o.default)(r).call(r,(e=>e.name===a&&e.id!==this.item.id))?n.default.reject(t("Invalid: Project name can not be duplicated")):n.default.resolve()})),(0,s.default)(this,"onSubmit",(e=>{var{description:t,name:a}=e,{id:r}=this.item;return f.default.edit({id:r,description:t,name:a})}))}init(){this.store=f.default,this.store.fetchList()}static allowed(){return n.default.resolve(!0)}get name(){var e,{name:a}=this.item;return(0,u.default)(e="".concat(t("Edit")," ")).call(e,a)}get defaultValue(){var{name:e,description:t,enabled:a}=this.item;return{name:e,description:t,enabled:a}}get formItems(){return[{name:"name",label:t("Name"),type:"input",value:this.item.name,validator:this.checkName,extra:t("Project")+t("Name can not be duplicated")},{name:"description",label:t("Description"),type:"textarea"}]}}a.EditForm=p,(0,s.default)(p,"id","project-edit"),(0,s.default)(p,"title",t("Edit")),(0,s.default)(p,"policy","identity:update_project");var m=(0,d.inject)("rootStore")((0,d.observer)(p));a.default=m},1597:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(32)),u=i(r(36)),s=r(406),d=r(1193),c=i(r(1231)),f=i(r(407)),p=r(556),m=r(1220);class h extends d.ModalAction{constructor(e){super(e),(0,u.default)(this,"checkName",((e,a)=>{if(!a)return n.default.reject(t("Please input"));var{nameRegexWithoutChinese:r}=p.regex;if(!r.test(a))return n.default.reject(t("Invalid: Project name can not be chinese"));var{list:{data:l}}=this.projectStore;return(0,o.default)(l).call(l,(e=>e.name===a))[0]?n.default.reject(t("Invalid: Project name can not be duplicated")):n.default.resolve()})),(0,u.default)(this,"onSubmit",(e=>(e.enabled=e.enabled.value,this.projectStore.create(e)))),this.state={domain:null,newUserRoles:{},newGroupRoles:{}}}init(){this.domainStore=c.default,this.projectStore=f.default,this.getDomains()}getDomains(){this.domainStore.fetchDomain()}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Project")}get defaultValue(){return{domain_id:"default",enabled:m.statusTypes[0]}}get formItems(){var e=(0,m.getDomainFormItem)(this);return[{name:"name",label:t("Name"),type:"input",required:!0,placeholder:t("Please input name"),validator:this.checkName,extra:t("Project")+t("Name can not be duplicated"),maxLength:30},e,{name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:m.statusTypes,required:!0,isWrappedValue:!0,tip:t("Disabling the project will have a negative impact. If the users associated with the project are only assigned to the project, they will not be able to log in")},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=h,(0,u.default)(h,"id","project-create"),(0,u.default)(h,"title",t("Create Project")),(0,u.default)(h,"policy",["identity:create_project","identity:list_domains","identity:list_roles","identity:list_users"]);var v=(0,s.inject)("rootStore")((0,s.observer)(h));a.default=v},1599:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(3959)),n=l(a(3960)),o={rowActions:{firstAction:l(a(3961)).default,moreActions:[{action:n.default}]},batchActions:[n.default],primaryActions:[i.default]};t.default=o},3898:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(413)),n=l(a(3899)),o=e=>(0,i.default)(n.default,e);t.default=o},3899:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=void 0;var i=l(a(1212)),n=l(a(567)),o=l(a(3900)),u=l(a(3906)),s=l(a(1348)),d=l(a(1597)),c=l(a(1596)),f=l(a(3924)),p=l(a(1306)),m=l(a(1590)),h=l(a(1591)),v=l(a(3928)),g=l(a(1308)),b=l(a(1593)),y=l(a(1594)),j=l(a(3957)),_=l(a(3958)),S=l(a(3962)),D="/identity",x=[{path:D,component:i.default,routes:[{path:"".concat(D,"/domain-admin"),component:o.default,exact:!0},{path:"".concat(D,"/domain-admin/detail/:id"),component:u.default,exact:!0},{path:"".concat(D,"/project"),component:s.default,exact:!0},{path:"".concat(D,"/project-admin"),component:s.default,exact:!0},{path:"".concat(D,"/project/create"),component:d.default,exact:!0},{path:"".concat(D,"/project-admin/create"),component:d.default,exact:!0},{path:"".concat(D,"/project/edit/:id"),component:c.default,exact:!0},{path:"".concat(D,"/project-admin/edit/:id"),component:c.default,exact:!0},{path:"".concat(D,"/user"),component:p.default,exact:!0},{path:"".concat(D,"/user-admin"),component:p.default,exact:!0},{path:"".concat(D,"/user-admin/create"),component:m.default,exact:!0},{path:"".concat(D,"/user-admin/edit/:id"),component:h.default,exact:!0},{path:"".concat(D,"/user-admin/detail/:id"),component:v.default,exact:!0},{path:"".concat(D,"/user-group-admin"),component:g.default,exact:!0},{path:"".concat(D,"/user-group-admin/detail/:id"),component:j.default,exact:!0},{path:"".concat(D,"/user-group-admin/create"),component:b.default,exact:!0},{path:"".concat(D,"/user-group-admin/edit/:id"),component:y.default,exact:!0},{path:"".concat(D,"/role-admin"),component:_.default,exact:!0},{path:"".concat(D,"/role-admin/detail/:id"),component:S.default,exact:!0},{path:"".concat(D,"/project/detail/:id"),component:f.default,exact:!0},{path:"".concat(D,"/project-admin/detail/:id"),component:f.default,exact:!0},{path:"*",component:n.default}]}];t.default=x},3900:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Domains=void 0;var n=i(r(36)),o=r(406),u=i(r(1194)),s=i(r(1231)),d=r(1220),c=i(r(1588));class f extends u.default{constructor(){super(...arguments),(0,n.default)(this,"getColumns",(()=>[{title:t("Domain ID/Name"),dataIndex:"name",routeName:"domainDetailAdmin"},{title:t("Project Num"),dataIndex:"projectCount",isHideable:!0},{title:t("User Num"),dataIndex:"userCount",isHideable:!0},{title:t("User Group Num"),dataIndex:"groupCount",isHideable:!0},d.enabledColumn,{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=s.default}get policy(){return"identity:list_domains"}get name(){return t("domains")}get isFilterByBackend(){return!1}get actionConfigs(){return c.default}get searchFilters(){return[{label:t("Domain Name"),name:"name"}]}}a.Domains=f;var p=(0,o.inject)("rootStore")((0,o.observer)(f));a.default=p},3901:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(36)),u=r(406),s=i(r(1231)),d=r(1193),c=r(1220);class f extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>(e.enabled=e.enabled.value,this.store.create(e))))}init(){this.store=s.default}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Domain")}get defaultValue(){return{enabled:c.statusTypes[0]}}get formItems(){return[{name:"name",label:t("Name"),type:"input",placeholder:t("Please input name"),required:!0,help:t("The name cannot be modified after creation")},{name:"description",label:t("Description"),type:"textarea"},{name:"enabled",label:t("Status"),type:"radio",optionType:"default",options:c.statusTypes,required:!0,isWrappedValue:!0,help:t("Forbidden the domain will have a negative impact, all project and user in domain will be forbidden")}]}}a.Create=f,(0,o.default)(f,"id","domain-create"),(0,o.default)(f,"title",t("Create Domain")),(0,o.default)(f,"policy","identity:create_domain");var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3902:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(1231));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_domain"),(0,n.default)(this,"allowedCheckFunc",(e=>!e.enabled)),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Domain")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete domain")}}a.default=s},3903:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var p=f(r(65)),m=f(r(51)),h=f(r(36)),v=r(406),g=r(1193),b=f(r(1231));function y(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(r).call(r,(function(t){return o(e,t).enumerable}))),a.push.apply(a,r)}return a}class j extends g.ModalAction{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"onSubmit",function(){var t=(0,m.default)((function*(t){var{id:a}=e.item;return e.store.edit(function(e){for(var t=1;t!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable Domain")}get buttonText(){return t("Enable")}get actionName(){return t("Enable Domain")}isEnable(e){return!0!==e.enabled}}a.default=s},3905:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(57)),o=i(r(36)),u=i(r(91)),s=r(1193),d=i(r(1231));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_domain"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,u.default)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden domain { name }? Forbidden the domain will have negative effect, and users associated with the domain will not be able to log in if they are only assigned to the domain",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden Domain")}get buttonText(){return t("Forbidden")}get actionName(){return t("Forbidden Domain")}get isDanger(){return!0}isForbidden(e){return!1!==e.enabled}}a.default=c},3906:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.DomainDetail=void 0;var n=r(406),o=r(1231),u=i(r(1200)),s=r(1220),d=i(r(1306)),c=i(r(1308)),f=i(r(1348)),p=i(r(1588));class m extends u.default{get name(){return t("domain")}get policy(){return"identity:get_domain"}get listUrl(){return this.getRoutePath("domain")}get actionConfigs(){return p.default}get detailInfos(){return[{title:t("Domain Name"),dataIndex:"name"},s.enabledColumn,{title:t("Project Num"),dataIndex:"projectCount"},{title:t("User Num"),dataIndex:"userCount"},{title:t("User Group Num"),dataIndex:"groupCount"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Projects"),key:"project",component:f.default},{title:t("Users"),key:"user",component:d.default},{title:t("User Groups"),key:"userGroup",component:c.default}]}init(){this.store=new o.DomainStore}}a.DomainDetail=m;var h=(0,n.inject)("rootStore")((0,n.observer)(m));a.default=h},3907:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(1207));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_user"),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete User")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete user")}}a.default=s},3908:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(1207));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:update_user"),(0,n.default)(this,"allowedCheckFunc",(e=>!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable User")}get buttonText(){return t("Enable")}get actionName(){return t("Enable User")}isEnable(e){return!e.enabled}}a.default=s},3909:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(57)),o=i(r(36)),u=i(r(91)),s=r(1193),d=i(r(1207));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_user"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,u.default)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden user { name }? Forbidden the user will not allow login in ",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden User")}get buttonText(){return t("Forbidden")}get isDanger(){return!0}get actionName(){return t("Forbidden User")}isForbidden(e){return!!e.enabled}}a.default=c},3910:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.SystemRole=void 0;var n=i(r(57)),o=i(r(27)),u=i(r(198)),s=i(r(65)),d=i(r(90)),c=i(r(51)),f=i(r(36)),p=r(406),m=r(1193),h=r(1207),v=i(r(1244));class g extends m.ModalAction{constructor(){var e;super(...arguments),e=this,(0,f.default)(this,"onSubmit",function(){var t=(0,c.default)((function*(t){var{role:a}=t,{systemRoles:r,id:l}=e.item,i=[],d=a?[a]:[],c=(0,n.default)(r).call(r,(e=>e.id));return(0,o.default)(r).call(r,(t=>{var{id:a}=t;(0,u.default)(d).call(d,a)||i.push(e.store.deleteSystemRole({id:l,roleId:a}))})),(0,o.default)(d).call(d,(t=>{(0,u.default)(c).call(c,t)||i.push(e.store.assignSystemRole({id:l,roleId:t}))})),yield s.default.all(i)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=new h.UserStore,this.roleStore=v.default,this.getRoleList()}getRoleList(){this.roleStore.fetchSystemRoles()}get name(){return t("edit system permission")}get rolesList(){var e;return(0,n.default)(e=this.roleStore.systemRoles.data||[]).call(e,(e=>({label:e.name,value:e.id})))}get defaultValue(){var{name:e,systemRoles:t=[]}=this.item,a=(0,n.default)(t).call(t,(e=>e.id))[0];return a?{name:e,role:a}:{name:e}}static allowed(e,t){var{match:{path:a=""}={}}=t||{};return(0,d.default)(a).call(a,"domain-admin/detail")>=0?s.default.resolve(!1):s.default.resolve(!0)}get formItems(){return[{name:"name",label:t("User"),type:"label",iconType:"user"},{name:"role",label:t("Role"),type:"select",options:this.rolesList,loading:this.roleStore.systemRoles.isLoading}]}}a.SystemRole=g,(0,f.default)(g,"id","edit-system-permission"),(0,f.default)(g,"title",t("Edit System Permission")),(0,f.default)(g,"policy","identity:list_roles");var b=(0,p.inject)("rootStore")((0,p.observer)(g));a.default=b},3911:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Password=void 0;var n=i(r(65)),o=i(r(36)),u=r(406),s=r(1193),d=r(556),c=i(r(1207));class f extends s.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>{var{id:t}=this.item,{password:a}=e;return c.default.changePassword({id:t,password:a})}))}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:"password",label:t("Password"),type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("password")},{name:"confirmPassword",label:t("Confirm Password"),dependencies:["password"],type:"input-password",required:!0,otherRule:(0,d.getPasswordOtherRule)("confirmPassword")}]}}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","identity:update_user"),(0,o.default)(f,"allowed",(()=>n.default.resolve(!0)));var p=(0,u.inject)("rootStore")((0,u.observer)(f));a.default=p},3912:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(1238));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_group"),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Group")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete group")}}a.default=s},3913:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUser=void 0;var p=f(r(27)),m=f(r(90)),h=f(r(65)),v=f(r(57)),g=f(r(51)),b=f(r(36)),y=r(406),j=r(1207),_=r(1238),S=r(1193),D=r(1220);function x(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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{-1===(0,m.default)(r).call(r,t)&&i.push(e.store.deleteGroupUsers({id:l,userId:t}))})),(0,p.default)(r).call(r,(t=>{var a;-1===(0,m.default)(a=e.groupUsers).call(a,t)&&i.push(e.store.addGroupUsers({id:l,userId:t}))})),yield h.default.all(i)}));return function(e){return t.apply(this,arguments)}}())}get name(){return t("Manage user")}static get modalSize(){return"large"}getModalSize(){return"large"}init(){var e=this;return(0,g.default)((function*(){e.state.groupUsers=[],e.store=new _.GroupStore,e.userStore=new j.UserStore,e.getGroupUsers(),e.getAllUser()}))()}getAllUser(){this.userStore.fetchList({withProjectRole:!1,withSystemRole:!1})}getGroupUsers(){var e=this;return(0,g.default)((function*(){yield e.store.fetchGroupUsers(e.item),e.setState({groupUsers:e.groupUsers}),e.updateDefaultValue()}))()}get userList(){var e=this.userStore.list.data||[];return(0,v.default)(e).call(e,(e=>C(C({},e),{},{key:e.id})))}get groupUsers(){var e;return(0,v.default)(e=this.store.groupUsers||[]).call(e,(e=>e.id))}get leftUserTable(){return D.nameDomainColumns}get rightUserTable(){return D.nameDomainColumns}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t,select_user:this.groupUsers}}get formItems(){return[{name:"name",type:"label",label:t("Name"),iconType:"group"},{name:"domain",type:"label",label:t("Domain")},{name:"select_user",type:"transfer",label:t("User"),leftTableColumns:this.leftUserTable,rightTableColumns:this.rightUserTable,dataSource:this.userList,disabled:!1,showSearch:!0,filterOption:D.transferFilterOption,loading:this.userStore.list.isLoading}]}}a.ManageUser=R,(0,b.default)(R,"id","manage-user"),(0,b.default)(R,"title",t("Manage User")),(0,b.default)(R,"policy",["identity:list_users_in_group","identity:list_users_in_group","identity:add_user_to_group"]),(0,b.default)(R,"allowed",(()=>h.default.resolve(!0)));var w=(0,y.inject)("rootStore")((0,y.observer)(R));a.default=w},3914:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(407));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_project"),(0,n.default)(this,"submitErrorMsg",((e,a)=>{var r=this.getName(e);return 400===a.status&&a.reason&&403===a.reason.code&&/^Resource(.*?)exists$/.test(a.reason.message)?t("There are resources under the project and cannot be deleted."):t("Unable to {action} {name}.",{action:this.actionName||this.title,name:r})})),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Project")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete project")}}a.default=s},3915:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(407));class s extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:update_project"),(0,n.default)(this,"allowedCheckFunc",(e=>!e||this.isEnable(e))),(0,n.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return u.default.enable({id:e})}))}get id(){return"Enable"}get title(){return t("Enable Project")}get buttonText(){return t("Enable")}get actionName(){return t("Enable Project")}isEnable(e){return!0!==e.enabled}}a.default=s},3916:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(57)),o=i(r(36)),u=i(r(91)),s=r(1193),d=i(r(407));class c extends s.ConfirmAction{constructor(){super(...arguments),(0,o.default)(this,"policy","identity:update_project"),(0,o.default)(this,"allowedCheckFunc",(e=>!e||this.isForbidden(e))),(0,o.default)(this,"confirmContext",(e=>{var a=(0,u.default)(e)?(0,n.default)(e).call(e,(e=>e.name)).join(","):e.name;return t("Are you sure to forbidden project { name }? Forbidden the project will have negative effect, and users associated with the project will not be able to log in if they are only assigned to the project",{name:a})})),(0,o.default)(this,"onSubmit",(()=>{var{id:e}=this.item;return d.default.forbidden({id:e})}))}get id(){return"Forbidden"}get title(){return t("Forbidden Project")}get buttonText(){return t("Forbidden")}get actionName(){return t("Forbidden Project")}get isDanger(){return!0}isForbidden(e){return!1!==e.enabled}}a.default=c},3917:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUser=void 0;var p=f(r(57)),m=f(r(27)),h=f(r(33)),v=f(r(198)),g=f(r(65)),b=f(r(174)),y=f(r(51));r(560);var j=f(r(412)),_=f(r(36)),S=f(r(0)),D=r(406),x=(r(173),f(r(407))),C=r(1207),R=r(1244),w=r(1193),I=r(1220),P=r(1307);function U(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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 t;return(0,p.default)(t=this.projectRoleList).call(t,(t=>({label:t.name,value:t.id,key:t.id,user_id:e})))})),(0,_.default)(this,"defaultRoles",(e=>{var t,{users:a}=this.item;return a[e]?(0,p.default)(t=a[e]).call(t,(e=>e.id)):[this.projectRoleList[0].id]})),(0,_.default)(this,"renderSelect",(e=>S.default.createElement(j.default,{size:"small",mode:"multiple",options:this.userRolesList(e),defaultValue:this.defaultRoles(e),filterOption:P.roleFilterOption,onChange:(t,a)=>{this.onSelectChange(t,a,e)}}))),(0,_.default)(this,"onSelectChange",((e,t,a)=>{var{userRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]=[],this.setState({userRoles:r})})),(0,_.default)(this,"onChangeUser",(e=>{var t,a,{userRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles(e))})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,_.default)(this,"onSubmit",(0,y.default)((function*(){var t,a,{userRoles:r}=e.state,{id:l}=e.item,i=e.getInitRoleMap(),n=[];return(0,m.default)(t=(0,h.default)(i)).call(t,(e=>{var t;(0,m.default)(t=i[e]||[]).call(t,(t=>{var a=r[e]||[];(0,v.default)(a).call(a,t)||n.push(x.default.removeUserRole({id:l,userId:e,roleId:t}))}))})),(0,m.default)(a=(0,h.default)(r)).call(a,(e=>{var t,a=i[e]||[];(0,m.default)(t=r[e]).call(t,(t=>{(0,v.default)(a).call(a,t)||n.push(x.default.assignUserRole({id:l,userId:e,roleId:t}))}))})),yield g.default.all(n)})))}get name(){return t("Manage user")}init(){var e=this;return(0,y.default)((function*(){e.state.userRoles=e.getInitRoleMap(),e.store=new R.RoleStore,e.userStore=new C.UserStore,e.getRoleList(),e.getUser()}))()}getRoleList(){return this.store.fetchList()}getUser(){this.userStore.fetchList({withProjectRole:!1,withSystemRole:!1})}getInitRoleMap(){var e,{users:t={}}=this.item;return(0,b.default)(e=(0,h.default)(t)).call(e,((e,a)=>{var r;return e[a]=(0,p.default)(r=t[a]).call(r,(e=>e.id)),e}),{})}static get modalSize(){return"large"}getModalSize(){return"large"}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get userList(){var e=this.userStore.list.data||[];return(0,p.default)(e).call(e,(e=>N(N({},e),{},{key:e.id})))}get projectRoleList(){return this.store.list.data||[]}get leftUserTable(){return I.nameDomainColumns}get rightUserTable(){return[...I.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t}}get formItems(){var{users:e}=this.item;return[{name:"name",type:"label",label:t("Name"),iconType:"project"},{name:"domain",type:"label",label:t("Domain")},{name:"select_user",type:"transfer",label:t("User"),leftTableColumns:this.leftUserTable,rightTableColumns:this.rightUserTable,dataSource:this.userList,showSearch:!0,oriTargetKeys:e?(0,h.default)(e):[],onChange:this.onChangeUser,filterOption:I.transferFilterOption,wrapperCol:this.wrapperCol,loading:this.userStore.list.isLoading,onRowRight:()=>null}]}}a.ManageUser=T,(0,_.default)(T,"id","management-user"),(0,_.default)(T,"title",t("Manage User")),(0,_.default)(T,"policy","identity:update_project"),(0,_.default)(T,"allowed",(()=>g.default.resolve(!0)));var M=(0,D.inject)("rootStore")((0,D.observer)(T));a.default=M},3918:function(e,a,r){"use strict";var l=r(33),i=r(44),n=r(32),o=r(25),u=r(27),s=r(45),d=r(46),c=r(19),f=r(21);c(a,"__esModule",{value:!0}),a.default=a.ManageUserGroup=void 0;var p=f(r(57)),m=f(r(27)),h=f(r(33)),v=f(r(198)),g=f(r(65)),b=f(r(174)),y=f(r(51));r(560);var j=f(r(412)),_=f(r(36)),S=f(r(0)),D=r(406),x=(r(173),f(r(407))),C=r(1238),R=f(r(1244)),w=r(1193),I=r(1220),P=r(1307);function U(e,t){var a=l(e);if(i){var r=i(e);t&&(r=n(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 t;return(0,p.default)(t=this.projectRoleList).call(t,(t=>({label:t.name,value:t.id,key:t.id,groupId:e})))})),(0,_.default)(this,"defaultRoles",(e=>{var t,{groups:a}=this.item;return a[e]?(0,p.default)(t=a[e]).call(t,(e=>e.id)):[this.projectRoleList[0].id]})),(0,_.default)(this,"renderSelect",(e=>S.default.createElement(j.default,{size:"small",mode:"multiple",options:this.groupRolesList(e),defaultValue:this.defaultRoles(e),filterOption:P.roleFilterOption,onChange:(t,a)=>{this.onSubChange(t,a,e)}}))),(0,_.default)(this,"onSubChange",((e,t,a)=>{var{groupRoles:r}=this.state;e.length&&t.length?r[a]=e:r[a]={},this.setState({groupRoles:r})})),(0,_.default)(this,"onChangeUserGroup",(e=>{var t,a,{groupRoles:r}=this.state;(0,m.default)(t=e||[]).call(t,(e=>{r[e]||(r[e]=this.defaultRoles(e))})),(0,m.default)(a=(0,h.default)(r)).call(a,(t=>{var a;(0,v.default)(a=e||[]).call(a,t)||delete r[t]})),this.setState(r)})),(0,_.default)(this,"onSubmit",(0,y.default)((function*(){var t,a,{groupRoles:r={}}=e.state,{id:l}=e.item,i=e.getInitRoleMap(),n=[];return(0,m.default)(t=(0,h.default)(i)).call(t,(e=>{var t;(0,m.default)(t=i[e]||[]).call(t,(t=>{var a=r[e]||[];(0,v.default)(a).call(a,t)||n.push(x.default.removeGroupRole({id:l,groupId:e,roleId:t}))}))})),(0,m.default)(a=(0,h.default)(r)).call(a,(e=>{var t,a=i[e]||[];(0,m.default)(t=r[e]).call(t,(t=>{(0,v.default)(a).call(a,t)||n.push(x.default.assignGroupRole({id:l,groupId:e,roleId:t}))}))})),yield g.default.all(n)})))}init(){var e=this;return(0,y.default)((function*(){e.state.groupRoles=e.getInitRoleMap(),e.userGroupStore=new C.GroupStore,e.store=R.default,e.getRoleList(),e.getGroupGroup()}))()}get name(){return t("Manage user group")}getInitRoleMap(){var e,{groups:t={}}=this.item;return(0,b.default)(e=(0,h.default)(t)).call(e,((e,a)=>{var r;return e[a]=(0,p.default)(r=t[a]).call(r,(e=>e.id)),e}),{})}getGroupGroup(){this.userGroupStore.fetchList()}getRoleList(){this.store.fetchList()}static get modalSize(){return"large"}getModalSize(){return"large"}get labelCol(){return{xs:{span:4},sm:{span:2}}}get wrapperCol(){return{xs:{span:20},sm:{span:20}}}get groupList(){var e;return(0,p.default)(e=this.userGroupStore.list.data||[]).call(e,(e=>N(N({},e),{},{key:e.id})))}get projectRoleList(){return this.store.list.data||[]}get leftGroupGroupTable(){return I.nameDomainColumns}get rightGroupGroupTable(){return[...I.nameDomainColumns,{title:t("Select Project Role"),dataIndex:"id",render:e=>this.renderSelect(e)}]}get defaultValue(){var{name:e,domainName:t}=this.item;return{name:e,domain:t}}get formItems(){var{groups:e}=this.item;return[{name:"name",type:"label",label:t("Name"),iconType:"project"},{name:"domain",type:"label",label:t("Domain")},{name:"select_group",label:t("User Group"),type:"transfer",leftTableColumns:this.leftGroupGroupTable,rightTableColumns:this.rightGroupGroupTable,dataSource:this.groupList,disabled:!1,showSearch:!0,oriTargetKeys:e?(0,h.default)(e):[],filterOption:I.transferFilterOption,onChange:this.onChangeUserGroup,wrapperCol:this.wrapperCol,loading:this.userGroupStore.list.isLoading,onRowRight:()=>null}]}}a.ManageUserGroup=T,(0,_.default)(T,"id","manage-group-group"),(0,_.default)(T,"title",t("Manage User Group")),(0,_.default)(T,"policy","identity:update_project"),(0,_.default)(T,"allowed",(()=>g.default.resolve(!0)));var M=(0,D.inject)("rootStore")((0,D.observer)(T));a.default=M},3919:function(e,a,r){"use strict";var l=r(160),i=r(19),n=r(25),o=r(21);i(a,"__esModule",{value:!0}),a.default=a.ManageQuota=void 0;var u=o(r(65)),s=o(r(27)),d=o(r(33)),c=o(r(102)),f=o(r(57)),p=o(r(62)),m=o(r(51)),h=o(r(36)),v=r(406),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=S(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 u=l?n(e,o):null;u&&(u.get||u.set)?i(r,o,u):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(r(407)),b=o(r(0)),y=r(1193),j=r(566),_=r(1393);function S(e){if("function"!=typeof l)return null;var t=new l,a=new l;return(S=function(e){return e?a:t})(e)}class D extends y.ModalAction{constructor(){var e;super(...arguments),e=this,(0,h.default)(this,"checkMin",((e,a)=>{var{quota:r}=this.projectStore,{field:l}=e,{used:i}=r[l];return a({name:e,label:"",type:"label",content:b.default.createElement("div",{style:{textAlign:"center",fontWeight:"bolder"}},t),wrapperCol:{span:24},hidden:a}))),(0,h.default)(this,"onSubmit",function(){var t=(0,m.default)((function*(t){return e.store.updateProjectQuota(t)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=g.default,this.projectStore=new g.ProjectStore,this.volumeTypeStore=new j.VolumeTypeStore,this.getData()}get name(){return t("Edit quota")}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get enableShare(){return this.props.rootStore.checkEndpoint("manilav2")}get enableZun(){return this.props.rootStore.checkEndpoint("zun")}get enableTrove(){return this.props.rootStore.checkEndpoint("trove")&&this.props.rootStore.hasAdminOnlyRole}getData(){var e=this;return(0,m.default)((function*(){var{id:t}=e.item,a=[e.projectStore.fetchProjectQuota({project_id:t})];e.enableCinder&&a.push(e.volumeTypeStore.fetchProjectVolumeTypes(t)),yield u.default.all(a),e.updateDefaultValue()}))()}get tips(){return t("quota set to -1 means there is no quota limit on the current resource")}get defaultValue(){var e,{quota:t={}}=this.projectStore,a={};return(0,s.default)(e=(0,d.default)(t)).call(e,(e=>{var r;if((0,c.default)(r=this.formItems).call(r,(t=>t.name===e))){var{limit:l}=t[e]||{};a[e]=l}})),a}getInputItem(e,t,a){return{name:e,label:t,type:"input-number",labelCol:{span:14},colNum:2,validator:this.checkMin,hidden:a}}get quotaCardList(){var e=[..._.quotaCardList];return this.enableShare&&e.push(_.shareQuotaCard),this.enableZun&&e.push(_.zunQuotaCard),this.enableTrove&&e.push(_.troveQuotaCard),e}getFormItemsByCards(e){var t,a=(0,c.default)(t=this.quotaCardList).call(t,(t=>t.type===e));if(!a)return[];var{type:r,text:l,value:i}=a;return[this.getTitleLabel(r,l),...(0,f.default)(i).call(i,(e=>{var{key:t,text:a}=e;return this.getInputItem(t,a)}))]}getComputeFormItems(){return[...this.getFormItemsByCards("compute"),this.getInputItem("server_group_members",t("Members of Each Server Group"))]}get volumeTypeData(){var{projectVolumeTypes:e=[]}=this.volumeTypeStore;return e}getVolumeTypeFormItems(){var{more:e}=this.state,t=(0,_.getVolumeTypeCards)(this.volumeTypeData),{type:a,text:r,value:l}=t,i=[];return(0,s.default)(l).call(l,(e=>i.push(...e.value))),[this.getTitleLabel(a,r,!e),...(0,f.default)(i).call(i,(t=>this.getInputItem(t.key,t.text,!e)))]}get formItems(){var e=[...this.getComputeFormItems(),...this.getFormItemsByCards("networks")];if(this.enableShare&&e.push(...this.getFormItemsByCards("share")),this.enableZun&&e.push(...this.getFormItemsByCards("zun")),this.enableTrove&&e.push(...this.getFormItemsByCards("trove")),this.enableCinder){var a=this.getFormItemsByCards("storage"),r=this.getVolumeTypeFormItems();e.push(...a),e.push({name:"more",label:t("Advanced Options"),type:"more"},...r)}return e}getSubmitData(e){var{id:t}=this.item,{more:a,compute:r,storage:l,networks:i,volumeTypes:n,share:o,zun:u}=e;return{project_id:t,data:(0,p.default)(e,["more","compute","storage","networks","volumeTypes","share","zun"])}}}a.ManageQuota=D,(0,h.default)(D,"id","quota-management"),(0,h.default)(D,"title",t("Edit Quota")),(0,h.default)(D,"policy",["os_compute_api:os-quota-sets:update","os_compute_api:os-quota-sets:defaults"]),(0,h.default)(D,"allowed",(()=>u.default.resolve(!0)));var x=(0,v.inject)("rootStore")((0,v.observer)(D));a.default=x},3920:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.ModifyTags=void 0;var n=i(r(65)),o=i(r(226)),u=i(r(198)),s=i(r(36)),d=i(r(202)),c=i(r(0)),f=r(406),p=r(1193),m=i(r(1543)),h=i(r(3921));class v extends p.ModalAction{constructor(){super(...arguments),(0,s.default)(this,"onSubmit",(e=>h.default.update({project_id:this.props.item.id},e)))}get name(){return t("modify project tags")}init(){this.state={tags:this.props.item.tags}}get formItems(){var{tags:e}=this.state;return[{name:"tags",label:t("Tags"),component:c.default.createElement(m.default,{tags:e}),validator:(e,a)=>{var r=this.props.item.tags||[];if((0,d.default)(a,r))return n.default.resolve(!0);var l="";return(0,o.default)(a).call(a,(e=>{var t=(0,u.default)(e).call(e,"/")||(0,u.default)(e).call(e,",");return t&&(l=e),t}))?n.default.reject(new Error(t("Invalid Tag Value: {tag}",{tag:l}))):(0,o.default)(r).call(r,(function(e){return(0,o.default)(a).call(a,(t=>{var a=e!==t&&t.toLowerCase()===e.toLowerCase();return a&&(l=t),a}))}))?n.default.reject(new Error(t("Duplicate tag name: {tag}",{tag:l}))):n.default.resolve(!0)},extra:c.default.createElement("div",null,c.default.createElement("div",null,"1. ",t("Tags are not case sensitive")),c.default.createElement("div",null,"2. ",t("Forward Slash ‘/’ is not allowed to be in a tag name")),c.default.createElement("div",null,"3."," ",t("Commas ‘,’ are not allowed to be in a tag name in order to simplify requests that specify lists of tags")))}]}}a.ModifyTags=v,(0,s.default)(v,"id","modify-project-tags"),(0,s.default)(v,"title",t("Modify Project Tags")),(0,s.default)(v,"buttonText",t("Modify Project Tags")),(0,s.default)(v,"policy","identity:update_project_tags"),(0,s.default)(v,"allowed",(()=>n.default.resolve(!0)));var g=(0,f.inject)("rootStore")((0,f.observer)(v));a.default=g},3921:function(e,t,a){"use strict";var r=a(19),l=a(21);r(t,"__esModule",{value:!0}),t.default=t.TagStore=void 0;var i,n=l(a(25)),o=l(a(54)),u=a(34),s=l(a(48)),d=l(a(53)),c=(i=class extends d.default{get client(){return s.default.keystone.projects.tags}get projectClient(){return s.default.keystone.projects}listFetchByClient(e,t){var{project_id:a}=t;return this.client.list(a,e)}get paramsFunc(){return()=>null}update(e,t){var{project_id:a}=e;return this.submitting(this.projectClient.updateTags(a,t))}},(0,o.default)(i.prototype,"update",[u.action],(0,n.default)(i.prototype,"update"),i.prototype),i);t.TagStore=c;var f=new c;t.default=f},3922:function(e,t,a){var r=a(3923);"string"==typeof r&&(r=[[e.i,r,""]]);var l={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,l);r.locals&&(e.exports=r.locals)},3923:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__header-divider--1YGJP {\n width: 2px;\n margin: 0 5px;\n background-color: rgba(0, 0, 0, 0.45);\n}\n",""]),t.locals={"header-divider":"index__header-divider--1YGJP"}},3924:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var n=r(406),o=r(407),u=i(r(1200)),s=r(1220),d=i(r(1308)),c=i(r(1306)),f=i(r(3925)),p=i(r(1595));class m extends u.default{get name(){return t("project")}get policy(){return"identity:list_projects"}get listUrl(){return this.getRoutePath("project")}get actionConfigs(){return p.default}init(){this.store=new o.ProjectStore}get forceLoadingTabs(){return["quota"]}get detailInfos(){return[{title:t("Project Name"),dataIndex:"name"},s.enabledColumn,{title:t("Affiliated Domain"),dataIndex:"domainName"},{title:t("User Num"),dataIndex:"userCount"},{title:t("User Group Num"),dataIndex:"groupCount"},{title:t("Tags"),dataIndex:"tags",render:e=>e.join(",")},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Project Users"),key:"user",component:c.default},{title:t("Project User Groups"),key:"userGroup",component:d.default},{title:t("Project Quota"),key:"quota",component:f.default}]}}a.Detail=m;var h=(0,n.inject)("rootStore")((0,n.observer)(m));a.default=h},3925:function(e,t,a){"use strict";var r=a(160),l=a(19),i=a(25),n=a(21);l(t,"__esModule",{value:!0}),t.default=t.Quota=void 0;var o=n(a(65)),u=n(a(51)),s=n(a(36)),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=v(t);if(a&&a.has(e))return a.get(e);var r={},n=l&&i;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var u=n?i(e,o):null;u&&(u.get||u.set)?l(r,o,u):r[o]=e[o]}r.default=e,a&&a.set(e,r);return r}(a(0)),c=a(406),f=n(a(1393)),p=a(566),m=a(407),h=n(a(3926));function v(e){if("function"!=typeof r)return null;var t=new r,a=new r;return(v=function(e){return e?a:t})(e)}class g extends d.Component{constructor(e){var t;super(e),t=this,(0,s.default)(this,"getData",(0,u.default)((function*(){var{id:e}=t.props.match.params,a=[t.projectStore.fetchProjectQuota({project_id:e})];return t.enableCinder&&a.push(t.volumeTypeStore.fetchProjectVolumeTypes(e)),o.default.all(a)}))),this.projectStore=new m.ProjectStore,this.volumeTypeStore=new p.VolumeTypeStore}get enableCinder(){return this.props.rootStore.checkEndpoint("cinder")}get volumeTypeData(){return this.enableCinder?this.volumeTypeStore.projectVolumeTypes:[]}render(){return d.default.createElement("div",{className:h.default.wrapper},d.default.createElement(f.default,{getData:this.getData,projectStore:this.projectStore,volumeTypeStore:this.volumeTypeStore,volumeTypeData:this.volumeTypeData}))}}t.Quota=g;var b=(0,c.inject)("rootStore")((0,c.observer)(g));t.default=b},3926:function(e,t,a){var r=a(3927);"string"==typeof r&&(r=[[e.i,r,""]]);var l={hmr:!0,transform:undefined,insertInto:void 0};a(75)(r,l);r.locals&&(e.exports=r.locals)},3927:function(e,t,a){(t=e.exports=a(74)(!1)).push([e.i,"/* init */\n/* specific color */\n/* border */\n/* background */\n/* shadow */\n/* font */\n/* 中号字体 */\n/* animation */\n/* size */\n/* sider */\n.index__wrapper--14spR {\n min-height: calc(100vh - 108px);\n padding: 0 16px 16px 16px;\n}\n",""]),t.locals={wrapper:"index__wrapper--14spR"}},3928:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.UserDetail=void 0;var n=i(r(57)),o=i(r(0)),u=r(406),s=r(1207),d=i(r(1200)),c=i(r(1598)),f=r(334),p=r(1220),m=i(r(1308)),h=i(r(1348)),v=i(r(1589));class g extends d.default{get name(){return t("user")}get policy(){return"identity:get_user"}get listUrl(){return this.getRoutePath("user")}get actionConfigs(){return this.isAdminPage?v.default:f.emptyActionConfig}init(){this.store=new s.UserStore}get detailInfos(){return[{title:t("User Name"),dataIndex:"name"},p.enabledColumn,{title:t("System Roles"),dataIndex:"systemRoles",render:e=>{var t;return e&&e.length?(0,n.default)(t=e||[]).call(t,(e=>o.default.createElement("div",{key:e.id},e.name))):"-"}},{title:t("Real Name"),dataIndex:"real_name"},{title:t("Affiliated Domain"),dataIndex:"domainName"},{title:t("Email"),dataIndex:"email",render:e=>e||"-"},{title:t("phone"),dataIndex:"phone"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Subordinate Projects"),key:"user",component:h.default},{title:t("Subordinate User Groups"),key:"userGroup",component:m.default},{title:t("Application Credentials"),key:"applicationCredentials",component:c.default}]}}a.UserDetail=g;var b=(0,u.inject)("rootStore")((0,u.observer)(g));a.default=b},3957:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Detail=void 0;var n=r(406),o=r(1238),u=i(r(1200)),s=i(r(1306)),d=i(r(1348)),c=i(r(1592));class f extends u.default{get name(){return t("user group")}get policy(){return"identity:get_group"}get listUrl(){return this.getRoutePath("userGroup")}get actionConfigs(){return c.default}init(){this.store=new o.GroupStore}get detailInfos(){return[{title:t("User Group Name"),dataIndex:"name"},{title:t("Affiliated Domain"),dataIndex:"domain",render:(e,t)=>(e||{}).name||t.domain_id},{title:t("User Num"),dataIndex:"userCount"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Subordinate Projects"),key:"project",component:d.default},{title:t("Sub Users"),key:"user",component:s.default}]}}a.Detail=f;var p=(0,n.inject)("rootStore")((0,n.observer)(f));a.default=p},3958:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Role=void 0;var n=i(r(36)),o=r(406),u=i(r(1194)),s=i(r(1244)),d=i(r(1599));class c extends u.default{constructor(){super(...arguments),(0,n.default)(this,"getColumns",(()=>[{title:t("Role Name"),dataIndex:"name",routeName:"roleDetailAdmin"},{title:t("ID"),dataIndex:"id",isHideable:!0,copyable:!0},{title:t("Description"),dataIndex:"description",isHideable:!0}]))}init(){this.store=s.default}get policy(){return"identity:list_roles"}get name(){return t("roles")}get isFilterByBackend(){return!1}get actionConfigs(){return d.default}get searchFilters(){return[{label:t("Role Name"),name:"name"}]}}a.Role=c;var f=(0,o.inject)("rootStore")((0,o.observer)(c));a.default=f},3959:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Create=void 0;var n=i(r(65)),o=i(r(36)),u=r(406),s=i(r(1244)),d=r(1193);class c extends d.ModalAction{constructor(){super(...arguments),(0,o.default)(this,"onSubmit",(e=>this.store.create(e)))}init(){this.store=s.default}static allowed(){return n.default.resolve(!0)}get name(){return t("Create Role")}get formItems(){return[{name:"name",label:t("Name"),type:"input",placeholder:t("Please input name"),required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Create=c,(0,o.default)(c,"id","role-create"),(0,o.default)(c,"title",t("Create Role")),(0,o.default)(c,"policy","identity:create_role");var f=(0,u.inject)("rootStore")((0,u.observer)(c));a.default=f},3960:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=void 0;var n=i(r(36)),o=r(1193),u=i(r(1244)),s=r(1307);class d extends o.ConfirmAction{constructor(){super(...arguments),(0,n.default)(this,"policy","identity:delete_role"),(0,n.default)(this,"allowedCheckFunc",(e=>(0,s.editable)(e))),(0,n.default)(this,"onSubmit",(e=>{var{id:t}=e;return u.default.delete({id:t})}))}get id(){return"delete"}get title(){return t("Delete Role")}get isDanger(){return!0}get buttonText(){return t("Delete")}get actionName(){return t("delete role")}}a.default=d},3961:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.Edit=void 0;var n=i(r(65)),o=i(r(51)),u=i(r(36)),s=r(406),d=r(1193),c=i(r(1244)),f=r(1307);class p extends d.ModalAction{constructor(){var e;super(...arguments),e=this,(0,u.default)(this,"onSubmit",function(){var t=(0,o.default)((function*(t){var{id:a}=e.item;return e.store.update({id:a},t)}));return function(e){return t.apply(this,arguments)}}())}init(){this.store=c.default}get defaultValue(){var{name:e,description:t}=this.item;return{name:e,description:t}}get formItems(){return[{name:"name",label:t("Name"),type:"input",required:!0},{name:"description",label:t("Description"),type:"textarea"}]}}a.Edit=p,(0,u.default)(p,"id","role-edit"),(0,u.default)(p,"title",t("Edit Role")),(0,u.default)(p,"buttonText",t("Edit")),(0,u.default)(p,"policy","identity:update_role"),(0,u.default)(p,"allowed",(e=>n.default.resolve((0,f.editable)(e))));var m=(0,s.inject)("rootStore")((0,s.observer)(p));a.default=m},3962:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.RoleDetail=void 0;var n=r(406),o=r(1244),u=i(r(1200)),s=i(r(1306)),d=i(r(1308)),c=i(r(3963)),f=i(r(1599));class p extends u.default{get name(){return t("role")}get policy(){return["identity:get_role","identity:list_role_assignments"]}get listUrl(){return this.getRoutePath("role")}get actionConfigs(){return f.default}init(){this.store=new o.RoleStore}get detailInfos(){return[{title:t("Role Name"),dataIndex:"name"},{title:t("Description"),dataIndex:"description"}]}get tabs(){return[{title:t("Base Info"),key:"base",component:c.default},{title:t("Binding Users"),key:"user",component:s.default},{title:t("Binding Groups"),key:"group",component:d.default}]}}a.RoleDetail=p;var m=(0,n.inject)("rootStore")((0,n.observer)(p));a.default=m},3963:function(e,a,r){"use strict";var l=r(19),i=r(21);l(a,"__esModule",{value:!0}),a.default=a.BaseDetail=void 0;var n=i(r(57)),o=i(r(0)),u=r(406),s=i(r(1202));class d extends s.default{get leftCards(){return[this.roleCard]}get roleCard(){var e=[{label:t("Roles"),dataIndex:"implies",render:e=>e&&e.length?(0,n.default)(e).call(e,(e=>{var{id:t,name:a}=e,r=this.getLinkRender("roleDetail",a,{id:t});return o.default.createElement("div",{key:t},r)})):"-"}];return{title:t("Implied Roles"),options:e}}}a.BaseDetail=d;var c=(0,u.inject)("rootStore")((0,u.observer)(d));a.default=c}}]); \ No newline at end of file diff --git a/skyline_console/static/identity.bundle.1663167892.js.gz b/skyline_console/static/identity.bundle.1663167892.js.gz new file mode 100644 index 00000000..9eb89d2f Binary files /dev/null and b/skyline_console/static/identity.bundle.1663167892.js.gz differ diff --git a/skyline_console/static/index.html b/skyline_console/static/index.html index 9d3f6b7a..d14ccd80 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.1658297502.js b/skyline_console/static/main.bundle.1658297502.js deleted file mode 100644 index 46d66f10..00000000 --- a/skyline_console/static/main.bundle.1658297502.js +++ /dev/null @@ -1,91 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[11],[function(e,t,n){"use strict";e.exports=n(662)},function(e,t,n){"use strict";var r=n(6),a=n(2),o=n(15),i=n(0),c=n(4),l=n.n(c),s=n(152),u=n(217),d=n(191),f=n(85);Object(d.b)("#1890ff");var p=i.forwardRef((function(e,t){var n,c=e.className,d=e.icon,p=e.spin,h=e.rotate,m=e.tabIndex,v=e.onClick,g=e.twoToneColor,b=Object(o.a)(e,["className","icon","spin","rotate","tabIndex","onClick","twoToneColor"]),y=i.useContext(s.a).prefixCls,w=void 0===y?"anticon":y,O=l()(w,(n={},Object(a.a)(n,"".concat(w,"-").concat(d.name),!!d.name),Object(a.a)(n,"".concat(w,"-spin"),!!p||"loading"===d.name),n),c),x=m;void 0===x&&v&&(x=-1);var C=h?{msTransform:"rotate(".concat(h,"deg)"),transform:"rotate(".concat(h,"deg)")}:void 0,M=Object(f.d)(g),E=Object(r.a)(M,2),k=E[0],j=E[1];return i.createElement("span",Object.assign({role:"img","aria-label":d.name},b,{ref:t,tabIndex:x,onClick:v,className:O}),i.createElement(u.a,{icon:d,primaryColor:k,secondaryColor:j,style:C}))}));p.displayName="AntdIcon",p.getTwoToneColor=d.a,p.setTwoToneColor=d.b,t.a=p},function(e,t,n){"use strict";function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n.d(t,"a",(function(){return r}))},function(e,t,n){"use strict";function r(){return(r=Object.assign||function(e){for(var t=1;t=r.F1&&t<=r.F12)return!1;switch(t){case r.ALT:case r.CAPS_LOCK:case r.CONTEXT_MENU:case r.CTRL:case r.DOWN:case r.END:case r.ESC:case r.HOME:case r.INSERT:case r.LEFT:case r.MAC_FF_META:case r.META:case r.NUMLOCK:case r.NUM_CENTER:case r.PAGE_DOWN:case r.PAGE_UP:case r.PAUSE:case r.PRINT_SCREEN:case r.RIGHT:case r.SHIFT:case r.UP:case r.WIN_KEY:case r.WIN_KEY_RIGHT:return!1;default:return!0}},isCharacterKey:function(e){if(e>=r.ZERO&&e<=r.NINE)return!0;if(e>=r.NUM_ZERO&&e<=r.NUM_MULTIPLY)return!0;if(e>=r.A&&e<=r.Z)return!0;if(-1!==window.navigator.userAgent.indexOf("WebKit")&&0===e)return!0;switch(e){case r.SPACE:case r.QUESTION_MARK:case r.NUM_PLUS:case r.NUM_MINUS:case r.NUM_PERIOD:case r.NUM_DIVISION:case r.SEMICOLON:case r.DASH:case r.EQUALS:case r.COMMA:case r.PERIOD:case r.SLASH:case r.APOSTROPHE:case r.SINGLE_QUOTE:case r.OPEN_SQUARE_BRACKET:case r.BACKSLASH:case r.CLOSE_SQUARE_BRACKET:return!0;default:return!1}}};t.a=r},function(e,t,n){"use strict";function r(e,t){for(var n=0;n=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}n.d(t,"a",(function(){return r}))},function(e,t,n){e.exports=n(1045)()},function(e,t,n){"use strict";n.d(t,"c",(function(){return a})),n.d(t,"b",(function(){return c}));var r={};function a(e,t){0}function o(e,t){0}function i(e,t,n){t||r[n]||(e(!1,n),r[n]=!0)}function c(e,t){i(o,e,t)}t.a=function(e,t){i(a,e,t)}},function(e,t,n){"use strict";function r(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}n.d(t,"a",(function(){return r}))},function(e,t,n){e.exports=n(635)},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=n=function(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),n(t)}e.exports=n,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(2);function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t){var n=function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:1,n=o+=1;function a(t){if(0===t)c(n),e();else{var o=r((function(){a(t-1)}));i.set(n,o)}}return a(t),n}l.cancel=function(e){var t=i.get(e);return c(t),a(t)}},function(e,t,n){"use strict";var r=n(59),a=n(174).f,o=n(426),i=n(66),c=n(102),l=n(112),s=n(103),u=function(e){var t=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return t.prototype=e.prototype,t};e.exports=function(e,t){var n,d,f,p,h,m,v,g,b=e.target,y=e.global,w=e.stat,O=e.proto,x=y?r:w?r[b]:(r[b]||{}).prototype,C=y?i:i[b]||(i[b]={}),M=C.prototype;for(f in t)n=!o(y?f:b+(w?".":"#")+f,e.forced)&&x&&s(x,f),h=C[f],n&&(m=e.noTargetGet?(g=a(x,f))&&g.value:x[f]),p=n&&m?m:t[f],n&&typeof h==typeof p||(v=e.bind&&n?c(p,r):e.wrap&&n?u(p):O&&"function"==typeof p?c(Function.call,p):p,(e.sham||p&&p.sham||h&&h.sham)&&l(v,"sham",!0),C[f]=v,O&&(s(i,d=b+"Prototype")||l(i,d,{}),i[d][f]=p,e.real&&M&&!M[f]&&l(M,f,p)))}},function(e,t,n){e.exports=n(638)},function(e,t,n){var r=n(20).default;function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}e.exports=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var c in e)if("default"!==c&&Object.prototype.hasOwnProperty.call(e,c)){var l=i?Object.getOwnPropertyDescriptor(e,c):null;l&&(l.get||l.set)?Object.defineProperty(o,c,l):o[c]=e[c]}return o.default=e,n&&n.set(e,o),o},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){function n(){return e.exports=n=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},n=[];return a.a.Children.forEach(e,(function(e){(null!=e||t.keepEmpty)&&(Array.isArray(e)?n=n.concat(i(e)):Object(o.isFragment)(e)&&e.props?n=n.concat(i(e.props.children,t)):n.push(e))})),n}},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(6),a=n(0);function o(e,t){var n=t||{},o=n.defaultValue,i=n.value,c=n.onChange,l=n.postState,s=a.useState((function(){return void 0!==i?i:void 0!==o?"function"==typeof o?o():o:"function"==typeof e?e():e})),u=Object(r.a)(s,2),d=u[0],f=u[1],p=void 0!==i?i:d;l&&(p=l(p));var h=a.useRef(!0);return a.useEffect((function(){h.current?h.current=!1:void 0===i&&f(i)}),[i]),[p,function(e){f(e),p!==e&&c&&c(e,p)}]}},function(e,t,n){"use strict";n.d(t,"e",(function(){return u})),n.d(t,"c",(function(){return d})),n.d(t,"d",(function(){return f})),n.d(t,"a",(function(){return h})),n.d(t,"f",(function(){return m})),n.d(t,"b",(function(){return v}));var r=n(13),a=n(7),o=n(5),i=n(15),c=n(29),l=n(17),s=n(38);function u(e,t){return null!=e?e:t}function d(e){return function e(t){return Object(c.a)(t).map((function(t){if(!Object(s.i)(t))return Object(l.a)(!t,"Tree/TreeNode can only accept TreeNode as children."),null;var n=t.key,r=t.props,a=r.children,c=Object(i.a)(r,["children"]),u=Object(o.a)({key:n},c),d=e(a);return d.length&&(u.children=d),u})).filter((function(e){return e}))}(e)}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=new Set(!0===t?[]:t),r=[];function i(e){var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return e.map((function(l,d){var f=Object(s.h)(c?c.pos:"0",d),p=u(l.key,f),h=Object(o.a)(Object(o.a)({},l),{},{parent:c,pos:f,children:null,data:l,isStart:[].concat(Object(a.a)(c?c.isStart:[]),[0===d]),isEnd:[].concat(Object(a.a)(c?c.isEnd:[]),[d===e.length-1])});return r.push(h),!0===t||n.has(p)?h.children=i(l.children||[],h):h.children=[],h}))}return i(e),r}function p(e,t,n){var a,o,i=null,c=Object(r.a)(n);"function"===c||"string"===c?i=n:n&&"object"===c&&(a=n.childrenPropName,i=n.externalGetKey),a=a||"children",i?"string"==typeof i?o=function(e){return e[i]}:"function"==typeof i&&(o=function(e){return i(e)}):o=function(e,t){return u(e.key,t)},function n(r,i,c){var l=r?r[a]:e,u=r?Object(s.h)(c.pos,i):"0";if(r){var d=o(r,u),f={node:r,index:i,pos:u,key:d,parentPos:c.node?c.pos:null,level:c.level+1};t(f)}l&&l.forEach((function(e,t){n(e,t,{node:r,pos:u,level:c?c.level+1:-1})}))}(null)}function h(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.initWrapper,r=t.processEntity,a=t.onProcessFinished,o=t.externalGetKey,i=t.childrenPropName,c=arguments.length>2?arguments[2]:void 0,l=o||c,s={},d={},f={posEntities:s,keyEntities:d};return n&&(f=n(f)||f),p(e,(function(e){var t=e.node,n=e.index,a=e.pos,o=e.key,i=e.parentPos,c={node:t,index:n,key:o,pos:a,level:e.level},l=u(o,a);s[a]=c,d[l]=c,c.parent=s[i],c.parent&&(c.parent.children=c.parent.children||[],c.parent.children.push(c)),r&&r(c,f)}),{externalGetKey:l,childrenPropName:i}),a&&a(f),f}function m(e,t){var n=t.expandedKeys,r=t.selectedKeys,a=t.loadedKeys,o=t.loadingKeys,i=t.checkedKeys,c=t.halfCheckedKeys,l=t.dragOverNodeKey,s=t.dropPosition,u=t.keyEntities[e];return{eventKey:e,expanded:-1!==n.indexOf(e),selected:-1!==r.indexOf(e),loaded:-1!==a.indexOf(e),loading:-1!==o.indexOf(e),checked:-1!==i.indexOf(e),halfChecked:-1!==c.indexOf(e),pos:String(u?u.pos:""),dragOver:l===e&&0===s,dragOverGapTop:l===e&&-1===s,dragOverGapBottom:l===e&&1===s}}function v(e){var t=e.data,n=e.expanded,r=e.selected,a=e.checked,i=e.loaded,c=e.loading,s=e.halfChecked,u=e.dragOver,d=e.dragOverGapTop,f=e.dragOverGapBottom,p=e.pos,h=e.active,m=Object(o.a)(Object(o.a)({},t),{},{expanded:n,selected:r,checked:a,loaded:i,loading:c,halfChecked:s,dragOver:u,dragOverGapTop:d,dragOverGapBottom:f,pos:p,active:h});return"props"in m||Object.defineProperty(m,"props",{get:function(){return Object(l.a)(!1,"Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`."),e}}),m}},function(e,t,n){"use strict";n.r(t),function(e,r){n.d(t,"$mobx",(function(){return x})),n.d(t,"FlowCancellationError",(function(){return jt})),n.d(t,"IDerivationState",(function(){return J})),n.d(t,"ObservableMap",(function(){return Cn})),n.d(t,"ObservableSet",(function(){return kn})),n.d(t,"Reaction",(function(){return qe})),n.d(t,"_allowStateChanges",(function(){return Me})),n.d(t,"_allowStateChangesInsideComputed",(function(){return je})),n.d(t,"_allowStateReadsEnd",(function(){return me})),n.d(t,"_allowStateReadsStart",(function(){return he})),n.d(t,"_endAction",(function(){return Ce})),n.d(t,"_getAdministration",(function(){return An})),n.d(t,"_getGlobalState",(function(){return Fe})),n.d(t,"_interceptReads",(function(){return Tt})),n.d(t,"_isComputingDerivation",(function(){return ce})),n.d(t,"_resetGlobalState",(function(){return Ve})),n.d(t,"_startAction",(function(){return xe})),n.d(t,"action",(function(){return it})),n.d(t,"autorun",(function(){return ut})),n.d(t,"comparer",(function(){return k})),n.d(t,"computed",(function(){return re})),n.d(t,"configure",(function(){return gt})),n.d(t,"createAtom",(function(){return E})),n.d(t,"decorate",(function(){return bt})),n.d(t,"entries",(function(){return Ht})),n.d(t,"extendObservable",(function(){return yt})),n.d(t,"flow",(function(){return Nt})),n.d(t,"get",(function(){return Wt})),n.d(t,"getAtom",(function(){return _n})),n.d(t,"getDebugName",(function(){return Ln})),n.d(t,"getDependencyTree",(function(){return xt})),n.d(t,"getObserverTree",(function(){return Mt})),n.d(t,"has",(function(){return Ut})),n.d(t,"intercept",(function(){return zt})),n.d(t,"isAction",(function(){return lt})),n.d(t,"isArrayLike",(function(){return m})),n.d(t,"isBoxedObservable",(function(){return Ne})),n.d(t,"isComputed",(function(){return Dt})),n.d(t,"isComputedProp",(function(){return _t})),n.d(t,"isFlowCancellationError",(function(){return St})),n.d(t,"isObservable",(function(){return Lt})),n.d(t,"isObservableArray",(function(){return wn})),n.d(t,"isObservableMap",(function(){return Mn})),n.d(t,"isObservableObject",(function(){return Dn})),n.d(t,"isObservableProp",(function(){return Rt})),n.d(t,"isObservableSet",(function(){return jn})),n.d(t,"keys",(function(){return Ft})),n.d(t,"observable",(function(){return Z})),n.d(t,"observe",(function(){return Kt})),n.d(t,"onBecomeObserved",(function(){return ht})),n.d(t,"onBecomeUnobserved",(function(){return mt})),n.d(t,"onReactionError",(function(){return Qe})),n.d(t,"reaction",(function(){return pt})),n.d(t,"remove",(function(){return $t})),n.d(t,"runInAction",(function(){return ct})),n.d(t,"set",(function(){return Bt})),n.d(t,"spy",(function(){return nt})),n.d(t,"toJS",(function(){return Qt})),n.d(t,"trace",(function(){return Zt})),n.d(t,"transaction",(function(){return Jt})),n.d(t,"untracked",(function(){return de})),n.d(t,"values",(function(){return Vt})),n.d(t,"when",(function(){return en}));var a=[];Object.freeze(a);var o={};function i(){return++Re.mobxGuid}function c(e){throw l(!1,e),"X"}function l(e,t){if(!e)throw new Error("[mobx] "+(t||"An invariant failed, however the error is obfuscated because this is a production build."))}Object.freeze(o);function s(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var u=function(){};function d(e){return null!==e&&"object"==typeof e}function f(e){if(null===e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function p(e,t,n){Object.defineProperty(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function h(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return d(e)&&!0===e[n]}}function m(e){return Array.isArray(e)||wn(e)}function v(e){return e instanceof Map}function g(e){return e instanceof Set}function b(e){var t=new Set;for(var n in e)t.add(n);return Object.getOwnPropertySymbols(e).forEach((function(n){Object.getOwnPropertyDescriptor(e,n).enumerable&&t.add(n)})),Array.from(t)}function y(e){return e&&e.toString?e.toString():new String(e).toString()}function w(e){return null===e?null:"object"==typeof e?""+e:e}var O="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,x=Symbol("mobx administration"),C=function(){function e(e){void 0===e&&(e="Atom@"+i()),this.name=e,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=new Set,this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=J.NOT_TRACKING}return e.prototype.onBecomeObserved=function(){this.onBecomeObservedListeners&&this.onBecomeObservedListeners.forEach((function(e){return e()}))},e.prototype.onBecomeUnobserved=function(){this.onBecomeUnobservedListeners&&this.onBecomeUnobservedListeners.forEach((function(e){return e()}))},e.prototype.reportObserved=function(){return Ke(this)},e.prototype.reportChanged=function(){Ue(),function(e){if(e.lowestObserverState===J.STALE)return;e.lowestObserverState=J.STALE,e.observers.forEach((function(t){t.dependenciesState===J.UP_TO_DATE&&(t.isTracing!==ee.NONE&&Ge(t,e),t.onBecomeStale()),t.dependenciesState=J.STALE}))}(this),We()},e.prototype.toString=function(){return this.name},e}(),M=h("Atom",C);function E(e,t,n){void 0===t&&(t=u),void 0===n&&(n=u);var r=new C(e);return t!==u&&ht(r,t),n!==u&&mt(r,n),r}var k={identity:function(e,t){return e===t},structural:function(e,t){return Fn(e,t)},default:function(e,t){return Object.is(e,t)},shallow:function(e,t){return Fn(e,t,1)}},j=function(e,t){return(j=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)}; -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */var S=function(){return(S=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}}}function P(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,a,o=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)i.push(r.value)}catch(e){a={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(a)throw a.error}}return i}function T(){for(var e=[],t=0;t2&&X("box");var n=U(t);return new Se(e,q(n),n.name,!0,n.equals)},array:function(e,t){arguments.length>2&&X("array");var n=U(t);return mn(e,q(n),n.name)},map:function(e,t){arguments.length>2&&X("map");var n=U(t);return new Cn(e,q(n),n.name)},set:function(e,t){arguments.length>2&&X("set");var n=U(t);return new kn(e,q(n),n.name)},object:function(e,t,n){"string"==typeof arguments[1]&&X("object");var r=U(n);if(!1===r.proxy)return yt({},e,t,r);var a=wt(r),o=yt({},void 0,void 0,r),i=cn(o);return Ot(i,e,t,a),i},ref:G,shallow:K,deep:W,struct:Y},Z=function(e,t,n){if("string"==typeof arguments[1]||"symbol"==typeof arguments[1])return W.apply(null,arguments);if(Lt(e))return e;var r=f(e)?Z.object(e,t,n):Array.isArray(e)?Z.array(e,t):v(e)?Z.map(e,t):g(e)?Z.set(e,t):e;if(r!==e)return r;c(!1)};function X(e){c("Expected one or two arguments to observable."+e+". Did you accidentally try to use observable."+e+" as decorator?")}Object.keys(Q).forEach((function(e){return Z[e]=Q[e]}));var J,ee,te=R(!1,(function(e,t,n,r,a){var o=n.get,i=n.set,c=a[0]||{};Nn(e).addComputedProp(e,t,S({get:o,set:i,context:e},c))})),ne=te({equals:k.structural}),re=function(e,t,n){if("string"==typeof t)return te.apply(null,arguments);if(null!==e&&"object"==typeof e&&1===arguments.length)return te.apply(null,arguments);var r="object"==typeof t?t:{};return r.get=e,r.set="function"==typeof t?t:r.set,r.name=r.name||e.name||"",new Pe(r)};re.struct=ne,function(e){e[e.NOT_TRACKING=-1]="NOT_TRACKING",e[e.UP_TO_DATE=0]="UP_TO_DATE",e[e.POSSIBLY_STALE=1]="POSSIBLY_STALE",e[e.STALE=2]="STALE"}(J||(J={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(ee||(ee={}));var ae=function(e){this.cause=e};function oe(e){return e instanceof ae}function ie(e){switch(e.dependenciesState){case J.UP_TO_DATE:return!1;case J.NOT_TRACKING:case J.STALE:return!0;case J.POSSIBLY_STALE:for(var t=he(!0),n=fe(),r=e.observing,a=r.length,o=0;o0;Re.computationDepth>0&&t&&c(!1),Re.allowStateChanges||!t&&"strict"!==Re.enforceActions||c(!1)}function se(e,t,n){var r=he(!0);ve(e),e.newObserving=new Array(e.observing.length+100),e.unboundDepsCount=0,e.runId=++Re.runId;var a,o=Re.trackingDerivation;if(Re.trackingDerivation=e,!0===Re.disableErrorBoundaries)a=t.call(n);else try{a=t.call(n)}catch(e){a=new ae(e)}return Re.trackingDerivation=o,function(e){for(var t=e.observing,n=e.observing=e.newObserving,r=J.UP_TO_DATE,a=0,o=e.unboundDepsCount,i=0;ir&&(r=c.dependenciesState)}n.length=a,e.newObserving=null,o=t.length;for(;o--;){0===(c=t[o]).diffValue&&Be(c,e),c.diffValue=0}for(;a--;){var c;1===(c=n[a]).diffValue&&(c.diffValue=0,He(c,e))}r!==J.UP_TO_DATE&&(e.dependenciesState=r,e.onBecomeStale())}(e),me(r),a}function ue(e){var t=e.observing;e.observing=[];for(var n=t.length;n--;)Be(t[n],e);e.dependenciesState=J.NOT_TRACKING}function de(e){var t=fe();try{return e()}finally{pe(t)}}function fe(){var e=Re.trackingDerivation;return Re.trackingDerivation=null,e}function pe(e){Re.trackingDerivation=e}function he(e){var t=Re.allowStateReads;return Re.allowStateReads=e,t}function me(e){Re.allowStateReads=e}function ve(e){if(e.dependenciesState!==J.UP_TO_DATE){e.dependenciesState=J.UP_TO_DATE;for(var t=e.observing,n=t.length;n--;)t[n].lowestObserverState=J.UP_TO_DATE}}var ge=0,be=1,ye=Object.getOwnPropertyDescriptor((function(){}),"name");ye&&ye.configurable;function we(e,t,n){var r=function(){return Oe(e,t,n||this,arguments)};return r.isMobxAction=!0,r}function Oe(e,t,n,r){var a=xe(e,n,r);try{return t.apply(n,r)}catch(e){throw a.error=e,e}finally{Ce(a)}}function xe(e,t,n){var r=0,a=fe();Ue();var o={prevDerivation:a,prevAllowStateChanges:Ee(!0),prevAllowStateReads:he(!0),notifySpy:false,startTime:r,actionId:be++,parentActionId:ge};return ge=o.actionId,o}function Ce(e){ge!==e.actionId&&c("invalid action stack. did you forget to finish an action?"),ge=e.parentActionId,void 0!==e.error&&(Re.suppressReactionErrors=!0),ke(e.prevAllowStateChanges),me(e.prevAllowStateReads),We(),pe(e.prevDerivation),e.notifySpy,Re.suppressReactionErrors=!1}function Me(e,t){var n,r=Ee(e);try{n=t()}finally{ke(r)}return n}function Ee(e){var t=Re.allowStateChanges;return Re.allowStateChanges=e,t}function ke(e){Re.allowStateChanges=e}function je(e){var t,n=Re.computationDepth;Re.computationDepth=0;try{t=e()}finally{Re.computationDepth=n}return t}var Se=function(e){function t(t,n,r,a,o){void 0===r&&(r="ObservableValue@"+i()),void 0===a&&(a=!0),void 0===o&&(o=k.default);var c=e.call(this,r)||this;return c.enhancer=n,c.name=r,c.equals=o,c.hasUnreportedChange=!1,c.value=n(t,void 0,r),c}return function(e,t){function n(){this.constructor=e}j(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.prototype.set=function(e){this.value;if((e=this.prepareNewValue(e))!==Re.UNCHANGED){false,this.setNewValue(e)}},t.prototype.prepareNewValue=function(e){if(le(this),ln(this)){var t=un(this,{object:this,type:"update",newValue:e});if(!t)return Re.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value,this.name),this.equals(this.value,e)?Re.UNCHANGED:e},t.prototype.setNewValue=function(e){var t=this.value;this.value=e,this.reportChanged(),dn(this)&&pn(this,{type:"update",object:this,newValue:e,oldValue:t})},t.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},t.prototype.intercept=function(e){return sn(this,e)},t.prototype.observe=function(e,t){return t&&e({object:this,type:"update",newValue:this.value,oldValue:void 0}),fn(this,e)},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.value+"]"},t.prototype.valueOf=function(){return w(this.get())},t.prototype[Symbol.toPrimitive]=function(){return this.valueOf()},t}(C),Ne=h("ObservableValue",Se),Pe=function(){function e(e){this.dependenciesState=J.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=new Set,this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=J.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+i(),this.value=new ae(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=ee.NONE,l(e.get,"missing option for computed: get"),this.derivation=e.get,this.name=e.name||"ComputedValue@"+i(),e.set&&(this.setter=we(this.name+"-setter",e.set)),this.equals=e.equals||(e.compareStructural||e.struct?k.structural:k.default),this.scope=e.context,this.requiresReaction=!!e.requiresReaction,this.keepAlive=!!e.keepAlive}return e.prototype.onBecomeStale=function(){!function(e){if(e.lowestObserverState!==J.UP_TO_DATE)return;e.lowestObserverState=J.POSSIBLY_STALE,e.observers.forEach((function(t){t.dependenciesState===J.UP_TO_DATE&&(t.dependenciesState=J.POSSIBLY_STALE,t.isTracing!==ee.NONE&&Ge(t,e),t.onBecomeStale())}))}(this)},e.prototype.onBecomeObserved=function(){this.onBecomeObservedListeners&&this.onBecomeObservedListeners.forEach((function(e){return e()}))},e.prototype.onBecomeUnobserved=function(){this.onBecomeUnobservedListeners&&this.onBecomeUnobservedListeners.forEach((function(e){return e()}))},e.prototype.get=function(){this.isComputing&&c("Cycle detected in computation "+this.name+": "+this.derivation),0!==Re.inBatch||0!==this.observers.size||this.keepAlive?(Ke(this),ie(this)&&this.trackAndCompute()&&function(e){if(e.lowestObserverState===J.STALE)return;e.lowestObserverState=J.STALE,e.observers.forEach((function(t){t.dependenciesState===J.POSSIBLY_STALE?t.dependenciesState=J.STALE:t.dependenciesState===J.UP_TO_DATE&&(e.lowestObserverState=J.UP_TO_DATE)}))}(this)):ie(this)&&(this.warnAboutUntrackedRead(),Ue(),this.value=this.computeValue(!1),We());var e=this.value;if(oe(e))throw e.cause;return e},e.prototype.peek=function(){var e=this.computeValue(!1);if(oe(e))throw e.cause;return e},e.prototype.set=function(e){if(this.setter){l(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,e)}finally{this.isRunningSetter=!1}}else l(!1,!1)},e.prototype.trackAndCompute=function(){var e=this.value,t=this.dependenciesState===J.NOT_TRACKING,n=this.computeValue(!0),r=t||oe(e)||oe(n)||!this.equals(e,n);return r&&(this.value=n),r},e.prototype.computeValue=function(e){var t;if(this.isComputing=!0,Re.computationDepth++,e)t=se(this,this.derivation,this.scope);else if(!0===Re.disableErrorBoundaries)t=this.derivation.call(this.scope);else try{t=this.derivation.call(this.scope)}catch(e){t=new ae(e)}return Re.computationDepth--,this.isComputing=!1,t},e.prototype.suspend=function(){this.keepAlive||(ue(this),this.value=void 0)},e.prototype.observe=function(e,t){var n=this,r=!0,a=void 0;return ut((function(){var o=n.get();if(!r||t){var i=fe();e({type:"update",object:n,newValue:o,oldValue:a}),pe(i)}r=!1,a=o}))},e.prototype.warnAboutUntrackedRead=function(){},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},e.prototype.valueOf=function(){return w(this.get())},e.prototype[Symbol.toPrimitive]=function(){return this.valueOf()},e}(),Te=h("ComputedValue",Pe),ze=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","allowStateReads","disableErrorBoundaries","runId","UNCHANGED"],Ie=function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.allowStateReads=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1},De={};function _e(){return"undefined"!=typeof window?window:void 0!==r?r:"undefined"!=typeof self?self:De}var Ae=!0,Le=!1,Re=function(){var e=_e();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Ae=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new Ie).version&&(Ae=!1),Ae?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new Ie):(setTimeout((function(){Le||c("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")}),1),new Ie)}();function Fe(){return Re}function Ve(){var e=new Ie;for(var t in e)-1===ze.indexOf(t)&&(Re[t]=e[t]);Re.allowStateChanges=!Re.enforceActions}function He(e,t){e.observers.add(t),e.lowestObserverState>t.dependenciesState&&(e.lowestObserverState=t.dependenciesState)}function Be(e,t){e.observers.delete(t),0===e.observers.size&&$e(e)}function $e(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,Re.pendingUnobservations.push(e))}function Ue(){Re.inBatch++}function We(){if(0==--Re.inBatch){Xe();for(var e=Re.pendingUnobservations,t=0;t0&&$e(e),!1)}function Ge(e,t){if(e.isTracing===ee.BREAK){var n=[];Ye(xt(e),n,1),new Function("debugger;\n/*\nTracing '"+e.name+"'\n\nYou are entering this break point because derivation '"+e.name+"' is being traced and '"+t.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(e instanceof Pe?e.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+n.join("\n")+"\n*/\n ")()}}function Ye(e,t,n){t.length>=1e3?t.push("(and many more)"):(t.push(""+new Array(n).join("\t")+e.name),e.dependencies&&e.dependencies.forEach((function(e){return Ye(e,t,n+1)})))}var qe=function(){function e(e,t,n,r){void 0===e&&(e="Reaction@"+i()),void 0===r&&(r=!1),this.name=e,this.onInvalidate=t,this.errorHandler=n,this.requiresObservable=r,this.observing=[],this.newObserving=[],this.dependenciesState=J.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+i(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=ee.NONE}return e.prototype.onBecomeStale=function(){this.schedule()},e.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,Re.pendingReactions.push(this),Xe())},e.prototype.isScheduled=function(){return this._isScheduled},e.prototype.runReaction=function(){if(!this.isDisposed){if(Ue(),this._isScheduled=!1,ie(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending}catch(e){this.reportExceptionInDerivation(e)}}We()}},e.prototype.track=function(e){if(!this.isDisposed){Ue();false,this._isRunning=!0;var t=se(this,e,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&ue(this),oe(t)&&this.reportExceptionInDerivation(t.cause),We()}},e.prototype.reportExceptionInDerivation=function(e){var t=this;if(this.errorHandler)this.errorHandler(e,this);else{if(Re.disableErrorBoundaries)throw e;Re.suppressReactionErrors,Re.globalReactionErrorHandlers.forEach((function(n){return n(e,t)}))}},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Ue(),ue(this),We()))},e.prototype.getDisposer=function(){var e=this.dispose.bind(this);return e[x]=this,e},e.prototype.toString=function(){return"Reaction["+this.name+"]"},e.prototype.trace=function(e){void 0===e&&(e=!1),Zt(this,e)},e}();function Qe(e){return Re.globalReactionErrorHandlers.push(e),function(){var t=Re.globalReactionErrorHandlers.indexOf(e);t>=0&&Re.globalReactionErrorHandlers.splice(t,1)}}var Ze=function(e){return e()};function Xe(){Re.inBatch>0||Re.isRunningReactions||Ze(Je)}function Je(){Re.isRunningReactions=!0;for(var e=Re.pendingReactions,t=0;e.length>0;){100==++t&&e.splice(0);for(var n=e.splice(0),r=0,a=n.length;r",e):2===arguments.length&&"function"==typeof t?we(e,t):1===arguments.length&&"string"==typeof e?at(e):!0!==r?at(t).apply(null,arguments):void p(e,t,we(e.name||t,n.value,this))};function ct(e,t){return Oe("string"==typeof e?e:e.name||"","function"==typeof e?e:t,this,void 0)}function lt(e){return"function"==typeof e&&!0===e.isMobxAction}function st(e,t,n){p(e,t,we(t,n.bind(e)))}function ut(e,t){void 0===t&&(t=o);var n,r=t&&t.name||e.name||"Autorun@"+i();if(!t.scheduler&&!t.delay)n=new qe(r,(function(){this.track(l)}),t.onError,t.requiresObservable);else{var a=ft(t),c=!1;n=new qe(r,(function(){c||(c=!0,a((function(){c=!1,n.isDisposed||n.track(l)})))}),t.onError,t.requiresObservable)}function l(){e(n)}return n.schedule(),n.getDisposer()}it.bound=function(e,t,n,r){return!0===r?(st(e,t,n.value),null):n?{configurable:!0,enumerable:!1,get:function(){return st(this,t,n.value||n.initializer.call(this)),this[t]},set:rt}:{enumerable:!1,configurable:!0,set:function(e){st(this,t,e)},get:function(){}}};var dt=function(e){return e()};function ft(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:dt}function pt(e,t,n){void 0===n&&(n=o);var r,a,c,l=n.name||"Reaction@"+i(),s=it(l,n.onError?(r=n.onError,a=t,function(){try{return a.apply(this,arguments)}catch(e){r.call(this,e)}}):t),u=!n.scheduler&&!n.delay,d=ft(n),f=!0,p=!1,h=n.compareStructural?k.structural:n.equals||k.default,m=new qe(l,(function(){f||u?v():p||(p=!0,d(v))}),n.onError,n.requiresObservable);function v(){if(p=!1,!m.isDisposed){var t=!1;m.track((function(){var n=e(m);t=f||!h(c,n),c=n})),f&&n.fireImmediately&&s(c,m),f||!0!==t||s(c,m),f&&(f=!1)}}return m.schedule(),m.getDisposer()}function ht(e,t,n){return vt("onBecomeObserved",e,t,n)}function mt(e,t,n){return vt("onBecomeUnobserved",e,t,n)}function vt(e,t,n,r){var a="function"==typeof r?_n(t,n):_n(t),o="function"==typeof r?r:n,i=e+"Listeners";return a[i]?a[i].add(o):a[i]=new Set([o]),"function"!=typeof a[e]?c(!1):function(){var e=a[i];e&&(e.delete(o),0===e.size&&delete a[i])}}function gt(e){var t=e.enforceActions,n=e.computedRequiresReaction,r=e.computedConfigurable,a=e.disableErrorBoundaries,o=e.reactionScheduler,i=e.reactionRequiresObservable,l=e.observableRequiresReaction;if(!0===e.isolateGlobalState&&((Re.pendingReactions.length||Re.inBatch||Re.isRunningReactions)&&c("isolateGlobalState should be called before MobX is running any reactions"),Le=!0,Ae&&(0==--_e().__mobxInstanceCount&&(_e().__mobxGlobals=void 0),Re=new Ie)),void 0!==t){var s=void 0;switch(t){case!0:case"observed":s=!0;break;case!1:case"never":s=!1;break;case"strict":case"always":s="strict";break;default:c("Invalid value for 'enforceActions': '"+t+"', expected 'never', 'always' or 'observed'")}Re.enforceActions=s,Re.allowStateChanges=!0!==s&&"strict"!==s}void 0!==n&&(Re.computedRequiresReaction=!!n),void 0!==i&&(Re.reactionRequiresObservable=!!i),void 0!==l&&(Re.observableRequiresReaction=!!l,Re.allowStateReads=!Re.observableRequiresReaction),void 0!==r&&(Re.computedConfigurable=!!r),void 0!==a&&(Re.disableErrorBoundaries=!!a),o&&tt(o)}function bt(e,t){var n="function"==typeof e?e.prototype:e,r=function(e){var r=t[e];Array.isArray(r)||(r=[r]);var a=Object.getOwnPropertyDescriptor(n,e),o=r.reduce((function(t,r){return r(n,e,t)}),a);o&&Object.defineProperty(n,e,o)};for(var a in t)r(a);return e}function yt(e,t,n,r){var a=wt(r=U(r));return L(e),Nn(e,r.name,a.enhancer),t&&Ot(e,t,n,a),e}function wt(e){return e.defaultDecorator||(!1===e.deep?G:W)}function Ot(e,t,n,r){var a,o;Ue();try{var i=O(t);try{for(var c=N(i),l=c.next();!l.done;l=c.next()){var s=l.value,u=Object.getOwnPropertyDescriptor(t,s);0;var d=(n&&s in n?n[s]:u.get?te:r)(e,s,u,!0);d&&Object.defineProperty(e,s,d)}}catch(e){a={error:e}}finally{try{l&&!l.done&&(o=c.return)&&o.call(c)}finally{if(a)throw a.error}}}finally{We()}}function xt(e,t){return Ct(_n(e,t))}function Ct(e){var t,n,r={name:e.name};return e.observing&&e.observing.length>0&&(r.dependencies=(t=e.observing,n=[],t.forEach((function(e){-1===n.indexOf(e)&&n.push(e)})),n).map(Ct)),r}function Mt(e,t){return Et(_n(e,t))}function Et(e){var t={name:e.name};return function(e){return e.observers&&e.observers.size>0}(e)&&(t.observers=Array.from(function(e){return e.observers}(e)).map(Et)),t}var kt=0;function jt(){this.message="FLOW_CANCELLED"}function St(e){return e instanceof jt}function Nt(e){1!==arguments.length&&c("Flow expects 1 argument and cannot be used as decorator");var t=e.name||"";return function(){var n,r=this,a=arguments,o=++kt,i=it(t+" - runid: "+o+" - init",e).apply(r,a),c=void 0,l=new Promise((function(e,r){var a=0;function l(e){var n;c=void 0;try{n=it(t+" - runid: "+o+" - yield "+a++,i.next).call(i,e)}catch(e){return r(e)}u(n)}function s(e){var n;c=void 0;try{n=it(t+" - runid: "+o+" - yield "+a++,i.throw).call(i,e)}catch(e){return r(e)}u(n)}function u(t){if(!t||"function"!=typeof t.then)return t.done?e(t.value):(c=Promise.resolve(t.value)).then(l,s);t.then(u,r)}n=r,l(void 0)}));return l.cancel=it(t+" - runid: "+o+" - cancel",(function(){try{c&&Pt(c);var e=i.return(void 0),t=Promise.resolve(e.value);t.then(u,u),Pt(t),n(new jt)}catch(e){n(e)}})),l}}function Pt(e){"function"==typeof e.cancel&&e.cancel()}function Tt(e,t,n){var r;if(Mn(e)||wn(e)||Ne(e))r=An(e);else{if(!Dn(e))return c(!1);if("string"!=typeof t)return c(!1);r=An(e,t)}return void 0!==r.dehancer?c(!1):(r.dehancer="function"==typeof t?t:n,function(){r.dehancer=void 0})}function zt(e,t,n){return"function"==typeof n?function(e,t,n){return An(e,t).intercept(n)}(e,t,n):function(e,t){return An(e).intercept(t)}(e,t)}function It(e,t){if(null==e)return!1;if(void 0!==t){if(!1===Dn(e))return!1;if(!e[x].values.has(t))return!1;var n=_n(e,t);return Te(n)}return Te(e)}function Dt(e){return arguments.length>1?c(!1):It(e)}function _t(e,t){return"string"!=typeof t?c(!1):It(e,t)}function At(e,t){return null!=e&&(void 0!==t?!!Dn(e)&&e[x].values.has(t):Dn(e)||!!e[x]||M(e)||et(e)||Te(e))}function Lt(e){return 1!==arguments.length&&c(!1),At(e)}function Rt(e,t){return"string"!=typeof t?c(!1):At(e,t)}function Ft(e){return Dn(e)?e[x].getKeys():Mn(e)||jn(e)?Array.from(e.keys()):wn(e)?e.map((function(e,t){return t})):c(!1)}function Vt(e){return Dn(e)?Ft(e).map((function(t){return e[t]})):Mn(e)?Ft(e).map((function(t){return e.get(t)})):jn(e)?Array.from(e.values()):wn(e)?e.slice():c(!1)}function Ht(e){return Dn(e)?Ft(e).map((function(t){return[t,e[t]]})):Mn(e)?Ft(e).map((function(t){return[t,e.get(t)]})):jn(e)?Array.from(e.entries()):wn(e)?e.map((function(e,t){return[t,e]})):c(!1)}function Bt(e,t,n){if(2!==arguments.length||jn(e))if(Dn(e)){var r=e[x],a=r.values.get(t);a?r.write(t,n):r.addObservableProp(t,n,r.defaultEnhancer)}else if(Mn(e))e.set(t,n);else if(jn(e))e.add(t);else{if(!wn(e))return c(!1);"number"!=typeof t&&(t=parseInt(t,10)),l(t>=0,"Not a valid index: '"+t+"'"),Ue(),t>=e.length&&(e.length=t+1),e[t]=n,We()}else{Ue();var o=t;try{for(var i in o)Bt(e,i,o[i])}finally{We()}}}function $t(e,t){if(Dn(e))e[x].remove(t);else if(Mn(e))e.delete(t);else if(jn(e))e.delete(t);else{if(!wn(e))return c(!1);"number"!=typeof t&&(t=parseInt(t,10)),l(t>=0,"Not a valid index: '"+t+"'"),e.splice(t,1)}}function Ut(e,t){return Dn(e)?An(e).has(t):Mn(e)||jn(e)?e.has(t):wn(e)?t>=0&&t0}function sn(e,t){var n=e.interceptors||(e.interceptors=[]);return n.push(t),s((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function un(e,t){var n=fe();try{for(var r=T(e.interceptors||[]),a=0,o=r.length;a0}function fn(e,t){var n=e.changeListeners||(e.changeListeners=[]);return n.push(t),s((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function pn(e,t){var n=fe(),r=e.changeListeners;if(r){for(var a=0,o=(r=r.slice()).length;a0?e.map(this.dehancer):e},e.prototype.intercept=function(e){return sn(this,e)},e.prototype.observe=function(e,t){return void 0===t&&(t=!1),t&&e({object:this.proxy,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),fn(this,e)},e.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},e.prototype.setArrayLength=function(e){if("number"!=typeof e||e<0)throw new Error("[mobx.array] Out of range: "+e);var t=this.values.length;if(e!==t)if(e>t){for(var n=new Array(e-t),r=0;ro?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=a),ln(this)){var i=un(this,{object:this.proxy,type:"splice",index:e,removedCount:t,added:n});if(!i)return a;t=i.removedCount,n=i.added}n=0===n.length?n:n.map((function(e){return r.enhancer(e,void 0)}));var c=this.spliceItemsIntoValues(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice(e,n,c),this.dehanceValues(c)},e.prototype.spliceItemsIntoValues=function(e,t,n){var r;if(n.length<1e4)return(r=this.values).splice.apply(r,T([e,t],n));var a=this.values.slice(e,e+t);return this.values=this.values.slice(0,e).concat(n,this.values.slice(e+t)),a},e.prototype.notifyArrayChildUpdate=function(e,t,n){var r=!this.owned&&!1,a=dn(this),o=a||r?{object:this.proxy,type:"update",index:e,newValue:t,oldValue:n}:null;this.atom.reportChanged(),a&&pn(this,o)},e.prototype.notifyArraySplice=function(e,t,n){var r=!this.owned&&!1,a=dn(this),o=a||r?{object:this.proxy,type:"splice",index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom.reportChanged(),a&&pn(this,o)},e}(),gn={intercept:function(e){return this[x].intercept(e)},observe:function(e,t){return void 0===t&&(t=!1),this[x].observe(e,t)},clear:function(){return this.splice(0)},replace:function(e){var t=this[x];return t.spliceWithArray(0,t.values.length,e)},toJS:function(){return this.slice()},toJSON:function(){return this.toJS()},splice:function(e,t){for(var n=[],r=2;r-1&&(this.splice(n,1),!0)},get:function(e){var t=this[x];if(t&&e=0&&n++}e=Hn(e),t=Hn(t);var c="[object Array]"===i;if(!c){if("object"!=typeof e||"object"!=typeof t)return!1;var l=e.constructor,s=t.constructor;if(l!==s&&!("function"==typeof l&&l instanceof l&&"function"==typeof s&&s instanceof s)&&"constructor"in e&&"constructor"in t)return!1}if(0===n)return!1;n<0&&(n=-1),a=a||[];for(var u=(r=r||[]).length;u--;)if(r[u]===e)return a[u]===t;if(r.push(e),a.push(t),c){if((u=e.length)!==t.length)return!1;for(;u--;)if(!Vn(e[u],t[u],n-1,r,a))return!1}else{var d=Object.keys(e),f=void 0;if(u=d.length,Object.keys(t).length!==u)return!1;for(;u--;)if(!Bn(t,f=d[u])||!Vn(e[f],t[f],n-1,r,a))return!1}return r.pop(),a.pop(),!0}function Hn(e){return wn(e)?e.slice():v(e)||Mn(e)||g(e)||jn(e)?Array.from(e.entries()):e}function Bn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function $n(e){return e[Symbol.iterator]=Un,e}function Un(){return this}if("undefined"==typeof Proxy||"undefined"==typeof Symbol)throw new Error("[mobx] MobX 5+ requires Proxy and Symbol objects. If your environment doesn't support Symbol or Proxy objects, please downgrade to MobX 4. For React Native Android, consider upgrading JSCore.");"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:nt,extras:{getDebugName:Ln},$mobx:x})}.call(this,n(357),n(169))},function(e,t,n){e.exports=n(785)},function(e,t,n){"use strict";n.d(t,"b",(function(){return o})),n.d(t,"a",(function(){return i})),n.d(t,"c",(function(){return c}));var r=n(13),a=n(159);function o(e,t){"function"==typeof e?e(t):"object"===Object(r.a)(e)&&e&&"current"in e&&(e.current=t)}function i(){for(var e=arguments.length,t=new Array(e),n=0;n=0&&n.splice(r,1),n}function c(e,t){var n=e.slice();return-1===n.indexOf(t)&&n.push(t),n}function l(e){return e.split("-")}function s(e,t){return"".concat(e,"-").concat(t)}function u(e){return e&&e.type&&e.type.isTreeNode}function d(e,t){var n=[];return function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.forEach((function(t){var r=t.key,a=t.children;n.push(r),e(a)}))}(t[e].children),n}function f(e){if(e.parent){var t=l(e.pos);return Number(t[t.length-1])===e.parent.children.length-1}return!1}function p(e,t,n,r,a,o,i,c,s,u){var d,p=e.clientX,h=e.clientY,m=e.target.getBoundingClientRect(),v=m.top,g=m.height,b=(("rtl"===u?-1:1)*(((null==a?void 0:a.x)||0)-p)-12)/r,y=c[n.props.eventKey];if(h-1.5?o({dropNode:N,dropPosition:1})?E=1:P=!1:o({dropNode:N,dropPosition:0})?E=0:o({dropNode:N,dropPosition:1})?E=1:P=!1:o({dropNode:N,dropPosition:1})?E=1:P=!1,{dropPosition:E,dropLevelOffset:k,dropTargetKey:y.key,dropTargetPos:y.pos,dragOverNodeKey:M,dropContainerKey:0===E?null:(null===(d=y.parent)||void 0===d?void 0:d.key)||null,dropAllowed:P}}function h(e,t){if(e)return t.multiple?e.slice():e.length?[e[0]]:e}function m(e){if(!e)return null;var t;if(Array.isArray(e))t={checkedKeys:e,halfCheckedKeys:void 0};else{if("object"!==Object(a.a)(e))return Object(o.a)(!1,"`checkedKeys` is not an array or an object"),null;t={checkedKeys:e.checked||void 0,halfCheckedKeys:e.halfChecked||void 0}}return t}function v(e,t){var n=new Set;function a(e){if(!n.has(e)){var r=t[e];if(r){n.add(e);var o=r.parent;r.node.disabled||o&&a(o.key)}}}return(e||[]).forEach((function(e){a(e)})),Object(r.a)(n)}function g(e){var t={};return Object.keys(e).forEach((function(n){(n.startsWith("data-")||n.startsWith("aria-"))&&(t[n]=e[n])})),t}},function(e,t,n){"use strict";n.r(t),n.d(t,"CSSMotionList",(function(){return ie}));var r=n(2),a=n(5),o=n(6),i=n(13),c=n(0),l=n(123),s=n(34),u=n(4),d=n.n(u),f=n(84);function p(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit".concat(e)]="webkit".concat(t),n["Moz".concat(e)]="moz".concat(t),n["ms".concat(e)]="MS".concat(t),n["O".concat(e)]="o".concat(t.toLowerCase()),n}var h,m,v,g=(h=Object(f.a)(),m="undefined"!=typeof window?window:{},v={animationend:p("Animation","AnimationEnd"),transitionend:p("Transition","TransitionEnd")},h&&("AnimationEvent"in m||delete v.animationend.animation,"TransitionEvent"in m||delete v.transitionend.transition),v),b={};if(Object(f.a)()){var y=document.createElement("div");b=y.style}var w={};function O(e){if(w[e])return w[e];var t=g[e];if(t)for(var n=Object.keys(t),r=n.length,a=0;a1&&void 0!==arguments[1]?arguments[1]:2;t();var o=Object(F.a)((function(){a<=1?r({isCanceled:function(){return o!==e.current}}):n(r,a-1)}));e.current=o},t]}(),s=Object(o.a)(l,2),u=s[0],d=s[1];return R((function(){if(a!==z&&a!==A){var e=V.indexOf(a),n=V[e+1],r=t(a);false===r?i(n):u((function(e){function t(){e.isCanceled()||i(n)}!0===r?t():Promise.resolve(r).then(t)}))}}),[e,a]),c.useEffect((function(){return function(){d()}}),[]),[function(){i(I)},a]};function $(e,t,n,i){var l=i.motionEnter,s=void 0===l||l,u=i.motionAppear,d=void 0===u||u,f=i.motionLeave,p=void 0===f||f,h=i.motionDeadline,m=i.motionLeaveImmediately,v=i.onAppearPrepare,g=i.onEnterPrepare,b=i.onLeavePrepare,y=i.onAppearStart,w=i.onEnterStart,O=i.onLeaveStart,x=i.onAppearActive,C=i.onEnterActive,M=i.onLeaveActive,j=i.onAppearEnd,z=i.onEnterEnd,A=i.onLeaveEnd,F=i.onVisibleChanged,V=L(),$=Object(o.a)(V,2),U=$[0],W=$[1],K=L(S),G=Object(o.a)(K,2),Y=G[0],q=G[1],Q=L(null),Z=Object(o.a)(Q,2),X=Z[0],J=Z[1],ee=Object(c.useRef)(!1),te=Object(c.useRef)(null),ne=Object(c.useRef)(!1),re=Object(c.useRef)(null);function ae(){return n()||re.current}var oe=Object(c.useRef)(!1);function ie(e){var t,n=ae();e&&!e.deadline&&e.target!==n||(Y===N&&oe.current?t=null==j?void 0:j(n,e):Y===P&&oe.current?t=null==z?void 0:z(n,e):Y===T&&oe.current&&(t=null==A?void 0:A(n,e)),!1===t||ne.current||(q(S),J(null)))}var ce=function(e){var t=Object(c.useRef)(),n=Object(c.useRef)(e);n.current=e;var r=c.useCallback((function(e){n.current(e)}),[]);function a(e){e&&(e.removeEventListener(k,r),e.removeEventListener(E,r))}return c.useEffect((function(){return function(){a(t.current)}}),[]),[function(e){t.current&&t.current!==e&&a(t.current),e&&e!==t.current&&(e.addEventListener(k,r),e.addEventListener(E,r),t.current=e)},a]}(ie),le=Object(o.a)(ce,1)[0],se=c.useMemo((function(){var e,t,n;switch(Y){case"appear":return e={},Object(r.a)(e,I,v),Object(r.a)(e,D,y),Object(r.a)(e,_,x),e;case"enter":return t={},Object(r.a)(t,I,g),Object(r.a)(t,D,w),Object(r.a)(t,_,C),t;case"leave":return n={},Object(r.a)(n,I,b),Object(r.a)(n,D,O),Object(r.a)(n,_,M),n;default:return{}}}),[Y]),ue=B(Y,(function(e){if(e===I){var t=se.prepare;return!!t&&t(ae())}var n;pe in se&&J((null===(n=se[pe])||void 0===n?void 0:n.call(se,ae(),null))||null);return pe===_&&(le(ae()),h>0&&(clearTimeout(te.current),te.current=setTimeout((function(){ie({deadline:!0})}),h))),true})),de=Object(o.a)(ue,2),fe=de[0],pe=de[1],he=H(pe);oe.current=he,R((function(){W(t);var n,r=ee.current;(ee.current=!0,e)&&(!r&&t&&d&&(n=N),r&&t&&s&&(n=P),(r&&!t&&p||!r&&m&&!t&&p)&&(n=T),n&&(q(n),fe()))}),[t]),Object(c.useEffect)((function(){(Y===N&&!d||Y===P&&!s||Y===T&&!p)&&q(S)}),[d,s,p]),Object(c.useEffect)((function(){return function(){clearTimeout(te.current),ne.current=!0}}),[]),Object(c.useEffect)((function(){void 0!==U&&Y===S&&(null==F||F(U))}),[U,Y]);var me=X;return se.prepare&&pe===D&&(me=Object(a.a)({transition:"none"},me)),[Y,pe,me,null!=U?U:t]}var U=n(8),W=n(10),K=n(11),G=n(12),Y=function(e){Object(K.a)(n,e);var t=Object(G.a)(n);function n(){return Object(U.a)(this,n),t.apply(this,arguments)}return Object(W.a)(n,[{key:"render",value:function(){return this.props.children}}]),n}(c.Component);var q=function(e){var t=e;function n(e){return!(!e.motionName||!t)}"object"===Object(i.a)(e)&&(t=e.transitionSupport);var u=c.forwardRef((function(e,t){var i=e.visible,u=void 0===i||i,f=e.removeOnLeave,p=void 0===f||f,h=e.forceRender,m=e.children,v=e.motionName,g=e.leavedClassName,b=e.eventProps,y=n(e),w=Object(c.useRef)(),O=Object(c.useRef)();var x=$(y,u,(function(){try{return Object(l.a)(w.current||O.current)}catch(e){return null}}),e),C=Object(o.a)(x,4),M=C[0],E=C[1],k=C[2],N=C[3],P=c.useRef(N);N&&(P.current=!0);var T=Object(c.useRef)(t);T.current=t;var z,_=c.useCallback((function(e){w.current=e,Object(s.b)(T.current,e)}),[]),A=Object(a.a)(Object(a.a)({},b),{},{visible:u});if(m)if(M!==S&&n(e)){var L,R;E===I?R="prepare":H(E)?R="active":E===D&&(R="start"),z=m(Object(a.a)(Object(a.a)({},A),{},{className:d()(j(v,M),(L={},Object(r.a)(L,j(v,"".concat(M,"-").concat(R)),R),Object(r.a)(L,v,"string"==typeof v),L)),style:k}),_)}else z=N?m(Object(a.a)({},A),_):!p&&P.current?m(Object(a.a)(Object(a.a)({},A),{},{className:g}),_):h?m(Object(a.a)(Object(a.a)({},A),{},{style:{display:"none"}}),_):null;else z=null;return c.createElement(Y,{ref:O},z)}));return u.displayName="CSSMotion",u}(M),Q=n(3),Z=n(15),X="add",J="keep",ee="remove",te="removed";function ne(e){var t;return t=e&&"object"===Object(i.a)(e)&&"key"in e?e:{key:e},Object(a.a)(Object(a.a)({},t),{},{key:String(t.key)})}function re(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.map(ne)}function ae(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=[],r=0,o=t.length,i=re(e),c=re(t);i.forEach((function(e){for(var t=!1,i=r;i1}));return s.forEach((function(e){(n=n.filter((function(t){var n=t.key,r=t.status;return n!==e||r!==ee}))).forEach((function(t){t.key===e&&(t.status=J)}))})),n}var oe=["eventProps","visible","children","motionName","motionAppear","motionEnter","motionLeave","motionLeaveImmediately","motionDeadline","removeOnLeave","leavedClassName","onAppearStart","onAppearActive","onAppearEnd","onEnterStart","onEnterActive","onEnterEnd","onLeaveStart","onLeaveActive","onLeaveEnd"];var ie=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:q,n=function(e){Object(K.a)(r,e);var n=Object(G.a)(r);function r(){var e;return Object(U.a)(this,r),(e=n.apply(this,arguments)).state={keyEntities:[]},e.removeKey=function(t){e.setState((function(e){return{keyEntities:e.keyEntities.map((function(e){return e.key!==t?e:Object(a.a)(Object(a.a)({},e),{},{status:te})}))}}))},e}return Object(W.a)(r,[{key:"render",value:function(){var e=this,n=this.state.keyEntities,r=this.props,a=r.component,o=r.children,i=r.onVisibleChanged,l=Object(Z.a)(r,["component","children","onVisibleChanged"]),s=a||c.Fragment,u={};return oe.forEach((function(e){u[e]=l[e],delete l[e]})),delete l.keys,c.createElement(s,l,n.map((function(n){var r=n.status,a=Object(Z.a)(n,["status"]),l=r===X||r===J;return c.createElement(t,Object(Q.a)({},u,{key:a.key,visible:l,eventProps:a,onVisibleChanged:function(t){null==i||i(t,{key:a.key}),t||e.removeKey(a.key)}}),o)})))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var n=e.keys,r=t.keyEntities,a=re(n);return{keyEntities:ae(r,a).filter((function(e){var t=r.find((function(t){var n=t.key;return e.key===n}));return!t||t.status!==te||e.status!==ee}))}}}]),r}(c.Component);return n.defaultProps={component:"div"},n}(M);t.default=q},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){}}(),e.exports=n(676)},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(40),a=n.n(r);function o(e,t,n,r){var o=a.a.unstable_batchedUpdates?function(e){a.a.unstable_batchedUpdates(n,e)}:n;return e.addEventListener&&e.addEventListener(t,o,r),{remove:function(){e.removeEventListener&&e.removeEventListener(t,o)}}}},function(e,t,n){"use strict";var r=n(14),a=n(20);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ConfigConsumer",{enumerable:!0,get:function(){return f.ConfigConsumer}}),Object.defineProperty(t,"ConfigContext",{enumerable:!0,get:function(){return f.ConfigContext}}),t.default=t.globalConfig=t.defaultPrefixCls=t.configConsumerProps=void 0;var o=r(n(27)),i=g(n(0)),c=r(n(356)),l=n(93),s=r(n(585)),u=g(n(665)),d=r(n(326)),f=n(358),p=g(n(197)),h=r(n(405)),m=r(n(589));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var c=o?Object.getOwnPropertyDescriptor(e,i):null;c&&(c.get||c.set)?Object.defineProperty(r,i,c):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}t.configConsumerProps=["getTargetContainer","getPopupContainer","rootPrefixCls","getPrefixCls","renderEmpty","csp","autoInsertSpaceInButton","locale","pageHeader"];var b,y=["getTargetContainer","getPopupContainer","renderEmpty","pageHeader","input","form"];t.defaultPrefixCls="ant";function w(){return b||"ant"}t.globalConfig=function(){return{getPrefixCls:function(e,t){return t||(e?"".concat(w(),"-").concat(e):w())},getRootPrefixCls:function(e,t){return e||(b||(t&&t.includes("-")?t.replace(/^(.*)-[^-]*$/,"$1"):w()))}}};var O=function(e){var t=e.children,n=e.csp,r=e.autoInsertSpaceInButton,a=e.form,d=e.locale,h=e.componentSize,m=e.direction,v=e.space,g=e.virtual,b=e.dropdownMatchSelectWidth,w=e.legacyLocale,O=e.parentContext,x=e.iconPrefixCls,C=i.useCallback((function(t,n){var r=e.prefixCls;if(n)return n;var a=r||O.getPrefixCls("");return t?"".concat(a,"-").concat(t):a}),[O.getPrefixCls]),M=(0,o.default)((0,o.default)({},O),{csp:n,autoInsertSpaceInButton:r,locale:d||w,direction:m,space:v,virtual:g,dropdownMatchSelectWidth:b,getPrefixCls:C});y.forEach((function(t){var n=e[t];n&&(M[t]=n)}));var E=(0,s.default)((function(){return M}),M,(function(e,t){var n=Object.keys(e),r=Object.keys(t);return n.length!==r.length||n.some((function(n){return e[n]!==t[n]}))})),k=i.useMemo((function(){return{prefixCls:x,csp:n}}),[x]),j=t,S={};return d&&d.Form&&d.Form.defaultValidateMessages&&(S=d.Form.defaultValidateMessages),a&&a.validateMessages&&(S=(0,o.default)((0,o.default)({},S),a.validateMessages)),Object.keys(S).length>0&&(j=i.createElement(l.FormProvider,{validateMessages:S},t)),d&&(j=i.createElement(u.default,{locale:d,_ANT_MARK__:u.ANT_MARK},j)),x&&(j=i.createElement(c.default.Provider,{value:k},j)),h&&(j=i.createElement(p.SizeContextProvider,{size:h},j)),i.createElement(f.ConfigContext.Provider,{value:E},j)},x=function(e){return i.useEffect((function(){e.direction&&(h.default.config({rtl:"rtl"===e.direction}),m.default.config({rtl:"rtl"===e.direction}))}),[e.direction]),i.createElement(d.default,null,(function(t,n,r){return i.createElement(f.ConfigConsumer,null,(function(t){return i.createElement(O,(0,o.default)({parentContext:t,legacyLocale:r},e))}))}))};x.ConfigContext=f.ConfigContext,x.SizeContext=p.default,x.config=function(e){void 0!==e.prefixCls&&(b=e.prefixCls)};var C=x;t.default=C},function(e,t,n){var r=n(87);e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){e.exports=n(780)},function(e,t,n){e.exports=n(795)},function(e,t,n){e.exports=n(799)},function(e,t,n){(function(e,r){var a; -/** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(){var o,i="Expected a function",c="__lodash_hash_undefined__",l="__lodash_placeholder__",s=16,u=32,d=64,f=128,p=256,h=1/0,m=9007199254740991,v=NaN,g=4294967295,b=[["ary",f],["bind",1],["bindKey",2],["curry",8],["curryRight",s],["flip",512],["partial",u],["partialRight",d],["rearg",p]],y="[object Arguments]",w="[object Array]",O="[object Boolean]",x="[object Date]",C="[object Error]",M="[object Function]",E="[object GeneratorFunction]",k="[object Map]",j="[object Number]",S="[object Object]",N="[object Promise]",P="[object RegExp]",T="[object Set]",z="[object String]",I="[object Symbol]",D="[object WeakMap]",_="[object ArrayBuffer]",A="[object DataView]",L="[object Float32Array]",R="[object Float64Array]",F="[object Int8Array]",V="[object Int16Array]",H="[object Int32Array]",B="[object Uint8Array]",$="[object Uint8ClampedArray]",U="[object Uint16Array]",W="[object Uint32Array]",K=/\b__p \+= '';/g,G=/\b(__p \+=) '' \+/g,Y=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,Q=/[&<>"']/g,Z=RegExp(q.source),X=RegExp(Q.source),J=/<%-([\s\S]+?)%>/g,ee=/<%([\s\S]+?)%>/g,te=/<%=([\s\S]+?)%>/g,ne=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ae=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,oe=/[\\^$.*+?()[\]{}|]/g,ie=RegExp(oe.source),ce=/^\s+/,le=/\s/,se=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ue=/\{\n\/\* \[wrapped with (.+)\] \*/,de=/,? & /,fe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pe=/[()=,{}\[\]\/\s]/,he=/\\(\\)?/g,me=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ve=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,be=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,we=/^0o[0-7]+$/i,Oe=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Ce=/($^)/,Me=/['\n\r\u2028\u2029\\]/g,Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",je="a-z\\xdf-\\xf6\\xf8-\\xff",Se="A-Z\\xc0-\\xd6\\xd8-\\xde",Ne="\\ufe0e\\ufe0f",Pe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Te="['’]",ze="[\\ud800-\\udfff]",Ie="["+Pe+"]",De="["+Ee+"]",_e="\\d+",Ae="[\\u2700-\\u27bf]",Le="["+je+"]",Re="[^\\ud800-\\udfff"+Pe+_e+ke+je+Se+"]",Fe="\\ud83c[\\udffb-\\udfff]",Ve="[^\\ud800-\\udfff]",He="(?:\\ud83c[\\udde6-\\uddff]){2}",Be="[\\ud800-\\udbff][\\udc00-\\udfff]",$e="["+Se+"]",Ue="(?:"+Le+"|"+Re+")",We="(?:"+$e+"|"+Re+")",Ke="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ye="(?:"+De+"|"+Fe+")"+"?",qe="[\\ufe0e\\ufe0f]?",Qe=qe+Ye+("(?:\\u200d(?:"+[Ve,He,Be].join("|")+")"+qe+Ye+")*"),Ze="(?:"+[Ae,He,Be].join("|")+")"+Qe,Xe="(?:"+[Ve+De+"?",De,He,Be,ze].join("|")+")",Je=RegExp(Te,"g"),et=RegExp(De,"g"),tt=RegExp(Fe+"(?="+Fe+")|"+Xe+Qe,"g"),nt=RegExp([$e+"?"+Le+"+"+Ke+"(?="+[Ie,$e,"$"].join("|")+")",We+"+"+Ge+"(?="+[Ie,$e+Ue,"$"].join("|")+")",$e+"?"+Ue+"+"+Ke,$e+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_e,Ze].join("|"),"g"),rt=RegExp("[\\u200d\\ud800-\\udfff"+Ee+Ne+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],it=-1,ct={};ct[L]=ct[R]=ct[F]=ct[V]=ct[H]=ct[B]=ct[$]=ct[U]=ct[W]=!0,ct[y]=ct[w]=ct[_]=ct[O]=ct[A]=ct[x]=ct[C]=ct[M]=ct[k]=ct[j]=ct[S]=ct[P]=ct[T]=ct[z]=ct[D]=!1;var lt={};lt[y]=lt[w]=lt[_]=lt[A]=lt[O]=lt[x]=lt[L]=lt[R]=lt[F]=lt[V]=lt[H]=lt[k]=lt[j]=lt[S]=lt[P]=lt[T]=lt[z]=lt[I]=lt[B]=lt[$]=lt[U]=lt[W]=!0,lt[C]=lt[M]=lt[D]=!1;var st={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ut=parseFloat,dt=parseInt,ft="object"==typeof e&&e&&e.Object===Object&&e,pt="object"==typeof self&&self&&self.Object===Object&&self,ht=ft||pt||Function("return this")(),mt=t&&!t.nodeType&&t,vt=mt&&"object"==typeof r&&r&&!r.nodeType&&r,gt=vt&&vt.exports===mt,bt=gt&&ft.process,yt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(e){}}(),wt=yt&&yt.isArrayBuffer,Ot=yt&&yt.isDate,xt=yt&&yt.isMap,Ct=yt&&yt.isRegExp,Mt=yt&&yt.isSet,Et=yt&&yt.isTypedArray;function kt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function jt(e,t,n,r){for(var a=-1,o=null==e?0:e.length;++a-1}function It(e,t,n){for(var r=-1,a=null==e?0:e.length;++r-1;);return n}function nn(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}function rn(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var an=Gt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),on=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function cn(e){return"\\"+st[e]}function ln(e){return rt.test(e)}function sn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function un(e,t){return function(n){return e(t(n))}}function dn(e,t){for(var n=-1,r=e.length,a=0,o=[];++n",""":'"',"'":"'"});var bn=function e(t){var n,r=(t=null==t?ht:bn.defaults(ht.Object(),t,bn.pick(ht,ot))).Array,a=t.Date,le=t.Error,Ee=t.Function,ke=t.Math,je=t.Object,Se=t.RegExp,Ne=t.String,Pe=t.TypeError,Te=r.prototype,ze=Ee.prototype,Ie=je.prototype,De=t["__core-js_shared__"],_e=ze.toString,Ae=Ie.hasOwnProperty,Le=0,Re=(n=/[^.]+$/.exec(De&&De.keys&&De.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Fe=Ie.toString,Ve=_e.call(je),He=ht._,Be=Se("^"+_e.call(Ae).replace(oe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=gt?t.Buffer:o,Ue=t.Symbol,We=t.Uint8Array,Ke=$e?$e.allocUnsafe:o,Ge=un(je.getPrototypeOf,je),Ye=je.create,qe=Ie.propertyIsEnumerable,Qe=Te.splice,Ze=Ue?Ue.isConcatSpreadable:o,Xe=Ue?Ue.iterator:o,tt=Ue?Ue.toStringTag:o,rt=function(){try{var e=ho(je,"defineProperty");return e({},"",{}),e}catch(e){}}(),st=t.clearTimeout!==ht.clearTimeout&&t.clearTimeout,ft=a&&a.now!==ht.Date.now&&a.now,pt=t.setTimeout!==ht.setTimeout&&t.setTimeout,mt=ke.ceil,vt=ke.floor,bt=je.getOwnPropertySymbols,yt=$e?$e.isBuffer:o,Ft=t.isFinite,Gt=Te.join,yn=un(je.keys,je),wn=ke.max,On=ke.min,xn=a.now,Cn=t.parseInt,Mn=ke.random,En=Te.reverse,kn=ho(t,"DataView"),jn=ho(t,"Map"),Sn=ho(t,"Promise"),Nn=ho(t,"Set"),Pn=ho(t,"WeakMap"),Tn=ho(je,"create"),zn=Pn&&new Pn,In={},Dn=Ho(kn),_n=Ho(jn),An=Ho(Sn),Ln=Ho(Nn),Rn=Ho(Pn),Fn=Ue?Ue.prototype:o,Vn=Fn?Fn.valueOf:o,Hn=Fn?Fn.toString:o;function Bn(e){if(ac(e)&&!Gi(e)&&!(e instanceof Kn)){if(e instanceof Wn)return e;if(Ae.call(e,"__wrapped__"))return Bo(e)}return new Wn(e)}var $n=function(){function e(){}return function(t){if(!rc(t))return{};if(Ye)return Ye(t);e.prototype=t;var n=new e;return e.prototype=o,n}}();function Un(){}function Wn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=o}function Kn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Gn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function ur(e,t,n,r,a,i){var c,l=1&t,s=2&t,u=4&t;if(n&&(c=a?n(e,r,a,i):n(e)),c!==o)return c;if(!rc(e))return e;var d=Gi(e);if(d){if(c=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Ae.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return Ta(e,c)}else{var f=go(e),p=f==M||f==E;if(Zi(e))return Ea(e,l);if(f==S||f==y||p&&!a){if(c=s||p?{}:yo(e),!l)return s?function(e,t){return za(e,vo(e),t)}(e,function(e,t){return e&&za(t,_c(t),e)}(c,e)):function(e,t){return za(e,mo(e),t)}(e,ir(c,e))}else{if(!lt[f])return a?e:{};c=function(e,t,n){var r=e.constructor;switch(t){case _:return ka(e);case O:case x:return new r(+e);case A:return function(e,t){var n=t?ka(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case L:case R:case F:case V:case H:case B:case $:case U:case W:return ja(e,n);case k:return new r;case j:case z:return new r(e);case P:return function(e){var t=new e.constructor(e.source,ve.exec(e));return t.lastIndex=e.lastIndex,t}(e);case T:return new r;case I:return a=e,Vn?je(Vn.call(a)):{}}var a}(e,f,l)}}i||(i=new Zn);var h=i.get(e);if(h)return h;i.set(e,c),sc(e)?e.forEach((function(r){c.add(ur(r,t,n,r,e,i))})):oc(e)&&e.forEach((function(r,a){c.set(a,ur(r,t,n,a,e,i))}));var m=d?o:(u?s?io:oo:s?_c:Dc)(e);return St(m||e,(function(r,a){m&&(r=e[a=r]),rr(c,a,ur(r,t,n,a,e,i))})),c}function dr(e,t,n){var r=n.length;if(null==e)return!r;for(e=je(e);r--;){var a=n[r],i=t[a],c=e[a];if(c===o&&!(a in e)||!i(c))return!1}return!0}function fr(e,t,n){if("function"!=typeof e)throw new Pe(i);return Do((function(){e.apply(o,n)}),t)}function pr(e,t,n,r){var a=-1,o=zt,i=!0,c=e.length,l=[],s=t.length;if(!c)return l;n&&(t=Dt(t,Xt(n))),r?(o=It,i=!1):t.length>=200&&(o=en,i=!1,t=new Qn(t));e:for(;++a-1},Yn.prototype.set=function(e,t){var n=this.__data__,r=ar(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},qn.prototype.clear=function(){this.size=0,this.__data__={hash:new Gn,map:new(jn||Yn),string:new Gn}},qn.prototype.delete=function(e){var t=fo(this,e).delete(e);return this.size-=t?1:0,t},qn.prototype.get=function(e){return fo(this,e).get(e)},qn.prototype.has=function(e){return fo(this,e).has(e)},qn.prototype.set=function(e,t){var n=fo(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Qn.prototype.add=Qn.prototype.push=function(e){return this.__data__.set(e,c),this},Qn.prototype.has=function(e){return this.__data__.has(e)},Zn.prototype.clear=function(){this.__data__=new Yn,this.size=0},Zn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Zn.prototype.get=function(e){return this.__data__.get(e)},Zn.prototype.has=function(e){return this.__data__.has(e)},Zn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Yn){var r=n.__data__;if(!jn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new qn(r)}return n.set(e,t),this.size=n.size,this};var hr=_a(xr),mr=_a(Cr,!0);function vr(e,t){var n=!0;return hr(e,(function(e,r,a){return n=!!t(e,r,a)})),n}function gr(e,t,n){for(var r=-1,a=e.length;++r0&&n(c)?t>1?yr(c,t-1,n,r,a):_t(a,c):r||(a[a.length]=c)}return a}var wr=Aa(),Or=Aa(!0);function xr(e,t){return e&&wr(e,t,Dc)}function Cr(e,t){return e&&Or(e,t,Dc)}function Mr(e,t){return Tt(t,(function(t){return ec(e[t])}))}function Er(e,t){for(var n=0,r=(t=Oa(t,e)).length;null!=e&&nt}function Nr(e,t){return null!=e&&Ae.call(e,t)}function Pr(e,t){return null!=e&&t in je(e)}function Tr(e,t,n){for(var a=n?It:zt,i=e[0].length,c=e.length,l=c,s=r(c),u=1/0,d=[];l--;){var f=e[l];l&&t&&(f=Dt(f,Xt(t))),u=On(f.length,u),s[l]=!n&&(t||i>=120&&f.length>=120)?new Qn(l&&f):o}f=e[0];var p=-1,h=s[0];e:for(;++p=c?l:l*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}))}function Gr(e,t,n){for(var r=-1,a=t.length,o={};++r-1;)c!==e&&Qe.call(c,l,1),Qe.call(e,l,1);return e}function qr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var a=t[n];if(n==r||a!==o){var o=a;Oo(a)?Qe.call(e,a,1):pa(e,a)}}return e}function Qr(e,t){return e+vt(Mn()*(t-e+1))}function Zr(e,t){var n="";if(!e||t<1||t>m)return n;do{t%2&&(n+=e),(t=vt(t/2))&&(e+=e)}while(t);return n}function Xr(e,t){return _o(No(e,t,il),e+"")}function Jr(e){return Jn($c(e))}function ea(e,t){var n=$c(e);return Ro(n,sr(t,0,n.length))}function ta(e,t,n,r){if(!rc(e))return e;for(var a=-1,i=(t=Oa(t,e)).length,c=i-1,l=e;null!=l&&++ao?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=r(o);++a>>1,i=e[o];null!==i&&!dc(i)&&(n?i<=t:i=200){var s=t?null:Za(e);if(s)return fn(s);i=!1,a=en,l=new Qn}else l=t?[]:c;e:for(;++r=r?e:oa(e,t,n)}var Ma=st||function(e){return ht.clearTimeout(e)};function Ea(e,t){if(t)return e.slice();var n=e.length,r=Ke?Ke(n):new e.constructor(n);return e.copy(r),r}function ka(e){var t=new e.constructor(e.byteLength);return new We(t).set(new We(e)),t}function ja(e,t){var n=t?ka(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Sa(e,t){if(e!==t){var n=e!==o,r=null===e,a=e==e,i=dc(e),c=t!==o,l=null===t,s=t==t,u=dc(t);if(!l&&!u&&!i&&e>t||i&&c&&s&&!l&&!u||r&&c&&s||!n&&s||!a)return 1;if(!r&&!i&&!u&&e1?n[a-1]:o,c=a>2?n[2]:o;for(i=e.length>3&&"function"==typeof i?(a--,i):o,c&&xo(n[0],n[1],c)&&(i=a<3?o:i,a=1),t=je(t);++r-1?a[i?t[c]:c]:o}}function Ha(e){return ao((function(t){var n=t.length,r=n,a=Wn.prototype.thru;for(e&&t.reverse();r--;){var c=t[r];if("function"!=typeof c)throw new Pe(i);if(a&&!l&&"wrapper"==lo(c))var l=new Wn([],!0)}for(r=l?r:n;++r1&&y.reverse(),p&&ul))return!1;var u=i.get(e),d=i.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,h=2&n?new Qn:o;for(i.set(e,t),i.set(t,e);++f-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(se,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return St(b,(function(n){var r="_."+n[0];t&n[1]&&!zt(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(ue);return t?t[1].split(de):[]}(r),n)))}function Lo(e){var t=0,n=0;return function(){var r=xn(),a=16-(r-n);if(n=r,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(o,arguments)}}function Ro(e,t){var n=-1,r=e.length,a=r-1;for(t=t===o?r:t;++n1?e[t-1]:o;return n="function"==typeof n?(e.pop(),n):o,li(e,n)}));function mi(e){var t=Bn(e);return t.__chain__=!0,t}function vi(e,t){return t(e)}var gi=ao((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,a=function(t){return lr(t,e)};return!(t>1||this.__actions__.length)&&r instanceof Kn&&Oo(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:vi,args:[a],thisArg:o}),new Wn(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(o),e}))):this.thru(a)}));var bi=Ia((function(e,t,n){Ae.call(e,n)?++e[n]:cr(e,n,1)}));var yi=Va(Ko),wi=Va(Go);function Oi(e,t){return(Gi(e)?St:hr)(e,uo(t,3))}function xi(e,t){return(Gi(e)?Nt:mr)(e,uo(t,3))}var Ci=Ia((function(e,t,n){Ae.call(e,n)?e[n].push(t):cr(e,n,[t])}));var Mi=Xr((function(e,t,n){var a=-1,o="function"==typeof t,i=qi(e)?r(e.length):[];return hr(e,(function(e){i[++a]=o?kt(t,e,n):zr(e,t,n)})),i})),Ei=Ia((function(e,t,n){cr(e,n,t)}));function ki(e,t){return(Gi(e)?Dt:Hr)(e,uo(t,3))}var ji=Ia((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var Si=Xr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&xo(e,t[0],t[1])?t=[]:n>2&&xo(t[0],t[1],t[2])&&(t=[t[0]]),Kr(e,yr(t,1),[])})),Ni=ft||function(){return ht.Date.now()};function Pi(e,t,n){return t=n?o:t,t=e&&null==t?e.length:t,Ja(e,f,o,o,o,o,t)}function Ti(e,t){var n;if("function"!=typeof t)throw new Pe(i);return e=gc(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=o),n}}var zi=Xr((function(e,t,n){var r=1;if(n.length){var a=dn(n,so(zi));r|=u}return Ja(e,r,t,n,a)})),Ii=Xr((function(e,t,n){var r=3;if(n.length){var a=dn(n,so(Ii));r|=u}return Ja(t,r,e,n,a)}));function Di(e,t,n){var r,a,c,l,s,u,d=0,f=!1,p=!1,h=!0;if("function"!=typeof e)throw new Pe(i);function m(t){var n=r,i=a;return r=a=o,d=t,l=e.apply(i,n)}function v(e){return d=e,s=Do(b,t),f?m(e):l}function g(e){var n=e-u;return u===o||n>=t||n<0||p&&e-d>=c}function b(){var e=Ni();if(g(e))return y(e);s=Do(b,function(e){var n=t-(e-u);return p?On(n,c-(e-d)):n}(e))}function y(e){return s=o,h&&r?m(e):(r=a=o,l)}function w(){var e=Ni(),n=g(e);if(r=arguments,a=this,u=e,n){if(s===o)return v(u);if(p)return Ma(s),s=Do(b,t),m(u)}return s===o&&(s=Do(b,t)),l}return t=yc(t)||0,rc(n)&&(f=!!n.leading,c=(p="maxWait"in n)?wn(yc(n.maxWait)||0,t):c,h="trailing"in n?!!n.trailing:h),w.cancel=function(){s!==o&&Ma(s),d=0,r=u=a=s=o},w.flush=function(){return s===o?l:y(Ni())},w}var _i=Xr((function(e,t){return fr(e,1,t)})),Ai=Xr((function(e,t,n){return fr(e,yc(t)||0,n)}));function Li(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Pe(i);var n=function(){var r=arguments,a=t?t.apply(this,r):r[0],o=n.cache;if(o.has(a))return o.get(a);var i=e.apply(this,r);return n.cache=o.set(a,i)||o,i};return n.cache=new(Li.Cache||qn),n}function Ri(e){if("function"!=typeof e)throw new Pe(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Li.Cache=qn;var Fi=xa((function(e,t){var n=(t=1==t.length&&Gi(t[0])?Dt(t[0],Xt(uo())):Dt(yr(t,1),Xt(uo()))).length;return Xr((function(r){for(var a=-1,o=On(r.length,n);++a=t})),Ki=Ir(function(){return arguments}())?Ir:function(e){return ac(e)&&Ae.call(e,"callee")&&!qe.call(e,"callee")},Gi=r.isArray,Yi=wt?Xt(wt):function(e){return ac(e)&&jr(e)==_};function qi(e){return null!=e&&nc(e.length)&&!ec(e)}function Qi(e){return ac(e)&&qi(e)}var Zi=yt||yl,Xi=Ot?Xt(Ot):function(e){return ac(e)&&jr(e)==x};function Ji(e){if(!ac(e))return!1;var t=jr(e);return t==C||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!cc(e)}function ec(e){if(!rc(e))return!1;var t=jr(e);return t==M||t==E||"[object AsyncFunction]"==t||"[object Proxy]"==t}function tc(e){return"number"==typeof e&&e==gc(e)}function nc(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=m}function rc(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ac(e){return null!=e&&"object"==typeof e}var oc=xt?Xt(xt):function(e){return ac(e)&&go(e)==k};function ic(e){return"number"==typeof e||ac(e)&&jr(e)==j}function cc(e){if(!ac(e)||jr(e)!=S)return!1;var t=Ge(e);if(null===t)return!0;var n=Ae.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&_e.call(n)==Ve}var lc=Ct?Xt(Ct):function(e){return ac(e)&&jr(e)==P};var sc=Mt?Xt(Mt):function(e){return ac(e)&&go(e)==T};function uc(e){return"string"==typeof e||!Gi(e)&&ac(e)&&jr(e)==z}function dc(e){return"symbol"==typeof e||ac(e)&&jr(e)==I}var fc=Et?Xt(Et):function(e){return ac(e)&&nc(e.length)&&!!ct[jr(e)]};var pc=Ya(Vr),hc=Ya((function(e,t){return e<=t}));function mc(e){if(!e)return[];if(qi(e))return uc(e)?mn(e):Ta(e);if(Xe&&e[Xe])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Xe]());var t=go(e);return(t==k?sn:t==T?fn:$c)(e)}function vc(e){return e?(e=yc(e))===h||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gc(e){var t=vc(e),n=t%1;return t==t?n?t-n:t:0}function bc(e){return e?sr(gc(e),0,g):0}function yc(e){if("number"==typeof e)return e;if(dc(e))return v;if(rc(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=rc(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Zt(e);var n=be.test(e);return n||we.test(e)?dt(e.slice(2),n?2:8):ge.test(e)?v:+e}function wc(e){return za(e,_c(e))}function Oc(e){return null==e?"":da(e)}var xc=Da((function(e,t){if(ko(t)||qi(t))za(t,Dc(t),e);else for(var n in t)Ae.call(t,n)&&rr(e,n,t[n])})),Cc=Da((function(e,t){za(t,_c(t),e)})),Mc=Da((function(e,t,n,r){za(t,_c(t),e,r)})),Ec=Da((function(e,t,n,r){za(t,Dc(t),e,r)})),kc=ao(lr);var jc=Xr((function(e,t){e=je(e);var n=-1,r=t.length,a=r>2?t[2]:o;for(a&&xo(t[0],t[1],a)&&(r=1);++n1),t})),za(e,io(e),n),r&&(n=ur(n,7,no));for(var a=t.length;a--;)pa(n,t[a]);return n}));var Fc=ao((function(e,t){return null==e?{}:function(e,t){return Gr(e,t,(function(t,n){return Pc(e,n)}))}(e,t)}));function Vc(e,t){if(null==e)return{};var n=Dt(io(e),(function(e){return[e]}));return t=uo(t),Gr(e,n,(function(e,n){return t(e,n[0])}))}var Hc=Xa(Dc),Bc=Xa(_c);function $c(e){return null==e?[]:Jt(e,Dc(e))}var Uc=Ra((function(e,t,n){return t=t.toLowerCase(),e+(n?Wc(t):t)}));function Wc(e){return Jc(Oc(e).toLowerCase())}function Kc(e){return(e=Oc(e))&&e.replace(xe,an).replace(et,"")}var Gc=Ra((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Yc=Ra((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),qc=La("toLowerCase");var Qc=Ra((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var Zc=Ra((function(e,t,n){return e+(n?" ":"")+Jc(t)}));var Xc=Ra((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Jc=La("toUpperCase");function el(e,t,n){return e=Oc(e),(t=n?o:t)===o?function(e){return at.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(fe)||[]}(e):e.match(t)||[]}var tl=Xr((function(e,t){try{return kt(e,o,t)}catch(e){return Ji(e)?e:new le(e)}})),nl=ao((function(e,t){return St(t,(function(t){t=Vo(t),cr(e,t,zi(e[t],e))})),e}));function rl(e){return function(){return e}}var al=Ha(),ol=Ha(!0);function il(e){return e}function cl(e){return Lr("function"==typeof e?e:ur(e,1))}var ll=Xr((function(e,t){return function(n){return zr(n,e,t)}})),sl=Xr((function(e,t){return function(n){return zr(e,n,t)}}));function ul(e,t,n){var r=Dc(t),a=Mr(t,r);null!=n||rc(t)&&(a.length||!r.length)||(n=t,t=e,e=this,a=Mr(t,Dc(t)));var o=!(rc(n)&&"chain"in n&&!n.chain),i=ec(e);return St(a,(function(n){var r=t[n];e[n]=r,i&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),a=n.__actions__=Ta(this.__actions__);return a.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,_t([this.value()],arguments))})})),e}function dl(){}var fl=Wa(Dt),pl=Wa(Pt),hl=Wa(Rt);function ml(e){return Co(e)?Kt(Vo(e)):function(e){return function(t){return Er(t,e)}}(e)}var vl=Ga(),gl=Ga(!0);function bl(){return[]}function yl(){return!1}var wl=Ua((function(e,t){return e+t}),0),Ol=Qa("ceil"),xl=Ua((function(e,t){return e/t}),1),Cl=Qa("floor");var Ml,El=Ua((function(e,t){return e*t}),1),kl=Qa("round"),jl=Ua((function(e,t){return e-t}),0);return Bn.after=function(e,t){if("function"!=typeof t)throw new Pe(i);return e=gc(e),function(){if(--e<1)return t.apply(this,arguments)}},Bn.ary=Pi,Bn.assign=xc,Bn.assignIn=Cc,Bn.assignInWith=Mc,Bn.assignWith=Ec,Bn.at=kc,Bn.before=Ti,Bn.bind=zi,Bn.bindAll=nl,Bn.bindKey=Ii,Bn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Gi(e)?e:[e]},Bn.chain=mi,Bn.chunk=function(e,t,n){t=(n?xo(e,t,n):t===o)?1:wn(gc(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var i=0,c=0,l=r(mt(a/t));ia?0:a+n),(r=r===o||r>a?a:gc(r))<0&&(r+=a),r=n>r?0:bc(r);n>>0)?(e=Oc(e))&&("string"==typeof t||null!=t&&!lc(t))&&!(t=da(t))&&ln(e)?Ca(mn(e),0,n):e.split(t,n):[]},Bn.spread=function(e,t){if("function"!=typeof e)throw new Pe(i);return t=null==t?0:wn(gc(t),0),Xr((function(n){var r=n[t],a=Ca(n,0,t);return r&&_t(a,r),kt(e,this,a)}))},Bn.tail=function(e){var t=null==e?0:e.length;return t?oa(e,1,t):[]},Bn.take=function(e,t,n){return e&&e.length?oa(e,0,(t=n||t===o?1:gc(t))<0?0:t):[]},Bn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?oa(e,(t=r-(t=n||t===o?1:gc(t)))<0?0:t,r):[]},Bn.takeRightWhile=function(e,t){return e&&e.length?ma(e,uo(t,3),!1,!0):[]},Bn.takeWhile=function(e,t){return e&&e.length?ma(e,uo(t,3)):[]},Bn.tap=function(e,t){return t(e),e},Bn.throttle=function(e,t,n){var r=!0,a=!0;if("function"!=typeof e)throw new Pe(i);return rc(n)&&(r="leading"in n?!!n.leading:r,a="trailing"in n?!!n.trailing:a),Di(e,t,{leading:r,maxWait:t,trailing:a})},Bn.thru=vi,Bn.toArray=mc,Bn.toPairs=Hc,Bn.toPairsIn=Bc,Bn.toPath=function(e){return Gi(e)?Dt(e,Vo):dc(e)?[e]:Ta(Fo(Oc(e)))},Bn.toPlainObject=wc,Bn.transform=function(e,t,n){var r=Gi(e),a=r||Zi(e)||fc(e);if(t=uo(t,4),null==n){var o=e&&e.constructor;n=a?r?new o:[]:rc(e)&&ec(o)?$n(Ge(e)):{}}return(a?St:xr)(e,(function(e,r,a){return t(n,e,r,a)})),n},Bn.unary=function(e){return Pi(e,1)},Bn.union=ai,Bn.unionBy=oi,Bn.unionWith=ii,Bn.uniq=function(e){return e&&e.length?fa(e):[]},Bn.uniqBy=function(e,t){return e&&e.length?fa(e,uo(t,2)):[]},Bn.uniqWith=function(e,t){return t="function"==typeof t?t:o,e&&e.length?fa(e,o,t):[]},Bn.unset=function(e,t){return null==e||pa(e,t)},Bn.unzip=ci,Bn.unzipWith=li,Bn.update=function(e,t,n){return null==e?e:ha(e,t,wa(n))},Bn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:o,null==e?e:ha(e,t,wa(n),r)},Bn.values=$c,Bn.valuesIn=function(e){return null==e?[]:Jt(e,_c(e))},Bn.without=si,Bn.words=el,Bn.wrap=function(e,t){return Vi(wa(t),e)},Bn.xor=ui,Bn.xorBy=di,Bn.xorWith=fi,Bn.zip=pi,Bn.zipObject=function(e,t){return ba(e||[],t||[],rr)},Bn.zipObjectDeep=function(e,t){return ba(e||[],t||[],ta)},Bn.zipWith=hi,Bn.entries=Hc,Bn.entriesIn=Bc,Bn.extend=Cc,Bn.extendWith=Mc,ul(Bn,Bn),Bn.add=wl,Bn.attempt=tl,Bn.camelCase=Uc,Bn.capitalize=Wc,Bn.ceil=Ol,Bn.clamp=function(e,t,n){return n===o&&(n=t,t=o),n!==o&&(n=(n=yc(n))==n?n:0),t!==o&&(t=(t=yc(t))==t?t:0),sr(yc(e),t,n)},Bn.clone=function(e){return ur(e,4)},Bn.cloneDeep=function(e){return ur(e,5)},Bn.cloneDeepWith=function(e,t){return ur(e,5,t="function"==typeof t?t:o)},Bn.cloneWith=function(e,t){return ur(e,4,t="function"==typeof t?t:o)},Bn.conformsTo=function(e,t){return null==t||dr(e,t,Dc(t))},Bn.deburr=Kc,Bn.defaultTo=function(e,t){return null==e||e!=e?t:e},Bn.divide=xl,Bn.endsWith=function(e,t,n){e=Oc(e),t=da(t);var r=e.length,a=n=n===o?r:sr(gc(n),0,r);return(n-=t.length)>=0&&e.slice(n,a)==t},Bn.eq=$i,Bn.escape=function(e){return(e=Oc(e))&&X.test(e)?e.replace(Q,on):e},Bn.escapeRegExp=function(e){return(e=Oc(e))&&ie.test(e)?e.replace(oe,"\\$&"):e},Bn.every=function(e,t,n){var r=Gi(e)?Pt:vr;return n&&xo(e,t,n)&&(t=o),r(e,uo(t,3))},Bn.find=yi,Bn.findIndex=Ko,Bn.findKey=function(e,t){return Vt(e,uo(t,3),xr)},Bn.findLast=wi,Bn.findLastIndex=Go,Bn.findLastKey=function(e,t){return Vt(e,uo(t,3),Cr)},Bn.floor=Cl,Bn.forEach=Oi,Bn.forEachRight=xi,Bn.forIn=function(e,t){return null==e?e:wr(e,uo(t,3),_c)},Bn.forInRight=function(e,t){return null==e?e:Or(e,uo(t,3),_c)},Bn.forOwn=function(e,t){return e&&xr(e,uo(t,3))},Bn.forOwnRight=function(e,t){return e&&Cr(e,uo(t,3))},Bn.get=Nc,Bn.gt=Ui,Bn.gte=Wi,Bn.has=function(e,t){return null!=e&&bo(e,t,Nr)},Bn.hasIn=Pc,Bn.head=qo,Bn.identity=il,Bn.includes=function(e,t,n,r){e=qi(e)?e:$c(e),n=n&&!r?gc(n):0;var a=e.length;return n<0&&(n=wn(a+n,0)),uc(e)?n<=a&&e.indexOf(t,n)>-1:!!a&&Bt(e,t,n)>-1},Bn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=null==n?0:gc(n);return a<0&&(a=wn(r+a,0)),Bt(e,t,a)},Bn.inRange=function(e,t,n){return t=vc(t),n===o?(n=t,t=0):n=vc(n),function(e,t,n){return e>=On(t,n)&&e=-9007199254740991&&e<=m},Bn.isSet=sc,Bn.isString=uc,Bn.isSymbol=dc,Bn.isTypedArray=fc,Bn.isUndefined=function(e){return e===o},Bn.isWeakMap=function(e){return ac(e)&&go(e)==D},Bn.isWeakSet=function(e){return ac(e)&&"[object WeakSet]"==jr(e)},Bn.join=function(e,t){return null==e?"":Gt.call(e,t)},Bn.kebabCase=Gc,Bn.last=Jo,Bn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=r;return n!==o&&(a=(a=gc(n))<0?wn(r+a,0):On(a,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,a):Ht(e,Ut,a,!0)},Bn.lowerCase=Yc,Bn.lowerFirst=qc,Bn.lt=pc,Bn.lte=hc,Bn.max=function(e){return e&&e.length?gr(e,il,Sr):o},Bn.maxBy=function(e,t){return e&&e.length?gr(e,uo(t,2),Sr):o},Bn.mean=function(e){return Wt(e,il)},Bn.meanBy=function(e,t){return Wt(e,uo(t,2))},Bn.min=function(e){return e&&e.length?gr(e,il,Vr):o},Bn.minBy=function(e,t){return e&&e.length?gr(e,uo(t,2),Vr):o},Bn.stubArray=bl,Bn.stubFalse=yl,Bn.stubObject=function(){return{}},Bn.stubString=function(){return""},Bn.stubTrue=function(){return!0},Bn.multiply=El,Bn.nth=function(e,t){return e&&e.length?Wr(e,gc(t)):o},Bn.noConflict=function(){return ht._===this&&(ht._=He),this},Bn.noop=dl,Bn.now=Ni,Bn.pad=function(e,t,n){e=Oc(e);var r=(t=gc(t))?hn(e):0;if(!t||r>=t)return e;var a=(t-r)/2;return Ka(vt(a),n)+e+Ka(mt(a),n)},Bn.padEnd=function(e,t,n){e=Oc(e);var r=(t=gc(t))?hn(e):0;return t&&rt){var r=e;e=t,t=r}if(n||e%1||t%1){var a=Mn();return On(e+a*(t-e+ut("1e-"+((a+"").length-1))),t)}return Qr(e,t)},Bn.reduce=function(e,t,n){var r=Gi(e)?At:Yt,a=arguments.length<3;return r(e,uo(t,4),n,a,hr)},Bn.reduceRight=function(e,t,n){var r=Gi(e)?Lt:Yt,a=arguments.length<3;return r(e,uo(t,4),n,a,mr)},Bn.repeat=function(e,t,n){return t=(n?xo(e,t,n):t===o)?1:gc(t),Zr(Oc(e),t)},Bn.replace=function(){var e=arguments,t=Oc(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Bn.result=function(e,t,n){var r=-1,a=(t=Oa(t,e)).length;for(a||(a=1,e=o);++rm)return[];var n=g,r=On(e,g);t=uo(t),e-=g;for(var a=Qt(r,t);++n=i)return e;var l=n-hn(r);if(l<1)return r;var s=c?Ca(c,0,l).join(""):e.slice(0,l);if(a===o)return s+r;if(c&&(l+=s.length-l),lc(a)){if(e.slice(l).search(a)){var u,d=s;for(a.global||(a=Se(a.source,Oc(ve.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var f=u.index;s=s.slice(0,f===o?l:f)}}else if(e.indexOf(da(a),l)!=l){var p=s.lastIndexOf(a);p>-1&&(s=s.slice(0,p))}return s+r},Bn.unescape=function(e){return(e=Oc(e))&&Z.test(e)?e.replace(q,gn):e},Bn.uniqueId=function(e){var t=++Le;return Oc(e)+t},Bn.upperCase=Xc,Bn.upperFirst=Jc,Bn.each=Oi,Bn.eachRight=xi,Bn.first=qo,ul(Bn,(Ml={},xr(Bn,(function(e,t){Ae.call(Bn.prototype,t)||(Ml[t]=e)})),Ml),{chain:!1}),Bn.VERSION="4.17.21",St(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Bn[e].placeholder=Bn})),St(["drop","take"],(function(e,t){Kn.prototype[e]=function(n){n=n===o?1:wn(gc(n),0);var r=this.__filtered__&&!t?new Kn(this):this.clone();return r.__filtered__?r.__takeCount__=On(n,r.__takeCount__):r.__views__.push({size:On(n,g),type:e+(r.__dir__<0?"Right":"")}),r},Kn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),St(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Kn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:uo(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),St(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Kn.prototype[e]=function(){return this[n](1).value()[0]}})),St(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Kn.prototype[e]=function(){return this.__filtered__?new Kn(this):this[n](1)}})),Kn.prototype.compact=function(){return this.filter(il)},Kn.prototype.find=function(e){return this.filter(e).head()},Kn.prototype.findLast=function(e){return this.reverse().find(e)},Kn.prototype.invokeMap=Xr((function(e,t){return"function"==typeof e?new Kn(this):this.map((function(n){return zr(n,e,t)}))})),Kn.prototype.reject=function(e){return this.filter(Ri(uo(e)))},Kn.prototype.slice=function(e,t){e=gc(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Kn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==o&&(n=(t=gc(t))<0?n.dropRight(-t):n.take(t-e)),n)},Kn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Kn.prototype.toArray=function(){return this.take(g)},xr(Kn.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),a=Bn[r?"take"+("last"==t?"Right":""):t],i=r||/^find/.test(t);a&&(Bn.prototype[t]=function(){var t=this.__wrapped__,c=r?[1]:arguments,l=t instanceof Kn,s=c[0],u=l||Gi(t),d=function(e){var t=a.apply(Bn,_t([e],c));return r&&f?t[0]:t};u&&n&&"function"==typeof s&&1!=s.length&&(l=u=!1);var f=this.__chain__,p=!!this.__actions__.length,h=i&&!f,m=l&&!p;if(!i&&u){t=m?t:new Kn(this);var v=e.apply(t,c);return v.__actions__.push({func:vi,args:[d],thisArg:o}),new Wn(v,f)}return h&&m?e.apply(this,c):(v=this.thru(d),h?r?v.value()[0]:v.value():v)})})),St(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Te[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Bn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var a=this.value();return t.apply(Gi(a)?a:[],e)}return this[n]((function(n){return t.apply(Gi(n)?n:[],e)}))}})),xr(Kn.prototype,(function(e,t){var n=Bn[t];if(n){var r=n.name+"";Ae.call(In,r)||(In[r]=[]),In[r].push({name:t,func:n})}})),In[Ba(o,2).name]=[{name:"wrapper",func:o}],Kn.prototype.clone=function(){var e=new Kn(this.__wrapped__);return e.__actions__=Ta(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ta(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ta(this.__views__),e},Kn.prototype.reverse=function(){if(this.__filtered__){var e=new Kn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Kn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Gi(e),r=t<0,a=n?e.length:0,o=function(e,t,n){var r=-1,a=n.length;for(;++r=this.__values__.length;return{done:e,value:e?o:this.__values__[this.__index__++]}},Bn.prototype.plant=function(e){for(var t,n=this;n instanceof Un;){var r=Bo(n);r.__index__=0,r.__values__=o,t?a.__wrapped__=r:t=r;var a=r;n=n.__wrapped__}return a.__wrapped__=e,t},Bn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Kn){var t=e;return this.__actions__.length&&(t=new Kn(this)),(t=t.reverse()).__actions__.push({func:vi,args:[ri],thisArg:o}),new Wn(t,this.__chain__)}return this.thru(ri)},Bn.prototype.toJSON=Bn.prototype.valueOf=Bn.prototype.value=function(){return va(this.__wrapped__,this.__actions__)},Bn.prototype.first=Bn.prototype.head,Xe&&(Bn.prototype[Xe]=function(){return this}),Bn}();ht._=bn,(a=function(){return bn}.call(t,n,t,r))===o||(r.exports=a)}).call(this)}).call(this,n(169),n(225)(e))},function(e,t){e.exports=!0},function(e,t,n){"use strict";var r=n(19),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(838)),i=a(n(872)),c=a(n(873)),l=a(n(874)),s=a(n(875)),u=a(n(876)),d=a(n(877)),f=a(n(878)),p=a(n(879)),h=a(n(880)),m=a(n(881)),v=a(n(886)),g=a(n(887)),b=a(n(888)),y=a(n(889)),w=a(n(890)),O={skyline:o.default,nova:i.default,cinder:c.default,glance:l.default,neutron:s.default,keystone:u.default,heat:d.default,octavia:f.default,placement:p.default,ironic:h.default,swift:m.default,trove:v.default,manila:g.default,barbican:b.default,zun:y.default,magnum:w.default};window.client=O;var x=O;t.default=x},function(e,t,n){var r=n(449),a=n(680),o=n(359),i=n(451);e.exports=function(e,t){return r(e)||a(e,t)||o(e,t)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";n.r(t);var r=n(5),a=n(8),o=n(10),i=n(11),c=n(12),l=n(0),s=n(123),u=n(29),d=n(17),f=n(34),p=n(149),h=function(e){Object(i.a)(n,e);var t=Object(c.a)(n);function n(){var e;return Object(a.a)(this,n),(e=t.apply(this,arguments)).resizeObserver=null,e.childNode=null,e.currentElement=null,e.state={width:0,height:0,offsetHeight:0,offsetWidth:0},e.onResize=function(t){var n=e.props.onResize,a=t[0].target,o=a.getBoundingClientRect(),i=o.width,c=o.height,l=a.offsetWidth,s=a.offsetHeight,u=Math.floor(i),d=Math.floor(c);if(e.state.width!==u||e.state.height!==d||e.state.offsetWidth!==l||e.state.offsetHeight!==s){var f={width:u,height:d,offsetWidth:l,offsetHeight:s};e.setState(f),n&&Promise.resolve().then((function(){n(Object(r.a)(Object(r.a)({},f),{},{offsetWidth:l,offsetHeight:s}),a)}))}},e.setChildNode=function(t){e.childNode=t},e}return Object(o.a)(n,[{key:"componentDidMount",value:function(){this.onComponentUpdated()}},{key:"componentDidUpdate",value:function(){this.onComponentUpdated()}},{key:"componentWillUnmount",value:function(){this.destroyObserver()}},{key:"onComponentUpdated",value:function(){if(this.props.disabled)this.destroyObserver();else{var e=Object(s.a)(this.childNode||this);e!==this.currentElement&&(this.destroyObserver(),this.currentElement=e),!this.resizeObserver&&e&&(this.resizeObserver=new p.a(this.onResize),this.resizeObserver.observe(e))}}},{key:"destroyObserver",value:function(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}},{key:"render",value:function(){var e=this.props.children,t=Object(u.a)(e);if(t.length>1)Object(d.a)(!1,"Find more than one child node with `children` in ResizeObserver. Will only observe first one.");else if(0===t.length)return Object(d.a)(!1,"`children` of ResizeObserver is empty. Nothing is in observe."),null;var n=t[0];if(l.isValidElement(n)&&Object(f.c)(n)){var r=n.ref;t[0]=l.cloneElement(n,{ref:Object(f.a)(r,this.setChildNode)})}return 1===t.length?t[0]:t.map((function(e,t){return!l.isValidElement(e)||"key"in e&&null!==e.key?e:l.cloneElement(e,{key:"".concat("rc-observer-key","-").concat(t)})}))}}]),n}(l.Component);h.displayName="ResizeObserver",t.default=h},function(e,t,n){var r=n(65);function a(e,t,n,a,o,i,c){try{var l=e[i](c),s=l.value}catch(e){return void n(e)}l.done?t(s):r.resolve(s).then(a,o)}e.exports=function(e){return function(){var t=this,n=arguments;return new r((function(r,o){var i=e.apply(t,n);function c(e){a(i,r,o,c,l,"next",e)}function l(e){a(i,r,o,c,l,"throw",e)}c(void 0)}))}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(26),a=n(14);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(50)),i=a(n(36)),c=a(n(130)),l=r(n(0)),s=a(n(4)),u=a(n(356)),d=a(n(452)),f=n(682),p=n(360);(0,f.setTwoToneColor)("#1890ff");var h=l.forwardRef((function(e,t){var n,r=e.className,a=e.icon,f=e.spin,h=e.rotate,m=e.tabIndex,v=e.onClick,g=e.twoToneColor,b=(0,c.default)(e,["className","icon","spin","rotate","tabIndex","onClick","twoToneColor"]),y=l.useContext(u.default).prefixCls,w=void 0===y?"anticon":y,O=(0,s.default)(w,(n={},(0,i.default)(n,"".concat(w,"-").concat(a.name),!!a.name),(0,i.default)(n,"".concat(w,"-spin"),!!f||"loading"===a.name),n),r),x=m;void 0===x&&v&&(x=-1);var C=h?{msTransform:"rotate(".concat(h,"deg)"),transform:"rotate(".concat(h,"deg)")}:void 0,M=(0,p.normalizeTwoToneColors)(g),E=(0,o.default)(M,2),k=E[0],j=E[1];return l.createElement("span",Object.assign({role:"img","aria-label":a.name},b,{ref:t,tabIndex:x,onClick:v,className:O}),l.createElement(d.default,{icon:a,primaryColor:k,secondaryColor:j,style:C}))}));h.displayName="AntdIcon",h.getTwoToneColor=f.getTwoToneColor,h.setTwoToneColor=f.setTwoToneColor;var m=h;t.default=m},function(e,t,n){"use strict";var r=n(35),a=n(44),o=n(33),i=n(25),c=n(28),l=n(45),s=n(46),u=n(19),d=n(21);u(t,"__esModule",{value:!0}),t.default=void 0;var f,p,h,m,v,g,b=d(n(28)),y=d(n(35)),w=d(n(91)),O=d(n(65)),x=d(n(62)),C=d(n(101)),M=d(n(33)),E=d(n(25)),k=d(n(536)),j=d(n(52)),S=d(n(71)),N=d(n(72)),P=d(n(37)),T=d(n(55)),z=(d(n(73)),n(47)),I=n(32),D=d(n(49)),_=d(n(403)),A=d(n(486)),L=d(n(136));function R(e,t){var n=r(e);if(a){var c=a(e);t&&(c=o(c).call(c,(function(t){return i(e,t).enumerable}))),n.push.apply(n,c)}return n}function F(e){for(var t=1;te.id)),(0,P.default)(this,"itemInCurrentProject",((e,t)=>{if(t)return!0;var n=A.default.getItemProjectId(e),{shared:r,visibility:a,is_public:o}=e;return n===this.currentProjectId||o||r||"public"===a})),(0,N.default)(this,"submitting",v,this),(0,P.default)(this,"updateMarkerParams",((e,t)=>({limit:e,marker:t}))),(0,P.default)(this,"updateUrl",((e,t)=>e)),(0,P.default)(this,"updateParamsSortPage",((e,t,n)=>{})),(0,P.default)(this,"updateParamsSort",((e,t,n)=>{})),(0,P.default)(this,"getDetailParams",(()=>{})),(0,P.default)(this,"getListDataFromResult",(e=>this.listResponseKey?(0,z.get)(e,this.listResponseKey,[]):e)),(0,P.default)(this,"getOtherInfo",(e=>{})),(0,N.default)(this,"delete",g,this)}get client(){return{}}get skylineClient(){return D.default.skyline}get responseKey(){return this.client.responseKey}get listResponseKey(){return"".concat(this.responseKey,"s")}get needGetProject(){return!0}get currentUser(){return L.default.user||{}}get currentProjectId(){return L.default.projectId}get hasAdminRole(){return L.default.hasAdminRole}get enableBilling(){return L.default.enableBilling}get mapper(){return e=>e}get mapperBeforeFetchProject(){return e=>e}get filterByApi(){return!1}get paramsFunc(){return this.filterByApi?e=>e:e=>{var t,n=["all_data","all_projects","device_id","network_id","floating_network_id","start_at_gt","start_at_lt","binary","fixed_ip_address","device_owner","project_id","type","sort","security_group_id","id","security_group_id","owner_id","status","fingerprint","resource_types","floating_ip_address","uuid","loadbalancer_id","ikepolicy_id","ipsecpolicy_id","endpoint_id","peer_ep_group_id","local_ep_group_id","vpnservice_id"],r={};return(0,b.default)(t=(0,y.default)(e)).call(t,(t=>{(0,w.default)(n).call(n,t)>=0&&(r[t]=e[t])})),r}}get paramsFuncPage(){return e=>{var{current:t}=e;return(0,S.default)(e,["current"])}}get listFilterByProject(){return!1}get fetchListByLimit(){return!1}get markerKey(){return"id"}get listWithDetail(){return!1}get isSubResource(){return!1}detailFetchByClient(e,t){var{id:n}=e;if(!this.isSubResource)return this.client.show(n,t);var r=this.getFatherResourceId(e);return this.client.show(r,n,t)}listFetchByClient(e,t){if(!this.isSubResource)return this.listWithDetail?this.client.listDetail(e):this.client.list(e);var n=this.getFatherResourceId(t);return this.client.list(n,e)}getItemProjectId(e){return e.project_id||e.tenant_id||e.owner||e.owner_id||e.tenant||e.fingerprint}setModule(e){this.module=e}listDidFetch(e,t,n){return(0,j.default)((function*(){return e}))()}detailDidFetch(e,t,n){return(0,j.default)((function*(){return e}))()}listDidFetchProject(e,t){var n=this;return(0,j.default)((function*(){if(!n.needGetProject)return e;if(!t||!n.hasAdminRole)return e;var r=[];if((0,b.default)(e).call(e,(e=>{var t=A.default.getItemProjectId(e);!A.default.getItemProjectName(e)&&t&&(0,w.default)(r).call(r,t)<0&&r.push(t)})),0===r.length)return e;try{var a=yield O.default.all((0,x.default)(r).call(r,(e=>A.default.fetchProjectDetail({id:e}))));(0,b.default)(e).call(e,(e=>{var t=A.default.getItemProjectId(e);if(t&&(0,w.default)(r).call(r,t)>=0){var n=(0,C.default)(a).call(a,(e=>e.id===t));e.project_name=n&&n.name||"-"}}))}catch(t){return e}return e}))()}requestListByMarker(e,t,n){var r=this;return(0,j.default)((function*(){var a=r.updateMarkerParams(t,n),o=F(F({},e),a);return r.listFetchByClient(o)}))()}requestListAllByLimit(e,t){var n=this;return(0,j.default)((function*(){for(var r="",a=!0,o=[];a;){var i=yield n.requestListByMarker(e,t,r),c=n.getListDataFromResult(i);(o=[...o,...c]).length>=t&&(r=n.parseMarker(c,i,o))||(a=!1)}return o}))()}requestListAll(e,t){var n=this;return(0,j.default)((function*(){var r=yield n.listFetchByClient(e,t);return n.getListDataFromResult(r)}))()}requestList(e,t){var n=this;return(0,j.default)((function*(){return n.fetchListByLimit?yield n.requestListAllByLimit(e,100):yield n.requestListAll(e,t)}))()}requestListByPage(e,t,n){var r=this;return(0,j.default)((function*(){return yield r.listFetchByClient(e,n)}))()}pureFetchList(){var e=arguments,t=this;return(0,j.default)((function*(){var n=e.length>0&&void 0!==e[0]?e[0]:{},{limit:r,page:a,sortKey:o,sortOrder:i,conditions:c,timeFilter:l}=n,s=(0,S.default)(n,["limit","page","sortKey","sortOrder","conditions","timeFilter"]),{tab:u,all_projects:d}=s,f=F({},(0,S.default)(s,["tab","all_projects"]));return d&&(t.listFilterByProject||(f.all_projects=!0)),yield t.requestList(f,{})}))()}fetchList(){var e=arguments,t=this;return(0,j.default)((function*(){var n=e.length>0&&void 0!==e[0]?e[0]:{},{limit:r,page:a,sortKey:o,sortOrder:i,conditions:c,timeFilter:l}=n,s=(0,S.default)(n,["limit","page","sortKey","sortOrder","conditions","timeFilter"]);t.list.isLoading=!0;var{tab:u,all_projects:d}=s,f=F({},(0,S.default)(s,["tab","all_projects"]));t.updateParamsSort(f,o,i),d&&(t.listFilterByProject||(f.all_projects=!0));var p=t.paramsFunc(f),h=yield t.requestList(p,s),m=(0,x.default)(h).call(h,(e=>t.mapperBeforeFetchProject(e,s))),v=(0,M.default)(m).call(m,(e=>!t.listFilterByProject||t.itemInCurrentProject(e,d))),g=yield t.listDidFetchProject(v,d);try{g=yield t.listDidFetch(g,d,s)}catch(e){}return g=(0,x.default)(g).call(g,t.mapper),t.list.update(F({data:g,total:g.length||0,limit:Number(r)||10,page:Number(a)||1,sortKey:o,sortOrder:i,filters:s,timeFilter:l,isLoading:!1},t.list.silent?{}:{selectedRowKeys:[]})),g}))()}parseMarker(e,t,n,r){return 0===e.length?"":(0,z.get)(e[e.length-1],this.markerKey)}updateMarker(e,t,n,r,a){var o=this.parseMarker(e,n,r,a);1===t?this.list.markers=[o]:this.list.markers[t-1]=o}getMarker(e){return 1===e?"":this.list.markers[e-2]}getCountForPage(e,t,n){return(0,j.default)((function*(){return{}}))()}fetchListByPage(){var e=arguments,t=this;return(0,j.default)((function*(){var n=e.length>0&&void 0!==e[0]?e[0]:{},{limit:r=10,page:a=1,sortKey:o,sortOrder:i,conditions:c,timeFilter:l}=n,s=(0,S.default)(n,["limit","page","sortKey","sortOrder","conditions","timeFilter"]);t.list.isLoading=!0;var{tab:u,all_projects:d}=s,f=F(F({limit:r},(0,S.default)(s,["tab","all_projects"])),{},{current:a});t.updateParamsSortPage(f,o,i),d&&(t.listFilterByProject||(f.all_projects=!0));var p=t.getMarker(a);p&&(f.marker=p);var h=t.paramsFuncPage(f,d),m=yield t.requestListByPage(h,a,s),v=t.getListDataFromResult(m);t.updateMarker(v,a,m,v,f);var g,b,y=(0,x.default)(v).call(v,t.mapperBeforeFetchProject),w=yield t.listDidFetchProject(y,d);if(w=yield t.listDidFetch(w,d,s),w=(0,x.default)(w).call(w,t.mapper),m.count||m.total)g=m.count||m.total;else{var O=yield t.getCountForPage(h,w,d,m,f),{count:C,total:M}=O;g=C,b=M}var E=t.getOtherInfo(m);return t.list.update(F(F({data:w,limit:Number(r)||10,page:Number(a)||1,sortKey:o,sortOrder:i,filters:s,timeFilter:l,isLoading:!1,total:g||b},t.list.silent?{}:{selectedRowKeys:[]}),E)),w}))()}pureFetchDetail(e){var t=this;return(0,j.default)((function*(){var{id:n}=e;return(yield t.client.show(n))[t.responseKey]}))()}fetchDetail(e){var t=this;return(0,j.default)((function*(){var{all_projects:n,silent:r}=e,a=(0,S.default)(e,["all_projects","silent"]);r||(t.isLoading=!0);var o=yield t.detailFetchByClient(a,t.getDetailParams({all_projects:n})),i=(0,z.get)(o,t.responseKey)||o,c=t.mapperBeforeFetchProject(i,a,!0);try{var l=yield t.detailDidFetch(c,n,a),s=t.mapper(l);t.detail=s}catch(e){t.detail=c}return t.isLoading=!1,t.detail}))()}setSelectRowKeys(e,t){this[e]&&this[e].selectedRowKeys.replace(t)}create(e){var t={};return t[this.responseKey]=e,this.submitting(this.client.create(t))}edit(e,t){var{id:n}=e,r={};return r[this.responseKey]=t,this.submitting(this.client.update(n,r))}update(e,t){var{id:n}=e,r={};return r[this.responseKey]=t,this.submitting(this.client.update(n,r))}patch(e,t){var{id:n}=e;return this.submitting(this.client.patch(n,t))}batchDelete(e){return this.submitting(O.default.all((0,x.default)(e).call(e,(e=>{var t,n=(0,C.default)(t=this.list.data).call(t,(t=>t.name===e)),{id:r}=n;return this.client.delete(r)}))))}clearData(){this.list.reset(),this.detail={}}},p=(0,T.default)(f.prototype,"detail",[I.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),h=(0,T.default)(f.prototype,"isLoading",[I.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!0}}),m=(0,T.default)(f.prototype,"isSubmitting",[I.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,T.default)(f.prototype,"setModule",[I.action],(0,E.default)(f.prototype,"setModule"),f.prototype),v=(0,T.default)(f.prototype,"submitting",[I.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>(this.isSubmitting=!0,(0,k.default)((()=>{e.catch((()=>{})).finally((()=>{this.isSubmitting=!1}))}),500),e)}}),(0,T.default)(f.prototype,"pureFetchList",[I.action],(0,E.default)(f.prototype,"pureFetchList"),f.prototype),(0,T.default)(f.prototype,"fetchList",[I.action],(0,E.default)(f.prototype,"fetchList"),f.prototype),(0,T.default)(f.prototype,"updateMarker",[I.action],(0,E.default)(f.prototype,"updateMarker"),f.prototype),(0,T.default)(f.prototype,"fetchListByPage",[I.action],(0,E.default)(f.prototype,"fetchListByPage"),f.prototype),(0,T.default)(f.prototype,"fetchDetail",[I.action],(0,E.default)(f.prototype,"fetchDetail"),f.prototype),(0,T.default)(f.prototype,"setSelectRowKeys",[I.action],(0,E.default)(f.prototype,"setSelectRowKeys"),f.prototype),(0,T.default)(f.prototype,"create",[I.action],(0,E.default)(f.prototype,"create"),f.prototype),(0,T.default)(f.prototype,"edit",[I.action],(0,E.default)(f.prototype,"edit"),f.prototype),(0,T.default)(f.prototype,"update",[I.action],(0,E.default)(f.prototype,"update"),f.prototype),(0,T.default)(f.prototype,"patch",[I.action],(0,E.default)(f.prototype,"patch"),f.prototype),g=(0,T.default)(f.prototype,"delete",[I.action],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return e=>{var{id:t}=e;return this.submitting(this.client.delete(t))}}}),(0,T.default)(f.prototype,"batchDelete",[I.action],(0,E.default)(f.prototype,"batchDelete"),f.prototype),(0,T.default)(f.prototype,"clearData",[I.action],(0,E.default)(f.prototype,"clearData"),f.prototype),f);t.default=V},function(e,t,n){var r=n(28),a=n(35),o=n(168),i=n(598),c=n(195),l=n(19);e.exports=function(e,t,n,s,u){var d,f,p,h={};return r(d=a(s)).call(d,(function(e){h[e]=s[e]})),h.enumerable=!!h.enumerable,h.configurable=!!h.configurable,("value"in h||h.initializer)&&(h.writable=!0),h=o(f=i(p=c(n).call(n)).call(p)).call(f,(function(n,r){return r(e,t,n)||n}),h),u&&void 0!==h.initializer&&(h.value=h.initializer?h.initializer.call(u):void 0,h.initializer=void 0),void 0===h.initializer&&(l(e,t,h),h=null),h},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-.3L512 563.4l-99.3 118.4-66.1.3c-4.4 0-8-3.5-8-8 0-1.9.7-3.7 1.9-5.2l130.1-155L340.5 359a8.32 8.32 0 01-1.9-5.2c0-4.4 3.6-8 8-8l66.1.3L512 464.6l99.3-118.4 66-.3c4.4 0 8 3.5 8 8 0 1.9-.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z"}}]},name:"close-circle",theme:"filled"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="CloseCircleFilled";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=function(){};e.exports=r},function(e,t,n){var r=n(43),a=n(427),o=n(129),i=n(102),c=n(347),l=n(429),s=function(e,t){this.stopped=e,this.result=t};e.exports=function(e,t,n){var u,d,f,p,h,m,v,g=n&&n.that,b=!(!n||!n.AS_ENTRIES),y=!(!n||!n.IS_ITERATOR),w=!(!n||!n.INTERRUPTED),O=i(t,g,1+b+w),x=function(e){return u&&l(u),new s(!0,e)},C=function(e){return b?(r(e),w?O(e[0],e[1],x):O(e[0],e[1])):w?O(e,x):O(e)};if(y)u=e;else{if("function"!=typeof(d=c(e)))throw TypeError("Target is not iterable");if(a(d)){for(f=0,p=o(e.length);p>f;f++)if((h=C(e[f]))&&h instanceof s)return h;return new s(!1)}u=d.call(e)}for(m=u.next;!(v=m.call(u)).done;){try{h=C(v.value)}catch(e){throw l(u),e}if("object"==typeof h&&h&&h instanceof s)return h}return new s(!1)}},function(e,t,n){(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||function(){return this}()||Function("return this")()}).call(this,n(169))},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z"}}]},name:"close",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="CloseOutlined";t.a=r.forwardRef(i)},function(e,t,n){e.exports=n(664)},function(e,t,n){e.exports=n(882)},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){e.exports=n(645)},function(e,t){e.exports={}},function(e,t,n){var r=n(59),a=n(344),o=n(103),i=n(235),c=n(346),l=n(428),s=a("wks"),u=r.Symbol,d=l?u:u&&u.withoutSetter||i;e.exports=function(e){return o(s,e)&&(c||"string"==typeof s[e])||(c&&o(u,e)?s[e]=u[e]:s[e]=d("Symbol."+e)),s[e]}},function(e,t,n){"use strict";e.exports=function(e,t,n,r,a,o,i,c){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,a,o,i,c],u=0;(l=new Error(t.replace(/%s/g,(function(){return s[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},function(e,t,n){"use strict";var r=n(0),a=r.createContext(null);t.a=a},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"}}]},name:"loading",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="LoadingOutlined";t.a=r.forwardRef(i)},function(e,t,n){var r=n(44),a=n(91),o=n(847);e.exports=function(e,t){if(null==e)return{};var n,i,c=o(e,t);if(r){var l=r(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n])}return c},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(19);e.exports=function(e,t,n,a){n&&r(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(a):void 0})},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){throw new Error("Decorating class property failed. Please ensure that proposal-class-properties is enabled and runs after the decorators transform.")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(300),a=n(154),o=n(301),i=n(302),c="${label} is not a valid ${type}",l={locale:"en",Pagination:r.a,DatePicker:a.a,TimePicker:o.a,Calendar:i.a,global:{placeholder:"Please select"},Table:{filterTitle:"Filter menu",filterConfirm:"OK",filterReset:"Reset",filterEmptyText:"No filters",emptyText:"No data",selectAll:"Select current page",selectInvert:"Invert current page",selectNone:"Clear all data",selectionAll:"Select all data",sortTitle:"Sort",expand:"Expand row",collapse:"Collapse row",triggerDesc:"Click to sort descending",triggerAsc:"Click to sort ascending",cancelSort:"Click to cancel sorting"},Modal:{okText:"OK",cancelText:"Cancel",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Cancel"},Transfer:{titles:["",""],searchPlaceholder:"Search here",itemUnit:"item",itemsUnit:"items",remove:"Remove",selectCurrent:"Select current page",removeCurrent:"Remove current page",selectAll:"Select all data",removeAll:"Remove all data",selectInvert:"Invert current page"},Upload:{uploading:"Uploading...",removeFile:"Remove file",uploadError:"Upload error",previewFile:"Preview file",downloadFile:"Download file"},Empty:{description:"No Data"},Icon:{icon:"icon"},Text:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand"},PageHeader:{back:"Back"},Form:{optional:"(optional)",defaultValidateMessages:{default:"Field validation error for ${label}",required:"Please enter ${label}",enum:"${label} must be one of [${enum}]",whitespace:"${label} cannot be a blank character",date:{format:"${label} date format is invalid",parse:"${label} cannot be converted to a date",invalid:"${label} is an invalid date"},types:{string:c,method:c,array:c,object:c,number:c,date:c,boolean:c,integer:c,float:c,regexp:c,email:c,url:c,hex:c},string:{len:"${label} must be ${len} characters",min:"${label} must be at least ${min} characters",max:"${label} must be up to ${max} characters",range:"${label} must be between ${min}-${max} characters"},number:{len:"${label} must be equal to ${len}",min:"${label} must be minimum ${min}",max:"${label} must be maximum ${max}",range:"${label} must be between ${min}-${max}"},array:{len:"Must be ${len} ${label}",min:"At least ${min} ${label}",max:"At most ${max} ${label}",range:"The amount of ${label} must be between ${min}-${max}"},pattern:{mismatch:"${label} does not match the pattern ${pattern}"}}},Image:{preview:"Preview"}};t.a=l},function(e,t){e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var a=(i=r,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),o=r.sources.map((function(e){return"/*# sourceURL="+r.sourceRoot+e+" */"}));return[n].concat(o).concat([a]).join("\n")}var i;return[n].join("\n")}(t,e);return t[2]?"@media "+t[2]+"{"+n+"}":n})).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},a=0;a=0&&d.splice(t,1)}function g(e){var t=document.createElement("style");return e.attrs.type="text/css",b(t,e.attrs),m(e,t),t}function b(e,t){Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])}))}function y(e,t){var n,r,a,o;if(t.transform&&e.css){if(!(o=t.transform(e.css)))return function(){};e.css=o}if(t.singleton){var i=u++;n=s||(s=g(t)),r=x.bind(null,n,i,!1),a=x.bind(null,n,i,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return e.attrs.type="text/css",e.attrs.rel="stylesheet",b(t,e.attrs),m(e,t),t}(t),r=M.bind(null,n,t),a=function(){v(n),n.href&&URL.revokeObjectURL(n.href)}):(n=g(t),r=C.bind(null,n),a=function(){v(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else a()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=i()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=h(e,t);return p(n,t),function(e){for(var r=[],a=0;a1&&void 0!==arguments[1]&&arguments[1],n=e&&"function"==typeof e.getBoundingClientRect&&e.getBoundingClientRect().width;if(n){if(t){var r=getComputedStyle(e),a=r.marginLeft,o=r.marginRight;n+=+a.replace("px","")+ +o.replace("px","")}n=+n.toFixed(6)}return n||0},re=function(e,t,n){e&&"object"===Object(T.a)(e.style)&&(e.style[t]=n)},ae=n(7),oe=n(15),ie=n(149),ce=n(40),le=n(95),se=n(23),ue=n(39),de={adjustX:1,adjustY:1},fe={topLeft:{points:["bl","tl"],overflow:de,offset:[0,-7]},bottomLeft:{points:["tl","bl"],overflow:de,offset:[0,7]},leftTop:{points:["tr","tl"],overflow:de,offset:[-4,0]},rightTop:{points:["tl","tr"],overflow:de,offset:[4,0]}},pe={topLeft:{points:["bl","tl"],overflow:de,offset:[0,-7]},bottomLeft:{points:["tl","bl"],overflow:de,offset:[0,7]},rightTop:{points:["tr","tl"],overflow:de,offset:[-4,0]},leftTop:{points:["tl","tr"],overflow:de,offset:[4,0]}},he=0,me={horizontal:"bottomLeft",vertical:"rightTop","vertical-left":"rightTop","vertical-right":"leftTop"},ve=function(e,t,n){var r=X(t),a=e.getState();e.setState({defaultActiveFirst:Object(o.a)(Object(o.a)({},a.defaultActiveFirst),{},Object(E.a)({},r,n))})},ge=function(e){Object(s.a)(n,e);var t=Object(u.a)(n);function n(e){var r;Object(i.a)(this,n),(r=t.call(this,e)).onDestroy=function(e){r.props.onDestroy(e)},r.onKeyDown=function(e){var t=e.keyCode,n=r.menuInstance,a=r.props.store,o=r.getVisible();if(t===k.a.ENTER)return r.onTitleClick(e),ve(a,r.props.eventKey,!0),!0;if(t===k.a.RIGHT)return o?n.onKeyDown(e):(r.triggerOpenChange(!0),ve(a,r.props.eventKey,!0)),!0;if(t===k.a.LEFT){var i;if(!o)return;return(i=n.onKeyDown(e))||(r.triggerOpenChange(!1),i=!0),i}return!o||t!==k.a.UP&&t!==k.a.DOWN?void 0:n.onKeyDown(e)},r.onOpenChange=function(e){r.props.onOpenChange(e)},r.onPopupVisibleChange=function(e){r.triggerOpenChange(e,e?"mouseenter":"mouseleave")},r.onMouseEnter=function(e){var t=r.props,n=t.eventKey,a=t.onMouseEnter,o=t.store;ve(o,r.props.eventKey,!1),a({key:n,domEvent:e})},r.onMouseLeave=function(e){var t=r.props,n=t.parentMenu,a=t.eventKey,o=t.onMouseLeave;n.subMenuInstance=Object(l.a)(r),o({key:a,domEvent:e})},r.onTitleMouseEnter=function(e){var t=r.props,n=t.eventKey,a=t.onItemHover,o=t.onTitleMouseEnter;a({key:n,hover:!0}),o({key:n,domEvent:e})},r.onTitleMouseLeave=function(e){var t=r.props,n=t.parentMenu,a=t.eventKey,o=t.onItemHover,i=t.onTitleMouseLeave;n.subMenuInstance=Object(l.a)(r),o({key:a,hover:!1}),i({key:a,domEvent:e})},r.onTitleClick=function(e){var t=Object(l.a)(r).props;t.onTitleClick({key:t.eventKey,domEvent:e}),"hover"!==t.triggerSubMenuAction&&(r.triggerOpenChange(!r.getVisible(),"click"),ve(t.store,r.props.eventKey,!1))},r.onSubMenuClick=function(e){"function"==typeof r.props.onClick&&r.props.onClick(r.addKeyPath(e))},r.onSelect=function(e){r.props.onSelect(e)},r.onDeselect=function(e){r.props.onDeselect(e)},r.getPrefixCls=function(){return"".concat(r.props.rootPrefixCls,"-submenu")},r.getActiveClassName=function(){return"".concat(r.getPrefixCls(),"-active")},r.getDisabledClassName=function(){return"".concat(r.getPrefixCls(),"-disabled")},r.getSelectedClassName=function(){return"".concat(r.getPrefixCls(),"-selected")},r.getOpenClassName=function(){return"".concat(r.props.rootPrefixCls,"-submenu-open")},r.getVisible=function(){return r.state.isOpen},r.getMode=function(){return r.state.mode},r.saveMenuInstance=function(e){r.menuInstance=e},r.addKeyPath=function(e){return Object(o.a)(Object(o.a)({},e),{},{keyPath:(e.keyPath||[]).concat(r.props.eventKey)})},r.triggerOpenChange=function(e,t){var n=r.props.eventKey,a=function(){r.onOpenChange({key:n,item:Object(l.a)(r),trigger:t,open:e})};"mouseenter"===t?r.mouseenterTimeout=setTimeout((function(){a()}),0):a()},r.isChildrenSelected=function(){var e={find:!1};return ee(r.props.children,r.props.selectedKeys,e),e.find},r.isInlineMode=function(){return"inline"===r.getMode()},r.adjustWidth=function(){if(r.subMenuTitle&&r.menuInstance){var e=ce.findDOMNode(r.menuInstance);e.offsetWidth>=r.subMenuTitle.offsetWidth||(e.style.minWidth="".concat(r.subMenuTitle.offsetWidth,"px"))}},r.saveSubMenuTitle=function(e){r.subMenuTitle=e},r.getBaseProps=function(){var e=Object(l.a)(r).props,t=r.getMode();return{mode:"horizontal"===t?"vertical":t,visible:r.getVisible(),level:e.level+1,inlineIndent:e.inlineIndent,focusable:!1,onClick:r.onSubMenuClick,onSelect:r.onSelect,onDeselect:r.onDeselect,onDestroy:r.onDestroy,selectedKeys:e.selectedKeys,eventKey:"".concat(e.eventKey,"-menu-"),openKeys:e.openKeys,motion:e.motion,onOpenChange:r.onOpenChange,subMenuOpenDelay:e.subMenuOpenDelay,parentMenu:Object(l.a)(r),subMenuCloseDelay:e.subMenuCloseDelay,forceSubMenuRender:e.forceSubMenuRender,triggerSubMenuAction:e.triggerSubMenuAction,builtinPlacements:e.builtinPlacements,defaultActiveFirst:e.store.getState().defaultActiveFirst[X(e.eventKey)],multiple:e.multiple,prefixCls:e.rootPrefixCls,id:r.internalMenuId,manualRef:r.saveMenuInstance,itemIcon:e.itemIcon,expandIcon:e.expandIcon,direction:e.direction}},r.getMotion=function(e,t){var n=Object(l.a)(r).haveRendered,a=r.props,i=a.motion,c=a.rootPrefixCls;return Object(o.a)(Object(o.a)({},i),{},{leavedClassName:"".concat(c,"-hidden"),removeOnLeave:!1,motionAppear:n||!t||"inline"!==e})};var a=e.store,c=e.eventKey,s=a.getState().defaultActiveFirst;r.isRootMenu=!1;var u=!1;return s&&(u=s[c]),ve(a,c,u),r.state={mode:e.mode,isOpen:e.isOpen},r}return Object(c.a)(n,[{key:"componentDidMount",value:function(){this.componentDidUpdate()}},{key:"componentDidUpdate",value:function(){var e=this,t=this.props,n=t.mode,r=t.parentMenu,a=t.manualRef,o=t.isOpen,i=function(){e.setState({mode:n,isOpen:o})},c=o!==this.state.isOpen,l=n!==this.state.mode;(l||c)&&(se.a.cancel(this.updateStateRaf),l?this.updateStateRaf=Object(se.a)(i):i()),a&&a(this),"horizontal"===n&&(null==r?void 0:r.isRootMenu)&&o&&(this.minWidthTimeout=setTimeout((function(){return e.adjustWidth()}),0))}},{key:"componentWillUnmount",value:function(){var e=this.props,t=e.onDestroy,n=e.eventKey;t&&t(n),this.minWidthTimeout&&clearTimeout(this.minWidthTimeout),this.mouseenterTimeout&&clearTimeout(this.mouseenterTimeout),se.a.cancel(this.updateStateRaf)}},{key:"renderPopupMenu",value:function(e,t){var n=this.getBaseProps();return d.createElement(Se,Object(a.a)({},n,{id:this.internalMenuId,className:e,style:t}),this.props.children)}},{key:"renderChildren",value:function(){var e=this,t=this.getBaseProps(),n=t.mode,r=t.visible,o=t.forceSubMenuRender,i=t.direction,c=this.getMotion(n,r);if(this.haveRendered=!0,this.haveOpened=this.haveOpened||r||o,!this.haveOpened)return d.createElement("div",null);var l=P()("".concat(t.prefixCls,"-sub"),Object(E.a)({},"".concat(t.prefixCls,"-rtl"),"rtl"===i));return this.isInlineMode()?d.createElement(ue.default,Object(a.a)({visible:t.visible,forceRender:o},c),(function(t){var n=t.className,r=t.style,a=P()(l,n);return e.renderPopupMenu(a,r)})):this.renderPopupMenu(l)}},{key:"render",value:function(){var e,t,n,r=Object(o.a)({},this.props),i=this.getVisible(),c=this.getPrefixCls(),l=this.isInlineMode(),s=this.getMode(),u=P()(c,"".concat(c,"-").concat(s),(e={},Object(E.a)(e,r.className,!!r.className),Object(E.a)(e,this.getOpenClassName(),i),Object(E.a)(e,this.getActiveClassName(),r.active||i&&!l),Object(E.a)(e,this.getDisabledClassName(),r.disabled),Object(E.a)(e,this.getSelectedClassName(),this.isChildrenSelected()),e));this.internalMenuId||(r.eventKey?this.internalMenuId="".concat(r.eventKey,"$Menu"):(he+=1,this.internalMenuId="$__$".concat(he,"$Menu")));var f={},p={},h={};r.disabled||(f={onMouseLeave:this.onMouseLeave,onMouseEnter:this.onMouseEnter},p={onClick:this.onTitleClick},h={onMouseEnter:this.onTitleMouseEnter,onMouseLeave:this.onTitleMouseLeave});var m={},v="rtl"===r.direction;l&&(v?m.paddingRight=r.inlineIndent*r.level:m.paddingLeft=r.inlineIndent*r.level);var g={};this.getVisible()&&(g={"aria-owns":this.internalMenuId});var b=null;"horizontal"!==s&&(b=this.props.expandIcon,"function"==typeof this.props.expandIcon&&(b=d.createElement(this.props.expandIcon,Object(o.a)({},this.props))));var y=d.createElement("div",Object(a.a)({ref:this.saveSubMenuTitle,style:m,className:"".concat(c,"-title"),role:"button"},h,p,{"aria-expanded":i},g,{"aria-haspopup":"true",title:"string"==typeof r.title?r.title:void 0}),r.title,b||d.createElement("i",{className:"".concat(c,"-arrow")})),w=this.renderChildren(),O=(null===(t=r.parentMenu)||void 0===t?void 0:t.isRootMenu)?r.parentMenu.props.getPopupContainer:function(e){return e.parentNode},x=me[s],C=r.popupOffset?{offset:r.popupOffset}:{},M=P()((n={},Object(E.a)(n,r.popupClassName,r.popupClassName&&!l),Object(E.a)(n,"".concat(c,"-rtl"),v),n)),k=r.disabled,j=r.triggerSubMenuAction,S=r.subMenuOpenDelay,N=r.forceSubMenuRender,T=r.subMenuCloseDelay,z=r.builtinPlacements;te.forEach((function(e){return delete r[e]})),delete r.onClick;var I=v?Object(o.a)(Object(o.a)({},pe),z):Object(o.a)(Object(o.a)({},fe),z);delete r.direction;var D=this.getBaseProps(),_=l?null:this.getMotion(D.mode,D.visible);return d.createElement("li",Object(a.a)({},r,f,{className:u,role:"menuitem"}),d.createElement(le.a,{prefixCls:c,popupClassName:P()("".concat(c,"-popup"),M),getPopupContainer:O,builtinPlacements:I,popupPlacement:x,popupVisible:!l&&i,popupAlign:C,popup:l?null:w,action:k||l?[]:[j],mouseEnterDelay:S,mouseLeaveDelay:T,onPopupVisibleChange:this.onPopupVisibleChange,forceRender:N,popupMotion:_},y),l?w:null)}}]),n}(d.Component);ge.defaultProps={onMouseEnter:Q,onMouseLeave:Q,onTitleMouseEnter:Q,onTitleMouseLeave:Q,onTitleClick:Q,manualRef:Q,mode:"vertical",title:""};var be=x((function(e,t){var n=e.openKeys,r=e.activeKey,a=e.selectedKeys,o=t.eventKey,i=t.subMenuKey;return{isOpen:n.indexOf(o)>-1,active:r[i]===o,selectedKeys:a}}))(ge);be.isSubMenu=!0;var ye=be,we="menuitem-overflowed",Oe=function(e){Object(s.a)(n,e);var t=Object(u.a)(n);function n(){var e;return Object(i.a)(this,n),(e=t.apply(this,arguments)).resizeObserver=null,e.mutationObserver=null,e.originalTotalWidth=0,e.overflowedItems=[],e.menuItemSizes=[],e.cancelFrameId=null,e.state={lastVisibleIndex:void 0},e.childRef=d.createRef(),e.getMenuItemNodes=function(){var t=e.props.prefixCls,n=e.childRef.current;return n?[].slice.call(n.children).filter((function(e){return e.className.split(" ").indexOf("".concat(t,"-overflowed-submenu"))<0})):[]},e.getOverflowedSubMenuItem=function(t,n,r){var i=e.props,c=i.overflowedIndicator,l=i.level,s=i.mode,u=i.prefixCls,f=i.theme;if(1!==l||"horizontal"!==s)return null;var p=e.props.children[0].props,h=(p.children,p.title,p.style),m=Object(oe.a)(p,["children","title","style"]),v=Object(o.a)({},h),g="".concat(t,"-overflowed-indicator"),b="".concat(t,"-overflowed-indicator");0===n.length&&!0!==r?v=Object(o.a)(Object(o.a)({},v),{},{display:"none"}):r&&(v=Object(o.a)(Object(o.a)({},v),{},{visibility:"hidden",position:"absolute"}),g="".concat(g,"-placeholder"),b="".concat(b,"-placeholder"));var y=f?"".concat(u,"-").concat(f):"",w={};return te.forEach((function(e){void 0!==m[e]&&(w[e]=m[e])})),d.createElement(ye,Object(a.a)({title:c,className:"".concat(u,"-overflowed-submenu"),popupClassName:y},w,{key:g,eventKey:b,disabled:!1,style:v}),n)},e.setChildrenWidthAndResize=function(){if("horizontal"===e.props.mode){var t=e.childRef.current;if(t){var n=t.children;if(n&&0!==n.length){var r=t.children[n.length-1];re(r,"display","inline-block");var a=e.getMenuItemNodes(),o=a.filter((function(e){return e.className.split(" ").indexOf(we)>=0}));o.forEach((function(e){re(e,"display","inline-block")})),e.menuItemSizes=a.map((function(e){return ne(e,!0)})),o.forEach((function(e){re(e,"display","none")})),e.overflowedIndicatorWidth=ne(t.children[t.children.length-1],!0),e.originalTotalWidth=e.menuItemSizes.reduce((function(e,t){return e+t}),0),e.handleResize(),re(r,"display","none")}}}},e.handleResize=function(){if("horizontal"===e.props.mode){var t=e.childRef.current;if(t){var n=ne(t);e.overflowedItems=[];var r,a=0;e.originalTotalWidth>n+.5&&(r=-1,e.menuItemSizes.forEach((function(t){(a+=t)+e.overflowedIndicatorWidth<=n&&(r+=1)}))),e.setState({lastVisibleIndex:r})}}},e}return Object(c.a)(n,[{key:"componentDidMount",value:function(){var e=this;if(this.setChildrenWidthAndResize(),1===this.props.level&&"horizontal"===this.props.mode){var t=this.childRef.current;if(!t)return;this.resizeObserver=new ie.a((function(t){t.forEach((function(){var t=e.cancelFrameId;cancelAnimationFrame(t),e.cancelFrameId=requestAnimationFrame(e.setChildrenWidthAndResize)}))})),[].slice.call(t.children).concat(t).forEach((function(t){e.resizeObserver.observe(t)})),"undefined"!=typeof MutationObserver&&(this.mutationObserver=new MutationObserver((function(){e.resizeObserver.disconnect(),[].slice.call(t.children).concat(t).forEach((function(t){e.resizeObserver.observe(t)})),e.setChildrenWidthAndResize()})),this.mutationObserver.observe(t,{attributes:!1,childList:!0,subTree:!1}))}}},{key:"componentWillUnmount",value:function(){this.resizeObserver&&this.resizeObserver.disconnect(),this.mutationObserver&&this.mutationObserver.disconnect(),cancelAnimationFrame(this.cancelFrameId)}},{key:"renderChildren",value:function(e){var t=this,n=this.state.lastVisibleIndex;return(e||[]).reduce((function(r,a,o){var i=a;if("horizontal"===t.props.mode){var c=t.getOverflowedSubMenuItem(a.props.eventKey,[]);void 0!==n&&-1!==t.props.className.indexOf("".concat(t.props.prefixCls,"-root"))&&(o>n&&(i=d.cloneElement(a,{style:{display:"none"},eventKey:"".concat(a.props.eventKey,"-hidden"),className:"".concat(we)})),o===n+1&&(t.overflowedItems=e.slice(n+1).map((function(e){return d.cloneElement(e,{key:e.props.eventKey,mode:"vertical-left"})})),c=t.getOverflowedSubMenuItem(a.props.eventKey,t.overflowedItems)));var l=[].concat(Object(ae.a)(r),[c,i]);return o===e.length-1&&l.push(t.getOverflowedSubMenuItem(a.props.eventKey,[],!0)),l}return[].concat(Object(ae.a)(r),[i])}),[])}},{key:"render",value:function(){var e=this.props,t=(e.visible,e.prefixCls,e.overflowedIndicator,e.mode,e.level,e.tag),n=e.children,r=(e.theme,Object(oe.a)(e,["visible","prefixCls","overflowedIndicator","mode","level","tag","children","theme"])),o=t;return d.createElement(o,Object(a.a)({ref:this.childRef},r),this.renderChildren(n))}}]),n}(d.Component);Oe.defaultProps={tag:"div",className:""};var xe=Oe;function Ce(e,t,n){var r=e.getState();e.setState({activeKey:Object(o.a)(Object(o.a)({},r.activeKey),{},Object(E.a)({},t,n))})}function Me(e){return e.eventKey||"0-menu-"}function Ee(e,t){var n,r=t,a=e.children,o=e.eventKey;if(r&&(J(a,(function(e,t){e&&e.props&&!e.props.disabled&&r===Z(e,o,t)&&(n=!0)})),n))return r;return r=null,e.defaultActiveFirst?(J(a,(function(e,t){r||!e||e.props.disabled||(r=Z(e,o,t))})),r):r}function ke(e){if(e){var t=this.instanceArray.indexOf(e);-1!==t?this.instanceArray[t]=e:this.instanceArray.push(e)}}var je=function(e){Object(s.a)(n,e);var t=Object(u.a)(n);function n(e){var r;return Object(i.a)(this,n),(r=t.call(this,e)).onKeyDown=function(e,t){var n,a=e.keyCode;if(r.getFlatInstanceArray().forEach((function(t){t&&t.props.active&&t.onKeyDown&&(n=t.onKeyDown(e))})),n)return 1;var o=null;return a!==k.a.UP&&a!==k.a.DOWN||(o=r.step(a===k.a.UP?-1:1)),o?(e.preventDefault(),Ce(r.props.store,Me(r.props),o.props.eventKey),"function"==typeof t&&t(o),1):void 0},r.onItemHover=function(e){var t=e.key,n=e.hover;Ce(r.props.store,Me(r.props),n?t:null)},r.onDeselect=function(e){r.props.onDeselect(e)},r.onSelect=function(e){r.props.onSelect(e)},r.onClick=function(e){r.props.onClick(e)},r.onOpenChange=function(e){r.props.onOpenChange(e)},r.onDestroy=function(e){r.props.onDestroy(e)},r.getFlatInstanceArray=function(){return r.instanceArray},r.step=function(e){var t=r.getFlatInstanceArray(),n=r.props.store.getState().activeKey[Me(r.props)],a=t.length;if(!a)return null;e<0&&(t=t.concat().reverse());var o=-1;if(t.every((function(e,t){return!e||e.props.eventKey!==n||(o=t,!1)})),r.props.defaultActiveFirst||-1===o||(i=t.slice(o,a-1)).length&&!i.every((function(e){return!!e.props.disabled}))){var i,c=(o+1)%a,l=c;do{var s=t[l];if(s&&!s.props.disabled)return s;l=(l+1)%a}while(l!==c);return null}},r.renderCommonMenuItem=function(e,t,n){var a=r.props.store.getState(),i=Object(l.a)(r).props,c=Z(e,i.eventKey,t),s=e.props;if(!s||"string"==typeof e.type)return e;var u=c===a.activeKey,f=Object(o.a)(Object(o.a)({mode:s.mode||i.mode,level:i.level,inlineIndent:i.inlineIndent,renderMenuItem:r.renderMenuItem,rootPrefixCls:i.prefixCls,index:t,parentMenu:i.parentMenu,manualRef:s.disabled?void 0:j(e.ref,ke.bind(Object(l.a)(r))),eventKey:c,active:!s.disabled&&u,multiple:i.multiple,onClick:function(e){(s.onClick||Q)(e),r.onClick(e)},onItemHover:r.onItemHover,motion:i.motion,subMenuOpenDelay:i.subMenuOpenDelay,subMenuCloseDelay:i.subMenuCloseDelay,forceSubMenuRender:i.forceSubMenuRender,onOpenChange:r.onOpenChange,onDeselect:r.onDeselect,onSelect:r.onSelect,builtinPlacements:i.builtinPlacements,itemIcon:s.itemIcon||r.props.itemIcon,expandIcon:s.expandIcon||r.props.expandIcon},n),{},{direction:i.direction});return("inline"===i.mode||q.any)&&(f.triggerSubMenuAction="click"),d.cloneElement(e,Object(o.a)(Object(o.a)({},f),{},{key:c||t}))},r.renderMenuItem=function(e,t,n){if(!e)return null;var a=r.props.store.getState(),o={openKeys:a.openKeys,selectedKeys:a.selectedKeys,triggerSubMenuAction:r.props.triggerSubMenuAction,subMenuKey:n};return r.renderCommonMenuItem(e,t,o)},e.store.setState({activeKey:Object(o.a)(Object(o.a)({},e.store.getState().activeKey),{},Object(E.a)({},e.eventKey,Ee(e,e.activeKey)))}),r.instanceArray=[],r}return Object(c.a)(n,[{key:"componentDidMount",value:function(){this.props.manualRef&&this.props.manualRef(this)}},{key:"shouldComponentUpdate",value:function(e){return this.props.visible||e.visible||this.props.className!==e.className||!v()(this.props.style,e.style)}},{key:"componentDidUpdate",value:function(e){var t=this.props,n="activeKey"in t?t.activeKey:t.store.getState().activeKey[Me(t)],r=Ee(t,n);if(r!==n)Ce(t.store,Me(t),r);else if("activeKey"in e){r!==Ee(e,e.activeKey)&&Ce(t.store,Me(t),r)}}},{key:"render",value:function(){var e=this,t=Object(a.a)({},this.props);this.instanceArray=[];var n={className:P()(t.prefixCls,t.className,"".concat(t.prefixCls,"-").concat(t.mode)),role:t.role||"menu"};t.id&&(n.id=t.id),t.focusable&&(n.tabIndex=0,n.onKeyDown=this.onKeyDown);var r=t.prefixCls,o=t.eventKey,i=t.visible,c=t.level,l=t.mode,s=t.overflowedIndicator,u=t.theme;return te.forEach((function(e){return delete t[e]})),delete t.onClick,d.createElement(xe,Object(a.a)({},t,{prefixCls:r,mode:l,tag:"ul",level:c,theme:u,visible:i,overflowedIndicator:s},n),Object(S.a)(t.children).map((function(t,n){return e.renderMenuItem(t,n,o||"0-menu-")})))}}]),n}(d.Component);je.defaultProps={prefixCls:"rc-menu",className:"",mode:"vertical",level:1,inlineIndent:24,visible:!0,focusable:!0,style:{},manualRef:Q};var Se=x()(je),Ne=n(17);function Pe(e,t,n){var r=e.prefixCls,a=e.motion,o=e.defaultMotions,i=void 0===o?{}:o,c=e.openAnimation,l=e.openTransitionName,s=t.switchingModeFromInline;if(a)return a;if("object"===Object(T.a)(c)&&c)Object(Ne.a)(!1,"Object type of `openAnimation` is removed. Please use `motion` instead.");else if("string"==typeof c)return{motionName:"".concat(r,"-open-").concat(c)};if(l)return{motionName:l};var u=i[n];return u||(s?null:i.other)}var Te=function(e){Object(s.a)(n,e);var t=Object(u.a)(n);function n(e){var r;Object(i.a)(this,n),(r=t.call(this,e)).onSelect=function(e){var t=Object(l.a)(r).props;if(t.selectable){var n=r.store.getState().selectedKeys,a=e.key;n=t.multiple?n.concat([a]):[a],"selectedKeys"in t||r.store.setState({selectedKeys:n}),t.onSelect(Object(o.a)(Object(o.a)({},e),{},{selectedKeys:n}))}},r.onClick=function(e){var t=r.getRealMenuMode(),n=Object(l.a)(r),a=n.store,o=n.props.onOpenChange;"inline"===t||"openKeys"in r.props||(a.setState({openKeys:[]}),o([])),r.props.onClick(e)},r.onKeyDown=function(e,t){r.innerMenu.getWrappedInstance().onKeyDown(e,t)},r.onOpenChange=function(e){var t=Object(l.a)(r).props,n=r.store.getState().openKeys.concat(),a=!1,o=function(e){var t=!1;if(e.open)(t=-1===n.indexOf(e.key))&&n.push(e.key);else{var r=n.indexOf(e.key);(t=-1!==r)&&n.splice(r,1)}a=a||t};Array.isArray(e)?e.forEach(o):o(e),a&&("openKeys"in r.props||r.store.setState({openKeys:n}),t.onOpenChange(n))},r.onDeselect=function(e){var t=Object(l.a)(r).props;if(t.selectable){var n=r.store.getState().selectedKeys.concat(),a=e.key,i=n.indexOf(a);-1!==i&&n.splice(i,1),"selectedKeys"in t||r.store.setState({selectedKeys:n}),t.onDeselect(Object(o.a)(Object(o.a)({},e),{},{selectedKeys:n}))}},r.onMouseEnter=function(e){r.restoreModeVerticalFromInline();var t=r.props.onMouseEnter;t&&t(e)},r.onTransitionEnd=function(e){var t="width"===e.propertyName&&e.target===e.currentTarget,n=e.target.className,a="[object SVGAnimatedString]"===Object.prototype.toString.call(n)?n.animVal:n,o="font-size"===e.propertyName&&a.indexOf("anticon")>=0;(t||o)&&r.restoreModeVerticalFromInline()},r.setInnerMenu=function(e){r.innerMenu=e},r.isRootMenu=!0;var a,c,s,u=e.defaultSelectedKeys,d=e.defaultOpenKeys;return"selectedKeys"in e&&(u=e.selectedKeys||[]),"openKeys"in e&&(d=e.openKeys||[]),r.store=(a={selectedKeys:u,openKeys:d,activeKey:{"0-menu-":Ee(e,e.activeKey)}},c=a,s=[],{setState:function(e){c=C(C({},c),e);for(var t=0;t{var t,r=n(136).default,{endpoints:a={}}=r||{},i=d[e],c=a[e]||f[e]||"";return i?(0,o.default)(t="".concat(c,"/")).call(t,i):c};t.getOpenstackEndpoint=p;var h=e=>{var t=n(136).default;return(0,s.toJS)(t&&t.endpoints||{})[e]};t.getOriginEndpoint=h;t.skylineBase=()=>"/api/openstack/skyline/api/v1";t.keystoneBase=()=>p("keystone");t.novaBase=()=>p("nova");t.cinderBase=()=>p("cinder");t.glanceBase=()=>p("glance");t.neutronBase=()=>p("neutron");t.ironicBase=()=>p("ironic");t.ironicInspectorBase=()=>p("ironicInspector");t.placementBase=()=>p("placement");t.heatBase=()=>p("heat");t.octaviaBase=()=>p("octavia");t.swiftBase=()=>p("swift");t.troveBase=()=>p("trove");t.manilaBase=()=>p("manilav2");t.barbicanBase=()=>p("barbican");t.zunBase=()=>p("zun");t.magnumBase=()=>p("magnum");t.ironicOriginEndpoint=()=>h("ironic");t.vpnEndpoint=()=>h("neutron_vpn");t.lbEndpoint=()=>h("octavia");t.qosEndpoint=()=>h("neutron_qos");t.swiftEndpoint=()=>h("swift");t.cinderEndpoint=()=>h("cinder");t.manilaEndpoint=()=>h("manilav2");t.zunEndpoint=()=>h("zun");var m={nova:{key:"Openstack-Api-Version",value:"compute 2.79"},placement:{key:"Openstack-Api-Version",value:"placement 1.28"},cinder:{key:"Openstack-Api-Version",value:"volume 3.59"},ironic:{key:"X-Openstack-Ironic-Api-Version",value:"1.58"},"ironic-inspect":{key:"X-OpenStack-Ironic-Inspector-API-Version",value:"1.15"},manila:{key:"X-OpenStack-Manila-API-Version",value:"2.55"},zun:{key:"OpenStack-API-Version",value:"container 1.11"}};t.apiVersionMaps=m;t.getOpenstackApiVersion=e=>{var t,n=(0,i.default)(t=(0,c.default)(m)).call(t,(t=>(0,l.default)(e).call(e,t)>-1));return n?m[n]:null};t.getK8sTypeEndpoint=(e,t)=>{var n,r;return(0,o.default)(n=(0,o.default)(r="".concat(t,"/")).call(r,e,"/")).call(n,u[e])}},function(e,t,n){"use strict";function r(){return!("undefined"==typeof window||!window.document||!window.document.createElement)}n.d(t,"a",(function(){return r}))},function(e,t,n){"use strict";n.d(t,"g",(function(){return d})),n.d(t,"c",(function(){return f})),n.d(t,"a",(function(){return h})),n.d(t,"b",(function(){return m})),n.d(t,"d",(function(){return v})),n.d(t,"e",(function(){return g})),n.d(t,"f",(function(){return y}));var r=n(5),a=n(13),o=n(141),i=n(0),c=n.n(i),l=n(17),s=n(305),u=n(152);function d(e,t){Object(l.a)(e,"[@ant-design/icons] ".concat(t))}function f(e){return"object"===Object(a.a)(e)&&"string"==typeof e.name&&"string"==typeof e.theme&&("object"===Object(a.a)(e.icon)||"function"==typeof e.icon)}function p(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.keys(e).reduce((function(t,n){var r=e[n];switch(n){case"class":t.className=r,delete t.class;break;default:t[n]=r}return t}),{})}function h(e,t,n){return n?c.a.createElement(e.tag,Object(r.a)(Object(r.a)({key:t},p(e.attrs)),n),(e.children||[]).map((function(n,r){return h(n,"".concat(t,"-").concat(e.tag,"-").concat(r))}))):c.a.createElement(e.tag,Object(r.a)({key:t},p(e.attrs)),(e.children||[]).map((function(n,r){return h(n,"".concat(t,"-").concat(e.tag,"-").concat(r))})))}function m(e){return Object(o.generate)(e)[0]}function v(e){return e?Array.isArray(e)?e:[e]:[]}var g={width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true",focusable:"false"},b="\n.anticon {\n display: inline-block;\n color: inherit;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.anticon > * {\n line-height: 1;\n}\n\n.anticon svg {\n display: inline-block;\n}\n\n.anticon::before {\n display: none;\n}\n\n.anticon .anticon-icon {\n display: block;\n}\n\n.anticon[tabindex] {\n cursor: pointer;\n}\n\n.anticon-spin::before,\n.anticon-spin {\n display: inline-block;\n -webkit-animation: loadingCircle 1s infinite linear;\n animation: loadingCircle 1s infinite linear;\n}\n\n@-webkit-keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n",y=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:b,t=Object(i.useContext)(u.a),n=t.csp;Object(i.useEffect)((function(){Object(s.a)(e,"@ant-design-icons",{prepend:!0,csp:n})}),[])}},function(e,t,n){var r=n(66),a=n(59),o=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e])||o(a[e]):r[e]&&r[e][t]||a[e]&&a[e][t]}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var r=n(19),a=n(21);r(t,"__esModule",{value:!0}),t.default=void 0;var o=a(n(82)),i=a(n(28)),c=a(n(35)),l=a(n(37)),s=a(n(839));t.default=class{constructor(){var e=this;(0,l.default)(this,"getUrl",(e=>{var t,n,r,a;return this.projectInUrl?e?(0,o.default)(n=(0,o.default)(r="".concat(this.baseUrl,"/")).call(r,this.project,"/")).call(n,e):(0,o.default)(a="".concat(this.baseUrl,"/")).call(a,this.project):e?(0,o.default)(t="".concat(this.baseUrl,"/")).call(t,e):"".concat(this.baseUrl)})),(0,l.default)(this,"generateResource",(function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=e.getListUrl(t);return{list:(t,n)=>e.request.get(a,t,n),listDetail:(t,n)=>e.request.get("".concat(a,"/detail"),t,n),show:(n,r,a)=>e.request.get(e.getDetailUrl(t,n),r,a),showDetail:(n,r,a)=>e.request.get("".concat(e.getDetailUrl(t,n),"/detail"),r,a),create:function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o2?a-2:0),i=2;i2?a-2:0),i=2;i1?r-1:0),o=1;o1?r-1:0),o=1;o({list:function(r,a){for(var o=arguments.length,i=new Array(o>2?o-2:0),c=2;c2?o-2:0),c=2;c3?i-3:0),l=3;l2?o-2:0),c=2;c3?i-3:0),l=3;l3?i-3:0),l=3;l2?o-2:0),c=2;c2?o-2:0),c=2;c({list:function(a,o,i){for(var c=arguments.length,l=new Array(c>3?c-3:0),s=3;s4?l-4:0),u=4;u3?c-3:0),s=3;s4?l-4:0),u=4;u4?l-4:0),u=4;u3?c-3:0),s=3;s3?c-3:0),s=3;s2?a-2:0),i=2;i{var t;(0,i.default)(t=this.resources).call(t,(t=>{var n,{name:r,key:a,responseKey:o,enabled:l,subResources:s=[],isResource:u=!0,extendOperations:d=[]}=t,f=u?this.generateResource(a,o,l):{},p=r||a;((0,i.default)(d).call(d,(t=>{var{name:n,key:r,method:o="get",isDetail:i,generate:c,url:l}=t,s=n||r,d=l&&l(),p=u?void 0===i||i:void 0!==i&&i;f[s]=c||(p?function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),c=1;c{var n={},{name:r,key:o,responseKey:c,method:l,enabled:s,subResources:u=[]}=t,d=r||o;n=l?function(t){for(var n=e.getSubResourceUrlById(a,o,t),r=arguments.length,i=new Array(r>1?r-1:0),c=1;c{var{key:t,name:r,responseKey:i}=e;n[r||t]=this.generateSubSonResource(a,o,t,i)})),f[d]=n})),p)?this[p]=f:(0,i.default)(n=(0,c.default)(f)).call(n,(e=>{this[e]=f[e]}))}))})),this.generateAll()}get enable(){return!0}get request(){if(!this.enable){var e=["get","post","put","delete","patch","head","copy"],t={};return(0,i.default)(e).call(e,(e=>{t[e]=this.originRequest.empty})),t}var n=this.originRequest;return{get:(e,t,r)=>n.get(this.getUrl(e),t,r),post:(e,t,r,a)=>n.post(this.getUrl(e),t,r,a),put:(e,t,r,a)=>n.put(this.getUrl(e),t,r,a),delete:(e,t,r,a)=>n.delete(this.getUrl(e),t,r,a),patch:(e,t,r,a)=>n.patch(this.getUrl(e),t,r,a),head:(e,t,r)=>n.head(this.getUrl(e),t,r),copy:(e,t,r)=>n.copy(this.getUrl(e),t,r)}}get originRequest(){var{request:e}=s.default;return e}get params(){return[]}get baseUrl(){return""}get projectInUrl(){return!1}get project(){if(!this.projectInUrl)return"";var e=n(136).default,{project:{id:t}={}}=e.user||{};return t||""}get enabled(){return!0}get resources(){return[]}getListUrl(e){return e}getDetailUrl(e,t){var n,r;return t?e?"/"===e[e.length-1]?(0,o.default)(r="".concat(e.substr(0,e.length-1),"/")).call(r,t):(0,o.default)(n="".concat(e,"/")).call(n,t):t:e}getSubResourceUrl(e,t){var n,r;return e?t?"/"===e[e.length-1]?(0,o.default)(r="".concat(e)).call(r,t):(0,o.default)(n="".concat(e,"/")).call(n,t):e:t}getSubResourceUrlById(e,t,n){var r;return t?(0,o.default)(r="".concat(this.getDetailUrl(e,n),"/")).call(r,t):this.getDetailUrl(e,n)}getSubResourceUrlBySubId(e,t,n,r){var a;return(0,o.default)(a="".concat(this.getSubResourceUrlById(e,t,n),"/")).call(a,r)}getSubSubResourceListUrl(e,t,n,r,a){var i;return(0,o.default)(i="".concat(this.getSubResourceUrlBySubId(e,t,r,a),"/")).call(i,n)}getSubSubResourceDetailUrl(e,t,n,r,a,i){var c;return(0,o.default)(c="".concat(this.getSubSubResourceListUrl(e,t,n,r,a),"/")).call(c,i)}}},function(e,t){e.exports=function(e,t,n,r){var a=n?n.call(r,e,t):void 0;if(void 0!==a)return!!a;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var o=Object.keys(e),i=Object.keys(t);if(o.length!==i.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(t),l=0;l3&&void 0!==arguments[3]&&arguments[3];return t.length&&r&&void 0===n&&!C(e,t.slice(0,-1))?e:k(e,t,n,r)}function S(e){return g(e)}function N(e,t){return C(e,t)}function P(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=j(e,t,n,r);return a}function T(e,t){var n={};return t.forEach((function(t){var r=N(e,t);n=P(n,t,r)})),n}function z(e,t){return e&&e.some((function(e){return A(e,t)}))}function I(e){return"object"===Object(O.a)(e)&&null!==e&&Object.getPrototypeOf(e)===Object.prototype}function D(e,t){var n=Array.isArray(e)?Object(l.a)(e):Object(c.a)({},e);return t?(Object.keys(t).forEach((function(e){var r=n[e],a=t[e],o=I(r)&&I(a);n[e]=o?D(r,a||{}):a})),n):n}function _(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=r||n<0||n>=r)return e;var a=e[t],o=t-n;return o>0?[].concat(Object(l.a)(e.slice(0,n)),[a],Object(l.a)(e.slice(n,t)),Object(l.a)(e.slice(t+1,r))):o<0?[].concat(Object(l.a)(e.slice(0,t)),Object(l.a)(e.slice(t+1,n+1)),[a],Object(l.a)(e.slice(n+1,r))):e}var F="'${name}' is not a valid ${type}",V={default:"Validation error on field '${name}'",required:"'${name}' is required",enum:"'${name}' must be one of [${enum}]",whitespace:"'${name}' cannot be empty",date:{format:"'${name}' is invalid for format date",parse:"'${name}' could not be parsed as date",invalid:"'${name}' is invalid date"},types:{string:F,method:F,array:F,object:F,number:F,date:F,boolean:F,integer:F,float:F,regexp:F,email:F,url:F,hex:F},string:{len:"'${name}' must be exactly ${len} characters",min:"'${name}' must be at least ${min} characters",max:"'${name}' cannot be longer than ${max} characters",range:"'${name}' must be between ${min} and ${max} characters"},number:{len:"'${name}' must equal ${len}",min:"'${name}' cannot be less than ${min}",max:"'${name}' cannot be greater than ${max}",range:"'${name}' must be between ${min} and ${max}"},array:{len:"'${name}' must be exactly ${len} in length",min:"'${name}' cannot be less than ${min} in length",max:"'${name}' cannot be greater than ${max} in length",range:"'${name}' must be between ${min} and ${max} in length"},pattern:{mismatch:"'${name}' does not match pattern ${pattern}"}},H=x.a;function B(e,t,n,r){var a=Object(c.a)(Object(c.a)({},n),{},{name:t,enum:(n.enum||[]).join(", ")}),o=function(e,t){return function(){return function(e,t){return e.replace(/\$\{\w+\}/g,(function(e){var n=e.slice(2,-1);return t[n]}))}(e,Object(c.a)(Object(c.a)({},a),t))}};return function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(t).forEach((function(a){var i=t[a];"string"==typeof i?n[a]=o(i,r):i&&"object"===Object(O.a)(i)?(n[a]={},e(i,n[a])):n[a]=i})),n}(_({},V,e))}function $(e,t,n,r,a){return U.apply(this,arguments)}function U(){return(U=Object(w.a)(y.a.mark((function e(t,n,a,o,s){var u,d,f,p,h,m;return y.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return u=Object(c.a)({},a),d=null,u&&"array"===u.type&&u.defaultField&&(d=u.defaultField,delete u.defaultField),f=new H(Object(i.a)({},t,[u])),p=B(o.validateMessages,t,u,s),f.messages(p),h=[],e.prev=7,e.next=10,Promise.resolve(f.validate(Object(i.a)({},t,n),Object(c.a)({},o)));case 10:e.next=15;break;case 12:e.prev=12,e.t0=e.catch(7),h=e.t0.errors?e.t0.errors.map((function(e,t){var n=e.message;return r.isValidElement(n)?r.cloneElement(n,{key:"error_".concat(t)}):n})):[p.default()];case 15:if(h.length||!d){e.next=20;break}return e.next=18,Promise.all(n.map((function(e,n){return $("".concat(t,".").concat(n),e,d,o,s)})));case 18:return m=e.sent,e.abrupt("return",m.reduce((function(e,t){return[].concat(Object(l.a)(e),Object(l.a)(t))}),[]));case 20:return e.abrupt("return",h);case 21:case"end":return e.stop()}}),e,null,[[7,12]])})))).apply(this,arguments)}function W(e,t,n,r,a,o){var i,l=e.join("."),s=n.map((function(e){var t=e.validator;return t?Object(c.a)(Object(c.a)({},e),{},{validator:function(e,n,r){var a=!1,o=t(e,n,(function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:[];a.validatePromise===r&&(a.validatePromise=null,a.errors=e,a.reRender())})),d}));return a.validatePromise=r,a.dirty=!0,a.errors=[],a.reRender(),r},a.isFieldValidating=function(){return!!a.validatePromise},a.isFieldTouched=function(){return a.touched},a.isFieldDirty=function(){return a.dirty},a.getErrors=function(){return a.errors},a.isListField=function(){return a.props.isListField},a.isList=function(){return a.props.isList},a.isPreserve=function(){return a.props.preserve},a.getMeta=function(){return a.prevValidating=a.isFieldValidating(),{touched:a.isFieldTouched(),validating:a.prevValidating,errors:a.errors,name:a.getNamePath()}},a.getOnlyChild=function(e){if("function"==typeof e){var t=a.getMeta();return Object(c.a)(Object(c.a)({},a.getOnlyChild(e(a.getControlled(),t,a.props.fieldContext))),{},{isFunction:!0})}var n=Object(h.a)(e);return 1===n.length&&r.isValidElement(n[0])?{child:n[0],isFunction:!1}:{child:n,isFunction:!1}},a.getValue=function(e){var t=a.props.fieldContext.getFieldsValue,n=a.getNamePath();return N(e||t(!0),n)},a.getControlled=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=a.props,n=t.trigger,r=t.validateTrigger,o=t.getValueFromEvent,l=t.normalize,s=t.valuePropName,u=t.getValueProps,d=t.fieldContext,f=void 0!==r?r:d.validateTrigger,p=a.getNamePath(),h=d.getInternalHooks,m=d.getFieldsValue,b=h(v.a),y=b.dispatch,w=a.getValue(),O=u||function(e){return Object(i.a)({},s,e)},x=e[n],C=Object(c.a)(Object(c.a)({},e),O(w));C[n]=function(){var e;a.touched=!0,a.dirty=!0;for(var t=arguments.length,n=new Array(t),r=0;r=0&&t<=n.length?(u.keys=[].concat(Object(l.a)(u.keys.slice(0,t)),[u.id],Object(l.a)(u.keys.slice(t))),o([].concat(Object(l.a)(n.slice(0,t)),[e],Object(l.a)(n.slice(t))))):(u.keys=[].concat(Object(l.a)(u.keys),[u.id]),o([].concat(Object(l.a)(n),[e]))),u.id+=1},remove:function(e){var t=c(),n=new Set(Array.isArray(e)?e:[e]);n.size<=0||(u.keys=u.keys.filter((function(e,t){return!n.has(t)})),o(t.filter((function(e,t){return!n.has(t)}))))},move:function(e,t){if(e!==t){var n=c();e<0||e>=n.length||t<0||t>=n.length||(u.keys=R(u.keys,e,t),o(R(n,e,t)))}}},p=r||[];return Array.isArray(p)||(p=[]),a(p.map((function(e,t){var n=u.keys[t];return void 0===n&&(u.keys[t]=u.id,n=u.keys[t],u.id+=1),{name:t,key:n,isListField:!0}})),d,t)})))},X=n(6);var J="__@field_split__";function ee(e){return e.map((function(e){return"".concat(Object(O.a)(e),":").concat(e)})).join(J)}var te=function(){function e(){Object(s.a)(this,e),this.kvs=new Map}return Object(u.a)(e,[{key:"set",value:function(e,t){this.kvs.set(ee(e),t)}},{key:"get",value:function(e){return this.kvs.get(ee(e))}},{key:"update",value:function(e,t){var n=t(this.get(e));n?this.set(e,n):this.delete(e)}},{key:"delete",value:function(e){this.kvs.delete(ee(e))}},{key:"map",value:function(e){return Object(l.a)(this.kvs.entries()).map((function(t){var n=Object(X.a)(t,2),r=n[0],a=n[1],o=r.split(J);return e({key:o.map((function(e){var t=e.match(/^([^:]*):(.*)$/),n=Object(X.a)(t,3),r=n[1],a=n[2];return"number"===r?Number(a):a})),value:a})}))}},{key:"toJSON",value:function(){var e={};return this.map((function(t){var n=t.key,r=t.value;return e[n.join(".")]=r,null})),e}}]),e}(),ne=function e(t){var n=this;Object(s.a)(this,e),this.formHooked=!1,this.subscribable=!0,this.store={},this.fieldEntities=[],this.initialValues={},this.callbacks={},this.validateMessages=null,this.preserve=null,this.lastValidatePromise=null,this.getForm=function(){return{getFieldValue:n.getFieldValue,getFieldsValue:n.getFieldsValue,getFieldError:n.getFieldError,getFieldsError:n.getFieldsError,isFieldsTouched:n.isFieldsTouched,isFieldTouched:n.isFieldTouched,isFieldValidating:n.isFieldValidating,isFieldsValidating:n.isFieldsValidating,resetFields:n.resetFields,setFields:n.setFields,setFieldsValue:n.setFieldsValue,validateFields:n.validateFields,submit:n.submit,getInternalHooks:n.getInternalHooks}},this.getInternalHooks=function(e){return e===v.a?(n.formHooked=!0,{dispatch:n.dispatch,initEntityValue:n.initEntityValue,registerField:n.registerField,useSubscribe:n.useSubscribe,setInitialValues:n.setInitialValues,setCallbacks:n.setCallbacks,setValidateMessages:n.setValidateMessages,getFields:n.getFields,setPreserve:n.setPreserve}):(Object(m.a)(!1,"`getInternalHooks` is internal usage. Should not call directly."),null)},this.useSubscribe=function(e){n.subscribable=e},this.setInitialValues=function(e,t){n.initialValues=e||{},t&&(n.store=_({},e,n.store))},this.getInitialValue=function(e){return N(n.initialValues,e)},this.setCallbacks=function(e){n.callbacks=e},this.setValidateMessages=function(e){n.validateMessages=e},this.setPreserve=function(e){n.preserve=e},this.timeoutId=null,this.warningUnhooked=function(){0},this.getFieldEntities=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return e?n.fieldEntities.filter((function(e){return e.getNamePath().length})):n.fieldEntities},this.getFieldsMap=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=new te;return n.getFieldEntities(e).forEach((function(e){var n=e.getNamePath();t.set(n,e)})),t},this.getFieldEntitiesForNamePathList=function(e){if(!e)return n.getFieldEntities(!0);var t=n.getFieldsMap(!0);return e.map((function(e){var n=S(e);return t.get(n)||{INVALIDATE_NAME_PATH:S(e)}}))},this.getFieldsValue=function(e,t){if(n.warningUnhooked(),!0===e&&!t)return n.store;var r=n.getFieldEntitiesForNamePathList(Array.isArray(e)?e:null),a=[];return r.forEach((function(n){var r,o="INVALIDATE_NAME_PATH"in n?n.INVALIDATE_NAME_PATH:n.getNamePath();if(e||!(null===(r=n.isListField)||void 0===r?void 0:r.call(n)))if(t){var i="getMeta"in n?n.getMeta():null;t(i)&&a.push(o)}else a.push(o)})),T(n.store,a.map(S))},this.getFieldValue=function(e){n.warningUnhooked();var t=S(e);return N(n.store,t)},this.getFieldsError=function(e){return n.warningUnhooked(),n.getFieldEntitiesForNamePathList(e).map((function(t,n){return t&&!("INVALIDATE_NAME_PATH"in t)?{name:t.getNamePath(),errors:t.getErrors()}:{name:S(e[n]),errors:[]}}))},this.getFieldError=function(e){n.warningUnhooked();var t=S(e);return n.getFieldsError([t])[0].errors},this.isFieldsTouched=function(){n.warningUnhooked();for(var e=arguments.length,t=new Array(e),r=0;r0&&void 0!==arguments[0]?arguments[0]:{},t=new te,r=n.getFieldEntities(!0);r.forEach((function(e){var n=e.props.initialValue,r=e.getNamePath();if(void 0!==n){var a=t.get(r)||new Set;a.add({entity:e,value:n}),t.set(r,a)}}));var a,o=function(r){r.forEach((function(r){if(void 0!==r.props.initialValue){var a=r.getNamePath();if(void 0!==n.getInitialValue(a))Object(m.a)(!1,"Form already set 'initialValues' with path '".concat(a.join("."),"'. Field can not overwrite it."));else{var o=t.get(a);if(o&&o.size>1)Object(m.a)(!1,"Multiple Field with path '".concat(a.join("."),"' set 'initialValue'. Can not decide which one to pick."));else if(o){var i=n.getFieldValue(a);e.skipExist&&void 0!==i||(n.store=P(n.store,a,Object(l.a)(o)[0].value))}}}}))};e.entities?a=e.entities:e.namePathList?(a=[],e.namePathList.forEach((function(e){var n,r=t.get(e);r&&(n=a).push.apply(n,Object(l.a)(Object(l.a)(r).map((function(e){return e.entity}))))}))):a=r,o(a)},this.resetFields=function(e){n.warningUnhooked();var t=n.store;if(!e)return n.store=_({},n.initialValues),n.resetWithFieldInitialValue(),void n.notifyObservers(t,null,{type:"reset"});var r=e.map(S);r.forEach((function(e){var t=n.getInitialValue(e);n.store=P(n.store,e,t)})),n.resetWithFieldInitialValue({namePathList:r}),n.notifyObservers(t,r,{type:"reset"})},this.setFields=function(e){n.warningUnhooked();var t=n.store;e.forEach((function(e){var r=e.name,a=(e.errors,Object(o.a)(e,["name","errors"])),i=S(r);"value"in a&&(n.store=P(n.store,i,a.value)),n.notifyObservers(t,[i],{type:"setField",data:e})}))},this.getFields=function(){return n.getFieldEntities(!0).map((function(e){var t=e.getNamePath(),r=e.getMeta(),a=Object(c.a)(Object(c.a)({},r),{},{name:t,value:n.getFieldValue(t)});return Object.defineProperty(a,"originRCField",{value:!0}),a}))},this.initEntityValue=function(e){var t=e.props.initialValue;if(void 0!==t){var r=e.getNamePath();void 0===N(n.store,r)&&(n.store=P(n.store,r,t))}},this.registerField=function(e){if(n.fieldEntities.push(e),void 0!==e.props.initialValue){var t=n.store;n.resetWithFieldInitialValue({entities:[e],skipExist:!0}),n.notifyObservers(t,[e.getNamePath()],{type:"valueUpdate",source:"internal"})}return function(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];n.fieldEntities=n.fieldEntities.filter((function(t){return t!==e}));var o=void 0!==r?r:n.preserve;if(!1===o&&(!t||a.length>1)){var i=e.getNamePath(),c=t?void 0:N(n.initialValues,i);i.length&&n.getFieldValue(i)!==c&&n.fieldEntities.every((function(e){return!A(e.getNamePath(),i)}))&&(n.store=P(n.store,i,c,!0))}}},this.dispatch=function(e){switch(e.type){case"updateValue":var t=e.namePath,r=e.value;n.updateValue(t,r);break;case"validateField":var a=e.namePath,o=e.triggerName;n.validateFields([a],{triggerName:o})}},this.notifyObservers=function(e,t,r){if(n.subscribable){var a=Object(c.a)(Object(c.a)({},r),{},{store:n.getFieldsValue(!0)});n.getFieldEntities().forEach((function(n){(0,n.onStoreChange)(e,t,a)}))}else n.forceRootUpdate()},this.updateValue=function(e,t){var r=S(e),a=n.store;n.store=P(n.store,r,t),n.notifyObservers(a,[r],{type:"valueUpdate",source:"internal"});var o=n.getDependencyChildrenFields(r);o.length&&n.validateFields(o),n.notifyObservers(a,o,{type:"dependenciesUpdate",relatedFields:[r].concat(Object(l.a)(o))});var i=n.callbacks.onValuesChange;i&&i(T(n.store,[r]),n.getFieldsValue());n.triggerOnFieldsChange([r].concat(Object(l.a)(o)))},this.setFieldsValue=function(e){n.warningUnhooked();var t=n.store;e&&(n.store=_(n.store,e)),n.notifyObservers(t,null,{type:"valueUpdate",source:"external"})},this.getDependencyChildrenFields=function(e){var t=new Set,r=[],a=new te;n.getFieldEntities().forEach((function(e){(e.props.dependencies||[]).forEach((function(t){var n=S(t);a.update(n,(function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Set;return t.add(e),t}))}))}));return function e(n){(a.get(n)||new Set).forEach((function(n){if(!t.has(n)){t.add(n);var a=n.getNamePath();n.isFieldDirty()&&a.length&&(r.push(a),e(a))}}))}(e),r},this.triggerOnFieldsChange=function(e,t){var r=n.callbacks.onFieldsChange;if(r){var a=n.getFields();if(t){var o=new te;t.forEach((function(e){var t=e.name,n=e.errors;o.set(t,n)})),a.forEach((function(e){e.errors=o.get(e.name)||e.errors}))}r(a.filter((function(t){var n=t.name;return z(e,n)})),a)}},this.validateFields=function(e,t){n.warningUnhooked();var r=!!e,a=r?e.map(S):[],o=[];n.getFieldEntities(!0).forEach((function(i){if(r||a.push(i.getNamePath()),(null==t?void 0:t.recursive)&&r){var l=i.getNamePath();l.every((function(t,n){return e[n]===t||void 0===e[n]}))&&a.push(l)}if(i.props.rules&&i.props.rules.length){var s=i.getNamePath();if(!r||z(a,s)){var u=i.validateRules(Object(c.a)({validateMessages:Object(c.a)(Object(c.a)({},V),n.validateMessages)},t));o.push(u.then((function(){return{name:s,errors:[]}})).catch((function(e){return Promise.reject({name:s,errors:e})})))}}}));var i=function(e){var t=!1,n=e.length,r=[];return e.length?new Promise((function(a,o){e.forEach((function(e,i){e.catch((function(e){return t=!0,e})).then((function(e){n-=1,r[i]=e,n>0||(t&&o(r),a(r))}))}))})):Promise.resolve([])}(o);n.lastValidatePromise=i,i.catch((function(e){return e})).then((function(e){var t=e.map((function(e){return e.name}));n.notifyObservers(n.store,t,{type:"validateFinish"}),n.triggerOnFieldsChange(t,e)}));var l=i.then((function(){return n.lastValidatePromise===i?Promise.resolve(n.getFieldsValue(a)):Promise.reject([])})).catch((function(e){var t=e.filter((function(e){return e&&e.errors.length}));return Promise.reject({values:n.getFieldsValue(a),errorFields:t,outOfDate:n.lastValidatePromise!==i})}));return l.catch((function(e){return e})),l},this.submit=function(){n.warningUnhooked(),n.validateFields().then((function(e){var t=n.callbacks.onFinish;if(t)try{t(e)}catch(e){}})).catch((function(e){var t=n.callbacks.onFinishFailed;t&&t(e)}))},this.forceRootUpdate=t};var re=function(e){var t=r.useRef(),n=r.useState({}),a=Object(X.a)(n,2)[1];if(!t.current)if(e)t.current=e;else{var o=new ne((function(){a({})}));t.current=o.getForm()}return[t.current]},ae=r.createContext({triggerFormChange:function(){},triggerFormFinish:function(){},registerForm:function(){},unregisterForm:function(){}}),oe=function(e){var t=e.validateMessages,n=e.onFormChange,a=e.onFormFinish,o=e.children,l=r.useContext(ae),s=r.useRef({});return r.createElement(ae.Provider,{value:Object(c.a)(Object(c.a)({},l),{},{validateMessages:Object(c.a)(Object(c.a)({},l.validateMessages),t),triggerFormChange:function(e,t){n&&n(e,{changedFields:t,forms:s.current}),l.triggerFormChange(e,t)},triggerFormFinish:function(e,t){a&&a(e,{values:t,forms:s.current}),l.triggerFormFinish(e,t)},registerForm:function(e,t){e&&(s.current=Object(c.a)(Object(c.a)({},s.current),{},Object(i.a)({},e,t))),l.registerForm(e,t)},unregisterForm:function(e){var t=Object(c.a)({},s.current);delete t[e],s.current=t,l.unregisterForm(e)}})},o)},ie=ae,ce=function(e,t){var n=e.name,i=e.initialValues,s=e.fields,u=e.form,d=e.preserve,f=e.children,p=e.component,h=void 0===p?"form":p,m=e.validateMessages,g=e.validateTrigger,b=void 0===g?"onChange":g,y=e.onValuesChange,w=e.onFieldsChange,x=e.onFinish,C=e.onFinishFailed,M=Object(o.a)(e,["name","initialValues","fields","form","preserve","children","component","validateMessages","validateTrigger","onValuesChange","onFieldsChange","onFinish","onFinishFailed"]),E=r.useContext(ie),k=re(u),j=Object(X.a)(k,1)[0],S=j.getInternalHooks(v.a),N=S.useSubscribe,P=S.setInitialValues,T=S.setCallbacks,z=S.setValidateMessages,I=S.setPreserve;r.useImperativeHandle(t,(function(){return j})),r.useEffect((function(){return E.registerForm(n,j),function(){E.unregisterForm(n)}}),[E,j,n]),z(Object(c.a)(Object(c.a)({},E.validateMessages),m)),T({onValuesChange:y,onFieldsChange:function(e){if(E.triggerFormChange(n,e),w){for(var t=arguments.length,r=new Array(t>1?t-1:0),a=1;a=0&&n.left>=0&&n.bottom>n.top&&n.right>n.left?n:null}function we(e){var t,n,r;if(me.isWindow(e)||9===e.nodeType){var a=me.getWindow(e);t={left:me.getWindowScrollLeft(a),top:me.getWindowScrollTop(a)},n=me.viewportWidth(a),r=me.viewportHeight(a)}else t=me.offset(e),n=me.outerWidth(e),r=me.outerHeight(e);return t.width=n,t.height=r,t}function Oe(e,t){var n=t.charAt(0),r=t.charAt(1),a=e.width,o=e.height,i=e.left,c=e.top;return"c"===n?c+=o/2:"b"===n&&(c+=o),"c"===r?i+=a/2:"r"===r&&(i+=a),{left:i,top:c}}function xe(e,t,n,r,a){var o=Oe(t,n[1]),i=Oe(e,n[0]),c=[i.left-o.left,i.top-o.top];return{left:Math.round(e.left-c[0]+r[0]-a[0]),top:Math.round(e.top-c[1]+r[1]-a[1])}}function Ce(e,t,n){return e.leftn.right}function Me(e,t,n){return e.topn.bottom}function Ee(e,t,n){var r=[];return me.each(e,(function(e){r.push(e.replace(t,(function(e){return n[e]})))})),r}function ke(e,t){return e[t]=-e[t],e}function je(e,t){return(/%$/.test(e)?parseInt(e.substring(0,e.length-1),10)/100*t:parseInt(e,10))||0}function Se(e,t){e[0]=je(e[0],t.width),e[1]=je(e[1],t.height)}function Ne(e,t,n,r){var a=n.points,o=n.offset||[0,0],i=n.targetOffset||[0,0],c=n.overflow,l=n.source||e;o=[].concat(o),i=[].concat(i);var s={},u=0,d=ye(l,!(!(c=c||{})||!c.alwaysByViewport)),f=we(l);Se(o,f),Se(i,t);var p=xe(f,t,a,o,i),h=me.merge(f,p);if(d&&(c.adjustX||c.adjustY)&&r){if(c.adjustX&&Ce(p,f,d)){var m=Ee(a,/[lr]/gi,{l:"r",r:"l"}),v=ke(o,0),g=ke(i,0);(function(e,t,n){return e.left>n.right||e.left+t.widthn.bottom||e.top+t.height=n.left&&a.left+o.width>n.right&&(o.width-=a.left+o.width-n.right),r.adjustX&&a.left+o.width>n.right&&(a.left=Math.max(n.right-o.width,n.left)),r.adjustY&&a.top=n.top&&a.top+o.height>n.bottom&&(o.height-=a.top+o.height-n.bottom),r.adjustY&&a.top+o.height>n.bottom&&(a.top=Math.max(n.bottom-o.height,n.top)),me.mix(a,o)}(p,f,d,s))}return h.width!==f.width&&me.css(l,"width",me.width(l)+h.width-f.width),h.height!==f.height&&me.css(l,"height",me.height(l)+h.height-f.height),me.offset(l,{left:h.left,top:h.top},{useCssRight:n.useCssRight,useCssBottom:n.useCssBottom,useCssTransform:n.useCssTransform,ignoreShake:n.ignoreShake}),{points:a,offset:o,targetOffset:i,overflow:s}}function Pe(e,t,n){var r=n.target||t;return Ne(e,we(r),n,!function(e,t){var n=ye(e,t),r=we(e);return!n||r.left+r.width<=n.left||r.top+r.height<=n.top||r.left>=n.right||r.top>=n.bottom}(r,n.overflow&&n.overflow.alwaysByViewport))}Pe.__getOffsetParent=ge,Pe.__getVisibleRectForElement=ye;var Te=n(149);function ze(e,t){var n=null,r=null;var a=new Te.a((function(e){var a=Object(C.a)(e,1)[0].target;if(document.documentElement.contains(a)){var o=a.getBoundingClientRect(),i=o.width,c=o.height,l=Math.floor(i),s=Math.floor(c);n===l&&r===s||Promise.resolve().then((function(){t({width:l,height:s})})),n=l,r=s}}));return e&&a.observe(e),function(){a.disconnect()}}function Ie(e){return"function"!=typeof e?null:e()}function De(e){return"object"===Object(P.a)(e)&&e?e:null}var _e=d.a.forwardRef((function(e,t){var n=e.children,r=e.disabled,a=e.target,o=e.align,i=e.onAlign,c=e.monitorWindowResize,l=e.monitorBufferTime,s=void 0===l?0:l,u=d.a.useRef({}),f=d.a.useRef(),p=d.a.Children.only(n),h=d.a.useRef({});h.current.disabled=r,h.current.target=a,h.current.onAlign=i;var v=function(e,t){var n=d.a.useRef(!1),r=d.a.useRef(null);function a(){window.clearTimeout(r.current)}return[function o(i){if(n.current&&!0!==i)a(),r.current=window.setTimeout((function(){n.current=!1,o()}),t);else{if(!1===e())return;n.current=!0,a(),r.current=window.setTimeout((function(){n.current=!1}),t)}},function(){n.current=!1,a()}]}((function(){var e=h.current,t=e.disabled,n=e.target,r=e.onAlign;if(!t&&n){var a,i=f.current,c=Ie(n),l=De(n);u.current.element=c,u.current.point=l;var s=document.activeElement;return c&&Object(T.a)(c)?a=Pe(i,c,o):l&&(a=function(e,t,n){var r,a,o=me.getDocument(e),i=o.defaultView||o.parentWindow,c=me.getWindowScrollLeft(i),l=me.getWindowScrollTop(i),s=me.viewportWidth(i),u=me.viewportHeight(i),d={left:r="pageX"in t?t.pageX:c+t.clientX,top:a="pageY"in t?t.pageY:l+t.clientY,width:0,height:0},f=r>=0&&r<=c+s&&a>=0&&a<=l+u,p=[n.points[0],"cc"];return Ne(e,d,I(I({},n),{},{points:p}),f)}(i,l,o)),function(e,t){e!==document.activeElement&&Object(m.a)(t,e)&&"function"==typeof e.focus&&e.focus()}(s,i),r&&a&&r(i,a),!0}return!1}),s),y=Object(C.a)(v,2),w=y[0],O=y[1],x=d.a.useRef({cancel:function(){}}),M=d.a.useRef({cancel:function(){}});d.a.useEffect((function(){var e,t,n=Ie(a),r=De(a);f.current!==M.current.element&&(M.current.cancel(),M.current.element=f.current,M.current.cancel=ze(f.current,w)),u.current.element===n&&((e=u.current.point)===(t=r)||e&&t&&("pageX"in t&&"pageY"in t?e.pageX===t.pageX&&e.pageY===t.pageY:"clientX"in t&&"clientY"in t&&e.clientX===t.clientX&&e.clientY===t.clientY))||(w(),x.current.element!==n&&(x.current.cancel(),x.current.element=n,x.current.cancel=ze(n,w)))})),d.a.useEffect((function(){r?O():w()}),[r]);var E=d.a.useRef(null);return d.a.useEffect((function(){c?E.current||(E.current=Object(b.a)(window,"resize",w)):E.current&&(E.current.remove(),E.current=null)}),[c]),d.a.useEffect((function(){return function(){x.current.cancel(),M.current.cancel(),E.current&&E.current.remove(),O()}}),[]),d.a.useImperativeHandle(t,(function(){return{forceAlign:function(){return w(!0)}}})),d.a.isValidElement(p)&&(p=d.a.cloneElement(p,{ref:Object(g.a)(p.ref,f)})),p}));_e.displayName="Align";var Ae=_e,Le=n(61),Re=n.n(Le),Fe=n(134),Ve=["measure","align",null,"motion"],He=u.forwardRef((function(e,t){var n=e.visible,o=e.prefixCls,i=e.className,c=e.style,l=e.children,s=e.zIndex,d=e.stretch,f=e.destroyPopupOnHide,p=e.forceRender,m=e.align,v=e.point,g=e.getRootDomNode,b=e.getClassNameFromAlign,y=e.onAlign,w=e.onMouseEnter,x=e.onMouseLeave,M=e.onMouseDown,E=e.onTouchStart,S=Object(u.useRef)(),N=Object(u.useRef)(),P=Object(u.useState)(),T=Object(C.a)(P,2),z=T[0],I=T[1],D=function(e){var t=u.useState({width:0,height:0}),n=Object(C.a)(t,2),r=n[0],a=n[1];return[u.useMemo((function(){var t={};if(e){var n=r.width,a=r.height;-1!==e.indexOf("height")&&a?t.height=a:-1!==e.indexOf("minHeight")&&a&&(t.minHeight=a),-1!==e.indexOf("width")&&n?t.width=n:-1!==e.indexOf("minWidth")&&n&&(t.minWidth=n)}return t}),[e,r]),function(e){a({width:e.offsetWidth,height:e.offsetHeight})}]}(d),_=Object(C.a)(D,2),A=_[0],L=_[1];var R=function(e,t){var n=Object(u.useState)(null),r=Object(C.a)(n,2),a=r[0],o=r[1],i=Object(u.useRef)(),c=Object(u.useRef)(!1);function l(e){c.current||o(e)}function s(){h.a.cancel(i.current)}return Object(u.useEffect)((function(){l("measure")}),[e]),Object(u.useEffect)((function(){switch(a){case"measure":t()}a&&(i.current=Object(h.a)(Object(Fe.a)(Re.a.mark((function e(){var t,n;return Re.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=Ve.indexOf(a),(n=Ve[t+1])&&-1!==t&&l(n);case 3:case"end":return e.stop()}}),e)})))))}),[a]),Object(u.useEffect)((function(){return function(){c.current=!0,s()}}),[]),[a,function(e){s(),i.current=Object(h.a)((function(){l((function(e){switch(a){case"align":return"motion";case"motion":return"stable"}return e})),null==e||e()}))}]}(n,(function(){d&&L(g())})),F=Object(C.a)(R,2),V=F[0],H=F[1],B=Object(u.useRef)();function $(){var e;null===(e=S.current)||void 0===e||e.forceAlign()}function U(e,t){if("align"===V){var n=b(t);I(n),z!==n?Promise.resolve().then((function(){$()})):H((function(){var e;null===(e=B.current)||void 0===e||e.call(B)})),null==y||y(e,t)}}var W=Object(r.a)({},j(e));function K(){return new Promise((function(e){B.current=e}))}["onAppearEnd","onEnterEnd","onLeaveEnd"].forEach((function(e){var t=W[e];W[e]=function(e,n){return H(),null==t?void 0:t(e,n)}})),u.useEffect((function(){W.motionName||"motion"!==V||H()}),[W.motionName,V]),u.useImperativeHandle(t,(function(){return{forceAlign:$,getElement:function(){return N.current}}}));var G=Object(r.a)(Object(r.a)({},A),{},{zIndex:s,opacity:"motion"!==V&&"stable"!==V&&n?0:void 0,pointerEvents:"stable"===V?void 0:"none"},c),Y=!0;!(null==m?void 0:m.points)||"align"!==V&&"stable"!==V||(Y=!1);var q=l;return u.Children.count(l)>1&&(q=u.createElement("div",{className:"".concat(o,"-content")},l)),u.createElement(k.default,Object(a.a)({visible:n,ref:N,leavedClassName:"".concat(o,"-hidden")},W,{onAppearPrepare:K,onEnterPrepare:K,removeOnLeave:f,forceRender:p}),(function(e,t){var n=e.className,a=e.style,c=O()(o,i,z,n);return u.createElement(Ae,{target:v||g,key:"popup",ref:S,monitorWindowResize:!0,disabled:Y,align:m,onAlign:U},u.createElement("div",{ref:t,className:c,onMouseEnter:w,onMouseLeave:x,onMouseDownCapture:M,onTouchStartCapture:E,style:Object(r.a)(Object(r.a)({},a),G)},q))}))}));He.displayName="PopupInner";var Be=He,$e=u.forwardRef((function(e,t){var n=e.prefixCls,o=e.visible,i=e.zIndex,c=e.children,l=e.mobile,s=(l=void 0===l?{}:l).popupClassName,d=l.popupStyle,f=l.popupMotion,p=void 0===f?{}:f,h=l.popupRender,m=u.useRef();u.useImperativeHandle(t,(function(){return{forceAlign:function(){},getElement:function(){return m.current}}}));var v=Object(r.a)({zIndex:i},d),g=c;return u.Children.count(c)>1&&(g=u.createElement("div",{className:"".concat(n,"-content")},c)),h&&(g=h(g)),u.createElement(k.default,Object(a.a)({visible:o,ref:m,removeOnLeave:!0},p),(function(e,t){var a=e.className,o=e.style,i=O()(n,s,a);return u.createElement("div",{ref:t,className:i,style:Object(r.a)(Object(r.a)({},o),v)},g)}))}));$e.displayName="MobilePopupInner";var Ue=$e,We=u.forwardRef((function(e,t){var n=e.visible,o=e.mobile,i=Object(M.a)(e,["visible","mobile"]),c=Object(u.useState)(n),l=Object(C.a)(c,2),s=l[0],d=l[1],f=Object(u.useState)(!1),p=Object(C.a)(f,2),h=p[0],m=p[1],v=Object(r.a)(Object(r.a)({},i),{},{visible:s});Object(u.useEffect)((function(){d(n),n&&o&&m(Object(E.a)())}),[n,o]);var g=h?u.createElement(Ue,Object(a.a)({},v,{mobile:o,ref:t})):u.createElement(Be,Object(a.a)({},v,{ref:t}));return u.createElement("div",null,u.createElement(S,v),g)}));We.displayName="Popup";var Ke=We,Ge=u.createContext(null);function Ye(){}function qe(){return""}function Qe(e){return e?e.ownerDocument:window.document}var Ze=["onClick","onMouseDown","onTouchStart","onMouseEnter","onMouseLeave","onFocus","onBlur","onContextMenu"];var Xe,Je;t.a=(Xe=y.a,(Je=function(e){Object(l.a)(n,e);var t=Object(s.a)(n);function n(e){var r,i;return Object(o.a)(this,n),(r=t.call(this,e)).popupRef=u.createRef(),r.triggerRef=u.createRef(),r.onMouseEnter=function(e){var t=r.props.mouseEnterDelay;r.fireEvents("onMouseEnter",e),r.delaySetPopupVisible(!0,t,t?null:e)},r.onMouseMove=function(e){r.fireEvents("onMouseMove",e),r.setPoint(e)},r.onMouseLeave=function(e){r.fireEvents("onMouseLeave",e),r.delaySetPopupVisible(!1,r.props.mouseLeaveDelay)},r.onPopupMouseEnter=function(){r.clearDelayTimer()},r.onPopupMouseLeave=function(e){var t;e.relatedTarget&&!e.relatedTarget.setTimeout&&Object(m.a)(null===(t=r.popupRef.current)||void 0===t?void 0:t.getElement(),e.relatedTarget)||r.delaySetPopupVisible(!1,r.props.mouseLeaveDelay)},r.onFocus=function(e){r.fireEvents("onFocus",e),r.clearDelayTimer(),r.isFocusToShow()&&(r.focusTime=Date.now(),r.delaySetPopupVisible(!0,r.props.focusDelay))},r.onMouseDown=function(e){r.fireEvents("onMouseDown",e),r.preClickTime=Date.now()},r.onTouchStart=function(e){r.fireEvents("onTouchStart",e),r.preTouchTime=Date.now()},r.onBlur=function(e){r.fireEvents("onBlur",e),r.clearDelayTimer(),r.isBlurToHide()&&r.delaySetPopupVisible(!1,r.props.blurDelay)},r.onContextMenu=function(e){e.preventDefault(),r.fireEvents("onContextMenu",e),r.setPopupVisible(!0,e)},r.onContextMenuClose=function(){r.isContextMenuToShow()&&r.close()},r.onClick=function(e){if(r.fireEvents("onClick",e),r.focusTime){var t;if(r.preClickTime&&r.preTouchTime?t=Math.min(r.preClickTime,r.preTouchTime):r.preClickTime?t=r.preClickTime:r.preTouchTime&&(t=r.preTouchTime),Math.abs(t-r.focusTime)<20)return;r.focusTime=0}r.preClickTime=0,r.preTouchTime=0,r.isClickToShow()&&(r.isClickToHide()||r.isBlurToHide())&&e&&e.preventDefault&&e.preventDefault();var n=!r.state.popupVisible;(r.isClickToHide()&&!n||n&&r.isClickToShow())&&r.setPopupVisible(!r.state.popupVisible,e)},r.onPopupMouseDown=function(){var e;r.hasPopupMouseDown=!0,clearTimeout(r.mouseDownTimeout),r.mouseDownTimeout=window.setTimeout((function(){r.hasPopupMouseDown=!1}),0),r.context&&(e=r.context).onPopupMouseDown.apply(e,arguments)},r.onDocumentClick=function(e){if(!r.props.mask||r.props.maskClosable){var t=e.target,n=r.getRootDomNode(),a=r.getPopupDomNode();Object(m.a)(n,t)&&!r.isContextMenuOnly()||Object(m.a)(a,t)||r.hasPopupMouseDown||r.close()}},r.getRootDomNode=function(){var e=r.props.getTriggerDOMNode;if(e)return e(r.triggerRef.current);try{var t=Object(v.a)(r.triggerRef.current);if(t)return t}catch(e){}return p.a.findDOMNode(Object(c.a)(r))},r.getPopupClassNameFromAlign=function(e){var t=[],n=r.props,a=n.popupPlacement,o=n.builtinPlacements,i=n.prefixCls,c=n.alignPoint,l=n.getPopupClassNameFromAlign;return a&&o&&t.push(function(e,t,n,r){for(var a=n.points,o=Object.keys(e),i=0;i=0&&e[n].disabled;n-=1);var o=null;return-1!==n&&(o=a[n],a.splice(n,1)),{values:a,removedValue:o}}var l="undefined"!=typeof window&&window.document&&window.document.documentElement,s=0;function u(){var e;return l?(e=s,s+=1):e="TEST_OR_SSR",e}},function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n(17);function a(e,t){var n=new Set;return e.forEach((function(e){t.has(e)||n.add(e)})),n}function o(e){var t=e||{},n=t.disabled,r=t.disableCheckbox,a=t.checkable;return!(!n&&!r)||!1===a}function i(e,t,n,i){var c,l=[];c=i||o;var s=new Set(e.filter((function(e){var t=!!n[e];return t||l.push(e),t}))),u=new Map,d=0;return Object.keys(n).forEach((function(e){var t=n[e],r=t.level,a=u.get(r);a||(a=new Set,u.set(r,a)),a.add(t),d=Math.max(d,r)})),Object(r.a)(!l.length,"Tree missing follow keys: ".concat(l.slice(0,100).map((function(e){return"'".concat(e,"'")})).join(", "))),!0===t?function(e,t,n,r){for(var o=new Set(e),i=new Set,c=0;c<=n;c+=1)(t.get(c)||new Set).forEach((function(e){var t=e.key,n=e.node,a=e.children,i=void 0===a?[]:a;o.has(t)&&!r(n)&&i.filter((function(e){return!r(e.node)})).forEach((function(e){o.add(e.key)}))}));for(var l=new Set,s=n;s>=0;s-=1)(t.get(s)||new Set).forEach((function(e){var t=e.parent,n=e.node;if(!r(n)&&e.parent&&!l.has(e.parent.key))if(r(e.parent.node))l.add(t.key);else{var a=!0,c=!1;(t.children||[]).filter((function(e){return!r(e.node)})).forEach((function(e){var t=e.key,n=o.has(t);a&&!n&&(a=!1),c||!n&&!i.has(t)||(c=!0)})),a&&o.add(t.key),c&&i.add(t.key),l.add(t.key)}}));return{checkedKeys:Array.from(o),halfCheckedKeys:Array.from(a(i,o))}}(s,u,d,c):function(e,t,n,r,o){for(var i=new Set(e),c=new Set(t),l=0;l<=r;l+=1)(n.get(l)||new Set).forEach((function(e){var t=e.key,n=e.node,r=e.children,a=void 0===r?[]:r;i.has(t)||c.has(t)||o(n)||a.filter((function(e){return!o(e.node)})).forEach((function(e){i.delete(e.key)}))}));c=new Set;for(var s=new Set,u=r;u>=0;u-=1)(n.get(u)||new Set).forEach((function(e){var t=e.parent,n=e.node;if(!o(n)&&e.parent&&!s.has(e.parent.key))if(o(e.parent.node))s.add(t.key);else{var r=!0,a=!1;(t.children||[]).filter((function(e){return!o(e.node)})).forEach((function(e){var t=e.key,n=i.has(t);r&&!n&&(r=!1),a||!n&&!c.has(t)||(a=!0)})),r||i.delete(t.key),a&&c.add(t.key),s.add(t.key)}}));return{checkedKeys:Array.from(i),halfCheckedKeys:Array.from(a(c,i))}}(s,t.halfCheckedKeys,u,d,c)}},function(e,t,n){var r=n(688),a=n(455),o=n(359),i=n(689);e.exports=function(e){return r(e)||a(e)||o(e)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(173);e.exports=function(e){return Object(r(e))}},function(e,t,n){var r=n(92),a=n(113),o=n(172);e.exports=r?function(e,t,n){return a.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){var r=n(92),a=n(425),o=n(43),i=n(233),c=Object.defineProperty;t.f=r?c:function(e,t,n){if(o(e),t=i(t,!0),o(n),a)try{return c(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var r=n(36);function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}e.exports=function(e){for(var t=1;t>>0;for(t=0;t0)for(n=0;n=0?n?"+":"":"-")+Math.pow(10,Math.max(0,a)).toString().substr(1)+r}var A=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,L=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,R={},F={};function V(e,t,n,r){var a=r;"string"==typeof r&&(a=function(){return this[r]()}),e&&(F[e]=a),t&&(F[t[0]]=function(){return _(a.apply(this,arguments),t[1],t[2])}),n&&(F[n]=function(){return this.localeData().ordinal(a.apply(this,arguments),e)})}function H(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function B(e){var t,n,r=e.match(A);for(t=0,n=r.length;t=0&&L.test(e);)e=e.replace(L,r),L.lastIndex=0,n-=1;return e}var W={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function K(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.match(A).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var G="Invalid date";function Y(){return this._invalidDate}var q="%d",Q=/\d{1,2}/;function Z(e){return this._ordinal.replace("%d",e)}var X={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function J(e,t,n,r){var a=this._relativeTime[n];return N(a)?a(e,t,n,r):a.replace(/%d/i,e)}function ee(e,t){var n=this._relativeTime[e>0?"future":"past"];return N(n)?n(t):n.replace(/%s/i,t)}var te={};function ne(e,t){var n=e.toLowerCase();te[n]=te[n+"s"]=te[t]=e}function re(e){return"string"==typeof e?te[e]||te[e.toLowerCase()]:void 0}function ae(e){var t,n,r={};for(n in e)c(e,n)&&(t=re(n))&&(r[t]=e[n]);return r}var oe={};function ie(e,t){oe[e]=t}function ce(e){var t,n=[];for(t in e)c(e,t)&&n.push({unit:t,priority:oe[t]});return n.sort((function(e,t){return e.priority-t.priority})),n}function le(e){return e%4==0&&e%100!=0||e%400==0}function se(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function ue(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=se(t)),n}function de(e,t){return function(n){return null!=n?(pe(this,e,n),r.updateOffset(this,t),this):fe(this,e)}}function fe(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function pe(e,t,n){e.isValid()&&!isNaN(n)&&("FullYear"===t&&le(e.year())&&1===e.month()&&29===e.date()?(n=ue(n),e._d["set"+(e._isUTC?"UTC":"")+t](n,e.month(),Je(n,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](n))}function he(e){return N(this[e=re(e)])?this[e]():this}function me(e,t){if("object"==typeof e){var n,r=ce(e=ae(e));for(n=0;n68?1900:2e3)};var vt=de("FullYear",!0);function gt(){return le(this.year())}function bt(e,t,n,r,a,o,i){var c;return e<100&&e>=0?(c=new Date(e+400,t,n,r,a,o,i),isFinite(c.getFullYear())&&c.setFullYear(e)):c=new Date(e,t,n,r,a,o,i),c}function yt(e){var t,n;return e<100&&e>=0?((n=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,n)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function wt(e,t,n){var r=7+t-n;return-(7+yt(e,0,r).getUTCDay()-t)%7+r-1}function Ot(e,t,n,r,a){var o,i,c=1+7*(t-1)+(7+n-r)%7+wt(e,r,a);return c<=0?i=mt(o=e-1)+c:c>mt(e)?(o=e+1,i=c-mt(e)):(o=e,i=c),{year:o,dayOfYear:i}}function xt(e,t,n){var r,a,o=wt(e.year(),t,n),i=Math.floor((e.dayOfYear()-o-1)/7)+1;return i<1?r=i+Ct(a=e.year()-1,t,n):i>Ct(e.year(),t,n)?(r=i-Ct(e.year(),t,n),a=e.year()+1):(a=e.year(),r=i),{week:r,year:a}}function Ct(e,t,n){var r=wt(e,t,n),a=wt(e+1,t,n);return(mt(e)-r+a)/7}function Mt(e){return xt(e,this._week.dow,this._week.doy).week}V("w",["ww",2],"wo","week"),V("W",["WW",2],"Wo","isoWeek"),ne("week","w"),ne("isoWeek","W"),ie("week",5),ie("isoWeek",5),De("w",xe),De("ww",xe,be),De("W",xe),De("WW",xe,be),Ve(["w","ww","W","WW"],(function(e,t,n,r){t[r.substr(0,1)]=ue(e)}));var Et={dow:0,doy:6};function kt(){return this._week.dow}function jt(){return this._week.doy}function St(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Nt(e){var t=xt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Pt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function Tt(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function zt(e,t){return e.slice(t,7).concat(e.slice(0,t))}V("d",0,"do","day"),V("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),V("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),V("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),V("e",0,0,"weekday"),V("E",0,0,"isoWeekday"),ne("day","d"),ne("weekday","e"),ne("isoWeekday","E"),ie("day",11),ie("weekday",11),ie("isoWeekday",11),De("d",xe),De("e",xe),De("E",xe),De("dd",(function(e,t){return t.weekdaysMinRegex(e)})),De("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),De("dddd",(function(e,t){return t.weekdaysRegex(e)})),Ve(["dd","ddd","dddd"],(function(e,t,n,r){var a=n._locale.weekdaysParse(e,r,n._strict);null!=a?t.d=a:v(n).invalidWeekday=e})),Ve(["d","e","E"],(function(e,t,n,r){t[r]=ue(e)}));var It="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Dt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),_t="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),At=Ie,Lt=Ie,Rt=Ie;function Ft(e,t){var n=o(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?zt(n,this._week.dow):e?n[e.day()]:n}function Vt(e){return!0===e?zt(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Ht(e){return!0===e?zt(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Bt(e,t,n){var r,a,o,i=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)o=h([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(o,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(o,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(o,"").toLocaleLowerCase();return n?"dddd"===t?-1!==(a=Be.call(this._weekdaysParse,i))?a:null:"ddd"===t?-1!==(a=Be.call(this._shortWeekdaysParse,i))?a:null:-1!==(a=Be.call(this._minWeekdaysParse,i))?a:null:"dddd"===t?-1!==(a=Be.call(this._weekdaysParse,i))||-1!==(a=Be.call(this._shortWeekdaysParse,i))||-1!==(a=Be.call(this._minWeekdaysParse,i))?a:null:"ddd"===t?-1!==(a=Be.call(this._shortWeekdaysParse,i))||-1!==(a=Be.call(this._weekdaysParse,i))||-1!==(a=Be.call(this._minWeekdaysParse,i))?a:null:-1!==(a=Be.call(this._minWeekdaysParse,i))||-1!==(a=Be.call(this._weekdaysParse,i))||-1!==(a=Be.call(this._shortWeekdaysParse,i))?a:null}function $t(e,t,n){var r,a,o;if(this._weekdaysParseExact)return Bt.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(a=h([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(a,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(a,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(a,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[r]||(o="^"+this.weekdays(a,"")+"|^"+this.weekdaysShort(a,"")+"|^"+this.weekdaysMin(a,""),this._weekdaysParse[r]=new RegExp(o.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[r].test(e))return r;if(n&&"ddd"===t&&this._shortWeekdaysParse[r].test(e))return r;if(n&&"dd"===t&&this._minWeekdaysParse[r].test(e))return r;if(!n&&this._weekdaysParse[r].test(e))return r}}function Ut(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Pt(e,this.localeData()),this.add(e-t,"d")):t}function Wt(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Kt(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Tt(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Gt(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Qt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=At),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Yt(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Qt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Lt),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function qt(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Qt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Rt),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Qt(){function e(e,t){return t.length-e.length}var t,n,r,a,o,i=[],c=[],l=[],s=[];for(t=0;t<7;t++)n=h([2e3,1]).day(t),r=Le(this.weekdaysMin(n,"")),a=Le(this.weekdaysShort(n,"")),o=Le(this.weekdays(n,"")),i.push(r),c.push(a),l.push(o),s.push(r),s.push(a),s.push(o);i.sort(e),c.sort(e),l.sort(e),s.sort(e),this._weekdaysRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+i.join("|")+")","i")}function Zt(){return this.hours()%12||12}function Xt(){return this.hours()||24}function Jt(e,t){V(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function en(e,t){return t._meridiemParse}function tn(e){return"p"===(e+"").toLowerCase().charAt(0)}V("H",["HH",2],0,"hour"),V("h",["hh",2],0,Zt),V("k",["kk",2],0,Xt),V("hmm",0,0,(function(){return""+Zt.apply(this)+_(this.minutes(),2)})),V("hmmss",0,0,(function(){return""+Zt.apply(this)+_(this.minutes(),2)+_(this.seconds(),2)})),V("Hmm",0,0,(function(){return""+this.hours()+_(this.minutes(),2)})),V("Hmmss",0,0,(function(){return""+this.hours()+_(this.minutes(),2)+_(this.seconds(),2)})),Jt("a",!0),Jt("A",!1),ne("hour","h"),ie("hour",13),De("a",en),De("A",en),De("H",xe),De("h",xe),De("k",xe),De("HH",xe,be),De("hh",xe,be),De("kk",xe,be),De("hmm",Ce),De("hmmss",Me),De("Hmm",Ce),De("Hmmss",Me),Fe(["H","HH"],Ke),Fe(["k","kk"],(function(e,t,n){var r=ue(e);t[Ke]=24===r?0:r})),Fe(["a","A"],(function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e})),Fe(["h","hh"],(function(e,t,n){t[Ke]=ue(e),v(n).bigHour=!0})),Fe("hmm",(function(e,t,n){var r=e.length-2;t[Ke]=ue(e.substr(0,r)),t[Ge]=ue(e.substr(r)),v(n).bigHour=!0})),Fe("hmmss",(function(e,t,n){var r=e.length-4,a=e.length-2;t[Ke]=ue(e.substr(0,r)),t[Ge]=ue(e.substr(r,2)),t[Ye]=ue(e.substr(a)),v(n).bigHour=!0})),Fe("Hmm",(function(e,t,n){var r=e.length-2;t[Ke]=ue(e.substr(0,r)),t[Ge]=ue(e.substr(r))})),Fe("Hmmss",(function(e,t,n){var r=e.length-4,a=e.length-2;t[Ke]=ue(e.substr(0,r)),t[Ge]=ue(e.substr(r,2)),t[Ye]=ue(e.substr(a))}));var nn=/[ap]\.?m?\.?/i,rn=de("Hours",!0);function an(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}var on,cn={calendar:I,longDateFormat:W,invalidDate:G,ordinal:q,dayOfMonthOrdinalParse:Q,relativeTime:X,months:et,monthsShort:tt,week:Et,weekdays:It,weekdaysMin:_t,weekdaysShort:Dt,meridiemParse:nn},ln={},sn={};function un(e,t){var n,r=Math.min(e.length,t.length);for(n=0;n0;){if(r=pn(a.slice(0,t).join("-")))return r;if(n&&n.length>=t&&un(a,n)>=t-1)break;t--}o++}return on}function pn(t){var n=null;if(void 0===ln[t]&&void 0!==e&&e&&e.exports)try{n=on._abbr,function(){var e=new Error("Cannot find module 'undefined'");throw e.code="MODULE_NOT_FOUND",e}(),hn(n)}catch(e){ln[t]=null}return ln[t]}function hn(e,t){var n;return e&&((n=s(t)?gn(e):mn(e,t))?on=n:"undefined"!=typeof console&&console.warn),on._abbr}function mn(e,t){if(null!==t){var n,r=cn;if(t.abbr=e,null!=ln[e])S("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=ln[e]._config;else if(null!=t.parentLocale)if(null!=ln[t.parentLocale])r=ln[t.parentLocale]._config;else{if(null==(n=pn(t.parentLocale)))return sn[t.parentLocale]||(sn[t.parentLocale]=[]),sn[t.parentLocale].push({name:e,config:t}),null;r=n._config}return ln[e]=new z(T(r,t)),sn[e]&&sn[e].forEach((function(e){mn(e.name,e.config)})),hn(e),ln[e]}return delete ln[e],null}function vn(e,t){if(null!=t){var n,r,a=cn;null!=ln[e]&&null!=ln[e].parentLocale?ln[e].set(T(ln[e]._config,t)):(null!=(r=pn(e))&&(a=r._config),t=T(a,t),null==r&&(t.abbr=e),(n=new z(t)).parentLocale=ln[e],ln[e]=n),hn(e)}else null!=ln[e]&&(null!=ln[e].parentLocale?(ln[e]=ln[e].parentLocale,e===hn()&&hn(e)):null!=ln[e]&&delete ln[e]);return ln[e]}function gn(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return on;if(!o(e)){if(t=pn(e))return t;e=[e]}return fn(e)}function bn(){return k(ln)}function yn(e){var t,n=e._a;return n&&-2===v(e).overflow&&(t=n[Ue]<0||n[Ue]>11?Ue:n[We]<1||n[We]>Je(n[$e],n[Ue])?We:n[Ke]<0||n[Ke]>24||24===n[Ke]&&(0!==n[Ge]||0!==n[Ye]||0!==n[qe])?Ke:n[Ge]<0||n[Ge]>59?Ge:n[Ye]<0||n[Ye]>59?Ye:n[qe]<0||n[qe]>999?qe:-1,v(e)._overflowDayOfYear&&(t<$e||t>We)&&(t=We),v(e)._overflowWeeks&&-1===t&&(t=Qe),v(e)._overflowWeekday&&-1===t&&(t=Ze),v(e).overflow=t),e}var wn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,On=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,xn=/Z|[+-]\d\d(?::?\d\d)?/,Cn=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Mn=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],En=/^\/?Date\((-?\d+)/i,kn=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,jn={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Sn(e){var t,n,r,a,o,i,c=e._i,l=wn.exec(c)||On.exec(c);if(l){for(v(e).iso=!0,t=0,n=Cn.length;tmt(o)||0===e._dayOfYear)&&(v(e)._overflowDayOfYear=!0),n=yt(o,0,e._dayOfYear),e._a[Ue]=n.getUTCMonth(),e._a[We]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=i[t]=r[t];for(;t<7;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Ke]&&0===e._a[Ge]&&0===e._a[Ye]&&0===e._a[qe]&&(e._nextDay=!0,e._a[Ke]=0),e._d=(e._useUTC?yt:bt).apply(null,i),a=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ke]=24),e._w&&void 0!==e._w.d&&e._w.d!==a&&(v(e).weekdayMismatch=!0)}}function Fn(e){var t,n,r,a,o,i,c,l,s;null!=(t=e._w).GG||null!=t.W||null!=t.E?(o=1,i=4,n=An(t.GG,e._a[$e],xt(Yn(),1,4).year),r=An(t.W,1),((a=An(t.E,1))<1||a>7)&&(l=!0)):(o=e._locale._week.dow,i=e._locale._week.doy,s=xt(Yn(),o,i),n=An(t.gg,e._a[$e],s.year),r=An(t.w,s.week),null!=t.d?((a=t.d)<0||a>6)&&(l=!0):null!=t.e?(a=t.e+o,(t.e<0||t.e>6)&&(l=!0)):a=o),r<1||r>Ct(n,o,i)?v(e)._overflowWeeks=!0:null!=l?v(e)._overflowWeekday=!0:(c=Ot(n,r,a,o,i),e._a[$e]=c.year,e._dayOfYear=c.dayOfYear)}function Vn(e){if(e._f!==r.ISO_8601)if(e._f!==r.RFC_2822){e._a=[],v(e).empty=!0;var t,n,a,o,i,c,l=""+e._i,s=l.length,u=0;for(a=U(e._f,e._locale).match(A)||[],t=0;t0&&v(e).unusedInput.push(i),l=l.slice(l.indexOf(n)+n.length),u+=n.length),F[o]?(n?v(e).empty=!1:v(e).unusedTokens.push(o),He(o,n,e)):e._strict&&!n&&v(e).unusedTokens.push(o);v(e).charsLeftOver=s-u,l.length>0&&v(e).unusedInput.push(l),e._a[Ke]<=12&&!0===v(e).bigHour&&e._a[Ke]>0&&(v(e).bigHour=void 0),v(e).parsedDateParts=e._a.slice(0),v(e).meridiem=e._meridiem,e._a[Ke]=Hn(e._locale,e._a[Ke],e._meridiem),null!==(c=v(e).era)&&(e._a[$e]=e._locale.erasConvertYear(c,e._a[$e])),Rn(e),yn(e)}else Dn(e);else Sn(e)}function Hn(e,t,n){var r;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?((r=e.isPM(n))&&t<12&&(t+=12),r||12!==t||(t=0),t):t}function Bn(e){var t,n,r,a,o,i,c=!1;if(0===e._f.length)return v(e).invalidFormat=!0,void(e._d=new Date(NaN));for(a=0;athis?this:e:b()}));function Zn(e,t){var n,r;if(1===t.length&&o(t[0])&&(t=t[0]),!t.length)return Yn();for(n=t[0],r=1;rthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Or(){if(!s(this._isDSTShifted))return this._isDSTShifted;var e,t={};return O(t,this),(t=Wn(t))._a?(e=t._isUTC?h(t._a):Yn(t._a),this._isDSTShifted=this.isValid()&&lr(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function xr(){return!!this.isValid()&&!this._isUTC}function Cr(){return!!this.isValid()&&this._isUTC}function Mr(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var Er=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,kr=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function jr(e,t){var n,r,a,o=e,i=null;return ir(e)?o={ms:e._milliseconds,d:e._days,M:e._months}:u(e)||!isNaN(+e)?(o={},t?o[t]=+e:o.milliseconds=+e):(i=Er.exec(e))?(n="-"===i[1]?-1:1,o={y:0,d:ue(i[We])*n,h:ue(i[Ke])*n,m:ue(i[Ge])*n,s:ue(i[Ye])*n,ms:ue(cr(1e3*i[qe]))*n}):(i=kr.exec(e))?(n="-"===i[1]?-1:1,o={y:Sr(i[2],n),M:Sr(i[3],n),w:Sr(i[4],n),d:Sr(i[5],n),h:Sr(i[6],n),m:Sr(i[7],n),s:Sr(i[8],n)}):null==o?o={}:"object"==typeof o&&("from"in o||"to"in o)&&(a=Pr(Yn(o.from),Yn(o.to)),(o={}).ms=a.milliseconds,o.M=a.months),r=new or(o),ir(e)&&c(e,"_locale")&&(r._locale=e._locale),ir(e)&&c(e,"_isValid")&&(r._isValid=e._isValid),r}function Sr(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function Nr(e,t){var n={};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function Pr(e,t){var n;return e.isValid()&&t.isValid()?(t=fr(t,e),e.isBefore(t)?n=Nr(e,t):((n=Nr(t,e)).milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Tr(e,t){return function(n,r){var a;return null===r||isNaN(+r)||(S(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),a=n,n=r,r=a),zr(this,jr(n,r),e),this}}function zr(e,t,n,a){var o=t._milliseconds,i=cr(t._days),c=cr(t._months);e.isValid()&&(a=null==a||a,c&&st(e,fe(e,"Month")+c*n),i&&pe(e,"Date",fe(e,"Date")+i*n),o&&e._d.setTime(e._d.valueOf()+o*n),a&&r.updateOffset(e,i||c))}jr.fn=or.prototype,jr.invalid=ar;var Ir=Tr(1,"add"),Dr=Tr(-1,"subtract");function _r(e){return"string"==typeof e||e instanceof String}function Ar(e){return C(e)||d(e)||_r(e)||u(e)||Rr(e)||Lr(e)||null==e}function Lr(e){var t,n,r=i(e)&&!l(e),a=!1,o=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"];for(t=0;tn.valueOf():n.valueOf()9999?$(n,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):N(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",$(n,"Z")):$(n,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Jr(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,n,r,a="moment",o="";return this.isLocal()||(a=0===this.utcOffset()?"moment.utc":"moment.parseZone",o="Z"),e="["+a+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",n="-MM-DD[T]HH:mm:ss.SSS",r=o+'[")]',this.format(e+t+n+r)}function ea(e){e||(e=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var t=$(this,e);return this.localeData().postformat(t)}function ta(e,t){return this.isValid()&&(C(e)&&e.isValid()||Yn(e).isValid())?jr({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function na(e){return this.from(Yn(),e)}function ra(e,t){return this.isValid()&&(C(e)&&e.isValid()||Yn(e).isValid())?jr({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function aa(e){return this.to(Yn(),e)}function oa(e){var t;return void 0===e?this._locale._abbr:(null!=(t=gn(e))&&(this._locale=t),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var ia=E("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function ca(){return this._locale}var la=1e3,sa=60*la,ua=60*sa,da=3506328*ua;function fa(e,t){return(e%t+t)%t}function pa(e,t,n){return e<100&&e>=0?new Date(e+400,t,n)-da:new Date(e,t,n).valueOf()}function ha(e,t,n){return e<100&&e>=0?Date.UTC(e+400,t,n)-da:Date.UTC(e,t,n)}function ma(e){var t,n;if(void 0===(e=re(e))||"millisecond"===e||!this.isValid())return this;switch(n=this._isUTC?ha:pa,e){case"year":t=n(this.year(),0,1);break;case"quarter":t=n(this.year(),this.month()-this.month()%3,1);break;case"month":t=n(this.year(),this.month(),1);break;case"week":t=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=n(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=fa(t+(this._isUTC?0:this.utcOffset()*sa),ua);break;case"minute":t=this._d.valueOf(),t-=fa(t,sa);break;case"second":t=this._d.valueOf(),t-=fa(t,la)}return this._d.setTime(t),r.updateOffset(this,!0),this}function va(e){var t,n;if(void 0===(e=re(e))||"millisecond"===e||!this.isValid())return this;switch(n=this._isUTC?ha:pa,e){case"year":t=n(this.year()+1,0,1)-1;break;case"quarter":t=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=n(this.year(),this.month()+1,1)-1;break;case"week":t=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=ua-fa(t+(this._isUTC?0:this.utcOffset()*sa),ua)-1;break;case"minute":t=this._d.valueOf(),t+=sa-fa(t,sa)-1;break;case"second":t=this._d.valueOf(),t+=la-fa(t,la)-1}return this._d.setTime(t),r.updateOffset(this,!0),this}function ga(){return this._d.valueOf()-6e4*(this._offset||0)}function ba(){return Math.floor(this.valueOf()/1e3)}function ya(){return new Date(this.valueOf())}function wa(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Oa(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function xa(){return this.isValid()?this.toISOString():null}function Ca(){return g(this)}function Ma(){return p({},v(this))}function Ea(){return v(this).overflow}function ka(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function ja(e,t){var n,a,o,i=this._eras||gn("en")._eras;for(n=0,a=i.length;n=0)return l[r]}function Na(e,t){var n=e.since<=e.until?1:-1;return void 0===t?r(e.since).year():r(e.since).year()+(t-e.offset)*n}function Pa(){var e,t,n,r=this.localeData().eras();for(e=0,t=r.length;e(o=Ct(e,r,a))&&(t=o),Qa.call(this,e,t,n,r,a))}function Qa(e,t,n,r,a){var o=Ot(e,t,n,r,a),i=yt(o.year,0,o.dayOfYear);return this.year(i.getUTCFullYear()),this.month(i.getUTCMonth()),this.date(i.getUTCDate()),this}function Za(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}V("N",0,0,"eraAbbr"),V("NN",0,0,"eraAbbr"),V("NNN",0,0,"eraAbbr"),V("NNNN",0,0,"eraName"),V("NNNNN",0,0,"eraNarrow"),V("y",["y",1],"yo","eraYear"),V("y",["yy",2],0,"eraYear"),V("y",["yyy",3],0,"eraYear"),V("y",["yyyy",4],0,"eraYear"),De("N",La),De("NN",La),De("NNN",La),De("NNNN",Ra),De("NNNNN",Fa),Fe(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,n,r){var a=n._locale.erasParse(e,r,n._strict);a?v(n).era=a:v(n).invalidEra=e})),De("y",Se),De("yy",Se),De("yyy",Se),De("yyyy",Se),De("yo",Va),Fe(["y","yy","yyy","yyyy"],$e),Fe(["yo"],(function(e,t,n,r){var a;n._locale._eraYearOrdinalRegex&&(a=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?t[$e]=n._locale.eraYearOrdinalParse(e,a):t[$e]=parseInt(e,10)})),V(0,["gg",2],0,(function(){return this.weekYear()%100})),V(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Ba("gggg","weekYear"),Ba("ggggg","weekYear"),Ba("GGGG","isoWeekYear"),Ba("GGGGG","isoWeekYear"),ne("weekYear","gg"),ne("isoWeekYear","GG"),ie("weekYear",1),ie("isoWeekYear",1),De("G",Ne),De("g",Ne),De("GG",xe,be),De("gg",xe,be),De("GGGG",ke,we),De("gggg",ke,we),De("GGGGG",je,Oe),De("ggggg",je,Oe),Ve(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,n,r){t[r.substr(0,2)]=ue(e)})),Ve(["gg","GG"],(function(e,t,n,a){t[a]=r.parseTwoDigitYear(e)})),V("Q",0,"Qo","quarter"),ne("quarter","Q"),ie("quarter",7),De("Q",ge),Fe("Q",(function(e,t){t[Ue]=3*(ue(e)-1)})),V("D",["DD",2],"Do","date"),ne("date","D"),ie("date",9),De("D",xe),De("DD",xe,be),De("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),Fe(["D","DD"],We),Fe("Do",(function(e,t){t[We]=ue(e.match(xe)[0])}));var Xa=de("Date",!0);function Ja(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}V("DDD",["DDDD",3],"DDDo","dayOfYear"),ne("dayOfYear","DDD"),ie("dayOfYear",4),De("DDD",Ee),De("DDDD",ye),Fe(["DDD","DDDD"],(function(e,t,n){n._dayOfYear=ue(e)})),V("m",["mm",2],0,"minute"),ne("minute","m"),ie("minute",14),De("m",xe),De("mm",xe,be),Fe(["m","mm"],Ge);var eo=de("Minutes",!1);V("s",["ss",2],0,"second"),ne("second","s"),ie("second",15),De("s",xe),De("ss",xe,be),Fe(["s","ss"],Ye);var to,no,ro=de("Seconds",!1);for(V("S",0,0,(function(){return~~(this.millisecond()/100)})),V(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),V(0,["SSS",3],0,"millisecond"),V(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),V(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),V(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),V(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),V(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),V(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),ne("millisecond","ms"),ie("millisecond",16),De("S",Ee,ge),De("SS",Ee,be),De("SSS",Ee,ye),to="SSSS";to.length<=9;to+="S")De(to,Se);function ao(e,t){t[qe]=ue(1e3*("0."+e))}for(to="S";to.length<=9;to+="S")Fe(to,ao);function oo(){return this._isUTC?"UTC":""}function io(){return this._isUTC?"Coordinated Universal Time":""}no=de("Milliseconds",!1),V("z",0,0,"zoneAbbr"),V("zz",0,0,"zoneName");var co=x.prototype;function lo(e){return Yn(1e3*e)}function so(){return Yn.apply(null,arguments).parseZone()}function uo(e){return e}co.add=Ir,co.calendar=Hr,co.clone=Br,co.diff=qr,co.endOf=va,co.format=ea,co.from=ta,co.fromNow=na,co.to=ra,co.toNow=aa,co.get=he,co.invalidAt=Ea,co.isAfter=$r,co.isBefore=Ur,co.isBetween=Wr,co.isSame=Kr,co.isSameOrAfter=Gr,co.isSameOrBefore=Yr,co.isValid=Ca,co.lang=ia,co.locale=oa,co.localeData=ca,co.max=Qn,co.min=qn,co.parsingFlags=Ma,co.set=me,co.startOf=ma,co.subtract=Dr,co.toArray=wa,co.toObject=Oa,co.toDate=ya,co.toISOString=Xr,co.inspect=Jr,"undefined"!=typeof Symbol&&null!=Symbol.for&&(co[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),co.toJSON=xa,co.toString=Zr,co.unix=ba,co.valueOf=ga,co.creationData=ka,co.eraName=Pa,co.eraNarrow=Ta,co.eraAbbr=za,co.eraYear=Ia,co.year=vt,co.isLeapYear=gt,co.weekYear=$a,co.isoWeekYear=Ua,co.quarter=co.quarters=Za,co.month=ut,co.daysInMonth=dt,co.week=co.weeks=St,co.isoWeek=co.isoWeeks=Nt,co.weeksInYear=Ga,co.weeksInWeekYear=Ya,co.isoWeeksInYear=Wa,co.isoWeeksInISOWeekYear=Ka,co.date=Xa,co.day=co.days=Ut,co.weekday=Wt,co.isoWeekday=Kt,co.dayOfYear=Ja,co.hour=co.hours=rn,co.minute=co.minutes=eo,co.second=co.seconds=ro,co.millisecond=co.milliseconds=no,co.utcOffset=hr,co.utc=vr,co.local=gr,co.parseZone=br,co.hasAlignedHourOffset=yr,co.isDST=wr,co.isLocal=xr,co.isUtcOffset=Cr,co.isUtc=Mr,co.isUTC=Mr,co.zoneAbbr=oo,co.zoneName=io,co.dates=E("dates accessor is deprecated. Use date instead.",Xa),co.months=E("months accessor is deprecated. Use month instead",ut),co.years=E("years accessor is deprecated. Use year instead",vt),co.zone=E("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",mr),co.isDSTShifted=E("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Or);var fo=z.prototype;function po(e,t,n,r){var a=gn(),o=h().set(r,t);return a[n](o,e)}function ho(e,t,n){if(u(e)&&(t=e,e=void 0),e=e||"",null!=t)return po(e,t,n,"month");var r,a=[];for(r=0;r<12;r++)a[r]=po(e,r,n,"month");return a}function mo(e,t,n,r){"boolean"==typeof e?(u(t)&&(n=t,t=void 0),t=t||""):(n=t=e,e=!1,u(t)&&(n=t,t=void 0),t=t||"");var a,o=gn(),i=e?o._week.dow:0,c=[];if(null!=n)return po(t,(n+i)%7,r,"day");for(a=0;a<7;a++)c[a]=po(t,(a+i)%7,r,"day");return c}function vo(e,t){return ho(e,t,"months")}function go(e,t){return ho(e,t,"monthsShort")}function bo(e,t,n){return mo(e,t,n,"weekdays")}function yo(e,t,n){return mo(e,t,n,"weekdaysShort")}function wo(e,t,n){return mo(e,t,n,"weekdaysMin")}fo.calendar=D,fo.longDateFormat=K,fo.invalidDate=Y,fo.ordinal=Z,fo.preparse=uo,fo.postformat=uo,fo.relativeTime=J,fo.pastFuture=ee,fo.set=P,fo.eras=ja,fo.erasParse=Sa,fo.erasConvertYear=Na,fo.erasAbbrRegex=_a,fo.erasNameRegex=Da,fo.erasNarrowRegex=Aa,fo.months=ot,fo.monthsShort=it,fo.monthsParse=lt,fo.monthsRegex=pt,fo.monthsShortRegex=ft,fo.week=Mt,fo.firstDayOfYear=jt,fo.firstDayOfWeek=kt,fo.weekdays=Ft,fo.weekdaysMin=Ht,fo.weekdaysShort=Vt,fo.weekdaysParse=$t,fo.weekdaysRegex=Gt,fo.weekdaysShortRegex=Yt,fo.weekdaysMinRegex=qt,fo.isPM=tn,fo.meridiem=an,hn("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===ue(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),r.lang=E("moment.lang is deprecated. Use moment.locale instead.",hn),r.langData=E("moment.langData is deprecated. Use moment.localeData instead.",gn);var Oo=Math.abs;function xo(){var e=this._data;return this._milliseconds=Oo(this._milliseconds),this._days=Oo(this._days),this._months=Oo(this._months),e.milliseconds=Oo(e.milliseconds),e.seconds=Oo(e.seconds),e.minutes=Oo(e.minutes),e.hours=Oo(e.hours),e.months=Oo(e.months),e.years=Oo(e.years),this}function Co(e,t,n,r){var a=jr(t,n);return e._milliseconds+=r*a._milliseconds,e._days+=r*a._days,e._months+=r*a._months,e._bubble()}function Mo(e,t){return Co(this,e,t,1)}function Eo(e,t){return Co(this,e,t,-1)}function ko(e){return e<0?Math.floor(e):Math.ceil(e)}function jo(){var e,t,n,r,a,o=this._milliseconds,i=this._days,c=this._months,l=this._data;return o>=0&&i>=0&&c>=0||o<=0&&i<=0&&c<=0||(o+=864e5*ko(No(c)+i),i=0,c=0),l.milliseconds=o%1e3,e=se(o/1e3),l.seconds=e%60,t=se(e/60),l.minutes=t%60,n=se(t/60),l.hours=n%24,i+=se(n/24),c+=a=se(So(i)),i-=ko(No(a)),r=se(c/12),c%=12,l.days=i,l.months=c,l.years=r,this}function So(e){return 4800*e/146097}function No(e){return 146097*e/4800}function Po(e){if(!this.isValid())return NaN;var t,n,r=this._milliseconds;if("month"===(e=re(e))||"quarter"===e||"year"===e)switch(t=this._days+r/864e5,n=this._months+So(t),e){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(t=this._days+Math.round(No(this._months)),e){case"week":return t/7+r/6048e5;case"day":return t+r/864e5;case"hour":return 24*t+r/36e5;case"minute":return 1440*t+r/6e4;case"second":return 86400*t+r/1e3;case"millisecond":return Math.floor(864e5*t)+r;default:throw new Error("Unknown unit "+e)}}function To(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*ue(this._months/12):NaN}function zo(e){return function(){return this.as(e)}}var Io=zo("ms"),Do=zo("s"),_o=zo("m"),Ao=zo("h"),Lo=zo("d"),Ro=zo("w"),Fo=zo("M"),Vo=zo("Q"),Ho=zo("y");function Bo(){return jr(this)}function $o(e){return e=re(e),this.isValid()?this[e+"s"]():NaN}function Uo(e){return function(){return this.isValid()?this._data[e]:NaN}}var Wo=Uo("milliseconds"),Ko=Uo("seconds"),Go=Uo("minutes"),Yo=Uo("hours"),qo=Uo("days"),Qo=Uo("months"),Zo=Uo("years");function Xo(){return se(this.days()/7)}var Jo=Math.round,ei={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ti(e,t,n,r,a){return a.relativeTime(t||1,!!n,e,r)}function ni(e,t,n,r){var a=jr(e).abs(),o=Jo(a.as("s")),i=Jo(a.as("m")),c=Jo(a.as("h")),l=Jo(a.as("d")),s=Jo(a.as("M")),u=Jo(a.as("w")),d=Jo(a.as("y")),f=o<=n.ss&&["s",o]||o0,f[4]=r,ti.apply(null,f)}function ri(e){return void 0===e?Jo:"function"==typeof e&&(Jo=e,!0)}function ai(e,t){return void 0!==ei[e]&&(void 0===t?ei[e]:(ei[e]=t,"s"===e&&(ei.ss=t-1),!0))}function oi(e,t){if(!this.isValid())return this.localeData().invalidDate();var n,r,a=!1,o=ei;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(a=e),"object"==typeof t&&(o=Object.assign({},ei,t),null!=t.s&&null==t.ss&&(o.ss=t.s-1)),r=ni(this,!a,o,n=this.localeData()),a&&(r=n.pastFuture(+this,r)),n.postformat(r)}var ii=Math.abs;function ci(e){return(e>0)-(e<0)||+e}function li(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n,r,a,o,i,c,l=ii(this._milliseconds)/1e3,s=ii(this._days),u=ii(this._months),d=this.asSeconds();return d?(e=se(l/60),t=se(e/60),l%=60,e%=60,n=se(u/12),u%=12,r=l?l.toFixed(3).replace(/\.?0+$/,""):"",a=d<0?"-":"",o=ci(this._months)!==ci(d)?"-":"",i=ci(this._days)!==ci(d)?"-":"",c=ci(this._milliseconds)!==ci(d)?"-":"",a+"P"+(n?o+n+"Y":"")+(u?o+u+"M":"")+(s?i+s+"D":"")+(t||e||l?"T":"")+(t?c+t+"H":"")+(e?c+e+"M":"")+(l?c+r+"S":"")):"P0D"}var si=or.prototype;return si.isValid=rr,si.abs=xo,si.add=Mo,si.subtract=Eo,si.as=Po,si.asMilliseconds=Io,si.asSeconds=Do,si.asMinutes=_o,si.asHours=Ao,si.asDays=Lo,si.asWeeks=Ro,si.asMonths=Fo,si.asQuarters=Vo,si.asYears=Ho,si.valueOf=To,si._bubble=jo,si.clone=Bo,si.get=$o,si.milliseconds=Wo,si.seconds=Ko,si.minutes=Go,si.hours=Yo,si.days=qo,si.weeks=Xo,si.months=Qo,si.years=Zo,si.humanize=oi,si.toISOString=li,si.toString=li,si.toJSON=li,si.locale=oa,si.localeData=ca,si.toIsoString=E("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",li),si.lang=ia,V("X",0,0,"unix"),V("x",0,0,"valueOf"),De("x",Ne),De("X",ze),Fe("X",(function(e,t,n){n._d=new Date(1e3*parseFloat(e))})),Fe("x",(function(e,t,n){n._d=new Date(ue(e))})), -//! moment.js -r.version="2.29.1",a(Yn),r.fn=co,r.min=Xn,r.max=Jn,r.now=er,r.utc=h,r.unix=lo,r.months=vo,r.isDate=d,r.locale=hn,r.invalid=b,r.duration=jr,r.isMoment=C,r.weekdays=bo,r.parseZone=so,r.localeData=gn,r.isDuration=ir,r.monthsShort=go,r.weekdaysMin=wo,r.defineLocale=mn,r.updateLocale=vn,r.locales=bn,r.weekdaysShort=yo,r.normalizeUnits=re,r.relativeTimeRounding=ri,r.relativeTimeThreshold=ai,r.calendarFormat=Vr,r.prototype=co,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()}).call(this,n(225)(e))},function(e,t,n){"use strict";n.d(t,"d",(function(){return d})),n.d(t,"c",(function(){return p})),n.d(t,"e",(function(){return h})),n.d(t,"b",(function(){return v})),n.d(t,"f",(function(){return g})),n.d(t,"g",(function(){return b})),n.d(t,"a",(function(){return y}));var r=n(2),a=n(188),o=n(7),i=n(13),c=n(5),l=n(17),s=n(108);function u(e,t){var n,r=e.key;return"value"in e&&(n=e.value),null!=r?r:void 0!==n?n:"rc-index-key-".concat(t)}function d(e){var t=[];return function e(n,r){n.forEach((function(n){r||!("options"in n)?t.push({key:u(n,t.length),groupOption:r,data:n}):(t.push({key:u(n,t.length),group:!0,data:n}),e(n.options,!0))}))}(e,!1),t}function f(e){var t=Object(c.a)({},e);return"props"in t||Object.defineProperty(t,"props",{get:function(){return Object(l.a)(!1,"Return type is option instead of Option instance. Please read value directly instead of reading from `props`."),t}}),t}function p(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.prevValueOptions,a=void 0===r?[]:r,o=new Map;return t.forEach((function(e){if(!e.group){var t=e.data;o.set(t.value,t)}})),e.map((function(e){var t=o.get(e);return t||(t=Object(c.a)({},a.find((function(t){return t._INTERNAL_OPTION_VALUE_===e})))),f(t)}))}var h=function(e,t){var n=t.options,r=t.prevValueMap,a=t.labelInValue,o=t.optionLabelProp,c=p([e],n)[0],s={value:e},u=a?r.get(e):void 0;return u&&"object"===Object(i.a)(u)&&"label"in u?(s.label=u.label,c&&"string"==typeof u.label&&"string"==typeof c[o]&&u.label.trim()!==c[o].trim()&&Object(l.a)(!1,"`label` of `value` is not same as `label` in Select options.")):c&&o in c?s.label=c[o]:(s.label=e,s.isCacheable=!0),s.key=s.value,s};function m(e){return Object(s.d)(e).join("")}function v(e,t,n){var r,a=n.optionFilterProp,i=n.filterOption,l=[];return!1===i?Object(o.a)(t):(r="function"==typeof i?i:function(e){return function(t,n){var r=t.toLowerCase();return"options"in n?m(n.label).toLowerCase().includes(r):m(n[e]).toLowerCase().includes(r)}}(a),t.forEach((function(t){if("options"in t)if(r(e,t))l.push(t);else{var n=t.options.filter((function(t){return r(e,t)}));n.length&&l.push(Object(c.a)(Object(c.a)({},t),{},{options:n}))}else r(e,f(t))&&l.push(t)})),l)}function g(e,t){if(!t||!t.length)return null;var n=!1;var r=function e(t,r){var i=Object(a.a)(r),c=i[0],l=i.slice(1);if(!c)return[t];var s=t.split(c);return n=n||s.length>1,s.reduce((function(t,n){return[].concat(Object(o.a)(t),Object(o.a)(e(n,l)))}),[]).filter((function(e){return e}))}(e,t);return n?r:null}function b(e,t){return p([e],t)[0].disabled}function y(e,t,n,a){var i=Object(s.d)(t).slice().sort(),c=Object(o.a)(e),l=new Set;return e.forEach((function(e){e.options?e.options.forEach((function(e){l.add(e.value)})):l.add(e.value)})),i.forEach((function(e){var t,o=a?e.value:e;l.has(o)||c.push(a?(t={},Object(r.a)(t,n,e.label),Object(r.a)(t,"value",o),t):{value:o})})),c}},function(e,t,n){"use strict";n.d(t,"b",(function(){return h})),n.d(t,"a",(function(){return u})),n.d(t,"d",(function(){return d})),n.d(t,"c",(function(){return s}));var r=n(3);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r=0;f--){var p=i[f];"."===p?o(i,f):".."===p?(o(i,f),d++):d&&(o(i,f),d--)}if(!s)for(;d--;d)i.unshift("..");!s||""===i[0]||i[0]&&a(i[0])||i.unshift("");var h=i.join("/");return n&&"/"!==h.substr(-1)&&(h+="/"),h};function c(e){return e.valueOf?e.valueOf():Object.prototype.valueOf.call(e)}var l=function e(t,n){if(t===n)return!0;if(null==t||null==n)return!1;if(Array.isArray(t))return Array.isArray(n)&&t.length===n.length&&t.every((function(t,r){return e(t,n[r])}));if("object"==typeof t||"object"==typeof n){var r=c(t),a=c(n);return r!==t||a!==n?e(r,a):Object.keys(Object.assign({},t,n)).every((function(r){return e(t[r],n[r])}))}return!1};n(194);function s(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function u(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e)).state=t:(void 0===(o=Object(r.a)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(e){throw e instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):e}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function d(e,t){return e.pathname===t.pathname&&e.search===t.search&&e.hash===t.hash&&e.key===t.key&&l(e.state,t.state)}function f(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,a):n.push(a),m({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=u(e,t,v(),O.location);h.confirmTransitionTo(a,r,n,(function(e){e&&(O.entries[O.index]=a,m({action:r,location:a}))}))},go:w,goBack:function(){w(-1)},goForward:function(){w(1)},canGo:function(e){var t=O.index+e;return t>=0&&t0?a(r(e),9007199254740991):0}},function(e,t,n){var r=n(681);e.exports=function(e,t){if(null==e)return{};var n,a,o=r(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";n.d(t,"a",(function(){return o})),n.d(t,"c",(function(){return i})),n.d(t,"b",(function(){return c}));var r=n(5),a=n(15),o=(n(17),"RC_TABLE_INTERNAL_COL_DEFINE");function i(e){var t=e.expandable,n=Object(a.a)(e,["expandable"]);return"expandable"in e?Object(r.a)(Object(r.a)({},n),t):n}function c(e){return Object.keys(e).reduce((function(t,n){return"data-"!==n.substr(0,5)&&"aria-"!==n.substr(0,5)||(t[n]=e[n]),t}),{})}},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]},name:"exclamation-circle",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="ExclamationCircleOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=n(3),a=n(2),o=n(15),i=n(5),c=n(8),l=n(10),s=n(18),u=n(11),d=n(12),f=n(0),p=n(4),h=n.n(p),m=n(193),v=n(38),g=function(e){for(var t=e.prefixCls,n=e.level,r=e.isStart,o=e.isEnd,i="".concat(t,"-indent-unit"),c=[],l=0;l1&&void 0!==arguments[1]?arguments[1]:0,r=1024,a=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB","BiB"],o=(0,w.isNumber)(n)?n:0;if(!(0,w.isNumber)(e)||(0,w.isNaN)(e))return e||"-";for(;e>=r&&o{var{s:t,m:n,h:r,d:a,w:o}=C.MILLISECOND_IN_TIME_UNIT;return e(0,O.customAlphabet)("0123456789abcdefghijklmnopqrstuvwxyz",e||6)();n.getQueryString=e=>{var t,n;return(0,s.default)(t=(0,u.default)(n=(0,d.default)(e)).call(n,(t=>e[t]))).call(t,(t=>{var n;return(0,l.default)(n="".concat(t,"=")).call(n,e[t])})).join("&")};var E=e=>e?t("Yes"):t("No");n.getYesNo=E;var k=e=>(0,w.isNaN)(e)||(0,w.isNil)(e)||!e||!(0,w.isNumber)(e)?0:(0,i.default)(Number(e/1024).toFixed(2));n.getGiBValue=k;var j=(e,t)=>(0,w.isNil)(e)||(0,w.isUndefined)(e)||(0,w.isString)(e)&&""===(0,f.default)(e).call(e)?t||"-":e;n.getNoValue=j;n.firstUpperCase=e=>{if(!(0,w.isString)(e)||""===e)return e;var[t,...n]=e;return t.toUpperCase()+n.join("")};var S=e=>{var{kb:n,mb:r,gb:a,tb:o}=C.SIZE_VALUE;if((0,w.isNaN)(e)||(0,w.isUndefined)(e)||null===e||e<0)return"";if(e>=o){var i=Number(e/o).toFixed(2);return t("{ size } TiB",{size:i})}if(e>=a){var c=Number(e/a).toFixed(2);return t("{ size } GiB",{size:c})}if(e>=r){var l=Number(e/r).toFixed(2);return t("{ size } MiB",{size:l})}if(e>=n){var s=Number(e/n).toFixed(2);return t("{ size } KiB",{size:s})}var u=Math.floor(e);return t("{ size } bytes",{size:u})};n.bytesFilter=S;var N=e=>e&&(0,w.isString)(e)?e.toUpperCase():"-";n.uppercaseFilter=N;var P=e=>{var t,n;if(!e)return"-";"number"==typeof e||/\+00:00$/.test(e)||/Z$/.test(e)||(e=(0,l.default)(e).call(e,"Z")),n=new Date(e);var r="%y-%m-%d %H:%M:%S",a={y:n.getYear()+1900,m:n.getMonth()+1,d:n.getDate(),H:n.getHours(),M:n.getMinutes(),S:n.getSeconds()};return(0,p.default)(t=(0,d.default)(a)).call(t,(e=>{r=r.replace("%".concat(e),a[e]<10?"0".concat(a[e]):a[e])})),r};n.toLocalTimeFilter=P;var T={sinceTime:x.getSinceTime,keepTime:x.getKeepTime,yesNo:E,GiBValue:k,noValue:j,bytes:S,uppercase:N,formatSize:M,toLocalTime:P,toLocalTimeMoment:x.getLocalTimeStr};n.renderFilterMap=T;var z=e=>{var t;return(0,s.default)(t=(0,d.default)(e)).call(t,(t=>({label:e[t],value:t,key:t})))};n.getOptions=z;n.getYesNoList=()=>[{value:!0,label:t("Yes")},{value:!1,label:t("No")}];n.generateArray=(e,t)=>{var n,r,a=Math.abs(e-t);return(0,s.default)(n=(0,h.default)((0,m.default)(r=new Array(a)).call(r))).call(n,(t=>t+e))};var I="noSelect";n.NoSetValue=I;n.getOptionsWithNoSet=e=>{var n=(0,w.isArray)(e)?e:z(e);return[{value:I,label:t("Not select")},...n]};n.computePercentage=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:2;return 0===e?0:(0,i.default)(((0,i.default)(e)/(0,i.default)(t)*100).toFixed(n))};n.groupArray=(e,t)=>{for(var n=0,r=[];n0&&void 0!==arguments[0]?arguments[0]:{},n=[];return(0,p.default)(e=(0,d.default)(t)).call(e,((e,r)=>{n.push({index:r,value:{key:e,value:t[e]}})})),n};n.updateAddSelectValueToObj=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t={};return(0,p.default)(e).call(e,(e=>{var{key:n,value:r}=e.value;((0,w.isString)(r)&&r||!(0,w.isString)(r))&&(t[n]=r)})),t};n.unescapeHtml=e=>(0,w.isString)(e)?(0,w.unescape)(e):e;n.isAdminPage=e=>e&&(0,g.default)(e).call(e,"admin")>=0;n.isUserCenterPage=e=>e&&("/user"===e||(0,b.default)(e).call(e,"/user/"));n.allSettled=e=>y.default.allSettled?y.default.allSettled(e):y.default.all((0,s.default)(e).call(e,(e=>e.then((e=>({status:"fulfilled",value:e}))).catch((e=>({status:"rejected",reason:e}))))))},function(e,t,n){"use strict";(function(e){var r=n(516),a=n(35),o=n(44),i=n(33),c=n(25),l=n(28),s=n(45),u=n(46),d=n(19),f=n(21);d(t,"__esModule",{value:!0}),t.default=t.RootStore=void 0;var p,h,m,v,g,b,y,w,O,x,C,M,E,k,j,S,N,P,T=f(n(195)),z=f(n(82)),I=f(n(320)),D=f(n(65)),_=f(n(101)),A=f(n(28)),L=f(n(25)),R=f(n(52)),F=f(n(72)),V=f(n(37)),H=f(n(55)),B=(f(n(73)),n(32)),$=n(456),U=n(327),W=f(n(49)),K=n(135),G=n(231),Y=n(47);function q(e,t){var n=a(e);if(o){var r=o(e);t&&(r=i(r).call(r,(function(t){return c(e,t).enumerable}))),n.push.apply(n,r)}return n}function Q(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]&&arguments[1],{pathname:a,search:o}=t.routing.location,i=(0,U.parse)((0,T.default)(o).call(o,1)),c=r?n:Q(Q({},i),n);t.routing.push((0,z.default)(e="".concat(a,"?")).call(e,(0,K.getQueryString)(c)))})),this.routing=new $.RouterStore,this.routing.query=this.query,e.navigateTo=this.routing.push}get client(){return W.default.skyline}register(e,t){(0,B.extendObservable)(this,{[e]:t})}setKeystoneToken(e){var{keystone_token:t}=e||{};(0,G.setLocalStorageItem)("keystone_token",t)}login(e){var t=this;return(0,R.default)((function*(){var n=yield t.client.login(e);return t.setKeystoneToken(n),t.getUserProfileAndPolicy()}))()}getUserSystemRoles(e){return(0,R.default)((function*(){var{id:t}=e;try{var n=yield W.default.keystone.systemUsers.roles.list(t),{roles:r=[]}=n;return(0,I.default)(r).call(r,(e=>"admin"===e.name||"reader"===e.name))}catch(e){return!1}}))()}updateUserRoles(e){var t=this;return(0,R.default)((function*(){var{roles:n=[],base_roles:r=[],base_domains:a,user:o={}}=e||{};t.roles=n,t.baseRoles=r,t.baseDomains=a,t.hasAdminPageRole=yield t.getUserSystemRoles(o),t.hasAdminRole=t.hasAdminPageRole}))()}updateUser(e,t){this.user=e,this.policies=t;var{endpoints:n={},version:r="",project:{id:a,name:o}={}}=e||{};this.projectId=a,this.projectName=o,this.version=r,this.endpoints=n,this.updateUserRoles(e),this.setKeystoneToken(e)}checkEndpoint(e){return!e||!!this.endpoints[e]}getUserProfileAndPolicy(){var e=this;return(0,R.default)((function*(){var[t,n]=yield D.default.all([e.client.profile(),e.client.policies.list()]);return yield e.updateUser(t,n.policies||[]),e.getNeutronExtensions()}))()}getNeutronExtensions(){var e=this;return(0,R.default)((function*(){try{var{extensions:t}=yield W.default.neutron.extensions.list();e.neutronExtensions=t}catch(t){e.neutronExtensions=[]}}))()}logout(){var e=this;return(0,R.default)((function*(){yield e.client.logout(),e.clearData(),e.user=null,e.policies=[],e.roles=[],e.hasAdminRole=!1,e.hasAdminPageRole=!1,e.version="",e.noticeCount=0,e.goToLoginPage()}))()}goToLoginPage(e,t){e?this.routing.push("/auth/login?referer=".concat(e)):this.routing.push("/auth/login"),t&&window.location.reload()}updateOpenKeys(e){this.openKeys=e}switchProject(e,t){var n=this;return(0,R.default)((function*(){n.user=null;var r=yield n.client.switchProject(e,t);return n.clearData(),n.setKeystoneToken(r),n.getUserProfileAndPolicy()}))()}setPasswordInfo(e){var t=this;return(0,R.default)((function*(){if(t.oldPassword=e,e&&!(0,Y.isEmpty)(e)){var{region:n}=e,r=yield t.client.contrib.keystoneEndpoints(),a={keystone:(0,_.default)(r).call(r,(e=>e.region_name===n)).url};t.endpoints=a}}))()}addNoticeCount(){this.noticeCount+=1}removeNoticeCount(){this.noticeCount-=1}clearNoticeCount(){this.noticeCount=0}clearData(){var e=n(933).default,t=r(Y)(e);(0,A.default)(t).call(t,(e=>{e.clearData()})),localStorage.clear()}},h=(0,H.default)(p.prototype,"user",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),m=(0,H.default)(p.prototype,"projectId",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),v=(0,H.default)(p.prototype,"projectName",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),g=(0,H.default)(p.prototype,"roles",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),b=(0,H.default)(p.prototype,"baseRoles",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),y=(0,H.default)(p.prototype,"baseDomains",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),w=(0,H.default)(p.prototype,"policies",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),O=(0,H.default)(p.prototype,"hasAdminRole",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),x=(0,H.default)(p.prototype,"hasAdminPageRole",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),C=(0,H.default)(p.prototype,"openKeys",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),M=(0,H.default)(p.prototype,"endpoints",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),E=(0,H.default)(p.prototype,"oldPassword",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),k=(0,H.default)(p.prototype,"info",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),j=(0,H.default)(p.prototype,"version",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),S=(0,H.default)(p.prototype,"noticeCount",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),N=(0,H.default)(p.prototype,"enableBilling",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),P=(0,H.default)(p.prototype,"neutronExtensions",[B.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),(0,H.default)(p.prototype,"login",[B.action],(0,L.default)(p.prototype,"login"),p.prototype),(0,H.default)(p.prototype,"updateUserRoles",[B.action],(0,L.default)(p.prototype,"updateUserRoles"),p.prototype),(0,H.default)(p.prototype,"updateUser",[B.action],(0,L.default)(p.prototype,"updateUser"),p.prototype),(0,H.default)(p.prototype,"getUserProfileAndPolicy",[B.action],(0,L.default)(p.prototype,"getUserProfileAndPolicy"),p.prototype),(0,H.default)(p.prototype,"getNeutronExtensions",[B.action],(0,L.default)(p.prototype,"getNeutronExtensions"),p.prototype),(0,H.default)(p.prototype,"logout",[B.action],(0,L.default)(p.prototype,"logout"),p.prototype),(0,H.default)(p.prototype,"goToLoginPage",[B.action],(0,L.default)(p.prototype,"goToLoginPage"),p.prototype),(0,H.default)(p.prototype,"updateOpenKeys",[B.action],(0,L.default)(p.prototype,"updateOpenKeys"),p.prototype),(0,H.default)(p.prototype,"switchProject",[B.action],(0,L.default)(p.prototype,"switchProject"),p.prototype),(0,H.default)(p.prototype,"setPasswordInfo",[B.action],(0,L.default)(p.prototype,"setPasswordInfo"),p.prototype),(0,H.default)(p.prototype,"addNoticeCount",[B.action],(0,L.default)(p.prototype,"addNoticeCount"),p.prototype),(0,H.default)(p.prototype,"removeNoticeCount",[B.action],(0,L.default)(p.prototype,"removeNoticeCount"),p.prototype),(0,H.default)(p.prototype,"clearNoticeCount",[B.action],(0,L.default)(p.prototype,"clearNoticeCount"),p.prototype),p);t.RootStore=Z;var X=new Z;t.default=X}).call(this,n(169))},function(e,t,n){var r=n(43),a=n(63),o=n(67)("species");e.exports=function(e,t){var n,i=r(e).constructor;return void 0===i||null==(n=r(i)[o])?t:a(n)}},function(e,t,n){var r=n(102),a=n(236),o=n(111),i=n(129),c=n(349),l=[].push,s=function(e){var t=1==e,n=2==e,s=3==e,u=4==e,d=6==e,f=7==e,p=5==e||d;return function(h,m,v,g){for(var b,y,w=o(h),O=a(w),x=r(m,v,3),C=i(O.length),M=0,E=g||c,k=t?E(h,C):n||f?E(h,0):void 0;C>M;M++)if((p||M in O)&&(y=x(b=O[M],M,w),e))if(t)k[M]=y;else if(y)switch(e){case 3:return!0;case 5:return b;case 6:return M;case 2:l.call(k,b)}else switch(e){case 4:return!1;case 7:l.call(k,b)}return d?-1:s||u?u:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterOut:s(7)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.warning=a,t.note=o,t.resetWarned=function(){r={}},t.call=i,t.warningOnce=c,t.noteOnce=function(e,t){i(o,e,t)},t.default=void 0;var r={};function a(e,t){0}function o(e,t){0}function i(e,t,n){t||r[n]||(e(!1,n),r[n]=!0)}function c(e,t){i(a,e,t)}var l=c;t.default=l},function(e,t,n){var r,a,o,i=n(430),c=n(59),l=n(87),s=n(112),u=n(103),d=n(345),f=n(239),p=n(202),h="Object already initialized",m=c.WeakMap;if(i||d.state){var v=d.state||(d.state=new m),g=v.get,b=v.has,y=v.set;r=function(e,t){if(b.call(v,e))throw new TypeError(h);return t.facade=e,y.call(v,e,t),t},a=function(e){return g.call(v,e)||{}},o=function(e){return b.call(v,e)}}else{var w=f("state");p[w]=!0,r=function(e,t){if(u(e,w))throw new TypeError(h);return t.facade=e,s(e,w,t),t},a=function(e){return u(e,w)?e[w]:{}},o=function(e){return u(e,w)}}e.exports={set:r,get:a,has:o,enforce:function(e){return o(e)?a(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=a(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";function r(e,t){(function(e){return"string"==typeof e&&-1!==e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var n=function(e){return"string"==typeof e&&-1!==e.indexOf("%")}(e);return e=360===t?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:e=360===t?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t))}function a(e){return e<=1?100*Number(e)+"%":e}function o(e){return 1===e.length?"0"+e:String(e)}function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*n*(t-e):n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function c(e){return l(e)/255}function l(e){return parseInt(e,16)}n.r(t),n.d(t,"blue",(function(){return _})),n.d(t,"cyan",(function(){return D})),n.d(t,"geekblue",(function(){return A})),n.d(t,"generate",(function(){return C})),n.d(t,"gold",(function(){return N})),n.d(t,"green",(function(){return I})),n.d(t,"grey",(function(){return F})),n.d(t,"lime",(function(){return z})),n.d(t,"magenta",(function(){return R})),n.d(t,"orange",(function(){return P})),n.d(t,"presetDarkPalettes",(function(){return k})),n.d(t,"presetPalettes",(function(){return E})),n.d(t,"presetPrimaryColors",(function(){return M})),n.d(t,"purple",(function(){return L})),n.d(t,"red",(function(){return j})),n.d(t,"volcano",(function(){return S})),n.d(t,"yellow",(function(){return T}));var s={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function u(e){var t,n,o,u={r:0,g:0,b:0},d=1,f=null,p=null,v=null,g=!1,b=!1;return"string"==typeof e&&(e=function(e){if(0===(e=e.trim().toLowerCase()).length)return!1;var t=!1;if(s[e])e=s[e],t=!0;else if("transparent"===e)return{r:0,g:0,b:0,a:0,format:"name"};var n=h.rgb.exec(e);if(n)return{r:n[1],g:n[2],b:n[3]};if(n=h.rgba.exec(e))return{r:n[1],g:n[2],b:n[3],a:n[4]};if(n=h.hsl.exec(e))return{h:n[1],s:n[2],l:n[3]};if(n=h.hsla.exec(e))return{h:n[1],s:n[2],l:n[3],a:n[4]};if(n=h.hsv.exec(e))return{h:n[1],s:n[2],v:n[3]};if(n=h.hsva.exec(e))return{h:n[1],s:n[2],v:n[3],a:n[4]};if(n=h.hex8.exec(e))return{r:l(n[1]),g:l(n[2]),b:l(n[3]),a:c(n[4]),format:t?"name":"hex8"};if(n=h.hex6.exec(e))return{r:l(n[1]),g:l(n[2]),b:l(n[3]),format:t?"name":"hex"};if(n=h.hex4.exec(e))return{r:l(n[1]+n[1]),g:l(n[2]+n[2]),b:l(n[3]+n[3]),a:c(n[4]+n[4]),format:t?"name":"hex8"};if(n=h.hex3.exec(e))return{r:l(n[1]+n[1]),g:l(n[2]+n[2]),b:l(n[3]+n[3]),format:t?"name":"hex"};return!1}(e)),"object"==typeof e&&(m(e.r)&&m(e.g)&&m(e.b)?(t=e.r,n=e.g,o=e.b,u={r:255*r(t,255),g:255*r(n,255),b:255*r(o,255)},g=!0,b="%"===String(e.r).substr(-1)?"prgb":"rgb"):m(e.h)&&m(e.s)&&m(e.v)?(f=a(e.s),p=a(e.v),u=function(e,t,n){e=6*r(e,360),t=r(t,100),n=r(n,100);var a=Math.floor(e),o=e-a,i=n*(1-t),c=n*(1-o*t),l=n*(1-(1-o)*t),s=a%6;return{r:255*[n,c,i,i,l,n][s],g:255*[l,n,n,c,i,i][s],b:255*[i,i,l,n,n,c][s]}}(e.h,f,p),g=!0,b="hsv"):m(e.h)&&m(e.s)&&m(e.l)&&(f=a(e.s),v=a(e.l),u=function(e,t,n){var a,o,c;if(e=r(e,360),t=r(t,100),n=r(n,100),0===t)o=n,c=n,a=n;else{var l=n<.5?n*(1+t):n+t-n*t,s=2*n-l;a=i(s,l,e+1/3),o=i(s,l,e),c=i(s,l,e-1/3)}return{r:255*a,g:255*o,b:255*c}}(e.h,f,v),g=!0,b="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(d=e.a)),d=function(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}(d),{ok:g,format:e.format||b,r:Math.min(255,Math.max(u.r,0)),g:Math.min(255,Math.max(u.g,0)),b:Math.min(255,Math.max(u.b,0)),a:d}}var d="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",f="[\\s|\\(]+("+d+")[,|\\s]+("+d+")[,|\\s]+("+d+")\\s*\\)?",p="[\\s|\\(]+("+d+")[,|\\s]+("+d+")[,|\\s]+("+d+")[,|\\s]+("+d+")\\s*\\)?",h={CSS_UNIT:new RegExp(d),rgb:new RegExp("rgb"+f),rgba:new RegExp("rgba"+p),hsl:new RegExp("hsl"+f),hsla:new RegExp("hsla"+p),hsv:new RegExp("hsv"+f),hsva:new RegExp("hsva"+p),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function m(e){return Boolean(h.CSS_UNIT.exec(String(e)))}var v=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function g(e){var t=function(e,t,n){e=r(e,255),t=r(t,255),n=r(n,255);var a=Math.max(e,t,n),o=Math.min(e,t,n),i=0,c=a,l=a-o,s=0===a?0:l/a;if(a===o)i=0;else{switch(a){case e:i=(t-n)/l+(t=60&&Math.round(e.h)<=240?n?Math.round(e.h)-2*t:Math.round(e.h)+2*t:n?Math.round(e.h)+2*t:Math.round(e.h)-2*t)<0?r+=360:r>=360&&(r-=360),r}function O(e,t,n){return 0===e.h&&0===e.s?e.s:((r=n?e.s-.16*t:4===t?e.s+.16:e.s+.05*t)>1&&(r=1),n&&5===t&&r>.1&&(r=.1),r<.06&&(r=.06),Number(r.toFixed(2)));var r}function x(e,t,n){var r;return(r=n?e.v+.05*t:e.v-.15*t)>1&&(r=1),Number(r.toFixed(2))}function C(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=[],r=u(e),a=5;a>0;a-=1){var o=g(r),i=b(u({h:w(o,a,!0),s:O(o,a,!0),v:x(o,a,!0)}));n.push(i)}n.push(b(r));for(var c=1;c<=4;c+=1){var l=g(r),s=b(u({h:w(l,c),s:O(l,c),v:x(l,c)}));n.push(s)}return"dark"===t.theme?v.map((function(e){var r=e.index,a=e.opacity;return b(y(u(t.backgroundColor||"#141414"),u(n[r]),100*a))})):n}var M={red:"#F5222D",volcano:"#FA541C",orange:"#FA8C16",gold:"#FAAD14",yellow:"#FADB14",lime:"#A0D911",green:"#52C41A",cyan:"#13C2C2",blue:"#1890FF",geekblue:"#2F54EB",purple:"#722ED1",magenta:"#EB2F96",grey:"#666666"},E={},k={};Object.keys(M).forEach((function(e){E[e]=C(M[e]),E[e].primary=E[e][5],k[e]=C(M[e],{theme:"dark",backgroundColor:"#141414"}),k[e].primary=k[e][5]}));var j=E.red,S=E.volcano,N=E.gold,P=E.orange,T=E.yellow,z=E.lime,I=E.green,D=E.cyan,_=E.blue,A=E.geekblue,L=E.purple,R=E.magenta,F=E.grey},function(e,t,n){"use strict";var r=n(57),a=n.n(r),o=n(68),i=n.n(o),c=n(0),l=n.n(c),s=n(16),u=n.n(s),d=Object.assign||function(e){for(var t=1;t may have only one child element"),this.unlisten=r.listen((function(){e.setState({match:e.computeMatch(r.location.pathname)})}))},t.prototype.componentWillReceiveProps=function(e){a()(this.props.history===e.history,"You cannot change ")},t.prototype.componentWillUnmount=function(){this.unlisten()},t.prototype.render=function(){var e=this.props.children;return e?l.a.Children.only(e):null},t}(l.a.Component);h.propTypes={history:u.a.object.isRequired,children:u.a.node},h.contextTypes={router:u.a.object},h.childContextTypes={router:u.a.object.isRequired},t.a=h},function(e,t,n){"use strict";var r=n(310),a=n.n(r),o={},i=0,c=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=o[n]||(o[n]={});if(r[e])return r[e];var c=[],l={re:a()(e,c,t),keys:c};return i<1e4&&(r[e]=l,i++),l};t.a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments[2];"string"==typeof t&&(t={path:t});var r=t,a=r.path,o=r.exact,i=void 0!==o&&o,l=r.strict,s=void 0!==l&&l,u=r.sensitive,d=void 0!==u&&u;if(null==a)return n;var f=c(a,{end:i,strict:s,sensitive:d}),p=f.re,h=f.keys,m=p.exec(e);if(!m)return null;var v=m[0],g=m.slice(1),b=e===v;return i&&!b?null:{path:a,url:"/"===a&&""===v?"/":v,isExact:b,params:h.reduce((function(e,t,n){return e[t.name]=g[n],e}),{})}}},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z"}},{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}}]},name:"check-circle",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="CheckCircleOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z"}}]},name:"info-circle",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="InfoCircleOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M685.4 354.8c0-4.4-3.6-8-8-8l-66 .3L512 465.6l-99.3-118.4-66.1-.3c-4.4 0-8 3.5-8 8 0 1.9.7 3.7 1.9 5.2l130.1 155L340.5 670a8.32 8.32 0 00-1.9 5.2c0 4.4 3.6 8 8 8l66.1-.3L512 564.4l99.3 118.4 66 .3c4.4 0 8-3.5 8-8 0-1.9-.7-3.7-1.9-5.2L553.5 515l130.1-155c1.2-1.4 1.8-3.3 1.8-5.2z"}},{tag:"path",attrs:{d:"M512 65C264.6 65 64 265.6 64 513s200.6 448 448 448 448-200.6 448-448S759.4 65 512 65zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}}]},name:"close-circle",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="CloseCircleOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z"}}]},name:"eye",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="EyeOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";var r=n(0),a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"}}]},name:"search",theme:"outlined"},o=n(1),i=function(e,t){return r.createElement(o.a,Object.assign({},e,{ref:t,icon:a}))};i.displayName="SearchOutlined";t.a=r.forwardRef(i)},function(e,t,n){"use strict";(function(e){var n=function(){if("undefined"!=typeof Map)return Map;function e(e,t){var n=-1;return e.some((function(e,r){return e[0]===t&&(n=r,!0)})),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(t){var n=e(this.__entries__,t),r=this.__entries__[n];return r&&r[1]},t.prototype.set=function(t,n){var r=e(this.__entries__,t);~r?this.__entries__[r][1]=n:this.__entries__.push([t,n])},t.prototype.delete=function(t){var n=this.__entries__,r=e(n,t);~r&&n.splice(r,1)},t.prototype.has=function(t){return!!~e(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,t){void 0===t&&(t=null);for(var n=0,r=this.__entries__;n0},e.prototype.connect_=function(){r&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),c?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){r&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(e){var t=e.propertyName,n=void 0===t?"":t;i.some((function(e){return!!~n.indexOf(e)}))&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),s=function(e,t){for(var n=0,r=Object.keys(t);n0},e}(),O="undefined"!=typeof WeakMap?new WeakMap:new n,x=function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=l.getInstance(),r=new w(t,n,this);O.set(this,r)};["observe","unobserve","disconnect"].forEach((function(e){x.prototype[e]=function(){var t;return(t=O.get(this))[e].apply(t,arguments)}}));var C=void 0!==a.ResizeObserver?a.ResizeObserver:x;t.a=C}).call(this,n(169))},function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n(2);function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t