UNPKG

@appscode/ui-builder

Version:
1 lines 5.85 kB
"use strict";var e=require("./wrapper-944ca3a6.js");require("vue"),require("./es.array.concat-5462e385.js"),require("./index-cc93bc29.js"),require("./web.dom-collections.iterator-4a73d869.js"),require("./set-to-string-tag-4a66b282.js"),require("./object-set-prototype-of-f804d831.js"),require("./stickyContent-fa0d230c.js"),require("./es.symbol.description-77bfa4c4.js");var t=require("./star-icon-cfc027fa.js");require("./web.immediate-813e3257.js");var s=require("./form-element-mixins-d5406c4c.js"),i=require("./data-function-mixins-ba51d46e.js");require("./es.regexp.to-string-6cd9996a.js");var n=require("./individual-item-disablity-check-6865e0e8.js"),l={name:"ub-simple-select-box",mixins:[s.f,i.d,n.i],props:{options:{type:Array,default:function(){return[]}},addNewButton:{type:Object,default:function(){return{}}},allowUserDefinedOption:{type:Boolean,default:!1}},components:{Multiselect:function(){return Promise.resolve().then((function(){return require("./vue-multiselect.min-b0606273.js")})).then((function(e){return e.v})).then((function(e){return e.default}))}},data:function(){return{selectedValue:null,userDefinedOptions:[]}},computed:{formatedOptions:function(){var t=this.options.map((function(t){return"object"===e.ad(t)?t:{value:t,text:t}}));return t.unshift.apply(t,e.j(this.userDefinedOptions)),t},modifiedOptions:function(){var t=this,s=this.formatedOptions.map((function(s,i){var n={};return"object"===e.ad(s)?n=s:(n.text=s,n.value=s),e.e(e.e({},n),{},{$isDisabled:t.individualItemDisabilityVerdict[i]})}));return this.addNewButton.label?[].concat(e.j(s),[{isAddButton:!0}]):e.j(s)},urlType:function(){return/^https?:\/\/|^\/\//i.test(this.addNewButton.url)?"absolute":"relative"},individualItemsArray:function(){return this.formatedOptions||[]}},methods:{getCustomLabel:function(e){return JSON.stringify(e)},updateZIndex:function(e,t,s){var i,n;(null==e?void 0:e.parentNode)&&(n=e.parentNode.closest(".ac-nested-elements")),(null===(i=n)||void 0===i?void 0:i.style)&&(n.style.zIndex=t.toString(),this.updateZIndex(n,t+s))},openDropDown:function(){this.$refs["ub-simple-select-box"].style.zIndex="779";var e=this.$refs["ub-simple-select-box"].closest(".ac-nested-elements");(null==e?void 0:e.style)&&(e.style.zIndex="779",this.updateZIndex(e,779,0)),this.onFocusInput()},closeDropDown:function(){this.$refs["ub-simple-select-box"].style.zIndex="";var e=this.$refs["ub-simple-select-box"].closest(".ac-nested-elements");(null==e?void 0:e.style)&&(e.style.zIndex="",this.updateZIndex(e,0,0)),this.configLabelHoisting(this.selectedValue),this.onFocusOutInput()},addNewOption:function(e){this.allowUserDefinedOption&&(this.userDefinedOptions.push({text:e,value:e}),this.selectedValue={text:e,value:e})},onClickLabel:function(){this.$refs["ub-multiselect-element"].$el.focus()},updateSelectedValue:function(e){this.selectedValue=this.formatedOptions&&this.formatedOptions.find((function(t){return t&&t.value===e}))||null,this.configLabelHoisting(this.selectedValue)},configLabelHoisting:function(e){this.isLabelHoisted=!!e}},watch:{selectedValue:{deep:!0,handler:function(e){this.configLabelHoisting(e),e?e.value&&e.value!==this.modelValue&&(this.modelValue=e.value):this.modelValue=""}},modelValue:{deep:!0,immediate:!0,handler:function(e){e&&e!==(this.selectedValue&&this.selectedValue.value)&&(!this.formatedOptions.map((function(e){return e.value})).includes(e)&&this.allowUserDefinedOption&&this.userDefinedOptions.push({text:e,value:e}),this.updateSelectedValue(e))}},formatedOptions:{deep:!0,immediate:!0,handler:function(){this.modelValue&&this.modelValue!==(this.selectedValue&&this.selectedValue.value)&&this.updateSelectedValue(this.modelValue)}}}},a=e.n({render:function(){var e=this,s=e.$createElement,i=e._self._c||s;return i("div",{ref:"ub-simple-select-box",staticClass:"multi-select-wrapper is-small mb-20",class:{"is-disable":e.disabled||e.isValueEmitting,"has-info-button":e.schema.description}},[e._ssrNode("<label"+e._ssrClass(null,{"show-label":e.isLabelHoisted,"is-required":e.required})+">"+e._ssrEscape("\n "+e._s(e.$ubt(e.labelText))+"\n ")+(e.required?'<span class="is-required"><img'+e._ssrAttr("src",t._)+" alt></span>":"\x3c!----\x3e")+"</label> "),i("info-button",{class:"is-information",attrs:{label:e.labelText,schema:e.schema}}),e._ssrNode(" "),i("multiselect",{ref:"ub-multiselect-element",attrs:{label:"text","custom-label":e.getCustomLabel,options:e.modifiedOptions,"track-by":"value","show-labels":!1,placeholder:"",disabled:e.disabled||e.isValueEmitting,taggable:e.allowUserDefinedOption,"tag-placeholder":e.$ubt("select.add_new_option")},on:{open:e.openDropDown,close:e.closeDropDown,tag:e.addNewOption},scopedSlots:e._u([{key:"singleLabel",fn:function(t){return[e._v("\n "+e._s(e.$ubt(t.option.text))+"\n ")]}},{key:"option",fn:function(t){return[t.option&&t.option.isAddButton?["relative"===e.urlType?i("router-link",{attrs:{to:e.addNewButton.url,target:e.addNewButton.target}},[i("span",{staticClass:"icon title is-6 is-marginless"},[i("i",{staticClass:"fa fa-plus"})]),e._v(" "),i("span",{staticClass:"title is-6"},[e._v(e._s(e.$ubt(e.addNewButton.label)))])]):i("a",{attrs:{href:e.addNewButton.url,target:e.addNewButton.target}},[i("span",{staticClass:"icon title is-6 is-marginless"},[i("i",{staticClass:"fa fa-plus"})]),e._v(" "),i("span",{staticClass:"title is-6"},[e._v(e._s(e.$ubt(e.addNewButton.label)))])])]:[e._v(e._s(e.$ubt(t.option.text)))]]}}]),model:{value:e.selectedValue,callback:function(t){e.selectedValue=t},expression:"selectedValue"}}),e._ssrNode(' <p class="is-error"'+e._ssrStyle(null,null,{display:e.errors.length?"":"none"})+'><i aria-hidden="true" class="fa fa-exclamation-triangle"></i>'+e._ssrEscape("\n "+e._s(e.errors[0])+"\n ")+"</p>")],2)},staticRenderFns:[]},void 0,l,void 0,!1,"data-v-94afde24",!1,void 0,void 0,void 0);exports.default=a;