harvester-ui-extension/extensions/harvester/1.9.0-rc4/plugin/harvester-1.9.0-rc4.umd.min.promptRemove.js

2 lines
12 KiB
JavaScript

"use strict";(("undefined"!==typeof self?self:this)["webpackChunkharvester_1_9_0_rc4"]=("undefined"!==typeof self?self:this)["webpackChunkharvester_1_9_0_rc4"]||[]).push([[973],{38074:function(e,t,a){a.r(t),a.d(t,{default:function(){return T}});var r=a(9274);const n={class:"mt-10"},o={class:"mb-10"},l={class:"mb-10 text-warning"},s={class:"ml-20"},c={key:1,class:"ml-20"},i={key:2,class:"ml-20"},m={key:3,class:"ml-20"},p={key:4,class:"ml-20"},d={key:5,class:"ml-20"};function u(e,t,a,u,h,v){const k=(0,r.resolveComponent)("Banner"),y=(0,r.resolveDirective)("clean-html");return(0,r.openBlock)(),(0,r.createElementBlock)("div",n,[(0,r.createElementVNode)("div",o,[(0,r.createTextVNode)((0,r.toDisplayString)(e.t("promptRemove.attemptingToRemove",{type:e.resourceType}))+" ",1),(0,r.withDirectives)((0,r.createElementVNode)("span",null,null,512),[[y,e.resourceNames(e.names,null,e.t)]])]),t[1]||(t[1]=(0,r.createElementVNode)("hr",{class:"mb-10"},null,-1)),(0,r.createElementVNode)("div",l,[t[0]||(t[0]=(0,r.createElementVNode)("i",{class:"icon icon-warning icon-lg mr-5"},null,-1)),(0,r.createTextVNode)(" "+(0,r.toDisplayString)(e.t("harvester.addons.vmMigration.deleteDialog.warning")),1)]),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.relatedSummary,t=>((0,r.openBlock)(),(0,r.createElementBlock)("div",{key:`${t.namespace}/${t.planName}`,class:"mb-10"},[(0,r.createElementVNode)("div",null,"• "+(0,r.toDisplayString)(e.t("harvester.addons.vmMigration.labels.migration"))+":",1),t.migrations.length?((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,{key:0},(0,r.renderList)(t.migrations,e=>((0,r.openBlock)(),(0,r.createElementBlock)("div",{key:e},[(0,r.createElementVNode)("div",s," - "+(0,r.toDisplayString)(e),1)]))),128)):((0,r.openBlock)(),(0,r.createElementBlock)("div",c," - - ")),(0,r.createElementVNode)("div",null,"• "+(0,r.toDisplayString)(e.t("harvester.addons.vmMigration.labels.networkMap"))+":",1),t.networkMap?((0,r.openBlock)(),(0,r.createElementBlock)("div",i," - "+(0,r.toDisplayString)(t.networkMap.name),1)):((0,r.openBlock)(),(0,r.createElementBlock)("div",m," - - ")),(0,r.createElementVNode)("div",null,"• "+(0,r.toDisplayString)(e.t("harvester.addons.vmMigration.labels.storageMap"))+":",1),t.storageMap?((0,r.openBlock)(),(0,r.createElementBlock)("div",p," - "+(0,r.toDisplayString)(t.storageMap.name),1)):((0,r.openBlock)(),(0,r.createElementBlock)("div",d," - - "))]))),128)),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.errors,(e,t)=>((0,r.openBlock)(),(0,r.createBlock)(k,{key:t,color:"error",label:e},null,8,["label"]))),128))])}var h=a(65359),v=a(92043),k=a(99726),y=a(32766),g=(0,r.defineComponent)({name:"PromptRemoveForkliftPlanDialog",emits:["errors"],props:{value:{type:Array,default:()=>[]},names:{type:Array,default:()=>[]},type:{type:String,required:!0},close:{type:Function,required:!0},doneLocation:{type:Object,default:()=>{}}},data(){return{errors:[],removing:!1}},computed:{...(0,h.aH)("action-menu",["toRemove"]),...(0,h.L8)({t:"i18n/t"}),existingRelatedResources(){const e=this.$store.getters["currentProduct"].inStore;return{[y.rk.FORKLIFT_MIGRATION]:this.$store.getters[`${e}/all`](y.rk.FORKLIFT_MIGRATION)||[],[y.rk.FORKLIFT_NETWORK_MAP]:this.$store.getters[`${e}/all`](y.rk.FORKLIFT_NETWORK_MAP)||[],[y.rk.FORKLIFT_STORAGE_MAP]:this.$store.getters[`${e}/all`](y.rk.FORKLIFT_STORAGE_MAP)||[]}},resourceType(){return this.t('typeLabel."forklift.konveyor.io.plan"',{count:this.names?.length||1})},relatedSummary(){const e=this.existingRelatedResources;return(this.value||[]).map(t=>{const a=t?.metadata?.name||"-",r=t?.metadata?.namespace||"",n=this.getPlanMapRef(t,"network"),o=this.getPlanMapRef(t,"storage"),l=e[y.rk.FORKLIFT_MIGRATION].filter(e=>this.ownedByPlan(e,t)).map(e=>e?.metadata?.name).filter(Boolean),s=n?e[y.rk.FORKLIFT_NETWORK_MAP].find(e=>e?.metadata?.name===n.name&&e?.metadata?.namespace===n.namespace):null,c=o?e[y.rk.FORKLIFT_STORAGE_MAP].find(e=>e?.metadata?.name===o.name&&e?.metadata?.namespace===o.namespace):null;return{planName:a,namespace:r,migrations:l,networkMap:s?{namespace:s?.metadata?.namespace||n?.namespace||r,name:s?.metadata?.name}:n?{namespace:n.namespace,name:n.name}:null,storageMap:c?{namespace:c?.metadata?.namespace||o?.namespace||r,name:c?.metadata?.name}:o?{namespace:o.namespace,name:o.name}:null}})}},async mounted(){const e=this.$store.getters["currentProduct"].inStore;try{await Promise.all([this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_MIGRATION}),this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_NETWORK_MAP}),this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_STORAGE_MAP})])}catch{}},methods:{resourceNames:v.Nr,getPlanMapRef(e,t){const a=e?.spec?.map?.[t],r=a?.name;return r?{name:r,namespace:a?.namespace||e?.metadata?.namespace||""}:null},ownedByPlan(e,t){const a=t?.metadata?.name,r=t?.metadata?.uid,n=e?.metadata?.ownerReferences||[];return!!a&&n.some(e=>"Plan"===e?.kind&&e?.name===a&&(!r||!e?.uid||e.uid===r))},buildDeleteTargets(){const e=this.existingRelatedResources,t=new Map,a=(e,a,r)=>{const n=r||"";if(!a)return;const o=`${e}|${n}|${a}`;t.set(o,{type:e,name:a,namespace:n})};for(const r of this.value||[]){const t=this.getPlanMapRef(r,"network"),n=this.getPlanMapRef(r,"storage");t&&a(y.rk.FORKLIFT_NETWORK_MAP,t.name,t.namespace),n&&a(y.rk.FORKLIFT_STORAGE_MAP,n.name,n.namespace),e[y.rk.FORKLIFT_MIGRATION].filter(e=>this.ownedByPlan(e,r)).forEach(e=>a(y.rk.FORKLIFT_MIGRATION,e?.metadata?.name,e?.metadata?.namespace))}return[...t.values()]},async deleteRelatedResources(){const e=this.$store.getters["currentProduct"].inStore,t=this.buildDeleteTargets();if(!t.length)return;let a={};try{a={[y.rk.FORKLIFT_MIGRATION]:await this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_MIGRATION}),[y.rk.FORKLIFT_NETWORK_MAP]:await this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_NETWORK_MAP}),[y.rk.FORKLIFT_STORAGE_MAP]:await this.$store.dispatch(`${e}/findAll`,{type:y.rk.FORKLIFT_STORAGE_MAP})}}catch(r){return}for(const n of t){const e=(a[n.type]||[]).find(e=>e?.metadata?.name===n.name&&e?.metadata?.namespace===n.namespace);if(e)try{await e.remove({params:{propagationPolicy:"Background"}})}catch(r){}}},async remove(e){this.errors=[],this.removing=!0;try{const t=await Promise.allSettled((this.value||[]).map(e=>e.remove({params:{propagationPolicy:"Background"}})));await this.deleteRelatedResources();const a=t.filter(e=>"rejected"===e.status);if(a.length)throw a[0].reason;this.close(e)}catch(t){this.errors=(0,k.rz)(t),this.$emit("errors",t),e&&e(!1)}finally{this.removing=!1}}}}),R=a(47433);const f=(0,R.A)(g,[["render",u]]);var T=f},88891:function(e,t,a){a.r(t),a.d(t,{default:function(){return v}});var r=a(9274);const n={class:"mt-10"},o={class:"mb-5"};function l(e,t,a,l,s,c){const i=(0,r.resolveComponent)("Banner"),m=(0,r.resolveDirective)("clean-html");return(0,r.openBlock)(),(0,r.createElementBlock)("div",n,[(0,r.createElementVNode)("div",o,[(0,r.createTextVNode)((0,r.toDisplayString)(e.t("promptRemove.attemptingToRemove",{type:c.resourceType}))+" ",1),(0,r.withDirectives)((0,r.createElementVNode)("span",null,null,512),[[m,c.resourceNames(a.names,null,e.t)]])]),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.errors,(e,t)=>((0,r.openBlock)(),(0,r.createBlock)(i,{key:t,class:"",color:"error",label:e},null,8,["label"]))),128))])}var s=a(92043),c=a(65359),i=a(41837),m=a(32766),p=a(99726),d={name:"PromptRemoveVMBackupDialog",emits:["errors"],props:{value:{type:Array,default:()=>[]},names:{type:Array,default:()=>[]},type:{type:String,required:!0},close:{type:Function,required:!0},doneLocation:{type:Object,default:()=>{}}},data(){return{errors:[]}},computed:{...(0,c.aH)("action-menu",["toRemove"]),...(0,c.L8)({t:"i18n/t"}),resourceType(){const e=this.value?.[0]?.spec?.type===i.aS.SNAPSHOT,t=this.names?.length||1;return e?this.t(`typeLabel."${m.rk.VM_SNAPSHOT}"`,{count:t}):this.t(`typeLabel."${m.rk.BACKUP}"`,{count:t})}},methods:{resourceNames:s.Nr,async remove(e){try{await Promise.all(this.value.map(e=>e.remove())),this.close(e)}catch(t){this.errors=(0,p.rz)(t),e(!1)}}}},u=a(47433);const h=(0,u.A)(d,[["render",l]]);var v=h},25856:function(e,t,a){a.r(t),a.d(t,{default:function(){return A}});var r=a(9274);const n={class:"mt-10"},o={class:"mt-10"},l={key:0},s={class:"checkbox-container mr-15"},c=["label","value"],i={key:1},m={class:"checkbox-container mr-15"},p={class:"text-warning mb-10 mt-10"},d={class:"text-info mt-20"};function u(e,t,a,u,h,v){const k=(0,r.resolveDirective)("clean-html");return(0,r.openBlock)(),(0,r.createElementBlock)("div",null,[(0,r.createElementVNode)("div",n,[(0,r.createTextVNode)((0,r.toDisplayString)(e.t("promptRemove.attemptingToRemove",{type:a.type}))+" ",1),(0,r.withDirectives)((0,r.createElementVNode)("span",null,null,512),[[k,v.resourceNames(a.names,null,e.t)]]),(0,r.createElementVNode)("div",o,(0,r.toDisplayString)(e.t("harvester.virtualMachine.promptRemove.title")),1),1===a.value.length?((0,r.openBlock)(),(0,r.createElementBlock)("div",l,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(v.removeNameArr[a.value[0].id],(e,a)=>((0,r.openBlock)(),(0,r.createElementBlock)("span",{key:a},[(0,r.createElementVNode)("label",s,[(0,r.withDirectives)((0,r.createElementVNode)("input",{"onUpdate:modelValue":t[0]||(t[0]=e=>h.checkedList=e),type:"checkbox",label:e,value:e},null,8,c),[[r.vModelCheckbox,h.checkedList]]),t[2]||(t[2]=(0,r.createElementVNode)("span",{class:"checkbox-custom mr-5",role:"checkbox"},null,-1)),(0,r.createTextVNode)(" "+(0,r.toDisplayString)(e),1)])]))),128))])):((0,r.openBlock)(),(0,r.createElementBlock)("div",i,[(0,r.createElementVNode)("label",m,[(0,r.withDirectives)((0,r.createElementVNode)("input",{"onUpdate:modelValue":t[1]||(t[1]=e=>h.checkedList=e),type:"checkbox"},null,512),[[r.vModelCheckbox,h.checkedList]]),t[3]||(t[3]=(0,r.createElementVNode)("span",{class:"checkbox-custom mr-5",role:"checkbox"},null,-1)),(0,r.createTextVNode)(" "+(0,r.toDisplayString)(e.t("harvester.virtualMachine.promptRemove.deleteAll")),1)])]))]),(0,r.createElementVNode)("div",p,(0,r.toDisplayString)(e.t("harvester.virtualMachine.promptRemove.tips")),1),(0,r.createElementVNode)("div",d,(0,r.toDisplayString)(e.t("promptRemove.protip",{alternateLabel:h.alternateLabel})),1)])}var h=a(65359),v=a(76978),k=a(52225),y=a.n(k),g=a(92043),R=a(32766),f=a(35881),T={name:"HarvesterPromptRemove",props:{value:{type:Array,default:()=>[]},names:{type:Array,default:()=>[]},type:{type:String,required:!0},close:{type:Function,required:!0},doneLocation:{type:Object,default:()=>{}}},data(){return{checkedList:[],checkAll:!0,alternateLabel:f.ZA}},computed:{...(0,h.aH)("action-menu",["toRemove"]),...(0,h.L8)({t:"i18n/t"}),removeNameArr(){const e={};return this.value.forEach(t=>{if(t.type!==R.rk.VM)return;const a=t.spec.template.spec?.volumes||[],r=a.filter(e=>e.persistentVolumeClaim).map(e=>{if(e.persistentVolumeClaim)return e.name});e[t.id]=r}),e}},watch:{removeNameArr:{handler(e){if(1===this.value.length){const t=Object.values(e[this.value[0].id]);this.checkedList.unshift(t[0])}},deep:!0,immediate:!0}},methods:{resourceNames:g.Nr,remove(){let e;this.doneLocation&&(e={...this.doneLocation}),Promise.all(this.value.map(e=>{if(e.type!==R.rk.VM)return void e.remove();let t="";this.value.length>1?this.checkAll&&this.removeNameArr[e.id].forEach(e=>{t+=`removedDisks=${e}&`}):(this.checkedList.forEach(e=>{t+=`removedDisks=${e}&`}),t.replace(/&$/,""));const a=y()(e.links.self);e.remove({url:`${a.pathname}?${t}propagationPolicy=Foreground`})})).then(t=>{e&&!(0,v.Im)(e)&&this.value?.[0]?.currentRouter().push(e),this.close(),this.$store.commit("action-menu/togglePromptModal",{performCallback:!0,clearTableSelection:!0})}).catch(e=>{this.$emit("errors",e)})}}},N=a(47433);const E=(0,N.A)(T,[["render",u]]);var A=E}}]);
//# sourceMappingURL=harvester-1.9.0-rc4.umd.min.promptRemove.js.map