UNPKG

@appscode/ui-builder

Version:
1 lines 4.79 kB
import{n as e}from"./wrapper-5d451278.js";import"vue";import"./es.array.concat-bc6da240.js";import"./index-ba66ec6f.js";import"./web.dom-collections.iterator-98113e95.js";import"./set-to-string-tag-edc1b53a.js";import"./object-set-prototype-of-866dfe15.js";import{_ as t,r as i}from"./stickyContent-c27d9838.js";import{d as a}from"./data-function-mixins-f9cb6d20.js";import{i as s}from"./individual-item-disablity-check-7d31b40d.js";import{_ as n}from"./edit-icon-cad3d9bf.js";import{_ as l}from"./trash-icon-42a90253.js";var d=e({render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[Object.keys(e.label).length?i("ub-label-element",{attrs:{label:Object.assign({},e.label,{isSubsection:!0}),schema:e.schema,"is-required":e.required,errors:e.errors}}):e._e(),e._v(" "),e._l(e.modelValue,(function(t,a){return i("div",{key:e.$ubt(e.labelText)+"-"+a,class:["ac-final-state",e.isShowingEditableField||0!==a?"":"is-flex is-align-items-center is-justify-content-space-between",e.editFieldIdx===a?"mb-0":"mb-15"]},[e.editFieldIdx!==a?i("div",{staticClass:"state-left is-flex is-align-items-center"},[i("span",{staticClass:"circle-list-shape"}),e._v(" "),i("h6",{staticClass:"is-small"},[e._v(e._s(t))]),e._v(" "),i("button",{staticClass:"button ac-button is-transparent icon",class:{"is-disabled":e.individualItemDisabilityVerdict[a]||e.disabled||e.showNewValueField},attrs:{title:"Edit",disabled:e.individualItemDisabilityVerdict[a]||e.disabled||e.showNewValueField},on:{click:function(t){return t.preventDefault(),e.onEditClick(a)}}},[i("img",{attrs:{src:n,alt:""}})]),e._v(" "),i("button",{staticClass:"button ac-button is-transparent icon",class:{"is-disabled":e.individualItemDisabilityVerdict[a]||e.disabled||e.showNewValueField},attrs:{title:"Delete",disabled:e.individualItemDisabilityVerdict[a]||e.disabled||e.showNewValueField},on:{click:function(t){return t.preventDefault(),e.deleteItem(a)}}},[i("img",{attrs:{src:l,alt:"delete-icon"}})])]):i("ub-list-input",{attrs:{label:e.label,ui:e.ui,disabled:e.disabled,"is-update":!0,required:!0},on:{save:e.saveItem},model:{value:e.newItem,callback:function(t){e.newItem=t},expression:"newItem"}}),e._v(" "),i("div",{staticClass:"state-right"},[0!==a||e.isShowingEditableField||e.disabled?e._e():i("button",{staticClass:"button ac-button is-transparent is-primary is-small is-hovered-underline",on:{click:function(t){t.preventDefault(),e.isSavingNewElement=!0}}},[e._v("\n + "+e._s(e.$ubt("buttons.add_new"))+"\n ")])])],1)})),e._v(" "),e.showNewValueField?i("ub-list-input",{attrs:{label:e.label,ui:e.ui,"disabled-validation":!0,disabled:e.disabled,"is-update":!1,required:!0},on:{save:e.saveItem},model:{value:e.newItem,callback:function(t){e.newItem=t},expression:"newItem"}}):e._e()],2)},staticRenderFns:[]},void 0,{name:"ub-list-input-form",components:{UbListInput:function(){return import("./ListInput-d935bc6b.js").then((function(e){return e.default}))},UbLabelElement:function(){return import("./LabelElement-d1b528f2.js").then((function(e){return e.default}))}},mixins:[a,s],props:{label:{type:Object,default:function(){return{}}},ui:{type:Object,default:function(){return{}}},schema:{type:Object,default:function(){return{}}},wholeSchema:{type:Object,default:function(){return{}}},value:{type:null,default:function(){return[]}},disabled:{type:Boolean,default:!1},labelType:{type:Object,default:function(){return{}}},required:{type:Boolean,default:!1},errors:{type:Array,default:function(){return[]}}},data:function(){return{modelValue:[],newItem:"",updatePass:0,isSavingNewElement:!1,editFieldIdx:""}},computed:{schemaRef:function(){return this.ui.schema.$ref||""},showNewValueField:function(){return 0===this.modelValue.length||this.isSavingNewElement},isShowingEditableField:function(){return this.showNewValueField||""!==this.editFieldIdx},labelText:function(){return this.label.text||"label"},individualItemsArray:function(){return this.modelValue||[]}},created:function(){this.modelValue=Array.isArray(this.value)?this.value:[]},watch:{modelValue:{deep:!0,handler:function(e){this.$emit("input",e)}}},methods:{saveItem:function(e){var a=this;return t(i.mark((function t(){return i.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:try{a.modelValue||(a.modelValue=[]),e.isUpdate?a.$set(a.modelValue,a.editFieldIdx,e.newItem):a.modelValue.push(e.newItem),a.resetAllData()}catch(e){a.$toasted.error(e)}case 1:case"end":return t.stop()}}),t)})))()},onEditClick:function(e){this.resetAllData(),this.newItem=this.modelValue[e],this.editFieldIdx=e},deleteItem:function(e){this.$delete(this.modelValue,e),this.updatePass+=1,this.resetAllData()},resetAllData:function(){this.newItem="",this.isSavingNewElement=!1,this.editFieldIdx=""}}},void 0,!1,void 0,!1,void 0,void 0,void 0);export default d;