mirror of
https://github.com/harvester/harvester-ui-extension.git
synced 2026-10-04 13:16:05 +08:00
2 lines
102 KiB
JavaScript
2 lines
102 KiB
JavaScript
(("undefined"!==typeof self?self:this)["webpackChunkharvester_1_10_0_dev"]=("undefined"!==typeof self?self:this)["webpackChunkharvester_1_10_0_dev"]||[]).push([[751],{77768:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return I},ksmtunedMode:function(){return w},ksmtunedRunOption:function(){return E}});var o=a(9274);const l={class:"row"},s={class:"col span-6"},r={class:"col span-6"},i={class:"row"},n={class:"col span-6"},d={class:"col span-6"},u={class:"row"},c={class:"col span-6"};function m(e,t,a,m,p,v){const h=(0,o.resolveComponent)("LabeledSelect"),b=(0,o.resolveComponent)("UnitInput"),f=(0,o.resolveComponent)("Checkbox"),y=(0,o.resolveComponent)("t"),g=(0,o.resolveComponent)("RadioGroup"),k=(0,o.resolveComponent)("LabeledInput");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createVNode)(h,{value:p.spec.run,"onUpdate:value":t[0]||(t[0]=e=>p.spec.run=e),label:e.t("harvester.host.ksmtuned.run"),options:p.ksmtunedRunOption,class:"mb-20",mode:a.mode,required:""},null,8,["value","label","options","mode"]),v.showKsmt?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:0},[(0,o.createVNode)(b,{value:p.spec.thresCoef,"onUpdate:value":t[1]||(t[1]=e=>p.spec.thresCoef=e),valueModifiers:{number:!0},label:e.t("harvester.host.ksmtuned.thresCoef"),suffix:"%",delay:0,required:"",mode:a.mode,class:"mb-20"},null,8,["value","label","mode"]),(0,o.createVNode)(f,{value:p.enableMergeAcrossNodes,"onUpdate:value":t[2]||(t[2]=e=>p.enableMergeAcrossNodes=e),mode:a.mode,class:"check mb-20",type:"checkbox",label:e.t("harvester.host.ksmtuned.enableMergeNodes")},null,8,["value","mode","label"]),(0,o.createElementVNode)("h3",null,[(0,o.createVNode)(y,{k:"harvester.host.ksmtuned.modeLink",raw:!0,url:v.ksmtunedLink},null,8,["url"])]),(0,o.createVNode)(g,{value:p.spec.mode,"onUpdate:value":t[3]||(t[3]=e=>p.spec.mode=e),class:"mb-20",name:e.t("harvester.host.ksmtuned.mode"),options:p.ksmtunedMode},null,8,["value","name","options"]),v.isCustomizedMode?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:0},[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(k,{value:p.spec.ksmtunedParameters.boost,"onUpdate:value":t[4]||(t[4]=e=>p.spec.ksmtunedParameters.boost=e),valueModifiers:{number:!0},required:"",type:"number",label:e.t("harvester.host.ksmtuned.parameters.boost"),tooltip:e.t("harvester.host.ksmtuned.parameters.description.boost"),class:"mb-20",mode:a.mode},null,8,["value","label","tooltip","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(k,{value:p.spec.ksmtunedParameters.decay,"onUpdate:value":t[5]||(t[5]=e=>p.spec.ksmtunedParameters.decay=e),valueModifiers:{number:!0},required:"",type:"number",label:e.t("harvester.host.ksmtuned.parameters.decay"),tooltip:e.t("harvester.host.ksmtuned.parameters.description.decay"),class:"mb-20",mode:a.mode},null,8,["value","label","tooltip","mode"])])]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(k,{value:p.spec.ksmtunedParameters.minPages,"onUpdate:value":t[6]||(t[6]=e=>p.spec.ksmtunedParameters.minPages=e),valueModifiers:{number:!0},required:"",type:"number",label:e.t("harvester.host.ksmtuned.parameters.minPages"),tooltip:e.t("harvester.host.ksmtuned.parameters.description.minPages"),class:"mb-20",mode:a.mode},null,8,["value","label","tooltip","mode"])]),(0,o.createElementVNode)("div",d,[(0,o.createVNode)(k,{value:p.spec.ksmtunedParameters.maxPages,"onUpdate:value":t[7]||(t[7]=e=>p.spec.ksmtunedParameters.maxPages=e),valueModifiers:{number:!0},required:"",type:"number",label:e.t("harvester.host.ksmtuned.parameters.maxPages"),tooltip:e.t("harvester.host.ksmtuned.parameters.description.maxPages"),class:"mb-20",mode:a.mode},null,8,["value","label","tooltip","mode"])])]),(0,o.createElementVNode)("div",u,[(0,o.createElementVNode)("div",c,[(0,o.createVNode)(k,{value:p.spec.ksmtunedParameters.sleepMsec,"onUpdate:value":t[8]||(t[8]=e=>p.spec.ksmtunedParameters.sleepMsec=e),valueModifiers:{number:!0},required:"",type:"number",label:e.t("harvester.host.ksmtuned.parameters.sleepMsec"),tooltip:e.t("harvester.host.ksmtuned.parameters.description.sleepMsec"),class:"mb-20",mode:a.mode},null,8,["value","label","tooltip","mode"])])])],64)):(0,o.createCommentVNode)("",!0)],64)):(0,o.createCommentVNode)("",!0)])}var p=a(10566),v=a(79380),h=a(73344),b=a(10196),f=a(42200),y=a(32766),g=a(66242),k=a(3791),C=a(46343),N=a.n(C),V=a(76978);const w=[{value:"standard",label:"Standard"},{value:"high",label:"High-Perfomanace"},{value:"customized",label:"Customized"}],E=[{label:"Run",value:"run"},{label:"Stop",value:"stop"},{label:"Prune",value:"prune"}];var M={name:"HarvesterKsmtuned",components:{Checkbox:f.S,LabeledInput:v.o,LabeledSelect:p.A,RadioGroup:b.z,UnitInput:h.A},props:{mode:{type:String,required:!0},node:{type:Object,required:!0},registerBeforeHook:{type:Function,required:!0}},async fetch(){const e=this.$store.getters["currentProduct"].inStore,t=await this.$store.dispatch(`${e}/findAll`,{type:y.rk.KSTUNED});this.ksmtuned=t.find(e=>e.id===this.node.id),this.enableMergeAcrossNodes=!!this.ksmtuned.spec?.mergeAcrossNodes,this.spec=this.ksmtuned.spec,this.originSpec=(0,V.o8)(this.ksmtuned.spec)},data(){return{ksmtuned:{},originSpec:{},spec:{},thresCoef:30,ksmtunedMode:w,ksmtunedRunOption:E,enableMergeAcrossNodes:!0}},created(){this.registerBeforeHook(this.saveKsmtuned,"saveKsmtuned")},computed:{isCustomizedMode(){return"customized"===this.spec.mode},showKsmt(){return"run"===this.spec.run},ksmtunedLink(){const e=this.$store.getters["harvester-common/getServerVersion"]();return(0,k.nn)(g.d.KSMTUNED_MODE,e)}},methods:{async saveKsmtuned(){N()(this.spec,this.originSpec)||(this.spec.mergeAcrossNodes=this.enableMergeAcrossNodes?1:0,this.ksmtuned["spec"]=this.spec,await this.ksmtuned.save().catch(e=>{if("error"===e?.type)return this.$store.dispatch("growl/error",{title:this.t("harvester.notification.title.error"),message:e?.message},{root:!0}),Promise.reject(new Error("saveKsmtuned error"))}))}}},x=a(47433);const B=(0,x.A)(M,[["render",m]]);var I=B},58094:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return b}});var o=a(9274);const l={class:"vm__credentials-users"};function s(e,t,a,s,r,i){const n=(0,o.resolveComponent)("LabeledSelect"),d=(0,o.resolveComponent)("LabeledInput"),u=(0,o.resolveComponent)("ModalWithCard");return(0,o.openBlock)(),(0,o.createElementBlock)("div",l,[(0,o.createVNode)(n,{value:r.selectedUser,"onUpdate:value":t[0]||(t[0]=e=>r.selectedUser=e),options:a.userOptions,label:e.t("harvester.virtualMachine.accessCredentials.injectSSH.users"),taggable:a.multiple,mode:a.mode,multiple:a.multiple,searchable:!1,tooltip:e.t("harvester.virtualMachine.accessCredentials.userTips"),class:(0,o.normalizeClass)({hasUsers:r.selectedUser.length>0}),onInput:i.update},null,8,["value","options","label","taggable","mode","multiple","tooltip","class","onInput"]),r.isOpen?((0,o.openBlock)(),(0,o.createBlock)(u,{key:0,name:r.randomStr,width:"40%",errors:r.errors,onFinish:i.addUser,onClose:i.cancel},{title:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.t("harvester.virtualMachine.accessCredentials.injectSSH.addUser")),1)]),content:(0,o.withCtx)(()=>[(0,o.createVNode)(d,{value:r.newUsername,"onUpdate:value":t[1]||(t[1]=e=>r.newUsername=e),label:e.t("harvester.virtualMachine.input.username"),class:"mb-20",required:"",onKeydown:(0,o.withKeys)((0,o.withModifiers)(()=>{},["prevent"]),["native","enter"])},null,8,["value","label","onKeydown"])]),_:1},8,["name","errors","onFinish","onClose"])):(0,o.createCommentVNode)("",!0)])}var r=a(65359),i=a(76978),n=a(92043),d=a(79380),u=a(10566),c=a(24151);const m="_NEW";var p={emits:["update:user","update:newUser"],components:{LabeledInput:d.o,LabeledSelect:u.A,ModalWithCard:c.A},props:{value:{type:[Array,String],default:()=>[]},resourceType:{type:Object,default:()=>({})},userOptions:{type:Array,default:()=>[]},multiple:{type:Boolean,default:!1},mode:{type:String,default:"create"},disabled:{type:Boolean,default:!1}},data(){return{selectedUser:this.value,newUsername:"",randomStr:(0,n.vx)(5).toLowerCase(),errors:[],isOpen:!1}},computed:{...(0,r.L8)({t:"i18n/t"})},watch:{value(e){this.selectedUser=e},selectedUser(e,t){e.includes(m)&&(this["selectedUser"]=t,this.update(),this.show())}},methods:{update(){this.$emit("update:user",(0,i.o8)(this.selectedUser))},addUser(e){const t=/^[-._0-9a-zA-Z]+$/;if(this.errors=[],!t.test(this.newUsername)){const t=this.t("harvester.virtualMachine.accessCredentials.invalidUser");return this.errors.push(t),void e(!1)}if(this.userOptions.includes(this.newUsername)){const t=this.t("harvester.virtualMachine.accessCredentials.duplicatedUser");return this.errors.push(t),void e(!1)}this.multiple?this.selectedUser.push(this.newUsername):this.selectedUser=this.newUsername,this.$emit("update:newUser",this.newUsername),this.update(),e(!0),this.cancel()},show(){this.isOpen=!0},hide(){this.isOpen=!1},cancel(){this.hide(),this.newUsername=""}}},v=(a(84388),a(47433));const h=(0,v.A)(p,[["render",s]]);var b=h},60068:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return g}});var o=a(9274);const l=["onClick"],s={key:0,class:"mt-20"};function r(e,t,a,r,i,n){const d=(0,o.resolveComponent)("Banner"),u=(0,o.resolveComponent)("InfoBox");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createVNode)(d,{class:"mb-20",color:"info",label:e.t("harvester.virtualMachine.accessCredentials.tips")},null,8,["label"]),((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(i.rows,(e,s)=>((0,o.openBlock)(),(0,o.createElementBlock)("div",{key:s},[(0,o.createVNode)(u,{class:"volume-source"},{default:(0,o.withCtx)(()=>[n.isEdit?((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"role-link btn btn-sm remove-vol",onClick:t=>n.remove(e)},[...t[2]||(t[2]=[(0,o.createElementVNode)("i",{class:"icon icon-x"},null,-1)])],8,l)):(0,o.createCommentVNode)("",!0),(0,o.createElementVNode)("h3",null,[(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(n.headerFor(e.source)),1)]),(0,o.createElementVNode)("div",null,[((0,o.openBlock)(),(0,o.createBlock)((0,o.resolveDynamicComponent)(n.componentFor(e.source)),{value:i.rows[s],"onUpdate:value":e=>i.rows[s]=e,rows:i.rows,"resource-type":a.resourceType,"user-options":n.userOptions,mode:a.mode,idx:s,onUpdate:n.update,"onUpdate:newUser":n.updateNewUser},null,40,["value","onUpdate:value","rows","resource-type","user-options","mode","idx","onUpdate","onUpdate:newUser"]))])]),_:2},1024)]))),128)),n.isEdit&&a.isQemuInstalled?((0,o.openBlock)(),(0,o.createElementBlock)("div",s,[(0,o.createElementVNode)("button",{type:"button",class:"btn btn-sm bg-primary mr-15 mb-10",onClick:t[0]||(t[0]=e=>n.addCredentials(i.ACCESS_CREDENTIALS.RESET_PWD))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.accessCredentials.resetPwd.label")),1),(0,o.createElementVNode)("button",{type:"button",class:"btn btn-sm bg-primary mr-15 mb-10",onClick:t[1]||(t[1]=e=>n.addCredentials(i.ACCESS_CREDENTIALS.INJECT_SSH))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.accessCredentials.injectSSH.label")),1)])):(0,o.createCommentVNode)("",!0)])}var i=a(65359),n=a(9980),d=a(26962),u=a(92043),c=a(68851),m=a(14220),p=a(2602),v=a(66905);const h="_NEW";var b={emits:["update:value"],components:{Banner:n.l,InfoBox:d.A},props:{value:{type:Array,default:()=>[]},resourceType:{type:Object,default:()=>({})},mode:{type:String,default:"create"},disableCreate:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},isQemuInstalled:{type:Boolean,default:!1}},data(){return{ACCESS_CREDENTIALS:v.cI,toRemove:[],toSave:[],rows:[],newUserOptions:[]}},computed:{...(0,i.L8)({t:"i18n/t"}),isEdit(){return this.mode===m.G5},historyUsersOptions(){const e=JSON.parse(this.resourceType?.spec?.template?.metadata?.annotations?.[p.r.DYNAMIC_SSHKEYS_USERS]||"[]");return e.unshift({label:this.t("harvester.virtualMachine.accessCredentials.injectSSH.addUser"),value:h}),e},userOptions(){return Array.from(new Set([...this.historyUsersOptions,...this.newUserOptions]))}},watch:{value:{handler(e){this.rows=[...e]},deep:!0,immediate:!0}},methods:{addCredentials(e){const t={source:e,users:[],sshkeys:[],username:"",newPassword:"",secretName:this.generateSecretName(this.resourceType.metadata.name)};this.rows.push(t),this.update()},remove(e){(0,c.Gj)(this.rows,e),this.update()},update(){this.$emit("update:value",this.rows)},updateNewUser(e){this.newUserOptions.push(e)},generateSecretName(e){return e?`${e}-${(0,u.vx)(5).toLowerCase()}`:void 0},componentFor(e){switch(e){case v.cI.RESET_PWD:return a(23574)["default"];case v.cI.INJECT_SSH:return a(18933)["default"]}},headerFor(e){return{userPassword:this.$store.getters["i18n/t"]("harvester.virtualMachine.accessCredentials.resetPwd.label"),sshPublicKey:this.$store.getters["i18n/t"]("harvester.virtualMachine.accessCredentials.injectSSH.label")}[e]}}},f=(a(38239),a(47433));const y=(0,f.A)(b,[["render",r],["__scopeId","data-v-61977bc4"]]);var g=y},23574:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return m}});var o=a(9274);const l={class:"col span-6"},s={class:"col span-6"};function r(e,t,a,r,i,n){const d=(0,o.resolveComponent)("AccessCredentialsUsers"),u=(0,o.resolveComponent)("Password");return(0,o.openBlock)(),(0,o.createElementBlock)("div",{class:"row","onUpdate:value":t[2]||(t[2]=(...e)=>n.update&&n.update(...e))},[(0,o.createElementVNode)("div",l,[(0,o.createVNode)(d,{value:a.value.username,"onUpdate:value":t[0]||(t[0]=e=>a.value.username=e),"resource-type":a.resourceType,"user-options":a.userOptions,multiple:!1,mode:a.mode,"onUpdate:user":n.updateUser,"onUpdate:newUser":n.updateNewUser},null,8,["value","resource-type","user-options","mode","onUpdate:user","onUpdate:newUser"])]),(0,o.createElementVNode)("div",s,[(0,o.createVNode)(u,{ref:"password",value:a.value.newPassword,"onUpdate:value":t[1]||(t[1]=e=>a.value.newPassword=e),mode:a.mode,disabled:"edit"!==a.mode,label:e.t("harvester.virtualMachine.input.password"),required:""},null,8,["value","mode","disabled","label"])])],32)}var i=a(7274),n=a(58094),d={name:"HarvesterEditVolume",emits:["update","update:newUser"],components:{Password:i.A,AccessCredentialsUsers:n["default"]},props:{mode:{type:String,default:"create"},resourceType:{type:Object,default:()=>({})},userOptions:{type:Array,default:()=>[]},value:{type:Object,default:()=>({})}},data(){return{defaultPwdValue:{username:"",newPassword:""}}},methods:{update(){this.$emit("update")},updateUser(e){this.value["username"]=e,this.update()},updateNewUser(e){this.$emit("update:newUser",e)}}},u=(a(27461),a(47433));const c=(0,u.A)(d,[["render",r],["__scopeId","data-v-7d19b7bd"]]);var m=c},18933:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return p}});var o=a(9274);const l={class:"columns row"},s={class:"col span-6"},r={class:"col span-6"};function i(e,t,a,i,n,d){const u=(0,o.resolveComponent)("AccessCredentialsUsers"),c=(0,o.resolveComponent)("SSHKey");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(u,{value:a.value.users,"onUpdate:value":t[0]||(t[0]=e=>a.value.users=e),"resource-type":a.resourceType,"user-options":a.userOptions,mode:a.mode,multiple:!0,"onUpdate:user":d.updateUser,"onUpdate:newUser":d.updateNewUser},null,8,["value","resource-type","user-options","mode","onUpdate:user","onUpdate:newUser"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(c,{value:a.value.sshkeys,"onUpdate:value":t[1]||(t[1]=e=>a.value.sshkeys=e),class:"mb-20",namespace:a.resourceType.metadata.namespace,mode:a.mode,searchable:!1,"onUpdate:sshKey":d.updateSSH},null,8,["value","namespace","mode","onUpdate:sshKey"])])])])}var n=a(39228),d=a(58094),u={name:"HarvesterEditVolume",emits:["update","update:newUser"],components:{SSHKey:n["default"],AccessCredentialsUsers:d["default"]},props:{mode:{type:String,default:"create"},resourceType:{type:Object,default:()=>({})},userOptions:{type:Array,default:()=>[]},value:{type:Object,default:()=>({})}},methods:{update(){this.$emit("update")},updateUser(e){this.value["users"]=e,this.update()},updateSSH(e){this.value["sshkeys"]=e,this.update()},updateNewUser(e){this.$emit("update:newUser",e)}}},c=a(47433);const m=(0,c.A)(u,[["render",i]]);var p=m},87131:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return y}});var o=a(9274);const l={class:"mb-20"},s={class:"text-muted mb-20"},r={class:"resource-yaml"};function i(e,t,a,i,n,d){const u=(0,o.resolveComponent)("t"),c=(0,o.resolveComponent)("LabeledSelect"),m=(0,o.resolveComponent)("YamlEditor");return(0,o.openBlock)(),(0,o.createElementBlock)("div",l,[(0,o.createElementVNode)("h3",null,(0,o.toDisplayString)(e.t(`harvester.virtualMachine.cloudConfig.${a.type}.title`)),1),(0,o.createElementVNode)("p",s,[(0,o.createVNode)(u,{k:`harvester.virtualMachine.cloudConfig.${a.type}.tip`,raw:!0},null,8,["k"])]),d.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createBlock)(c,{key:0,value:n.id,"onUpdate:value":t[0]||(t[0]=e=>n.id=e),class:"mb-20",options:a.options,disabled:a.viewCode,"label-key":`harvester.virtualMachine.cloudConfig.${a.type}.label`},null,8,["value","options","disabled","label-key"])),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(m,{ref:"yaml",value:n.yamlScript,"onUpdate:value":t[1]||(t[1]=e=>n.yamlScript=e),mode:a.mode,class:"yaml-editor","editor-mode":d.editorMode},null,8,["value","mode","editor-mode"])])])}var n=a(65359),d=a(10566),u=a(73325),c=a(14220),m=a(35664);const p="_NEW",v="_NONE";var h={components:{YamlEditor:u.A,LabeledSelect:d.A},emits:["updateTemplateId","show","update"],props:{mode:{type:String,default:"create"},osType:{type:String,default:""},value:{type:String,default:""},type:{type:String,default:""},options:{type:Array,default:()=>[]},configId:{type:String,default:""},viewCode:{type:Boolean,default:!1}},data(){return{id:"",yamlScript:this.value}},computed:{...(0,n.L8)({t:"i18n/t"}),editorMode(){return this.isView||this.viewCode?u.j.VIEW_CODE:u.j.EDIT_CODE},isView(){return this.mode===c.nW}},watch:{value(e){this.yamlScript=e},configId(e){this.id=this.configId},id(e,t){const a=this.$store.getters["harvester/byId"](m.K5,e)?.data?.cloudInit||"";if(this.$emit("updateTemplateId",this.type,e),e){if(e===p)return this.$emit("show",this.type),void(this.id=t);this.yamlScript=e===v?"":a,this.$refs["yaml"].updateValue(a)}},yamlScript(e){this.$emit("update",e,this.type)}},methods:{refresh(){this.$refs.yaml.refresh()},updateValue(){this.$refs["yaml"].updateValue(this.value)}}},b=(a(36298),a(47433));const f=(0,b.A)(h,[["render",i],["__scopeId","data-v-0317e5f8"]]);var y=f},71574:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return N}});var o=a(9274);const l={key:0},s={class:"mb-20"},r={class:"mb-20"},i={class:"yaml"},n={class:"resource-yaml"};function d(e,t,a,d,u,c){const m=(0,o.resolveComponent)("DataTemplate"),p=(0,o.resolveComponent)("LabeledInput"),v=(0,o.resolveComponent)("YamlEditor"),h=(0,o.resolveComponent)("ModalWithCard");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[c.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("h2",l,(0,o.toDisplayString)(e.t("harvester.virtualMachine.cloudConfig.title")),1)),(0,o.createElementVNode)("div",s,[(0,o.createVNode)(m,{ref:"userTemplate",value:a.userScript,"os-type":a.osType,type:"user","view-code":a.viewCode,mode:a.mode,"config-id":u.configUserId,options:u.optionUser,onShow:c.show,onUpdate:c.update,onUpdateTemplateId:c.updateTemplateId},null,8,["value","os-type","view-code","mode","config-id","options","onShow","onUpdate","onUpdateTemplateId"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(m,{ref:"networkTemplate",value:a.networkScript,type:"network","os-type":a.osType,"view-code":a.viewCode,mode:a.mode,"config-id":u.configNetworkId,options:u.optionNetwork,onShow:c.show,onUpdate:c.update},null,8,["value","os-type","view-code","mode","config-id","options","onShow","onUpdate"])]),u.isOpen?((0,o.openBlock)(),(0,o.createBlock)(h,{key:1,name:"createCloudTemplate",width:"40%",errors:u.errors,onFinish:c.save,onClose:c.cancel},{title:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.t("harvester.virtualMachine.cloudConfig.createTemplateTitle",{name:c.createTypeLable})),1)]),content:(0,o.withCtx)(()=>[(0,o.createVNode)(p,{value:u.cloudTemplateName,"onUpdate:value":t[0]||(t[0]=e=>u.cloudTemplateName=e),label:e.t("harvester.virtualMachine.input.name"),class:"mb-20",required:"",onKeydown:(0,o.withKeys)((0,o.withModifiers)(()=>{},["prevent"]),["native","enter"])},null,8,["value","label","onKeydown"]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(v,{ref:"createTemplate",value:u.cloudTemplate,"onUpdate:value":t[1]||(t[1]=e=>u.cloudTemplate=e),class:"yaml-editor","editor-mode":c.editorMode},null,8,["value","editor-mode"])])])]),_:1},8,["errors","onFinish","onClose"])):(0,o.createCommentVNode)("",!0)])}var u=a(65359),c=a(79380),m=a(73325),p=a(24151),v=a(35664),h=a(2602),b=a(14220),f=a(87131);const y="_NEW";var g={emits:["updateUserData","updateNetworkData","updateDataTemplateId"],components:{DataTemplate:f["default"],YamlEditor:m.A,LabeledInput:c.o,ModalWithCard:p.A},props:{mode:{type:String,default:"create"},namespace:{type:String,default:""},osType:{type:String,default:""},userScript:{type:String,default:""},networkScript:{type:String,default:""},viewCode:{type:Boolean,default:!1}},data(){return{errors:[],templateType:"",cloudTemplate:"",cloudTemplateName:"",configUserId:"",configNetworkId:"",optionUser:[],optionNetwork:[],isOpen:!1}},async fetch(){const e=await this.$store.dispatch("harvester/findAll",{type:v.K5}),t=[],a=[];for(const o of e)"user"===o.metadata?.labels?.[h.r.CLOUD_INIT]&&t.push({label:o?.id,value:o?.id}),"network"===o.metadata?.labels?.[h.r.CLOUD_INIT]&&a.push({label:o?.id,value:o?.id});t.unshift({label:this.t("harvester.virtualMachine.cloudConfig.createNew"),value:y}),a.unshift({label:this.t("harvester.virtualMachine.cloudConfig.createNew"),value:y}),this.optionUser=t,this.optionNetwork=a},computed:{...(0,u.L8)({t:"i18n/t"}),createTypeLable(){const e=`harvester.virtualMachine.cloudConfig.${this.templateType}.label`;return this.t(e)},editorMode(){return this.isView?m.j.VIEW_CODE:m.j.EDIT_CODE},isView(){return this.mode===b.nW}},methods:{updateValue(){this.$refs["userTemplate"].updateValue(),this.$refs["networkTemplate"].updateValue()},update(e,t){"user"===t&&this.$emit("updateUserData",e),"network"===t&&this.$emit("updateNetworkData",e)},updateTemplateId(e,t){this.$emit("updateDataTemplateId",e,t)},show(e){this.templateType=e,this.isOpen=!0},async save(e){if(this.errors=[],!this.cloudTemplateName)return this.errors.push(this.t("validation.required",{key:this.t("harvester.virtualMachine.input.name")},!0)),void e(!1);if(!this.cloudTemplate){const t="user"===this.templateType?"harvester.cloudTemplate.userData":"harvester.cloudTemplate.networkData";return this.errors.push(this.t("validation.required",{key:this.t(t)},!0)),void e(!1)}const t=await this.$store.dispatch("harvester/create",{type:v.K5,metadata:{labels:{[h.r.CLOUD_INIT]:this.templateType},name:this.cloudTemplateName,namespace:this.namespace},data:{cloudInit:this.cloudTemplate}});try{const a=await t.save();a.id&&("user"===this.templateType?this.configUserId=a.id:this.configNetworkId=a.id,this.$fetch()),e(!0),this.cancel()}catch(a){this.errors=[a.message],e(!1)}},cancel(){this.cloudTemplate="",this.cloudTemplateName="",this["errors"]=[],this.isOpen=!1},refresh(){this.$refs["userTemplate"].refresh(),this.$refs["networkTemplate"].refresh()}}},k=(a(8497),a(47433));const C=(0,k.A)(g,[["render",d],["__scopeId","data-v-9c8ae0f0"]]);var N=C},81111:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return E}});var o=a(9274);const l={class:"row"},s={class:"col span-6 mb-10"},r={class:"col span-6 mb-10"},i={key:0,class:"row"},n={class:"icon icon-info",tabindex:"0"},d={key:1,class:"row"},u={class:"col span-6 mb-10"},c={class:"col span-6 mb-10"};function m(e,t,a,m,p,v){const h=(0,o.resolveComponent)("UnitInput"),b=(0,o.resolveComponent)("InputOrDisplay"),f=(0,o.resolveComponent)("Checkbox"),y=(0,o.resolveDirective)("clean-tooltip"),g=(0,o.resolveDirective)("stripped-aria-label");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(b,{name:"CPU",value:v.cpuDisplay,mode:a.mode,class:"mb-10"},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:p.localCpu,"onUpdate:value":[t[0]||(t[0]=e=>p.localCpu=e),v.changeCPU],label:"CPU",suffix:"C",delay:0,required:"",disabled:a.disabled,mode:a.mode,class:"mb-20"},null,8,["value","disabled","mode","onUpdate:value"])]),_:1},8,["value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.input.memory"),value:v.memoryDisplay,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:p.localMemory,"onUpdate:value":[t[1]||(t[1]=e=>p.localMemory=e),v.changeMemory],label:e.t("harvester.virtualMachine.input.memory"),mode:a.mode,"input-exponent":3,delay:0,increment:1024,"output-modifier":!0,disabled:a.disabled,required:"",suffix:p.GIBIBYTE,class:"mb-20"},null,8,["value","label","mode","disabled","suffix","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),v.isCPUMemoryHotPlugFeatureEnabled?((0,o.openBlock)(),(0,o.createElementBlock)("div",i,[(0,o.createVNode)(f,{value:p.localEnableHotPlug,"onUpdate:value":[t[2]||(t[2]=e=>p.localEnableHotPlug=e),v.hotPlugChanged],class:"check",type:"checkbox",label:e.t("harvester.virtualMachine.hotplug.title"),disabled:v.isView},null,8,["value","label","disabled","onUpdate:value"]),(0,o.withDirectives)((0,o.createElementVNode)("i",n,null,512),[[y,{content:v.cpuMemoryHotplugTooltip,triggers:["hover","touch","focus"]}],[g,v.cpuMemoryHotplugTooltip]])])):(0,o.createCommentVNode)("",!0),p.localEnableHotPlug&&v.isCPUMemoryHotPlugFeatureEnabled?((0,o.openBlock)(),(0,o.createElementBlock)("div",d,[(0,o.createElementVNode)("div",u,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.input.maxCpu"),value:v.maxCpuDisplay,mode:a.mode,class:"mt-20"},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:p.maxLocalCpu,"onUpdate:value":[t[3]||(t[3]=e=>p.maxLocalCpu=e),v.changeMaxCPUMemory],label:e.t("harvester.virtualMachine.input.maxCpu"),suffix:"C",delay:0,disabled:a.disabled,mode:a.mode,class:"mt-20"},null,8,["value","label","disabled","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",c,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.input.maxMemory"),value:v.maxMemoryDisplay,mode:a.mode,class:"mt-20"},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:p.maxLocalMemory,"onUpdate:value":[t[4]||(t[4]=e=>p.maxLocalMemory=e),v.changeMaxCPUMemory],label:e.t("harvester.virtualMachine.input.maxMemory"),mode:a.mode,"input-exponent":3,delay:0,increment:1024,"output-modifier":!0,disabled:a.disabled,suffix:p.GIBIBYTE,class:"mt-20"},null,8,["value","label","mode","disabled","suffix","onUpdate:value"])]),_:1},8,["name","value","mode"])])])):(0,o.createCommentVNode)("",!0)])}var p=a(73344),v=a(60090),h=a(84757),b=a(42200),f=a(14220),y=a(32766),g=a(88339),k=a(50889);const C=4;var N={name:"HarvesterEditCpuMemory",emits:["updateCpuMemory"],components:{UnitInput:p.A,InputOrDisplay:v.A,Checkbox:b.S},props:{cpu:{type:Number,default:null},maxCpu:{type:Number,default:null},memory:{type:String,default:null},maxMemory:{type:String,default:null},enableHotPlug:{type:Boolean,default:!1},mode:{type:String,default:"create"},disabled:{type:Boolean,default:!1}},async fetch(){const e=this.$store.getters["currentProduct"].inStore,t=await(0,g.kR)({settings:this.$store.dispatch(`${e}/findAll`,{type:y.rk.SETTING})});this.settings=t.settings||[]},data(){return{GIBIBYTE:h.Wl,localCpu:this.cpu,localMemory:this.memory,maxLocalCpu:this.maxCpu,maxLocalMemory:this.maxMemory,localEnableHotPlug:this.enableHotPlug,settings:[]}},computed:{isView(){return this.mode===f.nW},cpuDisplay(){return`${this.localCpu} C`},maxCpuDisplay(){return`${this.maxLocalCpu} C`},memoryDisplay(){return`${this.localMemory}`},maxMemoryDisplay(){return`${this.maxLocalMemory}`},cpuMemoryHotplugTooltip(){return this.t("harvester.virtualMachine.hotplug.tooltip",{hotPlugTimes:this.maxHotplugRatio})},isCPUMemoryHotPlugFeatureEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("cpuMemoryHotplug")},maxHotplugRatio(){const e=this.settings.find(e=>e.id===k.EP.MAX_HOTPLUG_RATIO),t=e?.value?parseInt(e.value,10):C;return t}},watch:{cpu(e){this.localCpu=e},memory(e){e&&!e.includes("null")&&(this.localMemory=e)},maxCpu(e){this.maxLocalCpu=e},maxMemory(e){e&&!e.includes("null")&&(this.maxLocalMemory=e)},enableHotPlug(e){this.localEnableHotPlug=e}},methods:{hotPlugChanged(e){e?(this.maxLocalCpu=this.localCpu?this.localCpu*this.maxHotplugRatio:null,this.maxLocalMemory=this.localMemory?`${parseInt(this.localMemory,10)*this.maxHotplugRatio}${h.Wl}`:null,this.$emit("updateCpuMemory",this.localCpu,this.localMemory,this.maxLocalCpu,this.maxLocalMemory,e)):this.$emit("updateCpuMemory",this.localCpu,this.localMemory,"",null,e)},changeMemory(){this.localEnableHotPlug&&(this.maxLocalMemory=this.localMemory?`${parseInt(this.localMemory,10)*this.maxHotplugRatio}${h.Wl}`:null),this.$emit("updateCpuMemory",this.localCpu,this.localMemory,this.maxLocalCpu,this.maxLocalMemory,this.localEnableHotPlug)},changeCPU(){this.localEnableHotPlug&&(this.maxLocalCpu=this.localCpu?this.localCpu*this.maxHotplugRatio:null),this.$emit("updateCpuMemory",this.localCpu,this.localMemory,this.maxLocalCpu,this.maxLocalMemory,this.localEnableHotPlug)},changeMaxCPUMemory(){this.$emit("updateCpuMemory",this.localCpu,this.localMemory,this.maxLocalCpu,this.maxLocalMemory,this.localEnableHotPlug)}}},V=a(47433);const w=(0,V.A)(N,[["render",m]]);var E=w},47443:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return E}});var o=a(9274);const l={class:"row mb-20"},s={"data-testid":"input-hen-name",class:"col span-6"},r={"data-testid":"input-hen-model",class:"col span-6"},i={"data-testid":"input-hen-networkName",class:"col span-6"},n={"data-testid":"input-hen-type",class:"col span-6"},d={key:0},u={class:"row mb-20"},c={key:0,class:"row"},m={key:0,"data-testid":"input-hen-staticIp",class:"col span-6"},p={"data-testid":"input-hen-macAddress",class:"col span-6"};function v(e,t,a,v,h,b){const f=(0,o.resolveComponent)("LabeledInput"),y=(0,o.resolveComponent)("InputOrDisplay"),g=(0,o.resolveComponent)("LabeledSelect");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(y,{name:e.t("harvester.fields.name"),value:a.value.name,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(f,{value:a.value.name,"onUpdate:value":[t[0]||(t[0]=e=>a.value.name=e),b.update],label:e.t("harvester.fields.name"),required:"",mode:a.mode,disabled:b.isDisabled},null,8,["value","label","mode","disabled","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(y,{name:e.t("harvester.fields.model"),value:a.value.model,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(g,{value:a.value.model,"onUpdate:value":[t[1]||(t[1]=e=>a.value.model=e),b.update],label:e.t("harvester.fields.model"),disabled:b.isDisabled,options:b.modelOption,mode:a.mode,required:""},null,8,["value","label","disabled","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",{class:(0,o.normalizeClass)(["row",{"mb-20":!h.isMasquerade}])},[(0,o.createElementVNode)("div",i,[(0,o.createVNode)(y,{name:e.t("harvester.fields.network"),value:a.value.networkName,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(g,{value:a.value.networkName,"onUpdate:value":[t[2]||(t[2]=e=>a.value.networkName=e),b.updateNetworkName],label:e.t("harvester.fields.network"),options:b.allNetworkOption,mode:a.mode,required:"",disabled:b.isDisabled},null,8,["value","label","options","mode","disabled","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",n,[(0,o.createVNode)(y,{name:e.t("harvester.fields.type"),value:a.value.type,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(g,{value:a.value.type,"onUpdate:value":[t[3]||(t[3]=e=>a.value.type=e),b.update],label:e.t("harvester.fields.type"),options:b.typeOption,mode:a.mode,required:""},null,8,["value","label","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])],2),!h.isMasquerade&&a.isSingle?((0,o.openBlock)(),(0,o.createElementBlock)("div",d,[(0,o.createElementVNode)("div",u,[(0,o.createElementVNode)("a",{role:"button",onClick:t[4]||(t[4]=(...e)=>b.toggleAdvanced&&b.toggleAdvanced(...e))},(0,o.toDisplayString)(h.showAdvanced?e.t("harvester.generic.hideMore"):e.t("harvester.generic.showMore")),1)]),h.showAdvanced?((0,o.openBlock)(),(0,o.createElementBlock)("div",c,[b.staticIPForVMEnabled?((0,o.openBlock)(),(0,o.createElementBlock)("div",m,[(0,o.createVNode)(y,{name:e.t("harvester.fields.staticIp"),value:a.value.staticIp,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(f,{value:a.value.staticIp,"onUpdate:value":[t[5]||(t[5]=e=>a.value.staticIp=e),b.update],"label-key":"harvester.fields.staticIp",mode:a.mode,tooltip:e.t("harvester.virtualMachine.volume.staticIpTip",{nic_name:a.value.name||"default"})},null,8,["value","mode","tooltip","onUpdate:value"])]),_:1},8,["name","value","mode"])])):(0,o.createCommentVNode)("",!0),(0,o.createElementVNode)("div",p,[(0,o.createVNode)(y,{name:e.t("harvester.fields.macAddress"),value:a.value.macAddress,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(f,{value:a.value.macAddress,"onUpdate:value":[t[6]||(t[6]=e=>a.value.macAddress=e),b.update],"label-key":"harvester.fields.macAddress",mode:a.mode,tooltip:e.t("harvester.virtualMachine.volume.macTip")},null,8,["value","mode","tooltip","onUpdate:value"])]),_:1},8,["name","value","mode"])])])):(0,o.createCommentVNode)("",!0)])):(0,o.createCommentVNode)("",!0)])}var h=a(60090),b=a(79380),f=a(10566),y=a(76978),g=a(14220),k=a(48249);const C=[{label:"virtio",value:"virtio"},{label:"e1000",value:"e1000"},{label:"e1000e",value:"e1000e"},{label:"ne2k_pci",value:"ne2k_pci"},{label:"pcnet",value:"pcnet"},{label:"rtl8139",value:"rtl8139"}];var N={name:"HarvesterEditNetwork",emits:["update"],components:{LabeledInput:b.o,LabeledSelect:f.A,InputOrDisplay:h.A},props:{value:{type:Object,default:()=>({})},networkOption:{type:Array,default:()=>[]},rows:{type:Array,default:()=>[]},mode:{type:String,default:"create"},isSingle:{type:Boolean,default:!0}},data(){const e=this.value.isPod;return e&&(this.value.networkName=k.PO),{isMasquerade:e,hasManagementNetwork:!1,showAdvanced:!1}},computed:{isDisabled(){return this.isMasquerade&&!this.value.newCreateId&&!this.isCreate},isView(){return this.mode===g.nW},isCreate(){return this.mode===g.YQ},modelOption(){return C},allNetworkOption(){const e=(0,y.o8)(this.networkOption),t=[{label:k.PO,value:k.PO}];return this.value.newCreateId&&this.hasManagementNetwork?e:this.value.newCreateId&&!this.hasManagementNetwork?[...t,...e]:this.isMasquerade?t:e},typeOption(){const e=[{label:"masquerade",value:"masquerade"},{label:"bridge",value:"bridge"}],t=[{label:"bridge",value:"bridge"}];return this.isMasquerade?e:t},staticIPForVMEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("staticIPForVM")}},watch:{rows:{handler(e){const t=!!e.some(e=>e.isPod);this["hasManagementNetwork"]=t},immediate:!0,deep:!0},isSingle(e){e||(this.value["macAddress"]="",this.value["staticIp"]="",this.update())}},methods:{updateNetworkName(e){e===k.PO?(this.value.isPod=!0,this.value.macAddress="",this.value.staticIp=""):this.value.isPod=!1,this["isMasquerade"]=this.value.isPod,this.value.isPod?this.value.type="masquerade":this.value.type="bridge",this.update()},update(){this.$emit("update")},toggleAdvanced(){this.showAdvanced=!this.showAdvanced}}},V=a(47433);const w=(0,V.A)(N,[["render",v]]);var E=w},73705:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return C}});var o=a(9274);const l={class:"box-title mb-10"},s=["onClick"],r=["disabled","onClick"];function i(e,t,a,i,n,d){const u=(0,o.resolveComponent)("Base"),c=(0,o.resolveComponent)("InfoBox");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(n.rows,(i,m)=>((0,o.openBlock)(),(0,o.createBlock)(c,{key:m},{default:(0,o.withCtx)(()=>[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("h3",null,(0,o.toDisplayString)(e.t("harvester.virtualMachine.network.title")),1),d.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"role-link btn btn-sm remove",onClick:e=>d.remove(i)},[...t[1]||(t[1]=[(0,o.createElementVNode)("i",{class:"icon icon-x"},null,-1)])],8,s)),a.vm.hotplugNicFeatureEnabled&&i.isHotunpluggable&&d.isView?((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:1,type:"button",class:"role-link btn btn-sm remove",disabled:!d.canCheckHotunplug,onClick:e=>d.unplugNIC(i)},(0,o.toDisplayString)(e.t("harvester.virtualMachine.hotUnplug.detachNIC.actionLabel")),9,r)):(0,o.createCommentVNode)("",!0)]),(0,o.createVNode)(u,{value:n.rows[m],"onUpdate:value":e=>n.rows[m]=e,rows:n.rows,mode:a.mode,"is-single":a.isSingle,"network-option":d.networkOption,onUpdate:d.update},null,8,["value","onUpdate:value","rows","mode","is-single","network-option","onUpdate"])]),_:2},1024))),128)),d.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"btn btn-sm bg-primary",onClick:t[0]||(t[0]=(...e)=>d.add&&d.add(...e))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.network.addNetwork")),1))])}var n=a(26962),d=a(35664),u=a(74302),c=a(76978),m=a(92043),p=a(68851),v=a(14220),h=a(2602),b=a(47443),f=a(4364),y={components:{InfoBox:n.A,Base:b["default"]},props:{vm:{type:Object,default:()=>({})},mode:{type:String,default:"create"},value:{type:Array,default:()=>[]},isSingle:{type:Boolean,default:!0}},async fetch(){await this.fetchHotunplugData()},data(){return{nameIdx:1,rows:this.addKeyId((0,c.o8)(this.value)),hotunpluggableNics:new Set}},computed:{isView(){return this.mode===v.nW},networkOption(){const e=this.$store.getters["harvester/all"](d.XG).filter(e=>!e.metadata?.annotations?.[h.r.STORAGE_NETWORK]),t=(0,u.Ul)(e.map(e=>{const t=e.isNotReady?`${e.id} (${this.t("generic.notReady")})`:e.id;return{label:t,value:e.id,disabled:e.isNotReady}}),"label");return t},canCheckHotunplug(){return!!this.vm?.actions?.findHotunpluggableNics},vmState(){return this.vm?.stateDisplay}},watch:{value(e){this.rows=this.mergeHotplugData((0,c.o8)(e))},vmState(e,t){e!==t&&this.fetchHotunplugData()}},methods:{async fetchHotunplugData(){if(this.canCheckHotunplug){try{const e=await this.vm.doAction("findHotunpluggableNics");this.hotunpluggableNics=new Set(e?.interfaces||[])}catch(e){f.error("Failed to fetch hot-unpluggable NICs:",e),this.hotunpluggableNics=new Set}this.rows=this.mergeHotplugData((0,c.o8)(this.value))}else this.rows=this.mergeHotplugData((0,c.o8)(this.value))},mergeHotplugData(e){return(e||[]).map(e=>({...e,isHotunpluggable:this.hotunpluggableNics.has(e.name),rowKeyId:e.rowKeyId||(0,m.vx)(10)}))},add(e){const t=this.generateName(),a={name:t,networkName:"",model:"virtio",type:"bridge",newCreateId:(0,m.vx)(10),rowKeyId:(0,m.vx)(10)};this.rows.push(a),this.update()},remove(e){(0,p.Gj)(this.rows,e),this.update()},addKeyId(e){return e.map(e=>({...e,rowKeyId:(0,m.vx)(10)}))},generateName(){let e="",t=!0;while(t)e=`nic-${this.nameIdx}`,t=this.rows.find(t=>t.name===e),this.nameIdx++;return e},update(){this.$emit("update:value",this.rows)},unplugNIC(e){this.vm.unplugNIC(e.name)}}},g=(a(40809),a(47433));const k=(0,g.A)(y,[["render",i],["__scopeId","data-v-88b01cc2"]]);var C=k},39228:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return y}});var o=a(9274);function l(e,t,a,l,s,r){const i=(0,o.resolveComponent)("LabeledSelect"),n=(0,o.resolveComponent)("LabeledInput"),d=(0,o.resolveComponent)("ModalWithCard");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createVNode)(i,{value:s.checkedSsh,"onUpdate:value":[t[0]||(t[0]=e=>s.checkedSsh=e),r.update],label:e.t("harvester.virtualMachine.input.sshKey"),taggable:!a.disabled,mode:a.mode,multiple:!0,searchable:a.searchable,disabled:a.disabled,options:r.sshOption},null,8,["value","label","taggable","mode","searchable","disabled","options","onUpdate:value"]),s.isOpen?((0,o.openBlock)(),(0,o.createBlock)(d,{key:0,name:s.randomStr,width:"40%",errors:s.errors,onFinish:r.save,onClose:r.cancel},{title:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.t("harvester.virtualMachine.sshTitle")),1)]),content:(0,o.withCtx)(()=>[(0,o.createVNode)(n,{value:s.sshName,"onUpdate:value":t[1]||(t[1]=e=>s.sshName=e),label:e.t("harvester.virtualMachine.input.name"),class:"mb-20",required:"",onKeydown:(0,o.withKeys)((0,o.withModifiers)(()=>{},["prevent"]),["native","enter"])},null,8,["value","label","onKeydown"]),(0,o.createVNode)(n,{value:s.publicKey,"onUpdate:value":t[2]||(t[2]=e=>s.publicKey=e),label:e.t("harvester.virtualMachine.input.sshKeyValue"),"min-height":160,class:"mb-20",type:"multiline",required:""},null,8,["value","label"])]),_:1},8,["name","errors","onFinish","onClose"])):(0,o.createCommentVNode)("",!0)])}var s=a(65359),r=a(92043),i=a(79380),n=a(10566),d=a(24151),u=a(14220),c=a(35664),m=a(32766),p=a(8461);const v="_NEW";var h={emits:["update:sshKey"],components:{LabeledInput:i.o,ModalWithCard:d.A,LabeledSelect:n.A},props:{value:{type:Array,default:()=>[]},mode:{type:String,default:"create"},disableCreate:{type:Boolean,default:!1},namespace:{type:String,default:""},createNamespace:{type:Boolean,default:!1},searchable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1}},data(){return{checkedSsh:this.value,publicKey:"",sshName:"",randomStr:(0,r.vx)(5).toLowerCase(),errors:[],isAll:!1,checkAll:!1,isOpen:!1}},computed:{...(0,s.L8)({t:"i18n/t"}),schema(){return this.$store.getters["harvester/schemaFor"](m.rk.SSH)},isCreatable(){return!(this.schema&&!this.schema?.collectionMethods.find(e=>["blocked-post","post"].includes(e.toLowerCase())))},sshOption(){const e=this.$store.getters["harvester/all"](m.rk.SSH).map(e=>({label:e.id,value:e.id}));return!this.disableCreate&&this.mode!==u.nW&&this.isCreatable&&e.unshift({label:this.t("harvester.virtualMachine.createSSHKey"),value:v}),e}},watch:{publicKey(e){const t=e.trim(),a=t.split(/\s+/);if(3===a.length&&!this.sshName){const e=a[2];this.randomStr=(0,r.vx)(10).toLowerCase(),this.sshName=e.includes("@")?e.split("@")[0]:e}},value(e){this.checkedSsh=e},checkedSsh(e){e.includes(v)&&this.show()}},methods:{show(){this.isOpen=!0},hide(){this.isOpen=!1},async createNamespaceIfNeeded(){if(!this.createNamespace||this.disableCreate)return;const e=await this.$store.dispatch("harvester/findAll",{type:c.CU}),t=e?.find(e=>e.name===this.namespace);if(!t){const e=await this.$store.dispatch("harvester/createNamespace",{name:this.namespace},{root:!0});e.applyDefaults(),await e.save()}},async createSSHKey(){const e=await this.$store.dispatch("harvester/create",{metadata:{name:this.sshName,namespace:this.namespace},spec:{publicKey:this.publicKey},type:m.rk.SSH}),t=await e.save();t.id&&(this.checkedSsh.push(`${this.namespace}/${this.sshName}`),this.update())},async save(e){if(this.errors=[],!this.sshName){const e=this.t("harvester.virtualMachine.input.name"),t=this.t("validation.required",{key:e});this.errors.push(t)}if(!this.publicKey){const e=this.t("harvester.virtualMachine.input.sshKeyValue"),t=this.t("validation.required",{key:e});this.errors.push(t)}if(this.sshName.length>63){const e=this.t("harvester.validation.custom.tooLongName",{max:63});this.errors.push(e)}if(this.errors.length>0)e(!1);else try{await this.createNamespaceIfNeeded(),await this.createSSHKey(),e(!0),this.cancel()}catch(t){const a=this.t("harvester.virtualMachine.genericLoginError");this.errors=(0,p.n)(t,a),e(!1)}},cancel(){this.hide(),this.resetFields()},resetFields(){this.sshName="",this.publicKey="",this.errors=[]},update(){const e=this.checkedSsh.filter(e=>e!==v);this.$emit("update:sshKey",e)}}},b=a(47433);const f=(0,b.A)(h,[["render",l]]);var y=f},35294:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return M}});var o=a(9274);const l={key:0,class:"disk-performance"},s=["aria-expanded","aria-label"],r={key:1,class:"perf-body mt-10"},i={class:"row mb-20"},n={class:"col span-6","data-testid":"input-disk-perf-profile"},d={key:1,class:"row mb-20"},u={class:"col span-6","data-testid":"input-disk-cache"},c={class:"col span-6","data-testid":"input-disk-io"},m={key:2,class:"row mb-10"},p={class:"col span-12","data-testid":"input-disk-dedicated-iothread"};function v(e,t,a,v,h,b){const f=(0,o.resolveComponent)("LabeledSelect"),y=(0,o.resolveComponent)("Banner"),g=(0,o.resolveComponent)("Checkbox");return!b.isCdRom&&b.storagePerformanceEnabled?((0,o.openBlock)(),(0,o.createElementBlock)("div",l,[b.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"btn btn-sm role-link expand-toggle","aria-expanded":h.expanded,"aria-label":h.expanded?e.t("harvester.virtualMachine.volume.performance.collapse"):e.t("harvester.virtualMachine.volume.performance.expand"),onClick:t[0]||(t[0]=(0,o.withModifiers)(e=>h.expanded=!h.expanded,["prevent"]))},[(0,o.createElementVNode)("i",{class:(0,o.normalizeClass)(["icon",h.expanded?"icon-chevron-down":"icon-chevron-right"])},null,2),(0,o.createTextVNode)(" "+(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.performance.title")),1)],8,s)),h.expanded||b.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",r,[(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(f,{value:h.profile,label:e.t("harvester.virtualMachine.volume.performance.profile.label"),tooltip:e.t("harvester.virtualMachine.volume.performance.profile.tip"),options:b.profileOptions,mode:a.mode,"onUpdate:value":b.onProfileChange},null,8,["value","label","tooltip","options","mode","onUpdate:value"])])]),h.profile===h.DISK_PERFORMANCE_PROFILE.HIGH?((0,o.openBlock)(),(0,o.createBlock)(y,{key:0,color:"info",label:e.t("harvester.virtualMachine.volume.performance.highProfileTip")},null,8,["label"])):(0,o.createCommentVNode)("",!0),b.isCustom||b.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",d,[(0,o.createElementVNode)("div",u,[(0,o.createVNode)(f,{value:a.value.cache,"onUpdate:value":[t[1]||(t[1]=e=>a.value.cache=e),b.update],label:e.t("harvester.virtualMachine.volume.performance.cacheMode.label"),tooltip:e.t("harvester.virtualMachine.volume.performance.cacheMode.tip"),options:b.cacheOptions,mode:a.mode},null,8,["value","label","tooltip","options","mode","onUpdate:value"])]),(0,o.createElementVNode)("div",c,[(0,o.createVNode)(f,{value:a.value.io,label:e.t("harvester.virtualMachine.volume.performance.ioMode.label"),tooltip:e.t("harvester.virtualMachine.volume.performance.ioMode.tip"),options:b.ioOptions,mode:a.mode,"onUpdate:value":b.onIoChange},null,8,["value","label","tooltip","options","mode","onUpdate:value"])])])):(0,o.createCommentVNode)("",!0),b.isCustom||b.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",m,[(0,o.createElementVNode)("div",p,[(0,o.createVNode)(g,{value:a.value.dedicatedIOThread,"onUpdate:value":[t[2]||(t[2]=e=>a.value.dedicatedIOThread=e),b.update],label:e.t("harvester.virtualMachine.volume.performance.dedicatedIOThread.label"),tooltip:e.t("harvester.virtualMachine.volume.performance.dedicatedIOThread.tip"),mode:a.mode},null,8,["value","label","tooltip","mode","onUpdate:value"])])])):(0,o.createCommentVNode)("",!0),b.isNativeIo?((0,o.openBlock)(),(0,o.createBlock)(y,{key:3,color:"info",label:e.t("harvester.virtualMachine.volume.performance.ioMode.nativeRequiresNoCacheTip")},null,8,["label"])):(0,o.createCommentVNode)("",!0),b.showFilesystemCacheWarning?((0,o.openBlock)(),(0,o.createBlock)(y,{key:4,color:"warning",label:e.t("harvester.virtualMachine.volume.performance.cacheMode.filesystemWarning")},null,8,["label"])):(0,o.createCommentVNode)("",!0),b.showBusTip?((0,o.openBlock)(),(0,o.createBlock)(y,{key:5,color:"warning",label:e.t("harvester.virtualMachine.volume.performance.busTip")},null,8,["label"])):(0,o.createCommentVNode)("",!0)])):(0,o.createCommentVNode)("",!0)])):(0,o.createCommentVNode)("",!0)}var h=a(10566),b=a(42200),f=a(9980),y=a(14220),g=a(66905);const{DEFAULT:k,HIGH:C,CUSTOM:N}=g.ni;var V={name:"DiskPerformanceOptions",components:{LabeledSelect:h.A,Checkbox:b.S,Banner:f.l},emits:["update"],props:{value:{type:Object,default:()=>({})},mode:{type:String,default:"create"}},data(){const e=!!(this.value.cache||this.value.io||this.value.dedicatedIOThread);return{DISK_PERFORMANCE_PROFILE:g.ni,expanded:e,profile:this.detectProfile(),busBeforeHighProfile:null}},computed:{isView(){return this.mode===y.nW},storagePerformanceEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("highPerformanceStorage")},isCdRom(){return"cd-rom"===this.value.type},isCustom(){return this.profile===N},isNativeIo(){return"native"===this.value.io},profileOptions(){return[k,C,N].map(e=>({label:this.t(`harvester.virtualMachine.volume.performance.profile.${e}`),value:e}))},cacheOptions(){return g.LL.map(e=>({label:this.cacheLabel(e),value:e,disabled:this.isNativeIo&&"none"!==e}))},ioOptions(){return g.zr.map(e=>({label:""===e?this.t("harvester.virtualMachine.volume.performance.ioMode.default"):this.t(`harvester.virtualMachine.volume.performance.ioMode.${e}`),value:e}))},showFilesystemCacheWarning(){return"none"===this.value.cache&&"Filesystem"===this.value.volumeMode},showBusTip(){const e=!!(this.value.cache||this.value.io||this.value.dedicatedIOThread);return e&&this.value.bus&&"virtio"!==this.value.bus}},watch:{"value.cache"(){this.profile=this.detectProfile()},"value.io"(){this.profile=this.detectProfile()},"value.dedicatedIOThread"(){this.profile=this.detectProfile()}},methods:{detectProfile(){const{cache:e,io:t,dedicatedIOThread:a}=this.value;return e||t||a?"none"===e&&"native"===t&&a?C:N:k},cacheLabel(e){return""===e?this.t("harvester.virtualMachine.volume.performance.cacheMode.default"):this.t(`harvester.virtualMachine.volume.performance.cacheMode.${e}`)},onProfileChange(e){const t=this.profile;this.profile=e,e===k?(this.value.cache="",this.value.io="",this.value.dedicatedIOThread=!1,null!==this.busBeforeHighProfile&&("virtio"===this.value.bus&&(this.value.bus=this.busBeforeHighProfile),this.busBeforeHighProfile=null)):e===C&&(this.value.cache="none",this.value.io="native",this.value.dedicatedIOThread=!0,t!==C&&(this.busBeforeHighProfile=this.value.bus||""),this.value.bus="virtio"),this.update()},onIoChange(e){this.value.io=e,"native"===e&&"none"!==this.value.cache&&(this.value.cache="none"),this.update()},update(){this.$emit("update")}}},w=(a(4972),a(47433));const E=(0,w.A)(V,[["render",v],["__scopeId","data-v-56411732"]]);var M=E},87302:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return V}});var o=a(9274);const l=["aria-expanded","aria-label"],s={key:1,class:"mb-5"},r={class:"text-muted mb-15 mt-10"},i={class:"row mb-10"},n={class:"col span-12","data-testid":"input-vm-block-multi-queue"},d={class:"row mb-10"},u={class:"col span-6","data-testid":"input-vm-iothreads-policy"},c={key:0,class:"col span-6","data-testid":"input-vm-iothread-count"};function m(e,t,a,m,p,v){const h=(0,o.resolveComponent)("Checkbox"),b=(0,o.resolveComponent)("Banner"),f=(0,o.resolveComponent)("LabeledSelect"),y=(0,o.resolveComponent)("LabeledInput"),g=(0,o.resolveComponent)("InfoBox");return v.storagePerformanceEnabled&&(!v.isView||a.blockMultiQueue||a.ioThreadsPolicy)?((0,o.openBlock)(),(0,o.createBlock)(g,{key:0,class:"vm-perf mt-10"},{default:(0,o.withCtx)(()=>[v.isView?((0,o.openBlock)(),(0,o.createElementBlock)("h3",s,(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.diskPerformance.title")),1)):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"btn btn-sm role-link expand-toggle","aria-expanded":p.expanded,"aria-label":p.expanded?e.t("harvester.virtualMachine.volume.diskPerformance.collapse"):e.t("harvester.virtualMachine.volume.diskPerformance.expand"),onClick:t[0]||(t[0]=(0,o.withModifiers)(e=>p.expanded=!p.expanded,["prevent"]))},[(0,o.createElementVNode)("i",{class:(0,o.normalizeClass)(["icon",p.expanded?"icon-chevron-down":"icon-chevron-right"])},null,2),(0,o.createTextVNode)(" "+(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.diskPerformance.title")),1)],8,l)),p.expanded||v.isView?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:2},[(0,o.createElementVNode)("p",r,(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.diskPerformance.description")),1),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(h,{value:a.blockMultiQueue,label:e.t("harvester.virtualMachine.volume.diskPerformance.blockMultiQueue.label"),tooltip:e.t("harvester.virtualMachine.volume.diskPerformance.blockMultiQueue.tip"),mode:a.mode,disabled:!a.hasVirtioDisk,"onUpdate:value":t[1]||(t[1]=t=>e.$emit("update:blockMultiQueue",t))},null,8,["value","label","tooltip","mode","disabled"])])]),a.hasVirtioDisk||v.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createBlock)(b,{key:0,color:"info",label:e.t("harvester.virtualMachine.volume.diskPerformance.blockMultiQueue.noVirtioTip")},null,8,["label"])),(0,o.createElementVNode)("div",d,[(0,o.createElementVNode)("div",u,[(0,o.createVNode)(f,{value:a.ioThreadsPolicy,label:e.t("harvester.virtualMachine.volume.diskPerformance.ioThreadsPolicy.label"),tooltip:e.t("harvester.virtualMachine.volume.diskPerformance.ioThreadsPolicy.tip"),options:v.ioThreadsPolicyOptions,mode:a.mode,"onUpdate:value":t[2]||(t[2]=t=>e.$emit("update:ioThreadsPolicy",t))},null,8,["value","label","tooltip","options","mode"])]),"supplementalPool"===a.ioThreadsPolicy?((0,o.openBlock)(),(0,o.createElementBlock)("div",c,[(0,o.createVNode)(y,{type:"number",min:"1",value:a.ioThreadCount,label:e.t("harvester.virtualMachine.volume.diskPerformance.ioThreadCount.label"),tooltip:e.t("harvester.virtualMachine.volume.diskPerformance.ioThreadCount.tip"),mode:a.mode,"onUpdate:value":t[3]||(t[3]=t=>e.$emit("update:ioThreadCount",Number(t)))},null,8,["value","label","tooltip","mode"])])):(0,o.createCommentVNode)("",!0)]),a.hasDedicatedIothread&&!a.ioThreadsPolicy?((0,o.openBlock)(),(0,o.createBlock)(b,{key:1,color:"info",label:e.t("harvester.virtualMachine.volume.diskPerformance.ioThreadsPolicy.autoEnabledTip")},null,8,["label"])):(0,o.createCommentVNode)("",!0)],64)):(0,o.createCommentVNode)("",!0)]),_:1})):(0,o.createCommentVNode)("",!0)}var p=a(26962),v=a(10566),h=a(79380),b=a(42200),f=a(9980),y=a(14220),g=a(66905),k={name:"VMPerformanceOptions",components:{InfoBox:p.A,LabeledSelect:v.A,LabeledInput:h.o,Checkbox:b.S,Banner:f.l},emits:["update:blockMultiQueue","update:ioThreadsPolicy","update:ioThreadCount"],props:{blockMultiQueue:{type:Boolean,default:!1},ioThreadsPolicy:{type:String,default:""},ioThreadCount:{type:Number,default:2},mode:{type:String,default:"create"},hasVirtioDisk:{type:Boolean,default:!0},hasDedicatedIothread:{type:Boolean,default:!1}},data(){return{expanded:!(!this.blockMultiQueue&&!this.ioThreadsPolicy)}},computed:{isView(){return this.mode===y.nW},storagePerformanceEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("highPerformanceStorage")},ioThreadsPolicyOptions(){return g.gq.map(e=>({label:""===e?this.t("harvester.virtualMachine.volume.diskPerformance.ioThreadsPolicy.default"):this.t(`harvester.virtualMachine.volume.diskPerformance.ioThreadsPolicy.${e}`),value:e}))}},watch:{hasVirtioDisk(e){!e&&this.blockMultiQueue&&this.$emit("update:blockMultiQueue",!1)}}},C=(a(36927),a(47433));const N=(0,C.A)(k,[["render",m],["__scopeId","data-v-021f0f0e"]]);var V=N},92427:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return K}});var o=a(9274);const l={class:"box-title mb-10"},s={key:0,class:"title"},r=["href"],i={key:1},n=["onClick"],d=["onClick"],u={class:"bootOrder"},c={key:0,class:"mr-15"},m=["disabled","onClick"],p=["disabled","onClick"],v={class:"text-muted"},h={class:"mt-15"},b={key:2},f={class:"buttons"};function y(e,t,a,y,g,k){const C=(0,o.resolveComponent)("Banner"),N=(0,o.resolveComponent)("router-link"),V=(0,o.resolveComponent)("BadgeStateFormatter"),w=(0,o.resolveComponent)("InfoBox"),E=(0,o.resolveComponent)("VueDraggableNext"),M=(0,o.resolveComponent)("VMPerformanceOptions"),x=(0,o.resolveComponent)("ModalWithCard"),B=(0,o.resolveDirective)("clean-tooltip");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[k.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createBlock)(C,{key:0,color:"info","label-key":"harvester.virtualMachine.volume.dragTip"})),(0,o.createVNode)(E,{list:g.rows,disabled:k.isView,"item-key":"id",onEnd:k.update},{default:(0,o.withCtx)(()=>[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(g.rows,(b,f)=>((0,o.openBlock)(),(0,o.createElementBlock)("div",{key:b.id},[(0,o.createVNode)(w,null,{default:(0,o.withCtx)(()=>[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("h3",null,[b.to&&k.isVirtualType?((0,o.openBlock)(),(0,o.createElementBlock)("span",s,[(0,o.createVNode)(N,{to:b.to},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.edit"))+" "+(0,o.toDisplayString)(k.headerFor(b.source)),1)]),_:2},1032,["to"]),b.pvc?((0,o.openBlock)(),(0,o.createBlock)(V,{key:0,class:"ml-10 state",arbitrary:!0,row:b.pvc,value:b.pvc.state},null,8,["row","value"])):(0,o.createCommentVNode)("",!0),k.dev&&b.pvc&&b.pvc.resourceExternalLink?(0,o.withDirectives)(((0,o.openBlock)(),(0,o.createElementBlock)("a",{key:1,class:"ml-5 resource-external",rel:"nofollow noopener noreferrer",target:"_blank",href:b.pvc.resourceExternalLink.url},[...t[9]||(t[9]=[(0,o.createElementVNode)("i",{class:"icon icon-external-link"},null,-1)])],8,r)),[[B,e.t(b.pvc.resourceExternalLink.tipsKey||"generic.resourceExternalLinkTips")]]):(0,o.createCommentVNode)("",!0)])):((0,o.openBlock)(),(0,o.createElementBlock)("span",i,(0,o.toDisplayString)(k.headerFor(b.source,!!b?.volumeBackups)),1))]),k.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"role-link btn btn-sm remove",onClick:e=>k.removeVolume(b)},[...t[10]||(t[10]=[(0,o.createElementVNode)("i",{class:"icon icon-x"},null,-1)])],8,n)),k.canDoVolumeHotplugAction(b)&&k.isView?((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:1,type:"button",class:"role-link btn btn-sm remove",onClick:e=>k.hotplugVolume(b)},(0,o.toDisplayString)(e.t(k.getVolumeHotplugActionLabel(b))),9,d)):(0,o.createCommentVNode)("",!0)]),(0,o.createElementVNode)("div",null,[((0,o.openBlock)(),(0,o.createBlock)((0,o.resolveDynamicComponent)(k.componentFor(b.source)),{value:g.rows[f],rows:g.rows,namespace:a.namespace,"is-create":k.isCreate,"is-edit":k.isEdit,"is-view":k.isView,"is-virtual-type":k.isVirtualType,"is-resize-disabled":k.isResizeDisabled(g.rows[f]),mode:a.mode,idx:f,"validate-required":a.validateRequired,onUpdate:k.update},null,40,["value","rows","namespace","is-create","is-edit","is-view","is-virtual-type","is-resize-disabled","mode","idx","validate-required","onUpdate"]))]),(0,o.createElementVNode)("div",u,[k.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("div",c,[(0,o.createElementVNode)("button",{disabled:0===f,class:"btn btn-sm role-primary",onClick:(0,o.withModifiers)(e=>k.changeSort(f,!1),["prevent"])},[...t[11]||(t[11]=[(0,o.createElementVNode)("i",{class:"icon icon-lg icon-chevron-up"},null,-1)])],8,m),(0,o.createElementVNode)("button",{disabled:f===g.rows.length-1,class:"btn btn-sm role-primary",onClick:(0,o.withModifiers)(e=>k.changeSort(f,!0),["prevent"])},[...t[12]||(t[12]=[(0,o.createElementVNode)("i",{class:"icon icon-lg icon-chevron-down"},null,-1)])],8,p)])),(0,o.createElementVNode)("div",v," bootOrder: "+(0,o.toDisplayString)(f+1),1)]),(0,o.createElementVNode)("div",h,[b.volumeStatus&&!k.isCreate?((0,o.openBlock)(),(0,o.createBlock)(C,{key:0,class:"volume-status",color:"warning",label:g.ucFirst(b.volumeStatus)},null,8,["label"])):(0,o.createCommentVNode)("",!0),a.value.volumeBackups&&a.value.volumeBackups.error&&a.value.volumeBackups.error.message?((0,o.openBlock)(),(0,o.createBlock)(C,{key:1,color:"error",label:g.ucFirst(a.value.volumeBackups.error.message)},null,8,["label"])):(0,o.createCommentVNode)("",!0),k.isLHV2VolExpansionFeatureEnabled||!k.isLonghornV2(b)||k.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createBlock)(C,{key:2,color:"warning",label:e.t("harvester.volume.longhorn.disableResize")},null,8,["label"]))])]),_:2},1024)]))),128))]),_:1},8,["list","disabled","onEnd"]),k.showVolumeTip?((0,o.openBlock)(),(0,o.createBlock)(C,{key:1,color:"warning",label:e.t("harvester.virtualMachine.volume.volumeTip")},null,8,["label"])):(0,o.createCommentVNode)("",!0),k.isView?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("div",b,[(0,o.createElementVNode)("button",{type:"button",class:"btn btn-sm bg-primary mr-15 mb-10",onClick:t[0]||(t[0]=e=>k.addVolume(g.SOURCE_TYPE.NEW))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.addVolume")),1),a.existingVolumeDisabled?(0,o.createCommentVNode)("",!0):((0,o.openBlock)(),(0,o.createElementBlock)("button",{key:0,type:"button",class:"btn btn-sm bg-primary mr-15 mb-10",onClick:t[1]||(t[1]=e=>k.addVolume(g.SOURCE_TYPE.ATTACH_VOLUME))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.addExistingVolume")),1)),(0,o.createElementVNode)("button",{type:"button",class:"btn btn-sm bg-primary mr-15 mb-10",onClick:t[2]||(t[2]=e=>k.addVolume(g.SOURCE_TYPE.IMAGE))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.addVmImage")),1),(0,o.createElementVNode)("button",{type:"button",class:"btn btn-sm bg-primary mb-10",onClick:t[3]||(t[3]=e=>k.addVolume(g.SOURCE_TYPE.CONTAINER))},(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.addContainer")),1)])),(0,o.createVNode)(M,{"block-multi-queue":a.blockMultiQueue,"io-threads-policy":a.ioThreadsPolicy,"io-thread-count":a.ioThreadCount,"has-virtio-disk":k.hasVirtioDisk,"has-dedicated-iothread":k.hasDedicatedIOThread,mode:a.mode,"onUpdate:blockMultiQueue":t[4]||(t[4]=t=>e.$emit("update:blockMultiQueue",t)),"onUpdate:ioThreadsPolicy":t[5]||(t[5]=t=>e.$emit("update:ioThreadsPolicy",t)),"onUpdate:ioThreadCount":t[6]||(t[6]=t=>e.$emit("update:ioThreadCount",t))},null,8,["block-multi-queue","io-threads-policy","io-thread-count","has-virtio-disk","has-dedicated-iothread","mode"]),g.isOpen?((0,o.openBlock)(),(0,o.createBlock)(x,{key:3,name:"deleteTip",width:400},{title:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.unmount.title")),1)]),content:(0,o.withCtx)(()=>[(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(e.t("harvester.virtualMachine.volume.unmount.message")),1)]),footer:(0,o.withCtx)(()=>[(0,o.createElementVNode)("div",f,[(0,o.createElementVNode)("button",{class:"btn role-secondary mr-20",onClick:t[7]||(t[7]=(0,o.withModifiers)((...e)=>k.cancel&&k.cancel(...e),["prevent"]))},(0,o.toDisplayString)(e.t("generic.no")),1),(0,o.createElementVNode)("button",{class:"btn bg-primary mr-20",onClick:t[8]||(t[8]=(0,o.withModifiers)((...e)=>k.deleteVolume&&k.deleteVolume(...e),["prevent"]))},(0,o.toDisplayString)(e.t("generic.yes")),1)])]),_:1})):(0,o.createCommentVNode)("",!0)])}var g=a(98285),k=a(26962),C=a(9980),N=a(74562),V=a(73344),w=a(79380),E=a(10566),M=a(24151),x=a(87302),B=a(66905),I=a(35664),U=a(76978),S=a(92043),T=a(68851),O=a(14220),A=a(91462),_=a(20652),P=a(32766),D=a(41837),L=a(50784),$=a(66490);const{READ_WRITE_MANY:H}=D.Nb;var R={emits:["update:value","update:blockMultiQueue","update:ioThreadsPolicy","update:ioThreadCount"],components:{Banner:C.l,BadgeStateFormatter:N.A,VueDraggableNext:g.Hi,InfoBox:k.A,LabeledInput:w.o,UnitInput:V.A,LabeledSelect:E.A,ModalWithCard:M.A,VMPerformanceOptions:x["default"]},props:{vm:{type:Object,default:()=>({})},mode:{type:String,default:O.YQ},value:{type:Array,default:()=>[]},namespace:{type:String,default:null},existingVolumeDisabled:{type:Boolean,default:!1},validateRequired:{type:Boolean,default:!1},customVolumeMode:{type:String,default:D.vU.Block},customAccessMode:{type:String,default:H},resourceType:{type:String,default:""},blockMultiQueue:{type:Boolean,default:!1},ioThreadsPolicy:{type:String,default:""},ioThreadCount:{type:Number,default:2}},async fetch(){await this.$store.dispatch("harvester/findAll",{type:I.YH})},data(){return{ucFirst:S.TF,SOURCE_TYPE:B.xO,rows:(0,U.o8)(this.value),nameIdx:1,vol:null,isOpen:!1}},computed:{dev(){try{return this.$store.getters["prefs/get"](A.bc)}catch{return this.$store.getters["prefs/get"](A.IJ)}},isVirtualType(){return this.resourceType===P.rk.VM},isView(){return this.mode===O.nW},isEdit(){return this.mode===O.G5},isCreate(){return this.mode===O.YQ},isHotplugCdRomFeatureEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("hotplugCdRom")},defaultStorageClass(){const e=this.$store.getters["harvester/all"](I.fJ).find(e=>e.isDefault);return e},showVolumeTip(){const e=this.getImageDisplayName(this.rows[0]?.image);return!(1!==this.rows.length||"cd-rom"!==this.rows[0].type||!/.iso$/i.test(e))},pvcs(){return this.$store.getters["harvester/all"](I.YH)||[]},isLHV2VolExpansionFeatureEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("lhV2VolExpansion")},hasVirtioDisk(){return this.rows.some(e=>"disk"===e.type&&"virtio"===e.bus)},hasDedicatedIOThread(){return this.rows.some(e=>e.dedicatedIOThread)}},watch:{value:{handler(e){const t=(0,U.o8)(e).map(e=>(this.isCreate||e.source===B.xO.CONTAINER||e.newCreateId||e.image===$.K||(e.to={name:`${_.KR}-c-cluster-resource-namespace-id`,params:{resource:P.rk.VOLUME,namespace:this.namespace,id:e.realName},query:{mode:O.G5}},e.pvc=this.pvcs.find(t=>t.metadata.name===e.realName)),e));this["rows"]=t},deep:!0,immediate:!0}},methods:{addVolume(e){const t=this.generateName(),a={id:(0,S.vx)(5),name:t,source:e,size:"10Gi",type:"disk",accessMode:this.customAccessMode,volumeMode:this.customVolumeMode,volumeName:"",bus:"virtio",newCreateId:(0,S.vx)(10)};e===B.xO.NEW&&(a.storageClassName=this.defaultStorageClass?.metadata?.name||"longhorn"),this.rows.push(a),this.update()},generateName(){let e="",t=!0;while(t)e=`disk-${this.nameIdx}`,t=this.rows.find(t=>t.name===e),this.nameIdx++;return e},removeVolume(e){this.vol=e,!e.newCreateId&&this.isEdit&&this.isVirtualType?this.isOpen=!0:((0,T.Gj)(this.rows,e),this.update())},canDoVolumeHotplugAction(e){return!(!this.isHotplugCdRomFeatureEnabled&&"cd-rom"===e.type)&&(!!e.hotpluggable||"cd-rom"===e.type&&"sata"===e.bus&&e.image===$.K)},getVolumeHotplugAction(e){return"cd-rom"===e.type&&"sata"===e.bus?e.image===$.K?B.uH.INSERT_CDROM_IMAGE:B.uH.EJECT_CDROM_IMAGE:B.uH.DETACH_DISK},getVolumeHotplugActionLabel(e){const t={[B.uH.DETACH_DISK]:"harvester.virtualMachine.hotUnplug.detachVolume.actionLabel",[B.uH.INSERT_CDROM_IMAGE]:"harvester.modal.insertCdRomVolume.actionLabel",[B.uH.EJECT_CDROM_IMAGE]:"harvester.virtualMachine.hotUnplug.ejectCdRomVolume.actionLabel"};return t[this.getVolumeHotplugAction(e)]},hotplugVolume(e){const t={[B.uH.DETACH_DISK]:()=>this.vm.unplugVolume(e.name),[B.uH.INSERT_CDROM_IMAGE]:()=>this.vm.insertCdRomVolume(e.name),[B.uH.EJECT_CDROM_IMAGE]:()=>this.vm.ejectCdRomVolume(e.name)};return t[this.getVolumeHotplugAction(e)]()},componentFor(e){switch(e){case B.xO.NEW:return a(99213)["default"];case B.xO.IMAGE:return a(8573)["default"];case B.xO.ATTACH_VOLUME:return a(23101)["default"];case B.xO.CONTAINER:return a(24712)["default"]}},headerFor(e,t=!1){const a={[B.xO.NEW]:this.$store.getters["i18n/t"]("harvester.virtualMachine.volume.title.volume"),[B.xO.IMAGE]:this.$store.getters["i18n/t"]("harvester.virtualMachine.volume.title.vmImage"),[B.xO.ATTACH_VOLUME]:this.$store.getters["i18n/t"]("harvester.virtualMachine.volume.title.existingVolume"),[B.xO.CONTAINER]:this.$store.getters["i18n/t"]("harvester.virtualMachine.volume.title.container")}[e];return t?`${a} and Backups`:a},update(){this.$emit("update:value",this.rows)},deleteVolume(){(0,T.Gj)(this.rows,this.vol),this.update(),this.cancel()},cancel(){this.isOpen=!1},changeSort(e,t){this.rows.splice(t?e:e-1,1,...this.rows.splice(t?e+1:e,1,this.rows[t?e:e-1])),this.update()},getImageDisplayName(e){return this.$store.getters["harvester/all"](P.rk.IMAGE).find(t=>t.id===e)?.spec?.displayName},isLonghornV2(e){return e?.pvc?.isLonghornV2||e?.pvc?.storageClass?.isLonghornV2},isResizeDisabled(e){if(this.isLHV2VolExpansionFeatureEnabled)return!1;if(this.isCreate||e.newCreateId)return!1;const t=this.vm.stateDisplay===L.OFF,a=this.isLonghornV2(e);return!t||a}}},q=(a(99052),a(47433));const F=(0,q.A)(R,[["render",y],["__scopeId","data-v-46232beb"]]);var K=F},24712:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return N}});var o=a(9274);const l={class:"row mb-20"},s={"data-testid":"input-hec-name",class:"col span-6"},r={"data-testid":"input-hec-type",class:"col span-6"},i={class:"row mb-20"},n={"data-testid":"input-hec-container",class:"col span-6"},d={"data-testid":"input-hec-bus",class:"col span-6"},u={class:"row mb-20"},c={key:0,class:"col span-6"};function m(e,t,a,m,p,v){const h=(0,o.resolveComponent)("LabeledInput"),b=(0,o.resolveComponent)("InputOrDisplay"),f=(0,o.resolveComponent)("LabeledSelect"),y=(0,o.resolveComponent)("LabelValue"),g=(0,o.resolveComponent)("Banner"),k=(0,o.resolveComponent)("DiskPerformanceOptions");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(b,{name:e.t("harvester.fields.name"),value:a.value.name,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:a.value.name,"onUpdate:value":[t[0]||(t[0]=e=>a.value.name=e),v.update],label:e.t("harvester.fields.name"),required:"",mode:a.mode},null,8,["value","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(b,{name:e.t("harvester.fields.type"),value:a.value.type,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(f,{value:a.value.type,"onUpdate:value":[t[1]||(t[1]=e=>a.value.type=e),v.update],label:e.t("harvester.fields.type"),options:p.VOLUME_TYPE,mode:a.mode,required:""},null,8,["value","label","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.volume.dockerImage"),value:a.value.container,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(h,{value:a.value.container,"onUpdate:value":[t[2]||(t[2]=e=>a.value.container=e),v.update],label:e.t("harvester.virtualMachine.volume.dockerImage"),mode:a.mode,required:""},null,8,["value","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",d,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.volume.bus"),value:a.value.bus,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(f,{value:a.value.bus,"onUpdate:value":[t[3]||(t[3]=e=>a.value.bus=e),v.update],label:e.t("harvester.virtualMachine.volume.bus"),options:p.InterfaceOption,mode:a.mode},null,8,["value","label","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",u,[a.value.volumeBackups?((0,o.openBlock)(),(0,o.createElementBlock)("div",c,[(0,o.createVNode)(b,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:a.value.volumeBackups.readyToUse,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(y,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:a.value.volumeBackups.readyToUse},null,8,["name","value"])]),_:1},8,["name","value","mode"])])):(0,o.createCommentVNode)("",!0)]),a.value.volumeBackups&&a.value.volumeBackups.error&&a.value.volumeBackups.error.message?((0,o.openBlock)(),(0,o.createBlock)(g,{key:0,color:"error",class:"mb-20",label:a.value.volumeBackups.error.message},null,8,["label"])):(0,o.createCommentVNode)("",!0),(0,o.createVNode)(k,{value:a.value,mode:a.mode,onUpdate:v.update},null,8,["value","mode","onUpdate"])])}var p=a(79380),v=a(10566),h=a(60090),b=a(66905),f=a(9980),y=a(35294),g={name:"HarvesterEditContainer",emits:["update"],components:{LabeledInput:p.o,LabeledSelect:v.A,InputOrDisplay:h.A,Banner:f.l,DiskPerformanceOptions:y["default"]},props:{mode:{type:String,default:"create"},value:{type:Object,required:!0}},data(){return{VOLUME_TYPE:b._w,InterfaceOption:b.$z}},watch:{"value.type"(e){"cd-rom"===e&&(this.value["bus"]="sata",this.update())}},methods:{update(){this.$emit("update")}}},k=a(47433);const C=(0,k.A)(g,[["render",m]]);var N=C},23101:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return _}});var o=a(9274);const l={class:"row mb-20"},s={"data-testid":"input-hee-name",class:"col span-6"},r={"data-testid":"input-hee-type",class:"col span-6"},i={class:"row mb-20"},n={"data-testid":"input-hee-volumeName",class:"col span-6"},d={"data-testid":"input-hee-size",class:"col span-6"},u={class:"row mb-20"},c={key:0,"data-testid":"input-hee-image",class:"col span-6"},m={"data-testid":"input-hee-bus",class:"col span-6"},p={key:1,"data-testid":"input-hee-shareable",class:"col span-6"},v={key:2,class:"col span-6"};function h(e,t,a,h,b,f){const y=(0,o.resolveComponent)("LabeledInput"),g=(0,o.resolveComponent)("InputOrDisplay"),k=(0,o.resolveComponent)("LabeledSelect"),C=(0,o.resolveComponent)("UnitInput"),N=(0,o.resolveComponent)("Checkbox"),V=(0,o.resolveComponent)("Banner"),w=(0,o.resolveComponent)("LabelValue"),E=(0,o.resolveComponent)("DiskPerformanceOptions");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(g,{name:e.t("harvester.fields.name"),value:a.value.name,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(y,{value:a.value.name,"onUpdate:value":[t[0]||(t[0]=e=>a.value.name=e),f.update],label:e.t("harvester.fields.name"),mode:a.mode,required:""},null,8,["value","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(g,{name:e.t("harvester.fields.type"),value:a.value.type,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.type,"onUpdate:value":[t[1]||(t[1]=e=>a.value.type=e),f.update],label:e.t("harvester.fields.type"),mode:a.mode,options:b.VOLUME_TYPE,required:""},null,8,["value","label","mode","options","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(g,{name:e.t("harvester.fields.volume"),value:a.value.volumeName,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.volumeName,"onUpdate:value":[t[2]||(t[2]=e=>a.value.volumeName=e),f.update],disabled:f.isDisabled,label:e.t("harvester.fields.volume"),mode:a.mode,options:f.volumeOption,required:""},null,8,["value","disabled","label","mode","options","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",d,[(0,o.createVNode)(g,{name:e.t("harvester.fields.size"),value:a.value.size,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(C,{value:a.value.size,"onUpdate:value":[t[3]||(t[3]=e=>a.value.size=e),f.update],"output-modifier":!0,increment:1024,"input-exponent":3,label:e.t("harvester.fields.size"),mode:a.mode,disabled:!0,suffix:b.GIBIBYTE},null,8,["value","label","mode","suffix","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",u,[f.image?((0,o.openBlock)(),(0,o.createElementBlock)("div",c,[(0,o.createVNode)(g,{name:e.t("harvester.fields.image"),value:f.image,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(y,{value:f.image,"onUpdate:value":[t[4]||(t[4]=e=>f.image=e),f.update],label:e.t("harvester.fields.image"),mode:a.mode,disabled:!0},null,8,["value","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])):(0,o.createCommentVNode)("",!0),(0,o.createElementVNode)("div",m,[(0,o.createVNode)(g,{name:e.t("harvester.virtualMachine.volume.bus"),value:a.value.bus,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.bus,"onUpdate:value":[t[5]||(t[5]=e=>a.value.bus=e),f.update],label:e.t("harvester.virtualMachine.volume.bus"),mode:a.mode,options:b.InterfaceOption,disabled:!0,required:""},null,8,["value","label","mode","options","onUpdate:value"])]),_:1},8,["name","value","mode"])]),f.isShareableCapable?((0,o.openBlock)(),(0,o.createElementBlock)("div",p,[(0,o.createVNode)(N,{value:a.value.shareable,"onUpdate:value":[t[6]||(t[6]=e=>a.value.shareable=e),f.update],class:"check",type:"checkbox","label-key":"harvester.virtualMachine.volume.shareable.label","tooltip-key":"harvester.virtualMachine.volume.shareable.tip",mode:a.mode},null,8,["value","mode","onUpdate:value"]),a.value.shareable?((0,o.openBlock)(),(0,o.createBlock)(V,{key:0,color:"warning",label:e.t("harvester.virtualMachine.volume.shareable.warning")},null,8,["label"])):(0,o.createCommentVNode)("",!0)])):(0,o.createCommentVNode)("",!0),a.value.volumeBackups?((0,o.openBlock)(),(0,o.createElementBlock)("div",v,[(0,o.createVNode)(g,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:a.value.volumeBackups.readyToUse,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(w,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:a.value.volumeBackups.readyToUse},null,8,["name","value"])]),_:1},8,["name","value","mode"])])):(0,o.createCommentVNode)("",!0)]),a.value.volumeBackups&&a.value.volumeBackups.error&&a.value.volumeBackups.error.message?((0,o.openBlock)(),(0,o.createBlock)(V,{key:0,color:"error",class:"mb-20",label:a.value.volumeBackups.error.message},null,8,["label"])):(0,o.createCommentVNode)("",!0),(0,o.createVNode)(E,{value:a.value,mode:a.mode,onUpdate:f.update},null,8,["value","mode","onUpdate"])])}var b=a(73344),f=a(79380),y=a(39412),g=a(10566),k=a(60090),C=a(9980),N=a(42200),V=a(74302),w=a(35664),E=a(14220),M=a(2602),x=a(41837),B=a(32766),I=a(66905),U=a(84757),S=a(35294),T={name:"HarvesterEditExisting",emits:["update"],components:{UnitInput:b.A,LabeledInput:f.o,LabeledSelect:g.A,InputOrDisplay:k.A,LabelValue:y.A,Banner:C.l,Checkbox:N.S,DiskPerformanceOptions:S["default"]},props:{mode:{type:String,default:E.YQ},value:{type:Object,required:!0},isEdit:{type:Boolean,default:!1},namespace:{type:String,default:null},idx:{type:Number,default:0},rows:{type:Array,required:!0}},data(){return this.value.realName&&(this.value.volumeName=this.value.realName),{GIBIBYTE:U.Wl,VOLUME_TYPE:I._w,InterfaceOption:I.$z,loading:!1}},computed:{isDisabled(){return!this.value.newCreateId&&this.isEdit},allPVCs(){const e=this.$store.getters["harvester/all"](w.YH);return e.filter(e=>!this.namespace||this.namespace===e.metadata.namespace)||[]},image(){const e=this.$store.getters["harvester/all"](B.rk.IMAGE).find(e=>e.id===this.pvcResource?.metadata?.annotations?.[M.r.IMAGE_ID]);if(e)return`${e.metadata.namespace}/${e.spec.displayName}`},pvcResource(){return this.allPVCs.find(e=>e.metadata.name===this.value.volumeName)},storageClasses(){return this.$store.getters["harvester/all"](w.fJ)||[]},isShareableCapable(){const e=this.pvcResource?.spec;if(!e)return!1;const t=(e.accessModes||[]).includes("ReadWriteMany"),a=e.volumeMode===x.vU.BLOCK,o=this.storageClasses.find(t=>t.name===e.storageClassName);return!!o&&(t&&a&&o.provisioner!==w.lI)},volumeOption(){return(0,V.Ul)(this.allPVCs.filter(e=>{let t=!0;return this.rows.forEach(a=>{a.volumeName===e.metadata.name&&(t=!1)}),!(0===this.idx&&!e.metadata?.annotations?.[M.r.IMAGE_ID])&&(!(this.idx>0&&e.metadata?.annotations?.[M.r.IMAGE_ID])&&(!e.isGoldenImageVolume&&(t&&e.isAvailable)))}).map(e=>({label:e.metadata.name,value:e.metadata.name})),"label")}},watch:{"value.volumeName"(e){const t=this.allPVCs.find(t=>t.metadata.name===e);if(!t)return;this.value.accessModes=t.spec.accessModes[0],this.value.size=t.spec.resources.requests.storage,this.value.storageClassName=t.spec.storageClassName,this.value.volumeMode=t.spec.volumeMode,this.value.shareable=!1;const a=t.metadata?.annotations||{};this.value.cache=a[M.r.DISK_CACHE_MODE]||"",this.value.io=a[M.r.DISK_IO_MODE]||"",this.value.dedicatedIOThread="true"===a[M.r.DISK_DEDICATED_IOTHREAD],this.update()},"value.type"(e){"cd-rom"===e&&(this.value["bus"]="sata",this.update())},isShareableCapable(e){!e&&this.value.shareable&&(this.value.shareable=!1,this.update())},pvcResource:{handler(e){!this.value.volumeName&&e?.metadata?.name&&(this.value.volumeName=e.metadata.name)},deep:!0,immediate:!0}},methods:{update(){this.$emit("update")}}},O=a(47433);const A=(0,O.A)(T,[["render",h]]);var _=A},8573:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return P}});var o=a(9274);const l={class:"row mb-20"},s={"data-testid":"input-hevi-name",class:"col span-6"},r={"data-testid":"input-hevi-type",class:"col span-6"},i={class:"row mb-20"},n={"data-testid":"input-hevi-image",class:"col span-6"},d={"data-testid":"input-hevi-size",class:"col span-6"},u={class:"row mb-20"},c={"data-testid":"input-hevi-bus",class:"col span-6"},m={key:0,class:"col span-3"},p={class:"row mb-20"},v={key:0,class:"col span-3"};function h(e,t,a,h,b,f){const y=(0,o.resolveComponent)("LabeledInput"),g=(0,o.resolveComponent)("InputOrDisplay"),k=(0,o.resolveComponent)("LabeledSelect"),C=(0,o.resolveComponent)("UnitInput"),N=(0,o.resolveComponent)("LabelValue"),V=(0,o.resolveComponent)("Banner"),w=(0,o.resolveComponent)("DiskPerformanceOptions");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(g,{name:e.t("harvester.fields.name"),value:a.value.name,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(y,{value:a.value.name,"onUpdate:value":[t[0]||(t[0]=e=>a.value.name=e),f.update],disabled:!a.isCreate&&f.isExistingCdrom,label:e.t("harvester.fields.name"),required:"",mode:a.mode},null,8,["value","disabled","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(g,{name:e.t("harvester.fields.type"),value:a.value.type,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.type,"onUpdate:value":[t[1]||(t[1]=e=>a.value.type=e),f.onTypeChange],disabled:!a.isCreate&&f.isExistingCdrom,label:e.t("harvester.fields.type"),options:b.VOLUME_TYPE,mode:a.mode},null,8,["value","disabled","label","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(g,{name:e.t("harvester.fields.image"),value:f.imageName,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.image,"onUpdate:value":[t[2]||(t[2]=e=>a.value.image=e),f.onImageChange],disabled:(0===a.idx||f.isExistingCdrom)&&!a.isCreate&&!a.value.newCreateId&&a.isVirtualType,label:e.t("harvester.fields.image"),options:f.imagesOption,mode:a.mode,searchable:!0,required:a.validateRequired},null,8,["value","disabled","label","options","mode","required","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",d,[(0,o.createVNode)(g,{name:e.t("harvester.fields.size"),value:a.value.size,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(C,{value:a.value.size,"onUpdate:value":[t[3]||(t[3]=e=>a.value.size=e),f.update],"output-modifier":!0,increment:1024,"input-exponent":3,label:e.t("harvester.fields.size"),mode:a.mode,required:a.validateRequired,disabled:a.isResizeDisabled||f.isEmptyImage||!a.isCreate&&f.isExistingCdrom,suffix:b.GIBIBYTE},null,8,["value","label","mode","required","disabled","suffix","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",u,[(0,o.createElementVNode)("div",c,[(0,o.createVNode)(g,{name:e.t("harvester.virtualMachine.volume.bus"),value:a.value.bus,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.bus,"onUpdate:value":[t[4]||(t[4]=e=>a.value.bus=e),f.onBusChange],label:e.t("harvester.virtualMachine.volume.bus"),mode:a.mode,options:b.InterfaceOption,disabled:!a.isCreate&&f.isExistingCdrom},null,8,["value","label","mode","options","disabled","onUpdate:value"])]),_:1},8,["name","value","mode"])]),a.value.volumeEncryptionFeatureEnabled&&f.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",m,[(0,o.createVNode)(N,{name:e.t("harvester.virtualMachine.volume.encryption"),value:f.encryptionValue},null,8,["name","value"])])):(0,o.createCommentVNode)("",!0)]),(0,o.createElementVNode)("div",p,[a.value.volumeBackups&&f.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",v,[(0,o.createVNode)(N,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:f.readyToUse},null,8,["name","value"])])):(0,o.createCommentVNode)("",!0)]),a.value.volumeBackups&&a.value.volumeBackups.error&&a.value.volumeBackups.error.message?((0,o.openBlock)(),(0,o.createBlock)(V,{key:0,color:"error",class:"mb-20",label:a.value.volumeBackups.error.message},null,8,["label"])):(0,o.createCommentVNode)("",!0),!f.isView&&f.showDiskTooSmallError?((0,o.openBlock)(),(0,o.createBlock)(V,{key:1,color:"error",label:e.t("harvester.virtualMachine.volume.vmImageVolumeTip",{diskSize:f.diskSize,imageVirtualSize:f.imageVirtualSize})},null,8,["label"])):(0,o.createCommentVNode)("",!0),(0,o.createVNode)(w,{value:a.value,mode:a.mode,onUpdate:f.update},null,8,["value","mode","onUpdate"])])}var b=a(68851),f=a(73344),y=a(79380),g=a(10566),k=a(60090),C=a(9980),N=a(35664),V=a(95799),w=a(32766),E=a(2602),M=a(66905),x=a(14220),B=a(39412),I=a(92043),U=a(84757),S=a(66490),T=a(35294),O={name:"HarvesterEditVMImage",emits:["update"],components:{UnitInput:f.A,LabeledInput:y.o,LabeledSelect:g.A,InputOrDisplay:k.A,LabelValue:B.A,Banner:C.l,DiskPerformanceOptions:T["default"]},props:{value:{type:Object,default:()=>({})},namespace:{type:String,default:null},mode:{type:String,default:"create"},idx:{type:Number,required:!0},isCreate:{type:Boolean,default:!0},isEdit:{type:Boolean,default:!1},validateRequired:{type:Boolean,required:!0},isVirtualType:{type:Boolean,default:!0},isResizeDisabled:{type:Boolean,default:!1}},data(){return{GIBIBYTE:U.Wl,VOLUME_TYPE:M._w,HCI_ANNOTATIONS:E.r,InterfaceOption:M.$z,loading:!1,images:[]}},fetch(){this.images=this.$store.getters["harvester/all"](w.rk.IMAGE)},computed:{encryptionValue(){return(0,I.TF)(String(this.value.isEncrypted))},isView(){return this.mode===x.nW},isExistingCdrom(){return"cd-rom"===this.value.type&&!this.value.newCreateId},isEmptyImage(){return this.value.image===S.K},isHotplugCdRomFeatureEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("hotplugCdRom")},imagesOption(){const e=this.images.filter(e=>{if(!e.isReady)return!1;const t="harvester-system"===e.namespace&&e.labels?.[E.r.UPGRADE];return!t}).sort((e,t)=>e.creationTimestamp>t.creationTimestamp?-1:1).map(e=>({label:this.imageOptionLabel(e),value:e.id,disabled:e.isImportedImage})),t=[];return this.isHotplugCdRomFeatureEnabled&&t.push({label:this.t("harvester.virtualMachine.volume.emptyImage"),value:S.K,disabled:!1}),t.push(...e),t},imageName(){const e=this.imagesOption.find(e=>e.value===this.value.image);return e?e.label:"-"},readyToUse(){const e=String(this.value.volumeBackups?.readyToUse||!1);return(0,I.TF)(e)},pvcsResource(){const e=this.$store.getters["harvester/all"](N.YH)||[];return e.find(e=>!this.namespace||e.id===`${this.namespace}/${this.value.volumeName}`)},thirdPartyStorageEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("thirdPartyStorage")},selectedImage(){return this.$store.getters["harvester/all"](w.rk.IMAGE)?.find(e=>this.value.image===e.id)},imageVirtualSize(){return this.selectedImage?.virtualSize?this.selectedImage.virtualSize.replace(" ",""):"0"},diskSize(){const e=this.value?.size||"0";return e},imageVirtualSizeInByte(){return Math.max(this.selectedImage?.status?.size,this.selectedImage?.status?.virtualSize)},diskSizeInByte(){return(0,V.ao)(this.value?.size||"0")},showDiskTooSmallError(){return!!this.thirdPartyStorageEnabled&&this.imageVirtualSizeInByte>this.diskSizeInByte}},watch:{"value.type"(e){"cd-rom"===e&&(this.value["bus"]="sata",this.updateHotpluggable(),this.update())},"value.image"(e){this.checkImageExists(e)},imagesOption(){this.checkImageExists(this.value.image)},pvcsResource:{handler(e){if(e?.spec?.resources?.requests?.storage&&this.isVirtualType){const t=(0,V.ao)(e.spec.resources.requests.storage),a=(0,V.Mo)(t,{increment:1024,addSuffix:!1,maxExponent:3,minExponent:3});this.value.size=`${a}${U.Wl}`}},deep:!0,immediate:!0}},methods:{imageOptionLabel(e){let t=`${e.metadata.namespace}/${e.spec.displayName}`;return this.thirdPartyStorageEnabled&&(t+=` (${e.imageStorageClass} / ${e.virtualSize})`),t},update(){this.value.hasDiskError=this.showDiskTooSmallError,this.$emit("update")},updateHotpluggable(){"cd-rom"!==this.value.type?this.value["hotpluggable"]=!1:this.value["hotpluggable"]="sata"===this.value.bus},onTypeChange(){this.value.image===S.K&&"cd-rom"!==this.value.type&&(this.value["image"]=""),this.updateHotpluggable(),this.update()},onBusChange(){this.value.image===S.K&&"sata"!==this.value.bus&&(this.value["image"]=""),this.updateHotpluggable(),this.update()},onImageChange(){if(this.value.image===S.K)return this.value["type"]="cd-rom",this.value["bus"]="sata",this.value["size"]=`0${U.Wl}`,void this.update();const e=this.$store.getters["harvester/all"](w.rk.IMAGE)?.find(e=>this.value.image===e.id),t=/iso$/i.test(e?.imageSuffix),a=Math.max(e?.status?.size,e?.status?.virtualSize);if(t?(this.value["type"]="cd-rom",this.value["bus"]="sata"):(this.value["type"]="disk",this.value["bus"]="virtio"),this.updateHotpluggable(),a){let e=Math.ceil(a/1024/1024/1024);t||(e=Math.max(e,10)),this.value["size"]=`${e}${U.Wl}`}this.update()},onOpen(){this.images=this.$store.getters["harvester/all"](w.rk.IMAGE)},checkImageExists(e){e!==S.K&&e&&this.imagesOption.length>0&&!(0,b.jq)(this.imagesOption,"value",e)&&(this.$store.dispatch("growl/error",{title:this.$store.getters["i18n/t"]("harvester.vmTemplate.tips.notExistImage.title",{name:e}),message:this.$store.getters["i18n/t"]("harvester.vmTemplate.tips.notExistImage.message")},{root:!0}),this.value["image"]="")}}},A=a(47433);const _=(0,A.A)(O,[["render",h]]);var P=_},99213:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return $}});var o=a(9274);const l={class:"row mb-20"},s={class:"col span-6","data-testid":"input-hev-name"},r={class:"col span-6","data-testid":"input-hev-type"},i={class:"row mb-20"},n={"data-testid":"input-hav-storage",class:"col span-6"},d={class:"col span-6","data-testid":"input-hev-size"},u={class:"row mb-20"},c={"data-testid":"input-hev-bus",class:"col span-6"},m={key:0,"data-testid":"input-volume-mode",class:"col span-6"},p={class:"row mb-20"},v={key:0,class:"col span-6"},h={key:1,class:"col span-6"};function b(e,t,a,b,f,y){const g=(0,o.resolveComponent)("Loading"),k=(0,o.resolveComponent)("LabeledInput"),C=(0,o.resolveComponent)("InputOrDisplay"),N=(0,o.resolveComponent)("LabeledSelect"),V=(0,o.resolveComponent)("UnitInput"),w=(0,o.resolveComponent)("DiskPerformanceOptions"),E=(0,o.resolveComponent)("LabelValue");return(0,o.openBlock)(),(0,o.createElementBlock)("div",null,[(0,o.createVNode)(g,{mode:"relative",loading:f.loading},null,8,["loading"]),(0,o.createElementVNode)("div",l,[(0,o.createElementVNode)("div",s,[(0,o.createVNode)(C,{name:e.t("harvester.fields.name"),value:a.value.name,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(k,{value:a.value.name,"onUpdate:value":[t[0]||(t[0]=e=>a.value.name=e),y.update],label:e.t("harvester.fields.name"),mode:a.mode,required:""},null,8,["value","label","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",r,[(0,o.createVNode)(C,{name:e.t("harvester.fields.type"),value:a.value.type,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(N,{value:a.value.type,"onUpdate:value":[t[1]||(t[1]=e=>a.value.type=e),y.update],label:e.t("harvester.fields.type"),options:f.VOLUME_TYPE,required:"",mode:a.mode},null,8,["value","label","options","mode","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",i,[(0,o.createElementVNode)("div",n,[(0,o.createVNode)(C,{name:e.t("harvester.storage.storageClass.label"),value:a.value.storageClassName,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(N,{value:a.value.storageClassName,"onUpdate:value":[t[2]||(t[2]=e=>a.value.storageClassName=e),y.update],options:y.storageClassOptions,label:e.t("harvester.storage.storageClass.label"),mode:a.mode,disabled:y.isDisabled,required:a.validateRequired},null,8,["value","options","label","mode","disabled","required","onUpdate:value"])]),_:1},8,["name","value","mode"])]),(0,o.createElementVNode)("div",d,[(0,o.createVNode)(C,{name:e.t("harvester.fields.size"),value:a.value.size,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(V,{value:a.value.size,"onUpdate:value":[t[3]||(t[3]=e=>a.value.size=e),y.update],"output-modifier":!0,increment:1024,"input-exponent":3,mode:a.mode,required:a.validateRequired,label:e.t("harvester.fields.size"),disabled:a.isResizeDisabled,suffix:f.GIBIBYTE},null,8,["value","mode","required","label","disabled","suffix","onUpdate:value"])]),_:1},8,["name","value","mode"])])]),(0,o.createElementVNode)("div",u,[(0,o.createElementVNode)("div",c,[(0,o.createVNode)(C,{name:e.t("harvester.virtualMachine.volume.bus"),value:a.value.bus,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(N,{value:a.value.bus,"onUpdate:value":[t[4]||(t[4]=e=>a.value.bus=e),y.update],label:e.t("harvester.virtualMachine.volume.bus"),mode:a.mode,options:f.InterfaceOption,required:""},null,8,["value","label","mode","options","onUpdate:value"])]),_:1},8,["name","value","mode"])]),y.showVolumeMode?((0,o.openBlock)(),(0,o.createElementBlock)("div",m,[(0,o.createVNode)(C,{name:e.t("harvester.volume.volumeMode"),value:a.value.volumeMode,mode:a.mode},{default:(0,o.withCtx)(()=>[(0,o.createVNode)(N,{value:a.value.volumeMode,"onUpdate:value":[t[5]||(t[5]=e=>a.value.volumeMode=e),y.update],label:e.t("harvester.volume.volumeMode"),mode:a.mode,options:y.volumeModeOptions,disabled:a.isEdit,required:""},null,8,["value","label","mode","options","disabled","onUpdate:value"])]),_:1},8,["name","value","mode"])])):(0,o.createCommentVNode)("",!0)]),(0,o.createVNode)(w,{value:a.value,mode:a.mode,onUpdate:y.update},null,8,["value","mode","onUpdate"]),(0,o.createElementVNode)("div",p,[a.value.volumeEncryptionFeatureEnabled&&y.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",v,[(0,o.createVNode)(E,{name:e.t("harvester.virtualMachine.volume.encryption"),value:y.encryptionValue},null,8,["name","value"])])):(0,o.createCommentVNode)("",!0),a.value.volumeBackups&&y.isView?((0,o.openBlock)(),(0,o.createElementBlock)("div",h,[(0,o.createVNode)(E,{name:e.t("harvester.virtualMachine.volume.readyToUse"),value:y.readyToUse},null,8,["name","value"])])):(0,o.createCommentVNode)("",!0)])])}var f=a(87619),y=a(73344),g=a(60090),k=a(79380),C=a(10566),N=a(35664),V=a(95799),w=a(66905),E=a(14220),M=a(39412),x=a(35294),B=a(92043),I=a(82877),U=a(15908),S=a(84757),T=a(39407),O=a(41837);const{READ_WRITE_MANY:A,READ_WRITE_ONCE:_}=O.Nb;var P={name:"HarvesterEditVolume",emits:["update"],components:{InputOrDisplay:g.A,Loading:f.A,LabeledInput:k.o,LabeledSelect:C.A,UnitInput:y.A,LabelValue:M.A,DiskPerformanceOptions:x["default"]},props:{mode:{type:String,default:"create"},isEdit:{type:Boolean,default:!1},namespace:{type:String,default:null},value:{type:Object,default:()=>({})},validateRequired:{type:Boolean,required:!0},isVirtualType:{type:Boolean,default:!0},isResizeDisabled:{type:Boolean,default:!1}},data(){return{GIBIBYTE:S.Wl,VOLUME_TYPE:w._w,InterfaceOption:w.$z,loading:!1}},computed:{longhornV2LVMSupport(){return this.$store.getters["harvester-common/getFeatureEnabled"]("longhornV2LVMSupport")},thirdPartyStorageClassEnabled(){return this.$store.getters["harvester-common/getFeatureEnabled"]("thirdPartyStorage")},encryptionValue(){return(0,B.TF)(String(this.value.isEncrypted))},readyToUse(){const e=String(this.value.volumeBackups?.readyToUse||!1);return(0,B.TF)(e)},isView(){return this.mode===E.nW},pvcsResource(){const e=this.$store.getters["harvester/all"](N.YH)||[];return e.find(e=>e.id===`${this.namespace}/${this.value.volumeName}`)},showVolumeMode(){return!(!this.thirdPartyStorageClassEnabled||!1===!!this.value?.storageClassName)&&!this.isLonghornStorageClass},isDisabled(){return!this.value.newCreateId&&this.isEdit&&this.isVirtualType},storageClasses(){return this.$store.getters["harvester/all"](N.fJ)||[]},storageClassOptions(){return this.storageClasses.filter(e=>!e.parameters?.backingImage).map(e=>{let t=e.isDefault?`${e.name} (${this.t("generic.default")})`:e.name,a=!1;return(0,T.N)(e.name)&&(t+=` (${this.t("harvester.storage.internal.label")})`,a=!0),{label:t,value:e.name,disabled:a}})||[]},isLonghornStorageClass(){const e=this.storageClasses.find(e=>e.name===this.value?.storageClassName)||{};return e&&e.isLonghorn},volumeModeOptions(){return Object.values(O.vU)}},watch:{"value.storageClassName":{immediate:!0,handler(e){this.value.accessMode=this.getAccessMode(e),this.value.volumeMode=this.getVolumeMode(e,this.value.volumeMode),this.update()}},"value.type"(e){"cd-rom"===e&&(this.value["bus"]="sata",this.update())},pvcsResource:{handler(e){if(e?.spec?.resources?.requests?.storage){const t=(0,V.ao)(e.spec.resources.requests.storage),a=(0,V.Mo)(t,{increment:1024,addSuffix:!1,maxExponent:3,minExponent:3});this.value.size=`${a}${S.Wl}`}},deep:!0,immediate:!0}},methods:{getVolumeMode(e,t){if(!this.thirdPartyStorageClassEnabled)return O.vU.BLOCK;const a=this.storageClasses.find(t=>t.name===e);return a&&a.isLonghorn?O.vU.BLOCK:t},getAccessMode(e){if(!this.longhornV2LVMSupport)return A;const t=this.storageClasses.find(t=>t.name===e);let a=this.value.pvc?.isLvm||!this.thirdPartyStorageClassEnabled&&this.value.pvc?.isLonghornV2;return t&&(a=t.provisioner===I.LVM_DRIVER||!this.thirdPartyStorageClassEnabled&&t.parameters?.dataEngine===U.DATA_ENGINE_V2),a?_:A},update(){this.$emit("update")}}},D=a(47433);const L=(0,D.A)(P,[["render",b]]);var $=L},19044:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".vm__credentials-users .hasUsers.labeled-select.edit.taggable .labeled-tooltip .icon.status-icon{top:30px}",""]),t["default"]=i},67647:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".volume-source[data-v-61977bc4]{position:relative}.remove-vol[data-v-61977bc4]{position:absolute;top:10px;right:10px;padding:0}",""]),t["default"]=i},34213:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".action[data-v-7d19b7bd]{display:flex;flex-direction:row-reverse}",""]),t["default"]=i},46090:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,"[data-v-0317e5f8] .resource-yaml{flex:1;display:flex;flex-direction:column}[data-v-0317e5f8] .resource-yaml .yaml-editor{flex:1;min-height:200px}[data-v-0317e5f8] .resource-yaml .yaml-editor .code-mirror .CodeMirror{min-height:200px}",""]),t["default"]=i},65393:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".yaml[data-v-9c8ae0f0]{height:350px;overflow:auto}[data-v-9c8ae0f0] .resource-yaml{flex:1;display:flex;flex-direction:column}[data-v-9c8ae0f0] .resource-yaml .yaml-editor{flex:1;min-height:350px}[data-v-9c8ae0f0] .resource-yaml .yaml-editor .code-mirror .CodeMirror{min-height:350px}",""]),t["default"]=i},12265:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".box-title[data-v-88b01cc2]{display:flex;justify-content:space-between;align-items:center}.box-title h3[data-v-88b01cc2]{margin-bottom:0}",""]),t["default"]=i},79628:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".disk-performance[data-v-56411732]{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.disk-performance .expand-toggle[data-v-56411732]{padding:0;font-weight:600}.disk-performance .expand-toggle .icon[data-v-56411732]{margin-right:4px}",""]),t["default"]=i},16479:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".vm-perf .expand-toggle[data-v-021f0f0e]{padding:0;font-weight:600}.vm-perf .expand-toggle .icon[data-v-021f0f0e]{margin-right:4px}",""]),t["default"]=i},31756:function(e,t,a){"use strict";a.r(t);var o=a(36758),l=a.n(o),s=a(40935),r=a.n(s),i=r()(l());i.push([e.id,".box-title[data-v-46232beb]{display:flex;justify-content:space-between;align-items:center}.box-title h3[data-v-46232beb]{margin-bottom:0}.title[data-v-46232beb]{display:flex;align-items:center}.title .state[data-v-46232beb]{font-size:16px}.bootOrder[data-v-46232beb]{display:flex;align-items:center}.buttons[data-v-46232beb]{width:100%;display:flex;justify-content:flex-end}.volume-status[data-v-46232beb]:first-letter{text-transform:uppercase}.resource-external[data-v-46232beb]{display:flex;justify-content:center;align-items:center}.banner[data-v-46232beb]{margin:10px 0}",""]),t["default"]=i},154:function(e,t,a){"use strict";var o=a(68851);t.A={computed:{conditions(){return this.value?.conditions||[]},readyCondition(){return(0,o.cy)(this.conditions)?(0,o.jq)(this.conditions,"type","Ready")||{}:this.conditions.Ready},schedulableCondition(){return(0,o.cy)(this.conditions)?(0,o.jq)(this.conditions,"type","Schedulable")||{}:this.conditions.Schedulable}}}},8461:function(e,t,a){"use strict";a.d(t,{n:function(){return l}});const o=[401,403,404];function l(e,t=""){const a=Array.isArray(e)?e:e?[e]:[];if(!a.length)return[];const l=t;if(a.some(e=>o.includes(e?._status||e?.response?.status)))return[l];const s=a.map(e=>"string"===typeof e?e:e?.message||e?._statusText||"").filter(Boolean);return s.length?s:[l]}},84388:function(e,t,a){var o=a(19044);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("32886c2c",o,!0,{sourceMap:!1,shadowMode:!1})},38239:function(e,t,a){var o=a(67647);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("9e59092a",o,!0,{sourceMap:!1,shadowMode:!1})},27461:function(e,t,a){var o=a(34213);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("05d24086",o,!0,{sourceMap:!1,shadowMode:!1})},36298:function(e,t,a){var o=a(46090);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("1740b5fe",o,!0,{sourceMap:!1,shadowMode:!1})},8497:function(e,t,a){var o=a(65393);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("abfc0446",o,!0,{sourceMap:!1,shadowMode:!1})},40809:function(e,t,a){var o=a(12265);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("76192f9b",o,!0,{sourceMap:!1,shadowMode:!1})},4972:function(e,t,a){var o=a(79628);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("1a5868c2",o,!0,{sourceMap:!1,shadowMode:!1})},36927:function(e,t,a){var o=a(16479);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("7f1e3afe",o,!0,{sourceMap:!1,shadowMode:!1})},99052:function(e,t,a){var o=a(31756);o.__esModule&&(o=o.default),"string"===typeof o&&(o=[[e.id,o,""]]),o.locals&&(e.exports=o.locals);var l=a(74825).A;l("6b222902",o,!0,{sourceMap:!1,shadowMode:!1})}}]);
|
|
//# sourceMappingURL=harvester-1.10.0-dev.umd.min.751.js.map
|