New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@vueform/multiselect

Package Overview
Dependencies
Maintainers
1
Versions
59
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@vueform/multiselect - npm Package Compare versions

Comparing version 1.2.4 to 1.2.5

src/composables/usePointerAction.js

9

CHANGELOG.md

@@ -0,1 +1,10 @@

## v1.2.5
> `2021-01-17`
### 🐞 Bug Fixes
- Close open dropdown on input click
- Select first option after async search fix #18
- Update options when `:options` property changes #16 #17
## v1.2.4

@@ -2,0 +11,0 @@

2

dist/multiselect.global.js

@@ -1,1 +0,1 @@

var VueformMultiselect=function(e,t){"use strict";function l(e){return String(e).toLowerCase().trim()}function n(e){return-1!==[null,void 0,!1].indexOf(e)}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function u(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);"Object"===l&&e.constructor&&(l=e.constructor.name);if("Map"===l||"Set"===l)return Array.from(e);if("Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l))return i(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}function o(t,u,i){var o=e.toRefs(t),c=o.options,s=o.mode,d=o.trackBy,v=o.limit,f=o.hideSelected,p=o.createTag,h=o.label,m=o.appendNewTag,y=o.multipleLabel,b=o.object,g=o.loading,w=o.delay,S=o.resolveOnLoad,V=o.minChars,k=o.filterResults,B=o.clearOnSearch,O=o.clearOnSelect,x=o.valueProp,N=o.canDeselect,P=o.max,M=i.internalValue,q=i.externalValue,T=i.search,C=i.blurSearch,K=i.clearSearch,D=i.update,j=i.blurInput,A=e.ref([]),R=e.ref([]),E=e.ref(!1),L=e.computed((function(){var e,t=R.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var l,n=t[e];return r(l={},x.value,e),r(l,d.value,n),r(l,h.value,n),l}))),t=t.map((function(e,t){var l;return"object"===a(e)?e:(r(l={},x.value,t),r(l,d.value,e),r(l,h.value,e),l)})),A.value.length&&(t=t.concat(A.value)),t})),$=e.computed((function(){var e=L.value;return U.value.length&&(e=U.value.concat(e)),T.value&&k.value&&(e=e.filter((function(e){return-1!==l(e[d.value]).indexOf(l(T.value))}))),f.value&&(e=e.filter((function(e){return!ne(e)}))),v.value>0&&(e=e.slice(0,v.value)),e})),H=e.computed((function(){switch(s.value){case"single":return!n(M.value[x.value]);case"multiple":case"tags":return!n(M.value)&&M.value.length>0}})),I=e.computed((function(){return void 0!==y&&void 0!==y.value?y.value(M.value):M.value&&M.value.length>1?"".concat(M.value.length," options selected"):"1 option selected"})),F=e.computed((function(){return!L.value.length})),_=e.computed((function(){return L.value.length>0&&0==$.value.length})),U=e.computed((function(){var e;return!1!==p.value&&T.value?-1!==le(T.value)?[]:[(e={},r(e,x.value,T.value),r(e,h.value,T.value),r(e,d.value,T.value),e)]:[]})),W=e.computed((function(){switch(s.value){case"single":return null;case"multiple":case"tags":return[]}})),z=e.computed((function(){return g.value||E.value})),G=function(e){switch("object"!==a(e)&&(e=te(e)),s.value){case"single":D(e);break;case"multiple":case"tags":D(M.value.concat(e))}u.emit("select",Q(e))},J=function(e){switch("object"!==a(e)&&(e=te(e)),s.value){case"single":X();break;case"tags":case"multiple":D(M.value.filter((function(t){return t[x.value]!=e[x.value]})))}u.emit("deselect",Q(e))},Q=function(e){return b.value?e:e[x.value]},X=function(){D(W.value)},Y=function(e){switch(s.value){case"single":return!n(M.value)&&M.value[x.value]==e[x.value];case"tags":case"multiple":return!n(M.value)&&-1!==M.value.map((function(e){return e[x.value]})).indexOf(e[x.value])}},Z=function(e){return!0===e.disabled},ee=function(){return!(void 0===P||-1===P.value||!H.value&&P.value>0)&&M.value.length>=P.value},te=function(e){return L.value[L.value.map((function(e){return String(e[x.value])})).indexOf(String(e))]},le=function(e){return L.value.map((function(e){return l(e[d.value])})).indexOf(l(e))},ne=function(e){return"tags"===s.value&&f.value&&Y(e)},ae=function(e){A.value.push(e)},re=function(){n(q.value)||(M.value=ie(q.value))},ue=function(e){E.value=!0,c.value(T.value).then((function(t){R.value=t,E.value=!1,"function"==typeof e&&e(t)}))},ie=function(e){return n(e)?"single"===s.value?{}:[]:b.value?e:"single"===s.value?te(e)||{}:e.filter((function(e){return!!te(e)})).map((function(e){return te(e)}))};if("single"!==s.value&&!n(q.value)&&!Array.isArray(q.value))throw new Error('v-model must be an array when using "'.concat(s.value,'" mode'));return c&&"function"==typeof c.value?S.value?ue(re):1==b.value&&re():(R.value=c&&c.value?c.value:[],re()),w.value>-1&&e.watch(T,(function(e){e.length<V.value||(B.value&&(R.value=[]),setTimeout((function(){e==T.value&&(E.value=!0,c.value(T.value).then((function(t){e==T.value&&(R.value=t),E.value=!1})))}),w.value))}),{flush:"sync"}),e.watch(q,(function(e){var t,l,a;if(n(e))M.value=ie(e);else switch(s.value){case"single":(b.value?e[x.value]!=M.value[x.value]:e!=M.value[x.value])&&(M.value=ie(e));break;case"multiple":case"tags":t=b.value?e.map((function(e){return e[x.value]})):e,l=M.value.map((function(e){return e[x.value]})),a=l.slice().sort(),t.length===l.length&&t.slice().sort().every((function(e,t){return e===a[t]}))||(M.value=ie(e))}}),{deep:!0}),{filteredOptions:$,hasSelected:H,multipleLabelText:I,extendedOptions:L,noOptions:F,noResults:_,busy:z,select:G,deselect:J,remove:function(e){J(e)},clear:X,isSelected:Y,isDisabled:Z,isMax:ee,getOption:te,handleOptionClick:function(e){if(!Z(e))switch(s.value){case"single":if(Y(e))return void(N.value&&J(e));G(e),C(),j();break;case"multiple":if(Y(e))return void J(e);if(ee())return;G(e),O.value&&K();break;case"tags":if(Y(e))return void J(e);if(ee())return;void 0===te(e[x.value])&&p.value&&(u.emit("tag",e[x.value]),m.value&&ae(e),K()),O.value&&K(),G(e)}},resolveOptions:ue}}var c={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(t,l){const a=function(t,l){var n=e.toRefs(t),a=n.value,r=n.modelValue,u=n.mode;return{internalValue:e.ref("single"!==u.value?[]:{}),externalValue:void 0!==l.expose?r:a}}(t,l),r=function(t,l,a){var r=e.toRefs(t),u=r.object,i=r.valueProp,o=r.mode,c=a.internalValue,s=function(e){return u.value||n(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return n(e)?"single"===o.value?{}:[]:e};return{update:function(e){c.value=d(e);var t=s(e);l.emit("change",t),l.emit("input",t),l.emit("update:modelValue",t)}}}(t,l,{internalValue:a.internalValue}),i=function(t,l,n){var a=e.toRefs(t),r=a.searchable,u=a.mode,i=n.internalValue,o=e.ref(null),c=e.ref(null),s=e.computed((function(){return o.value?"".concat(o.value.length,"ch"):"tags"===u.value&&-1===[null,void 0].indexOf(i.value)&&i.value.length?"1ch":"100%"}));return e.watch(o,(function(e){l.emit("search-change",e)})),{search:o,input:c,tagsSearchWidth:s,clearSearch:function(){o.value=""},blurSearch:function(){r.value&&c.value.blur()}}}(t,l,{internalValue:a.internalValue}),c=function(t,l,n){var a=e.toRefs(t),r=a.maxHeight,u=a.disabled,i=e.ref(!1),o=e.computed((function(){return"".concat(r.value,"px")}));return{isOpen:i,contentMaxHeight:o,open:function(){u.value||(i.value=!0,l.emit("open"))},close:function(){i.value=!1,l.emit("close")}}}(t,l),s=function(t,l,n){var a=e.toRefs(t),r=a.searchable,u=a.id;return{multiselect:e.ref(null),tabindex:e.computed((function(){return r.value?-1:0})),blurInput:function(){document.getElementById(u.value).querySelector(".multiselect-input").blur()}}}(t),d=o(t,l,{externalValue:a.externalValue,internalValue:a.internalValue,search:i.search,blurSearch:i.blurSearch,clearSearch:i.clearSearch,update:r.update,blurInput:s.blurInput}),v=function(t,l,n){var a=e.toRefs(t),r=a.id,u=a.valueProp,i=n.filteredOptions,o=n.handleOptionClick,c=n.search,s=e.ref(null),d=e.computed((function(){return i.value.filter((function(e){return!0!==e.disabled}))})),v=function(e){s.value=e},f=function(){s.value=d.value[0]||null},p=function(){s.value=null},h=function(){var e=document.getElementById(r.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return e.watch(c,(function(e){f()})),{pointer:s,isPointed:function(e){return!!s.value&&s.value[u.value]==e[u.value]},setPointer:v,setPointerFirst:f,clearPointer:p,selectPointer:function(){s.value&&!0!==s.value.disabled?(o(s.value),p()):p()},forwardPointer:function(){if(null===s.value)v(d.value[0]||null);else{var t=d.value.map((function(e){return e[u.value]})).indexOf(s.value[u.value])+1;d.value.length<=t&&(t=0),v(d.value[t]||null)}e.nextTick((function(){h()}))},backwardPointer:function(){if(null===s.value)v(d.value[d.value.length-1]||null);else{var t=d.value.map((function(e){return e[u.value]})).indexOf(s.value[u.value])-1;t<0&&(t=d.value.length-1),v(d.value[t]||null)}e.nextTick((function(){h()}))}}}(t,0,{filteredOptions:d.filteredOptions,handleOptionClick:d.handleOptionClick,search:i.search}),f=function(t,l,n){var a=e.toRefs(t).mode,r=n.internalValue,i=n.update,o=n.close,c=n.clearPointer,s=n.search;return{handleBackspace:function(e){"single"!==a.value&&i(u(r.value).slice(0,-1))},handleEsc:function(e){o(),c(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(t,0,{internalValue:a.internalValue,update:r.update,close:c.close,clearPointer:v.clearPointer,search:i.search});return{...a,...r,...i,...c,...s,...d,...v,...f}}};const s={class:"multiselect-single-label"},d={class:"multiselect-multiple-label"},v={key:2,class:"multiselect-search"},f={key:3,class:"multiselect-tags"},p={class:"multiselect-tag"},h={class:"multiselect-spinner"},m={class:"multiselect-no-options"},y={class:"multiselect-no-results"};return c.render=function(e,l,n,a,r,u){return t.openBlock(),t.createBlock("div",{class:["multiselect",[`is-${n.mode}`,{"is-open":e.isOpen,"is-searchable":n.searchable,"is-disabled":n.disabled,"no-caret":!n.caret}]],id:n.id,onKeydown:l[26]||(l[26]=t.withKeys(t.withModifiers((()=>{}),["prevent"]),["enter"])),ref:"multiselect"},[t.createVNode("div",{class:"multiselect-input",tabindex:e.tabindex,onFocus:l[18]||(l[18]=(...t)=>e.open&&e.open(...t)),onBlur:l[19]||(l[19]=(...t)=>e.close&&e.close(...t)),onKeyup:[l[20]||(l[20]=t.withKeys(((...t)=>e.handleEsc&&e.handleEsc(...t)),["esc"])),l[21]||(l[21]=t.withKeys(((...t)=>e.selectPointer&&e.selectPointer(...t)),["enter"]))],onKeydown:[l[22]||(l[22]=t.withKeys(t.withModifiers(((...t)=>e.handleBackspace&&e.handleBackspace(...t)),["prevent"]),["delete"])),l[23]||(l[23]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["prevent"]),["up"])),l[24]||(l[24]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["prevent"]),["down"]))]},[t.createCommentVNode(" Single label "),"single"==n.mode&&e.hasSelected&&!e.search&&e.internalValue?t.renderSlot(e.$slots,"singlelabel",{key:0,value:e.internalValue},(()=>[t.createVNode("div",s,t.toDisplayString(e.internalValue[n.label]),1)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Multiple label "),"multiple"==n.mode&&e.hasSelected&&!e.search?t.renderSlot(e.$slots,"multiplelabel",{key:1,values:e.internalValue},(()=>[t.createVNode("div",d,t.toDisplayString(e.multipleLabelText),1)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Search "),"tags"!==n.mode&&n.searchable&&!n.disabled?(t.openBlock(),t.createBlock("div",v,[t.withDirectives(t.createVNode("input",{"onUpdate:modelValue":l[1]||(l[1]=t=>e.search=t),onFocus:l[2]||(l[2]=t.withModifiers(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:l[3]||(l[3]=t.withModifiers(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[l[4]||(l[4]=t.withKeys(t.withModifiers(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),l[5]||(l[5]=t.withKeys(t.withModifiers(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[l[6]||(l[6]=t.withKeys(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),l[7]||(l[7]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),l[8]||(l[8]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],ref:"input"},null,544),[[t.vModelText,e.search]])])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Tags (with search) "),"tags"==n.mode?(t.openBlock(),t.createBlock("div",f,[(t.openBlock(!0),t.createBlock(t.Fragment,null,t.renderList(e.internalValue,((a,r,u)=>(t.openBlock(),t.createBlock("span",{key:u},[t.renderSlot(e.$slots,"tag",{option:a,remove:e.remove,disabled:n.disabled},(()=>[t.createVNode("div",p,[t.createTextVNode(t.toDisplayString(a[n.label])+" ",1),n.disabled?t.createCommentVNode("v-if",!0):(t.openBlock(),t.createBlock("i",{key:0,onClick:l[9]||(l[9]=t.withModifiers((()=>{}),["prevent"])),onMousedown:t.withModifiers((t=>e.remove(a)),["prevent"])},null,40,["onMousedown"]))])]))])))),128)),n.searchable&&!n.disabled?(t.openBlock(),t.createBlock("div",{key:0,class:"multiselect-search",style:{width:e.tagsSearchWidth}},[t.withDirectives(t.createVNode("input",{"onUpdate:modelValue":l[10]||(l[10]=t=>e.search=t),onFocus:l[11]||(l[11]=t.withModifiers(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:l[12]||(l[12]=t.withModifiers(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[l[13]||(l[13]=t.withKeys(t.withModifiers(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),l[14]||(l[14]=t.withKeys(t.withModifiers(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[l[15]||(l[15]=t.withKeys(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),l[16]||(l[16]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),l[17]||(l[17]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],style:{width:e.tagsSearchWidth},ref:"input"},null,36),[[t.vModelText,e.search]])],4)):t.createCommentVNode("v-if",!0)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Placeholder "),t.withDirectives(t.createVNode("div",{class:"multiselect-placeholder"},t.toDisplayString(n.placeholder),513),[[t.vShow,n.placeholder&&!e.hasSelected&&!e.search]]),t.createVNode(t.Transition,{name:"multiselect-loading"},{default:t.withCtx((()=>[t.withDirectives(t.createVNode("div",h,null,512),[[t.vShow,e.busy]])])),_:1})],40,["tabindex"]),t.createCommentVNode(" Options "),t.createVNode(t.Transition,{name:"multiselect",onAfterLeave:e.clearSearch},{default:t.withCtx((()=>[t.withDirectives(t.createVNode("div",{class:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[t.renderSlot(e.$slots,"beforelist"),(t.openBlock(!0),t.createBlock(t.Fragment,null,t.renderList(e.filteredOptions,((a,r,u)=>(t.openBlock(),t.createBlock("a",{href:"",class:["multiselect-option",{"is-pointed":e.isPointed(a),"is-selected":e.isSelected(a),"is-disabled":e.isDisabled(a)}],key:u,onMousedown:l[25]||(l[25]=t.withModifiers((()=>{}),["prevent"])),onMouseenter:t=>e.setPointer(a),onClick:t.withModifiers((t=>e.handleOptionClick(a)),["stop","prevent"])},[t.renderSlot(e.$slots,"option",{option:a,search:e.search},(()=>[t.createVNode("span",null,t.toDisplayString(a[n.label]),1)]))],42,["onMouseenter","onClick"])))),128)),t.withDirectives(t.createVNode("span",null,[t.renderSlot(e.$slots,"nooptions",{},(()=>[t.createVNode("div",m,t.toDisplayString(n.noOptionsText),1)]))],512),[[t.vShow,e.noOptions]]),t.withDirectives(t.createVNode("span",null,[t.renderSlot(e.$slots,"noresults",{},(()=>[t.createVNode("div",y,t.toDisplayString(n.noResultsText),1)]))],512),[[t.vShow,e.noResults]]),t.renderSlot(e.$slots,"afterlist")],4),[[t.vShow,e.isOpen]])])),_:3},8,["onAfterLeave"])],42,["id"])},c.__file="src/Multiselect.vue",c}(Vue,Vue);
var VueformMultiselect=function(e,t){"use strict";function l(e){return String(e).toLowerCase().trim()}function n(e){return-1!==[null,void 0,!1].indexOf(e)}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function u(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);"Object"===l&&e.constructor&&(l=e.constructor.name);if("Map"===l||"Set"===l)return Array.from(e);if("Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l))return i(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}function o(t,u,i){var o=e.toRefs(t),c=o.options,s=o.mode,d=o.trackBy,v=o.limit,p=o.hideSelected,f=o.createTag,h=o.label,m=o.appendNewTag,y=o.multipleLabel,b=o.object,g=o.loading,w=o.delay,S=o.resolveOnLoad,V=o.minChars,k=o.filterResults,B=o.clearOnSearch,O=o.clearOnSelect,x=o.valueProp,M=o.canDeselect,N=o.max,P=i.internalValue,q=i.externalValue,T=i.search,C=i.blurSearch,K=i.clearSearch,D=i.update,j=i.blurInput,A=i.pointer,E=e.ref([]),R=e.ref([]),I=e.ref(!1),L=e.computed((function(){var e,t=R.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var l,n=t[e];return r(l={},x.value,e),r(l,d.value,n),r(l,h.value,n),l}))),t=t.map((function(e,t){var l;return"object"===a(e)?e:(r(l={},x.value,t),r(l,d.value,e),r(l,h.value,e),l)})),E.value.length&&(t=t.concat(E.value)),t})),$=e.computed((function(){var e=L.value;return W.value.length&&(e=W.value.concat(e)),T.value&&k.value&&(e=e.filter((function(e){return-1!==l(e[d.value]).indexOf(l(T.value))}))),p.value&&(e=e.filter((function(e){return!ae(e)}))),v.value>0&&(e=e.slice(0,v.value)),e})),H=e.computed((function(){switch(s.value){case"single":return!n(P.value[x.value]);case"multiple":case"tags":return!n(P.value)&&P.value.length>0}})),F=e.computed((function(){return void 0!==y&&void 0!==y.value?y.value(P.value):P.value&&P.value.length>1?"".concat(P.value.length," options selected"):"1 option selected"})),_=e.computed((function(){return!L.value.length})),U=e.computed((function(){return L.value.length>0&&0==$.value.length})),W=e.computed((function(){var e;return!1!==f.value&&T.value?-1!==ne(T.value)?[]:[(e={},r(e,x.value,T.value),r(e,h.value,T.value),r(e,d.value,T.value),e)]:[]})),z=e.computed((function(){switch(s.value){case"single":return null;case"multiple":case"tags":return[]}})),G=e.computed((function(){return g.value||I.value})),J=function(e){switch("object"!==a(e)&&(e=le(e)),s.value){case"single":D(e);break;case"multiple":case"tags":D(P.value.concat(e))}u.emit("select",X(e))},Q=function(e){switch("object"!==a(e)&&(e=le(e)),s.value){case"single":Y();break;case"tags":case"multiple":D(P.value.filter((function(t){return t[x.value]!=e[x.value]})))}u.emit("deselect",X(e))},X=function(e){return b.value?e:e[x.value]},Y=function(){D(z.value)},Z=function(e){switch(s.value){case"single":return!n(P.value)&&P.value[x.value]==e[x.value];case"tags":case"multiple":return!n(P.value)&&-1!==P.value.map((function(e){return e[x.value]})).indexOf(e[x.value])}},ee=function(e){return!0===e.disabled},te=function(){return!(void 0===N||-1===N.value||!H.value&&N.value>0)&&P.value.length>=N.value},le=function(e){return L.value[L.value.map((function(e){return String(e[x.value])})).indexOf(String(e))]},ne=function(e){return L.value.map((function(e){return l(e[d.value])})).indexOf(l(e))},ae=function(e){return"tags"===s.value&&p.value&&Z(e)},re=function(e){E.value.push(e)},ue=function(){n(q.value)||(P.value=oe(q.value))},ie=function(e){I.value=!0,c.value(T.value).then((function(t){R.value=t,I.value=!1,"function"==typeof e&&e(t)}))},oe=function(e){return n(e)?"single"===s.value?{}:[]:b.value?e:"single"===s.value?le(e)||{}:e.filter((function(e){return!!le(e)})).map((function(e){return le(e)}))};if("single"!==s.value&&!n(q.value)&&!Array.isArray(q.value))throw new Error('v-model must be an array when using "'.concat(s.value,'" mode'));return c&&"function"==typeof c.value?S.value?ie(ue):1==b.value&&ue():(R.value=c&&c.value?c.value:[],ue()),w.value>-1&&e.watch(T,(function(e){e.length<V.value||(B.value&&(R.value=[]),setTimeout((function(){e==T.value&&(I.value=!0,c.value(T.value).then((function(t){e==T.value&&(R.value=t,A.value=$.value.filter((function(e){return!0!==e.disabled}))[0]||null),I.value=!1})))}),w.value))}),{flush:"sync"}),e.watch(q,(function(e){var t,l,a;if(n(e))P.value=oe(e);else switch(s.value){case"single":(b.value?e[x.value]!=P.value[x.value]:e!=P.value[x.value])&&(P.value=oe(e));break;case"multiple":case"tags":t=b.value?e.map((function(e){return e[x.value]})):e,l=P.value.map((function(e){return e[x.value]})),a=l.slice().sort(),t.length===l.length&&t.slice().sort().every((function(e,t){return e===a[t]}))||(P.value=oe(e))}}),{deep:!0}),e.watch((function(){return t.options}),(function(e){"function"!=typeof t.options&&(R.value=t.options)})),{filteredOptions:$,hasSelected:H,multipleLabelText:F,extendedOptions:L,noOptions:_,noResults:U,busy:G,select:J,deselect:Q,remove:function(e){Q(e)},clear:Y,isSelected:Z,isDisabled:ee,isMax:te,getOption:le,handleOptionClick:function(e){if(!ee(e))switch(s.value){case"single":if(Z(e))return void(M.value&&Q(e));J(e),C(),j();break;case"multiple":if(Z(e))return void Q(e);if(te())return;J(e),O.value&&K();break;case"tags":if(Z(e))return void Q(e);if(te())return;void 0===le(e[x.value])&&f.value&&(u.emit("tag",e[x.value]),m.value&&re(e),K()),O.value&&K(),J(e)}},resolveOptions:ie}}var c={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(t,l){const a=function(t,l){var n=e.toRefs(t),a=n.value,r=n.modelValue,u=n.mode;return{internalValue:e.ref("single"!==u.value?[]:{}),externalValue:void 0!==l.expose?r:a}}(t,l),r=function(t,l,n){var a=e.toRefs(t),r=a.searchable,u=a.id;return{multiselect:e.ref(null),tabindex:e.computed((function(){return r.value?-1:0})),blurInput:function(){document.getElementById(u.value).querySelector(".multiselect-input").blur()}}}(t),i={pointer:e.ref(null)},c=function(t,l,n){var a=e.toRefs(t),r=a.maxHeight,u=a.disabled,i=a.searchable,o=n.multiselect,c=e.ref(!1),s=e.computed((function(){return"".concat(r.value,"px")}));return{isOpen:c,contentMaxHeight:s,open:function(e){u.value||(c.value=!0,l.emit("open"))},close:function(){c.value=!1,l.emit("close")},handleInputMousedown:function(e){c.value&&!i.value&&(o.value.querySelector(".multiselect-input").dispatchEvent(new Event("blur")),o.value.querySelector(".multiselect-input").blur(),e.preventDefault())}}}(t,l,{multiselect:r.multiselect}),s=function(t,l,a){var r=e.toRefs(t),u=r.object,i=r.valueProp,o=r.mode,c=a.internalValue,s=function(e){return u.value||n(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return n(e)?"single"===o.value?{}:[]:e};return{update:function(e){c.value=d(e);var t=s(e);l.emit("change",t),l.emit("input",t),l.emit("update:modelValue",t)}}}(t,l,{internalValue:a.internalValue}),d=function(t,l,n){var a=e.toRefs(t),r=a.searchable,u=a.mode,i=n.internalValue,o=e.ref(null),c=e.ref(null),s=e.computed((function(){return o.value?"".concat(o.value.length,"ch"):"tags"===u.value&&-1===[null,void 0].indexOf(i.value)&&i.value.length?"1ch":"100%"}));return e.watch(o,(function(e){l.emit("search-change",e)})),{search:o,input:c,tagsSearchWidth:s,clearSearch:function(){o.value=""},blurSearch:function(){r.value&&c.value.blur()}}}(t,l,{internalValue:a.internalValue}),v=o(t,l,{externalValue:a.externalValue,internalValue:a.internalValue,search:d.search,blurSearch:d.blurSearch,clearSearch:d.clearSearch,update:s.update,blurInput:r.blurInput,pointer:i.pointer}),p=function(t,l,n){var a=e.toRefs(t),r=a.id,u=a.valueProp,i=n.filteredOptions,o=n.handleOptionClick,c=n.search,s=n.pointer,d=e.computed((function(){return i.value.filter((function(e){return!0!==e.disabled}))})),v=function(e){s.value=e},p=function(){s.value=d.value[0]||null},f=function(){s.value=null},h=function(){var e=document.getElementById(r.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return e.watch(c,(function(e){p()})),{pointer:s,isPointed:function(e){return!!s.value&&s.value[u.value]==e[u.value]},setPointer:v,setPointerFirst:p,clearPointer:f,selectPointer:function(){s.value&&!0!==s.value.disabled?(o(s.value),f()):f()},forwardPointer:function(){if(null===s.value)v(d.value[0]||null);else{var t=d.value.map((function(e){return e[u.value]})).indexOf(s.value[u.value])+1;d.value.length<=t&&(t=0),v(d.value[t]||null)}e.nextTick((function(){h()}))},backwardPointer:function(){if(null===s.value)v(d.value[d.value.length-1]||null);else{var t=d.value.map((function(e){return e[u.value]})).indexOf(s.value[u.value])-1;t<0&&(t=d.value.length-1),v(d.value[t]||null)}e.nextTick((function(){h()}))}}}(t,0,{filteredOptions:v.filteredOptions,handleOptionClick:v.handleOptionClick,search:d.search,pointer:i.pointer}),f=function(t,l,n){var a=e.toRefs(t).mode,r=n.internalValue,i=n.update,o=n.close,c=n.clearPointer,s=n.search;return{handleBackspace:function(e){"single"!==a.value&&i(u(r.value).slice(0,-1))},handleEsc:function(e){o(),c(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(t,0,{internalValue:a.internalValue,update:s.update,close:c.close,clearPointer:p.clearPointer,search:d.search});return{...a,...c,...r,...i,...s,...d,...v,...p,...f}}};const s={class:"multiselect-single-label"},d={class:"multiselect-multiple-label"},v={key:2,class:"multiselect-search"},p={key:3,class:"multiselect-tags"},f={class:"multiselect-tag"},h={class:"multiselect-spinner"},m={class:"multiselect-no-options"},y={class:"multiselect-no-results"};return c.render=function(e,l,n,a,r,u){return t.openBlock(),t.createBlock("div",{class:["multiselect",[`is-${n.mode}`,{"is-open":e.isOpen,"is-searchable":n.searchable,"is-disabled":n.disabled,"no-caret":!n.caret}]],id:n.id,onKeydown:l[27]||(l[27]=t.withKeys(t.withModifiers((()=>{}),["prevent"]),["enter"])),ref:"multiselect"},[t.createVNode("div",{class:"multiselect-input",tabindex:e.tabindex,onMousedown:l[18]||(l[18]=(...t)=>e.handleInputMousedown&&e.handleInputMousedown(...t)),onFocus:l[19]||(l[19]=(...t)=>e.open&&e.open(...t)),onBlur:l[20]||(l[20]=(...t)=>e.close&&e.close(...t)),onKeyup:[l[21]||(l[21]=t.withKeys(((...t)=>e.handleEsc&&e.handleEsc(...t)),["esc"])),l[22]||(l[22]=t.withKeys(((...t)=>e.selectPointer&&e.selectPointer(...t)),["enter"]))],onKeydown:[l[23]||(l[23]=t.withKeys(t.withModifiers(((...t)=>e.handleBackspace&&e.handleBackspace(...t)),["prevent"]),["delete"])),l[24]||(l[24]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["prevent"]),["up"])),l[25]||(l[25]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["prevent"]),["down"]))]},[t.createCommentVNode(" Single label "),"single"==n.mode&&e.hasSelected&&!e.search&&e.internalValue?t.renderSlot(e.$slots,"singlelabel",{key:0,value:e.internalValue},(()=>[t.createVNode("div",s,t.toDisplayString(e.internalValue[n.label]),1)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Multiple label "),"multiple"==n.mode&&e.hasSelected&&!e.search?t.renderSlot(e.$slots,"multiplelabel",{key:1,values:e.internalValue},(()=>[t.createVNode("div",d,t.toDisplayString(e.multipleLabelText),1)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Search "),"tags"!==n.mode&&n.searchable&&!n.disabled?(t.openBlock(),t.createBlock("div",v,[t.withDirectives(t.createVNode("input",{"onUpdate:modelValue":l[1]||(l[1]=t=>e.search=t),onFocus:l[2]||(l[2]=t.withModifiers(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:l[3]||(l[3]=t.withModifiers(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[l[4]||(l[4]=t.withKeys(t.withModifiers(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),l[5]||(l[5]=t.withKeys(t.withModifiers(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[l[6]||(l[6]=t.withKeys(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),l[7]||(l[7]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),l[8]||(l[8]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],ref:"input"},null,544),[[t.vModelText,e.search]])])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Tags (with search) "),"tags"==n.mode?(t.openBlock(),t.createBlock("div",p,[(t.openBlock(!0),t.createBlock(t.Fragment,null,t.renderList(e.internalValue,((a,r,u)=>(t.openBlock(),t.createBlock("span",{key:u},[t.renderSlot(e.$slots,"tag",{option:a,remove:e.remove,disabled:n.disabled},(()=>[t.createVNode("div",f,[t.createTextVNode(t.toDisplayString(a[n.label])+" ",1),n.disabled?t.createCommentVNode("v-if",!0):(t.openBlock(),t.createBlock("i",{key:0,onClick:l[9]||(l[9]=t.withModifiers((()=>{}),["prevent"])),onMousedown:t.withModifiers((t=>e.remove(a)),["prevent","stop"])},null,40,["onMousedown"]))])]))])))),128)),n.searchable&&!n.disabled?(t.openBlock(),t.createBlock("div",{key:0,class:"multiselect-search",style:{width:e.tagsSearchWidth}},[t.withDirectives(t.createVNode("input",{"onUpdate:modelValue":l[10]||(l[10]=t=>e.search=t),onFocus:l[11]||(l[11]=t.withModifiers(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:l[12]||(l[12]=t.withModifiers(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[l[13]||(l[13]=t.withKeys(t.withModifiers(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),l[14]||(l[14]=t.withKeys(t.withModifiers(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[l[15]||(l[15]=t.withKeys(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),l[16]||(l[16]=t.withKeys(t.withModifiers(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),l[17]||(l[17]=t.withKeys(t.withModifiers(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],style:{width:e.tagsSearchWidth},ref:"input"},null,36),[[t.vModelText,e.search]])],4)):t.createCommentVNode("v-if",!0)])):t.createCommentVNode("v-if",!0),t.createCommentVNode(" Placeholder "),t.withDirectives(t.createVNode("div",{class:"multiselect-placeholder"},t.toDisplayString(n.placeholder),513),[[t.vShow,n.placeholder&&!e.hasSelected&&!e.search]]),t.createVNode(t.Transition,{name:"multiselect-loading"},{default:t.withCtx((()=>[t.withDirectives(t.createVNode("div",h,null,512),[[t.vShow,e.busy]])])),_:1})],40,["tabindex"]),t.createCommentVNode(" Options "),t.createVNode(t.Transition,{name:"multiselect",onAfterLeave:e.clearSearch},{default:t.withCtx((()=>[t.withDirectives(t.createVNode("div",{class:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[t.renderSlot(e.$slots,"beforelist"),(t.openBlock(!0),t.createBlock(t.Fragment,null,t.renderList(e.filteredOptions,((a,r,u)=>(t.openBlock(),t.createBlock("a",{href:"",class:["multiselect-option",{"is-pointed":e.isPointed(a),"is-selected":e.isSelected(a),"is-disabled":e.isDisabled(a)}],key:u,onMousedown:l[26]||(l[26]=t.withModifiers((()=>{}),["prevent"])),onMouseenter:t=>e.setPointer(a),onClick:t.withModifiers((t=>e.handleOptionClick(a)),["stop","prevent"])},[t.renderSlot(e.$slots,"option",{option:a,search:e.search},(()=>[t.createVNode("span",null,t.toDisplayString(a[n.label]),1)]))],42,["onMouseenter","onClick"])))),128)),t.withDirectives(t.createVNode("span",null,[t.renderSlot(e.$slots,"nooptions",{},(()=>[t.createVNode("div",m,t.toDisplayString(n.noOptionsText),1)]))],512),[[t.vShow,e.noOptions]]),t.withDirectives(t.createVNode("span",null,[t.renderSlot(e.$slots,"noresults",{},(()=>[t.createVNode("div",y,t.toDisplayString(n.noResultsText),1)]))],512),[[t.vShow,e.noResults]]),t.renderSlot(e.$slots,"afterlist")],4),[[t.vShow,e.isOpen]])])),_:3},8,["onAfterLeave"])],42,["id"])},c.__file="src/Multiselect.vue",c}(Vue,Vue);

@@ -1,1 +0,1 @@

import{toRefs as e,ref as l,computed as t,watch as n,nextTick as a,openBlock as u,createBlock as r,withKeys as i,withModifiers as o,createVNode as c,createCommentVNode as s,renderSlot as d,toDisplayString as v,withDirectives as f,vModelText as p,Fragment as h,renderList as m,createTextVNode as b,vShow as g,Transition as y,withCtx as S}from"vue";function w(e){return String(e).toLowerCase().trim()}function O(e){return-1!==[null,void 0,!1].indexOf(e)}function k(e){return(k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function P(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function x(a,u,r){var i=e(a),o=i.options,c=i.mode,s=i.trackBy,d=i.limit,v=i.hideSelected,f=i.createTag,p=i.label,h=i.appendNewTag,m=i.multipleLabel,b=i.object,g=i.loading,y=i.delay,S=i.resolveOnLoad,x=i.minChars,q=i.filterResults,B=i.clearOnSearch,V=i.clearOnSelect,T=i.valueProp,j=i.canDeselect,A=i.max,C=r.internalValue,E=r.externalValue,M=r.search,N=r.blurSearch,$=r.clearSearch,H=r.update,I=r.blurInput,L=l([]),K=l([]),F=l(!1),R=t((function(){var e,l=K.value||[];return e=l,"[object Object]"===Object.prototype.toString.call(e)&&(l=Object.keys(l).map((function(e){var t,n=l[e];return P(t={},T.value,e),P(t,s.value,n),P(t,p.value,n),t}))),l=l.map((function(e,l){var t;return"object"===k(e)?e:(P(t={},T.value,l),P(t,s.value,e),P(t,p.value,e),t)})),L.value.length&&(l=l.concat(L.value)),l})),D=t((function(){var e=R.value;return G.value.length&&(e=G.value.concat(e)),M.value&&q.value&&(e=e.filter((function(e){return-1!==w(e[s.value]).indexOf(w(M.value))}))),v.value&&(e=e.filter((function(e){return!re(e)}))),d.value>0&&(e=e.slice(0,d.value)),e})),_=t((function(){switch(c.value){case"single":return!O(C.value[T.value]);case"multiple":case"tags":return!O(C.value)&&C.value.length>0}})),U=t((function(){return void 0!==m&&void 0!==m.value?m.value(C.value):C.value&&C.value.length>1?"".concat(C.value.length," options selected"):"1 option selected"})),W=t((function(){return!R.value.length})),z=t((function(){return R.value.length>0&&0==D.value.length})),G=t((function(){var e;return!1!==f.value&&M.value?-1!==ue(M.value)?[]:[(e={},P(e,T.value,M.value),P(e,p.value,M.value),P(e,s.value,M.value),e)]:[]})),J=t((function(){switch(c.value){case"single":return null;case"multiple":case"tags":return[]}})),Q=t((function(){return g.value||F.value})),X=function(e){switch("object"!==k(e)&&(e=ae(e)),c.value){case"single":H(e);break;case"multiple":case"tags":H(C.value.concat(e))}u.emit("select",Z(e))},Y=function(e){switch("object"!==k(e)&&(e=ae(e)),c.value){case"single":ee();break;case"tags":case"multiple":H(C.value.filter((function(l){return l[T.value]!=e[T.value]})))}u.emit("deselect",Z(e))},Z=function(e){return b.value?e:e[T.value]},ee=function(){H(J.value)},le=function(e){switch(c.value){case"single":return!O(C.value)&&C.value[T.value]==e[T.value];case"tags":case"multiple":return!O(C.value)&&-1!==C.value.map((function(e){return e[T.value]})).indexOf(e[T.value])}},te=function(e){return!0===e.disabled},ne=function(){return!(void 0===A||-1===A.value||!_.value&&A.value>0)&&C.value.length>=A.value},ae=function(e){return R.value[R.value.map((function(e){return String(e[T.value])})).indexOf(String(e))]},ue=function(e){return R.value.map((function(e){return w(e[s.value])})).indexOf(w(e))},re=function(e){return"tags"===c.value&&v.value&&le(e)},ie=function(e){L.value.push(e)},oe=function(){O(E.value)||(C.value=se(E.value))},ce=function(e){F.value=!0,o.value(M.value).then((function(l){K.value=l,F.value=!1,"function"==typeof e&&e(l)}))},se=function(e){return O(e)?"single"===c.value?{}:[]:b.value?e:"single"===c.value?ae(e)||{}:e.filter((function(e){return!!ae(e)})).map((function(e){return ae(e)}))};if("single"!==c.value&&!O(E.value)&&!Array.isArray(E.value))throw new Error('v-model must be an array when using "'.concat(c.value,'" mode'));return o&&"function"==typeof o.value?S.value?ce(oe):1==b.value&&oe():(K.value=o&&o.value?o.value:[],oe()),y.value>-1&&n(M,(function(e){e.length<x.value||(B.value&&(K.value=[]),setTimeout((function(){e==M.value&&(F.value=!0,o.value(M.value).then((function(l){e==M.value&&(K.value=l),F.value=!1})))}),y.value))}),{flush:"sync"}),n(E,(function(e){var l,t,n;if(O(e))C.value=se(e);else switch(c.value){case"single":(b.value?e[T.value]!=C.value[T.value]:e!=C.value[T.value])&&(C.value=se(e));break;case"multiple":case"tags":l=b.value?e.map((function(e){return e[T.value]})):e,t=C.value.map((function(e){return e[T.value]})),n=t.slice().sort(),l.length===t.length&&l.slice().sort().every((function(e,l){return e===n[l]}))||(C.value=se(e))}}),{deep:!0}),{filteredOptions:D,hasSelected:_,multipleLabelText:U,extendedOptions:R,noOptions:W,noResults:z,busy:Q,select:X,deselect:Y,remove:function(e){Y(e)},clear:ee,isSelected:le,isDisabled:te,isMax:ne,getOption:ae,handleOptionClick:function(e){if(!te(e))switch(c.value){case"single":if(le(e))return void(j.value&&Y(e));X(e),N(),I();break;case"multiple":if(le(e))return void Y(e);if(ne())return;X(e),V.value&&$();break;case"tags":if(le(e))return void Y(e);if(ne())return;void 0===ae(e[T.value])&&f.value&&(u.emit("tag",e[T.value]),h.value&&ie(e),$()),V.value&&$(),X(e)}},resolveOptions:ce}}function q(e){return function(e){if(Array.isArray(e))return B(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,l){if(!e)return;if("string"==typeof e)return B(e,l);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return B(e,l)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function B(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,n=new Array(l);t<l;t++)n[t]=e[t];return n}var V={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(u,r){const i=function(t,n){var a=e(t),u=a.value,r=a.modelValue,i=a.mode;return{internalValue:l("single"!==i.value?[]:{}),externalValue:void 0!==n.expose?r:u}}(u,r),o=function(l,t,n){var a=e(l),u=a.object,r=a.valueProp,i=a.mode,o=n.internalValue,c=function(e){return u.value||O(e)?e:Array.isArray(e)?e.map((function(e){return e[r.value]})):e[r.value]},s=function(e){return O(e)?"single"===i.value?{}:[]:e};return{update:function(e){o.value=s(e);var l=c(e);t.emit("change",l),t.emit("input",l),t.emit("update:modelValue",l)}}}(u,r,{internalValue:i.internalValue}),c=function(a,u,r){var i=e(a),o=i.searchable,c=i.mode,s=r.internalValue,d=l(null),v=l(null),f=t((function(){return d.value?"".concat(d.value.length,"ch"):"tags"===c.value&&-1===[null,void 0].indexOf(s.value)&&s.value.length?"1ch":"100%"}));return n(d,(function(e){u.emit("search-change",e)})),{search:d,input:v,tagsSearchWidth:f,clearSearch:function(){d.value=""},blurSearch:function(){o.value&&v.value.blur()}}}(u,r,{internalValue:i.internalValue}),s=function(n,a,u){var r=e(n),i=r.maxHeight,o=r.disabled,c=l(!1),s=t((function(){return"".concat(i.value,"px")}));return{isOpen:c,contentMaxHeight:s,open:function(){o.value||(c.value=!0,a.emit("open"))},close:function(){c.value=!1,a.emit("close")}}}(u,r),d=function(n,a,u){var r=e(n),i=r.searchable,o=r.id;return{multiselect:l(null),tabindex:t((function(){return i.value?-1:0})),blurInput:function(){document.getElementById(o.value).querySelector(".multiselect-input").blur()}}}(u),v=x(u,r,{externalValue:i.externalValue,internalValue:i.internalValue,search:c.search,blurSearch:c.blurSearch,clearSearch:c.clearSearch,update:o.update,blurInput:d.blurInput}),f=function(u,r,i){var o=e(u),c=o.id,s=o.valueProp,d=i.filteredOptions,v=i.handleOptionClick,f=i.search,p=l(null),h=t((function(){return d.value.filter((function(e){return!0!==e.disabled}))})),m=function(e){p.value=e},b=function(){p.value=h.value[0]||null},g=function(){p.value=null},y=function(){var e=document.getElementById(c.value).querySelector(".is-pointed");if(e){var l=e.parentElement;e.offsetTop+e.offsetHeight>l.clientHeight+l.scrollTop&&(l.scrollTop=e.offsetTop+e.offsetHeight-l.clientHeight),e.offsetTop<l.scrollTop&&(l.scrollTop=e.offsetTop)}};return n(f,(function(e){b()})),{pointer:p,isPointed:function(e){return!!p.value&&p.value[s.value]==e[s.value]},setPointer:m,setPointerFirst:b,clearPointer:g,selectPointer:function(){p.value&&!0!==p.value.disabled?(v(p.value),g()):g()},forwardPointer:function(){if(null===p.value)m(h.value[0]||null);else{var e=h.value.map((function(e){return e[s.value]})).indexOf(p.value[s.value])+1;h.value.length<=e&&(e=0),m(h.value[e]||null)}a((function(){y()}))},backwardPointer:function(){if(null===p.value)m(h.value[h.value.length-1]||null);else{var e=h.value.map((function(e){return e[s.value]})).indexOf(p.value[s.value])-1;e<0&&(e=h.value.length-1),m(h.value[e]||null)}a((function(){y()}))}}}(u,0,{filteredOptions:v.filteredOptions,handleOptionClick:v.handleOptionClick,search:c.search}),p=function(l,t,n){var a=e(l).mode,u=n.internalValue,r=n.update,i=n.close,o=n.clearPointer,c=n.search;return{handleBackspace:function(e){"single"!==a.value&&r(q(u.value).slice(0,-1))},handleEsc:function(e){i(),o(),e.target.blur()},handleSearchBackspace:function(e){""!==c.value&&e.stopPropagation()}}}(u,0,{internalValue:i.internalValue,update:o.update,close:s.close,clearPointer:f.clearPointer,search:c.search});return{...i,...o,...c,...s,...d,...v,...f,...p}}};const T={class:"multiselect-single-label"},j={class:"multiselect-multiple-label"},A={key:2,class:"multiselect-search"},C={key:3,class:"multiselect-tags"},E={class:"multiselect-tag"},M={class:"multiselect-spinner"},N={class:"multiselect-no-options"},$={class:"multiselect-no-results"};V.render=function(e,l,t,n,a,w){return u(),r("div",{class:["multiselect",[`is-${t.mode}`,{"is-open":e.isOpen,"is-searchable":t.searchable,"is-disabled":t.disabled,"no-caret":!t.caret}]],id:t.id,onKeydown:l[26]||(l[26]=i(o((()=>{}),["prevent"]),["enter"])),ref:"multiselect"},[c("div",{class:"multiselect-input",tabindex:e.tabindex,onFocus:l[18]||(l[18]=(...l)=>e.open&&e.open(...l)),onBlur:l[19]||(l[19]=(...l)=>e.close&&e.close(...l)),onKeyup:[l[20]||(l[20]=i(((...l)=>e.handleEsc&&e.handleEsc(...l)),["esc"])),l[21]||(l[21]=i(((...l)=>e.selectPointer&&e.selectPointer(...l)),["enter"]))],onKeydown:[l[22]||(l[22]=i(o(((...l)=>e.handleBackspace&&e.handleBackspace(...l)),["prevent"]),["delete"])),l[23]||(l[23]=i(o(((...l)=>e.backwardPointer&&e.backwardPointer(...l)),["prevent"]),["up"])),l[24]||(l[24]=i(o(((...l)=>e.forwardPointer&&e.forwardPointer(...l)),["prevent"]),["down"]))]},[s(" Single label "),"single"==t.mode&&e.hasSelected&&!e.search&&e.internalValue?d(e.$slots,"singlelabel",{key:0,value:e.internalValue},(()=>[c("div",T,v(e.internalValue[t.label]),1)])):s("v-if",!0),s(" Multiple label "),"multiple"==t.mode&&e.hasSelected&&!e.search?d(e.$slots,"multiplelabel",{key:1,values:e.internalValue},(()=>[c("div",j,v(e.multipleLabelText),1)])):s("v-if",!0),s(" Search "),"tags"!==t.mode&&t.searchable&&!t.disabled?(u(),r("div",A,[f(c("input",{"onUpdate:modelValue":l[1]||(l[1]=l=>e.search=l),onFocus:l[2]||(l[2]=o(((...l)=>e.open&&e.open(...l)),["stop"])),onBlur:l[3]||(l[3]=o(((...l)=>e.close&&e.close(...l)),["stop"])),onKeyup:[l[4]||(l[4]=i(o(((...l)=>e.handleEsc&&e.handleEsc(...l)),["stop"]),["esc"])),l[5]||(l[5]=i(o(((...l)=>e.selectPointer&&e.selectPointer(...l)),["stop"]),["enter"]))],onKeydown:[l[6]||(l[6]=i(((...l)=>e.handleSearchBackspace&&e.handleSearchBackspace(...l)),["delete"])),l[7]||(l[7]=i(o(((...l)=>e.backwardPointer&&e.backwardPointer(...l)),["stop"]),["up"])),l[8]||(l[8]=i(o(((...l)=>e.forwardPointer&&e.forwardPointer(...l)),["stop"]),["down"]))],ref:"input"},null,544),[[p,e.search]])])):s("v-if",!0),s(" Tags (with search) "),"tags"==t.mode?(u(),r("div",C,[(u(!0),r(h,null,m(e.internalValue,((n,a,i)=>(u(),r("span",{key:i},[d(e.$slots,"tag",{option:n,remove:e.remove,disabled:t.disabled},(()=>[c("div",E,[b(v(n[t.label])+" ",1),t.disabled?s("v-if",!0):(u(),r("i",{key:0,onClick:l[9]||(l[9]=o((()=>{}),["prevent"])),onMousedown:o((l=>e.remove(n)),["prevent"])},null,40,["onMousedown"]))])]))])))),128)),t.searchable&&!t.disabled?(u(),r("div",{key:0,class:"multiselect-search",style:{width:e.tagsSearchWidth}},[f(c("input",{"onUpdate:modelValue":l[10]||(l[10]=l=>e.search=l),onFocus:l[11]||(l[11]=o(((...l)=>e.open&&e.open(...l)),["stop"])),onBlur:l[12]||(l[12]=o(((...l)=>e.close&&e.close(...l)),["stop"])),onKeyup:[l[13]||(l[13]=i(o(((...l)=>e.handleEsc&&e.handleEsc(...l)),["stop"]),["esc"])),l[14]||(l[14]=i(o(((...l)=>e.selectPointer&&e.selectPointer(...l)),["stop"]),["enter"]))],onKeydown:[l[15]||(l[15]=i(((...l)=>e.handleSearchBackspace&&e.handleSearchBackspace(...l)),["delete"])),l[16]||(l[16]=i(o(((...l)=>e.backwardPointer&&e.backwardPointer(...l)),["stop"]),["up"])),l[17]||(l[17]=i(o(((...l)=>e.forwardPointer&&e.forwardPointer(...l)),["stop"]),["down"]))],style:{width:e.tagsSearchWidth},ref:"input"},null,36),[[p,e.search]])],4)):s("v-if",!0)])):s("v-if",!0),s(" Placeholder "),f(c("div",{class:"multiselect-placeholder"},v(t.placeholder),513),[[g,t.placeholder&&!e.hasSelected&&!e.search]]),c(y,{name:"multiselect-loading"},{default:S((()=>[f(c("div",M,null,512),[[g,e.busy]])])),_:1})],40,["tabindex"]),s(" Options "),c(y,{name:"multiselect",onAfterLeave:e.clearSearch},{default:S((()=>[f(c("div",{class:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[d(e.$slots,"beforelist"),(u(!0),r(h,null,m(e.filteredOptions,((n,a,i)=>(u(),r("a",{href:"",class:["multiselect-option",{"is-pointed":e.isPointed(n),"is-selected":e.isSelected(n),"is-disabled":e.isDisabled(n)}],key:i,onMousedown:l[25]||(l[25]=o((()=>{}),["prevent"])),onMouseenter:l=>e.setPointer(n),onClick:o((l=>e.handleOptionClick(n)),["stop","prevent"])},[d(e.$slots,"option",{option:n,search:e.search},(()=>[c("span",null,v(n[t.label]),1)]))],42,["onMouseenter","onClick"])))),128)),f(c("span",null,[d(e.$slots,"nooptions",{},(()=>[c("div",N,v(t.noOptionsText),1)]))],512),[[g,e.noOptions]]),f(c("span",null,[d(e.$slots,"noresults",{},(()=>[c("div",$,v(t.noResultsText),1)]))],512),[[g,e.noResults]]),d(e.$slots,"afterlist")],4),[[g,e.isOpen]])])),_:3},8,["onAfterLeave"])],42,["id"])},V.__file="src/Multiselect.vue";export default V;
import{toRefs as e,ref as t,computed as l,watch as n,nextTick as a,openBlock as u,createBlock as r,withKeys as i,withModifiers as o,createVNode as c,createCommentVNode as s,renderSlot as d,toDisplayString as v,withDirectives as p,vModelText as f,Fragment as h,renderList as m,createTextVNode as b,vShow as y,Transition as g,withCtx as S}from"vue";function w(e){return String(e).toLowerCase().trim()}function O(e){return-1!==[null,void 0,!1].indexOf(e)}function k(e){return(k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function P(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function q(a,u,r){var i=e(a),o=i.options,c=i.mode,s=i.trackBy,d=i.limit,v=i.hideSelected,p=i.createTag,f=i.label,h=i.appendNewTag,m=i.multipleLabel,b=i.object,y=i.loading,g=i.delay,S=i.resolveOnLoad,q=i.minChars,x=i.filterResults,B=i.clearOnSearch,V=i.clearOnSelect,T=i.valueProp,j=i.canDeselect,M=i.max,A=r.internalValue,E=r.externalValue,C=r.search,I=r.blurSearch,N=r.clearSearch,$=r.update,H=r.blurInput,L=r.pointer,K=t([]),F=t([]),R=t(!1),D=l((function(){var e,t=F.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var l,n=t[e];return P(l={},T.value,e),P(l,s.value,n),P(l,f.value,n),l}))),t=t.map((function(e,t){var l;return"object"===k(e)?e:(P(l={},T.value,t),P(l,s.value,e),P(l,f.value,e),l)})),K.value.length&&(t=t.concat(K.value)),t})),_=l((function(){var e=D.value;return J.value.length&&(e=J.value.concat(e)),C.value&&x.value&&(e=e.filter((function(e){return-1!==w(e[s.value]).indexOf(w(C.value))}))),v.value&&(e=e.filter((function(e){return!ie(e)}))),d.value>0&&(e=e.slice(0,d.value)),e})),U=l((function(){switch(c.value){case"single":return!O(A.value[T.value]);case"multiple":case"tags":return!O(A.value)&&A.value.length>0}})),W=l((function(){return void 0!==m&&void 0!==m.value?m.value(A.value):A.value&&A.value.length>1?"".concat(A.value.length," options selected"):"1 option selected"})),z=l((function(){return!D.value.length})),G=l((function(){return D.value.length>0&&0==_.value.length})),J=l((function(){var e;return!1!==p.value&&C.value?-1!==re(C.value)?[]:[(e={},P(e,T.value,C.value),P(e,f.value,C.value),P(e,s.value,C.value),e)]:[]})),Q=l((function(){switch(c.value){case"single":return null;case"multiple":case"tags":return[]}})),X=l((function(){return y.value||R.value})),Y=function(e){switch("object"!==k(e)&&(e=ue(e)),c.value){case"single":$(e);break;case"multiple":case"tags":$(A.value.concat(e))}u.emit("select",ee(e))},Z=function(e){switch("object"!==k(e)&&(e=ue(e)),c.value){case"single":te();break;case"tags":case"multiple":$(A.value.filter((function(t){return t[T.value]!=e[T.value]})))}u.emit("deselect",ee(e))},ee=function(e){return b.value?e:e[T.value]},te=function(){$(Q.value)},le=function(e){switch(c.value){case"single":return!O(A.value)&&A.value[T.value]==e[T.value];case"tags":case"multiple":return!O(A.value)&&-1!==A.value.map((function(e){return e[T.value]})).indexOf(e[T.value])}},ne=function(e){return!0===e.disabled},ae=function(){return!(void 0===M||-1===M.value||!U.value&&M.value>0)&&A.value.length>=M.value},ue=function(e){return D.value[D.value.map((function(e){return String(e[T.value])})).indexOf(String(e))]},re=function(e){return D.value.map((function(e){return w(e[s.value])})).indexOf(w(e))},ie=function(e){return"tags"===c.value&&v.value&&le(e)},oe=function(e){K.value.push(e)},ce=function(){O(E.value)||(A.value=de(E.value))},se=function(e){R.value=!0,o.value(C.value).then((function(t){F.value=t,R.value=!1,"function"==typeof e&&e(t)}))},de=function(e){return O(e)?"single"===c.value?{}:[]:b.value?e:"single"===c.value?ue(e)||{}:e.filter((function(e){return!!ue(e)})).map((function(e){return ue(e)}))};if("single"!==c.value&&!O(E.value)&&!Array.isArray(E.value))throw new Error('v-model must be an array when using "'.concat(c.value,'" mode'));return o&&"function"==typeof o.value?S.value?se(ce):1==b.value&&ce():(F.value=o&&o.value?o.value:[],ce()),g.value>-1&&n(C,(function(e){e.length<q.value||(B.value&&(F.value=[]),setTimeout((function(){e==C.value&&(R.value=!0,o.value(C.value).then((function(t){e==C.value&&(F.value=t,L.value=_.value.filter((function(e){return!0!==e.disabled}))[0]||null),R.value=!1})))}),g.value))}),{flush:"sync"}),n(E,(function(e){var t,l,n;if(O(e))A.value=de(e);else switch(c.value){case"single":(b.value?e[T.value]!=A.value[T.value]:e!=A.value[T.value])&&(A.value=de(e));break;case"multiple":case"tags":t=b.value?e.map((function(e){return e[T.value]})):e,l=A.value.map((function(e){return e[T.value]})),n=l.slice().sort(),t.length===l.length&&t.slice().sort().every((function(e,t){return e===n[t]}))||(A.value=de(e))}}),{deep:!0}),n((function(){return a.options}),(function(e){"function"!=typeof a.options&&(F.value=a.options)})),{filteredOptions:_,hasSelected:U,multipleLabelText:W,extendedOptions:D,noOptions:z,noResults:G,busy:X,select:Y,deselect:Z,remove:function(e){Z(e)},clear:te,isSelected:le,isDisabled:ne,isMax:ae,getOption:ue,handleOptionClick:function(e){if(!ne(e))switch(c.value){case"single":if(le(e))return void(j.value&&Z(e));Y(e),I(),H();break;case"multiple":if(le(e))return void Z(e);if(ae())return;Y(e),V.value&&N();break;case"tags":if(le(e))return void Z(e);if(ae())return;void 0===ue(e[T.value])&&p.value&&(u.emit("tag",e[T.value]),h.value&&oe(e),N()),V.value&&N(),Y(e)}},resolveOptions:se}}function x(e){return function(e){if(Array.isArray(e))return B(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return B(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);"Object"===l&&e.constructor&&(l=e.constructor.name);if("Map"===l||"Set"===l)return Array.from(e);if("Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l))return B(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}var V={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(u,r){const i=function(l,n){var a=e(l),u=a.value,r=a.modelValue,i=a.mode;return{internalValue:t("single"!==i.value?[]:{}),externalValue:void 0!==n.expose?r:u}}(u,r),o=function(n,a,u){var r=e(n),i=r.searchable,o=r.id;return{multiselect:t(null),tabindex:l((function(){return i.value?-1:0})),blurInput:function(){document.getElementById(o.value).querySelector(".multiselect-input").blur()}}}(u),c={pointer:t(null)},s=function(n,a,u){var r=e(n),i=r.maxHeight,o=r.disabled,c=r.searchable,s=u.multiselect,d=t(!1),v=l((function(){return"".concat(i.value,"px")}));return{isOpen:d,contentMaxHeight:v,open:function(e){o.value||(d.value=!0,a.emit("open"))},close:function(){d.value=!1,a.emit("close")},handleInputMousedown:function(e){d.value&&!c.value&&(s.value.querySelector(".multiselect-input").dispatchEvent(new Event("blur")),s.value.querySelector(".multiselect-input").blur(),e.preventDefault())}}}(u,r,{multiselect:o.multiselect}),d=function(t,l,n){var a=e(t),u=a.object,r=a.valueProp,i=a.mode,o=n.internalValue,c=function(e){return u.value||O(e)?e:Array.isArray(e)?e.map((function(e){return e[r.value]})):e[r.value]},s=function(e){return O(e)?"single"===i.value?{}:[]:e};return{update:function(e){o.value=s(e);var t=c(e);l.emit("change",t),l.emit("input",t),l.emit("update:modelValue",t)}}}(u,r,{internalValue:i.internalValue}),v=function(a,u,r){var i=e(a),o=i.searchable,c=i.mode,s=r.internalValue,d=t(null),v=t(null),p=l((function(){return d.value?"".concat(d.value.length,"ch"):"tags"===c.value&&-1===[null,void 0].indexOf(s.value)&&s.value.length?"1ch":"100%"}));return n(d,(function(e){u.emit("search-change",e)})),{search:d,input:v,tagsSearchWidth:p,clearSearch:function(){d.value=""},blurSearch:function(){o.value&&v.value.blur()}}}(u,r,{internalValue:i.internalValue}),p=q(u,r,{externalValue:i.externalValue,internalValue:i.internalValue,search:v.search,blurSearch:v.blurSearch,clearSearch:v.clearSearch,update:d.update,blurInput:o.blurInput,pointer:c.pointer}),f=function(t,u,r){var i=e(t),o=i.id,c=i.valueProp,s=r.filteredOptions,d=r.handleOptionClick,v=r.search,p=r.pointer,f=l((function(){return s.value.filter((function(e){return!0!==e.disabled}))})),h=function(e){p.value=e},m=function(){p.value=f.value[0]||null},b=function(){p.value=null},y=function(){var e=document.getElementById(o.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return n(v,(function(e){m()})),{pointer:p,isPointed:function(e){return!!p.value&&p.value[c.value]==e[c.value]},setPointer:h,setPointerFirst:m,clearPointer:b,selectPointer:function(){p.value&&!0!==p.value.disabled?(d(p.value),b()):b()},forwardPointer:function(){if(null===p.value)h(f.value[0]||null);else{var e=f.value.map((function(e){return e[c.value]})).indexOf(p.value[c.value])+1;f.value.length<=e&&(e=0),h(f.value[e]||null)}a((function(){y()}))},backwardPointer:function(){if(null===p.value)h(f.value[f.value.length-1]||null);else{var e=f.value.map((function(e){return e[c.value]})).indexOf(p.value[c.value])-1;e<0&&(e=f.value.length-1),h(f.value[e]||null)}a((function(){y()}))}}}(u,0,{filteredOptions:p.filteredOptions,handleOptionClick:p.handleOptionClick,search:v.search,pointer:c.pointer}),h=function(t,l,n){var a=e(t).mode,u=n.internalValue,r=n.update,i=n.close,o=n.clearPointer,c=n.search;return{handleBackspace:function(e){"single"!==a.value&&r(x(u.value).slice(0,-1))},handleEsc:function(e){i(),o(),e.target.blur()},handleSearchBackspace:function(e){""!==c.value&&e.stopPropagation()}}}(u,0,{internalValue:i.internalValue,update:d.update,close:s.close,clearPointer:f.clearPointer,search:v.search});return{...i,...s,...o,...c,...d,...v,...p,...f,...h}}};const T={class:"multiselect-single-label"},j={class:"multiselect-multiple-label"},M={key:2,class:"multiselect-search"},A={key:3,class:"multiselect-tags"},E={class:"multiselect-tag"},C={class:"multiselect-spinner"},I={class:"multiselect-no-options"},N={class:"multiselect-no-results"};V.render=function(e,t,l,n,a,w){return u(),r("div",{class:["multiselect",[`is-${l.mode}`,{"is-open":e.isOpen,"is-searchable":l.searchable,"is-disabled":l.disabled,"no-caret":!l.caret}]],id:l.id,onKeydown:t[27]||(t[27]=i(o((()=>{}),["prevent"]),["enter"])),ref:"multiselect"},[c("div",{class:"multiselect-input",tabindex:e.tabindex,onMousedown:t[18]||(t[18]=(...t)=>e.handleInputMousedown&&e.handleInputMousedown(...t)),onFocus:t[19]||(t[19]=(...t)=>e.open&&e.open(...t)),onBlur:t[20]||(t[20]=(...t)=>e.close&&e.close(...t)),onKeyup:[t[21]||(t[21]=i(((...t)=>e.handleEsc&&e.handleEsc(...t)),["esc"])),t[22]||(t[22]=i(((...t)=>e.selectPointer&&e.selectPointer(...t)),["enter"]))],onKeydown:[t[23]||(t[23]=i(o(((...t)=>e.handleBackspace&&e.handleBackspace(...t)),["prevent"]),["delete"])),t[24]||(t[24]=i(o(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["prevent"]),["up"])),t[25]||(t[25]=i(o(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["prevent"]),["down"]))]},[s(" Single label "),"single"==l.mode&&e.hasSelected&&!e.search&&e.internalValue?d(e.$slots,"singlelabel",{key:0,value:e.internalValue},(()=>[c("div",T,v(e.internalValue[l.label]),1)])):s("v-if",!0),s(" Multiple label "),"multiple"==l.mode&&e.hasSelected&&!e.search?d(e.$slots,"multiplelabel",{key:1,values:e.internalValue},(()=>[c("div",j,v(e.multipleLabelText),1)])):s("v-if",!0),s(" Search "),"tags"!==l.mode&&l.searchable&&!l.disabled?(u(),r("div",M,[p(c("input",{"onUpdate:modelValue":t[1]||(t[1]=t=>e.search=t),onFocus:t[2]||(t[2]=o(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:t[3]||(t[3]=o(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[t[4]||(t[4]=i(o(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),t[5]||(t[5]=i(o(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[t[6]||(t[6]=i(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),t[7]||(t[7]=i(o(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),t[8]||(t[8]=i(o(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],ref:"input"},null,544),[[f,e.search]])])):s("v-if",!0),s(" Tags (with search) "),"tags"==l.mode?(u(),r("div",A,[(u(!0),r(h,null,m(e.internalValue,((n,a,i)=>(u(),r("span",{key:i},[d(e.$slots,"tag",{option:n,remove:e.remove,disabled:l.disabled},(()=>[c("div",E,[b(v(n[l.label])+" ",1),l.disabled?s("v-if",!0):(u(),r("i",{key:0,onClick:t[9]||(t[9]=o((()=>{}),["prevent"])),onMousedown:o((t=>e.remove(n)),["prevent","stop"])},null,40,["onMousedown"]))])]))])))),128)),l.searchable&&!l.disabled?(u(),r("div",{key:0,class:"multiselect-search",style:{width:e.tagsSearchWidth}},[p(c("input",{"onUpdate:modelValue":t[10]||(t[10]=t=>e.search=t),onFocus:t[11]||(t[11]=o(((...t)=>e.open&&e.open(...t)),["stop"])),onBlur:t[12]||(t[12]=o(((...t)=>e.close&&e.close(...t)),["stop"])),onKeyup:[t[13]||(t[13]=i(o(((...t)=>e.handleEsc&&e.handleEsc(...t)),["stop"]),["esc"])),t[14]||(t[14]=i(o(((...t)=>e.selectPointer&&e.selectPointer(...t)),["stop"]),["enter"]))],onKeydown:[t[15]||(t[15]=i(((...t)=>e.handleSearchBackspace&&e.handleSearchBackspace(...t)),["delete"])),t[16]||(t[16]=i(o(((...t)=>e.backwardPointer&&e.backwardPointer(...t)),["stop"]),["up"])),t[17]||(t[17]=i(o(((...t)=>e.forwardPointer&&e.forwardPointer(...t)),["stop"]),["down"]))],style:{width:e.tagsSearchWidth},ref:"input"},null,36),[[f,e.search]])],4)):s("v-if",!0)])):s("v-if",!0),s(" Placeholder "),p(c("div",{class:"multiselect-placeholder"},v(l.placeholder),513),[[y,l.placeholder&&!e.hasSelected&&!e.search]]),c(g,{name:"multiselect-loading"},{default:S((()=>[p(c("div",C,null,512),[[y,e.busy]])])),_:1})],40,["tabindex"]),s(" Options "),c(g,{name:"multiselect",onAfterLeave:e.clearSearch},{default:S((()=>[p(c("div",{class:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[d(e.$slots,"beforelist"),(u(!0),r(h,null,m(e.filteredOptions,((n,a,i)=>(u(),r("a",{href:"",class:["multiselect-option",{"is-pointed":e.isPointed(n),"is-selected":e.isSelected(n),"is-disabled":e.isDisabled(n)}],key:i,onMousedown:t[26]||(t[26]=o((()=>{}),["prevent"])),onMouseenter:t=>e.setPointer(n),onClick:o((t=>e.handleOptionClick(n)),["stop","prevent"])},[d(e.$slots,"option",{option:n,search:e.search},(()=>[c("span",null,v(n[l.label]),1)]))],42,["onMouseenter","onClick"])))),128)),p(c("span",null,[d(e.$slots,"nooptions",{},(()=>[c("div",I,v(l.noOptionsText),1)]))],512),[[y,e.noOptions]]),p(c("span",null,[d(e.$slots,"noresults",{},(()=>[c("div",N,v(l.noResultsText),1)]))],512),[[y,e.noResults]]),d(e.$slots,"afterlist")],4),[[y,e.isOpen]])])),_:3},8,["onAfterLeave"])],42,["id"])},V.__file="src/Multiselect.vue";export default V;

@@ -1,1 +0,1 @@

var VueformMultiselect=function(e){"use strict";function t(e){return String(e).toLowerCase().trim()}function n(e){return-1!==[null,void 0,!1].indexOf(e)}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function i(u,r,i){var o=e.toRefs(u),c=o.options,s=o.mode,d=o.trackBy,v=o.limit,f=o.hideSelected,p=o.createTag,m=o.label,h=o.appendNewTag,y=o.multipleLabel,g=o.object,b=o.loading,k=o.delay,_=o.resolveOnLoad,w=o.minChars,O=o.filterResults,x=o.clearOnSearch,S=o.clearOnSelect,C=o.valueProp,P=o.canDeselect,q=o.max,V=i.internalValue,T=i.externalValue,B=i.search,D=i.blurSearch,E=i.clearSearch,R=i.update,A=i.blurInput,N=e.ref([]),j=e.ref([]),I=e.ref(!1),H=e.computed((function(){var e,t=j.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var n,a=t[e];return l(n={},C.value,e),l(n,d.value,a),l(n,m.value,a),n}))),t=t.map((function(e,t){var n;return"object"===a(e)?e:(l(n={},C.value,t),l(n,d.value,e),l(n,m.value,e),n)})),N.value.length&&(t=t.concat(N.value)),t})),U=e.computed((function(){var e=H.value;return W.value.length&&(e=W.value.concat(e)),B.value&&O.value&&(e=e.filter((function(e){return-1!==t(e[d.value]).indexOf(t(B.value))}))),f.value&&(e=e.filter((function(e){return!ae(e)}))),v.value>0&&(e=e.slice(0,v.value)),e})),$=e.computed((function(){switch(s.value){case"single":return!n(V.value[C.value]);case"multiple":case"tags":return!n(V.value)&&V.value.length>0}})),L=e.computed((function(){return void 0!==y&&void 0!==y.value?y.value(V.value):V.value&&V.value.length>1?"".concat(V.value.length," options selected"):"1 option selected"})),F=e.computed((function(){return!H.value.length})),M=e.computed((function(){return H.value.length>0&&0==U.value.length})),W=e.computed((function(){var e;return!1!==p.value&&B.value?-1!==ne(B.value)?[]:[(e={},l(e,C.value,B.value),l(e,m.value,B.value),l(e,d.value,B.value),e)]:[]})),X=e.computed((function(){switch(s.value){case"single":return null;case"multiple":case"tags":return[]}})),z=e.computed((function(){return b.value||I.value})),G=function(e){switch("object"!==a(e)&&(e=te(e)),s.value){case"single":R(e);break;case"multiple":case"tags":R(V.value.concat(e))}r.emit("select",K(e))},J=function(e){switch("object"!==a(e)&&(e=te(e)),s.value){case"single":Q();break;case"tags":case"multiple":R(V.value.filter((function(t){return t[C.value]!=e[C.value]})))}r.emit("deselect",K(e))},K=function(e){return g.value?e:e[C.value]},Q=function(){R(X.value)},Y=function(e){switch(s.value){case"single":return!n(V.value)&&V.value[C.value]==e[C.value];case"tags":case"multiple":return!n(V.value)&&-1!==V.value.map((function(e){return e[C.value]})).indexOf(e[C.value])}},Z=function(e){return!0===e.disabled},ee=function(){return!(void 0===q||-1===q.value||!$.value&&q.value>0)&&V.value.length>=q.value},te=function(e){return H.value[H.value.map((function(e){return String(e[C.value])})).indexOf(String(e))]},ne=function(e){return H.value.map((function(e){return t(e[d.value])})).indexOf(t(e))},ae=function(e){return"tags"===s.value&&f.value&&Y(e)},le=function(e){N.value.push(e)},ue=function(){n(T.value)||(V.value=ie(T.value))},re=function(e){I.value=!0,c.value(B.value).then((function(t){j.value=t,I.value=!1,"function"==typeof e&&e(t)}))},ie=function(e){return n(e)?"single"===s.value?{}:[]:g.value?e:"single"===s.value?te(e)||{}:e.filter((function(e){return!!te(e)})).map((function(e){return te(e)}))};if("single"!==s.value&&!n(T.value)&&!Array.isArray(T.value))throw new Error('v-model must be an array when using "'.concat(s.value,'" mode'));return c&&"function"==typeof c.value?_.value?re(ue):1==g.value&&ue():(j.value=c&&c.value?c.value:[],ue()),k.value>-1&&e.watch(B,(function(e){e.length<w.value||(x.value&&(j.value=[]),setTimeout((function(){e==B.value&&(I.value=!0,c.value(B.value).then((function(t){e==B.value&&(j.value=t),I.value=!1})))}),k.value))}),{flush:"sync"}),e.watch(T,(function(e){var t,a,l;if(n(e))V.value=ie(e);else switch(s.value){case"single":(g.value?e[C.value]!=V.value[C.value]:e!=V.value[C.value])&&(V.value=ie(e));break;case"multiple":case"tags":t=g.value?e.map((function(e){return e[C.value]})):e,a=V.value.map((function(e){return e[C.value]})),l=a.slice().sort(),t.length===a.length&&t.slice().sort().every((function(e,t){return e===l[t]}))||(V.value=ie(e))}}),{deep:!0}),{filteredOptions:U,hasSelected:$,multipleLabelText:L,extendedOptions:H,noOptions:F,noResults:M,busy:z,select:G,deselect:J,remove:function(e){J(e)},clear:Q,isSelected:Y,isDisabled:Z,isMax:ee,getOption:te,handleOptionClick:function(e){if(!Z(e))switch(s.value){case"single":if(Y(e))return void(P.value&&J(e));G(e),D(),A();break;case"multiple":if(Y(e))return void J(e);if(ee())return;G(e),S.value&&E();break;case"tags":if(Y(e))return void J(e);if(ee())return;void 0===te(e[C.value])&&p.value&&(r.emit("tag",e[C.value]),h.value&&le(e),E()),S.value&&E(),G(e)}},resolveOptions:re}}function o(e,t,n,a,l,u,r,i,o,c){"boolean"!=typeof r&&(o=i,i=r,r=!1);var s,d="function"==typeof n?n.options:n;if(e&&e.render&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns,d._compiled=!0,l&&(d.functional=!0)),a&&(d._scopeId=a),u?(s=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,o(e)),e&&e._registeredComponents&&e._registeredComponents.add(u)},d._ssrRegister=s):t&&(s=r?function(e){t.call(this,c(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,i(e))}),s)if(d.functional){var v=d.render;d.render=function(e,t){return s.call(t),v(e,t)}}else{var f=d.beforeCreate;d.beforeCreate=f?[].concat(f,s):[s]}return n}const c={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(t,a){const l=function(t,n){var a=e.toRefs(t),l=a.value,u=a.modelValue,r=a.mode;return{internalValue:e.ref("single"!==r.value?[]:{}),externalValue:void 0!==n.expose?u:l}}(t,a),r=function(t,a,l){var u=e.toRefs(t),r=u.object,i=u.valueProp,o=u.mode,c=l.internalValue,s=function(e){return r.value||n(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return n(e)?"single"===o.value?{}:[]:e};return{update:function(e){c.value=d(e);var t=s(e);a.emit("change",t),a.emit("input",t),a.emit("update:modelValue",t)}}}(t,a,{internalValue:l.internalValue}),o=function(t,n,a){var l=e.toRefs(t),u=l.searchable,r=l.mode,i=a.internalValue,o=e.ref(null),c=e.ref(null),s=e.computed((function(){return o.value?"".concat(o.value.length,"ch"):"tags"===r.value&&-1===[null,void 0].indexOf(i.value)&&i.value.length?"1ch":"100%"}));return e.watch(o,(function(e){n.emit("search-change",e)})),{search:o,input:c,tagsSearchWidth:s,clearSearch:function(){o.value=""},blurSearch:function(){u.value&&c.value.blur()}}}(t,a,{internalValue:l.internalValue}),c=function(t,n,a){var l=e.toRefs(t),u=l.maxHeight,r=l.disabled,i=e.ref(!1),o=e.computed((function(){return"".concat(u.value,"px")}));return{isOpen:i,contentMaxHeight:o,open:function(){r.value||(i.value=!0,n.emit("open"))},close:function(){i.value=!1,n.emit("close")}}}(t,a),s=function(t,n,a){var l=e.toRefs(t),u=l.searchable,r=l.id;return{multiselect:e.ref(null),tabindex:e.computed((function(){return u.value?-1:0})),blurInput:function(){document.getElementById(r.value).querySelector(".multiselect-input").blur()}}}(t),d=i(t,a,{externalValue:l.externalValue,internalValue:l.internalValue,search:o.search,blurSearch:o.blurSearch,clearSearch:o.clearSearch,update:r.update,blurInput:s.blurInput}),v=function(t,n,a){var l=e.toRefs(t),u=l.id,r=l.valueProp,i=a.filteredOptions,o=a.handleOptionClick,c=a.search,s=e.ref(null),d=e.computed((function(){return i.value.filter((function(e){return!0!==e.disabled}))})),v=function(e){s.value=e},f=function(){s.value=d.value[0]||null},p=function(){s.value=null},m=function(){var e=document.getElementById(u.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return e.watch(c,(function(e){f()})),{pointer:s,isPointed:function(e){return!!s.value&&s.value[r.value]==e[r.value]},setPointer:v,setPointerFirst:f,clearPointer:p,selectPointer:function(){s.value&&!0!==s.value.disabled?(o(s.value),p()):p()},forwardPointer:function(){if(null===s.value)v(d.value[0]||null);else{var t=d.value.map((function(e){return e[r.value]})).indexOf(s.value[r.value])+1;d.value.length<=t&&(t=0),v(d.value[t]||null)}e.nextTick((function(){m()}))},backwardPointer:function(){if(null===s.value)v(d.value[d.value.length-1]||null);else{var t=d.value.map((function(e){return e[r.value]})).indexOf(s.value[r.value])-1;t<0&&(t=d.value.length-1),v(d.value[t]||null)}e.nextTick((function(){m()}))}}}(t,0,{filteredOptions:d.filteredOptions,handleOptionClick:d.handleOptionClick,search:o.search}),f=function(t,n,a){var l=e.toRefs(t).mode,r=a.internalValue,i=a.update,o=a.close,c=a.clearPointer,s=a.search;return{handleBackspace:function(e){"single"!==l.value&&i(u(r.value).slice(0,-1))},handleEsc:function(e){o(),c(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(t,0,{internalValue:l.internalValue,update:r.update,close:c.close,clearPointer:v.clearPointer,search:o.search});return{...l,...r,...o,...c,...s,...d,...v,...f}}};var s=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"multiselect",staticClass:"multiselect",class:["is-"+e.mode,{"is-open":e.isOpen,"is-searchable":e.searchable,"is-disabled":e.disabled,"no-caret":!e.caret}],attrs:{id:e.id},on:{keydown:function(t){if(!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter"))return null;t.preventDefault()}}},[n("div",{staticClass:"multiselect-input",attrs:{tabindex:e.tabindex},on:{focus:e.open,blur:e.close,keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.handleEsc(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.selectPointer(t)}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:(t.preventDefault(),e.handleBackspace(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.forwardPointer(t))}]}},["single"==e.mode&&e.hasSelected&&!e.search&&e.internalValue?[e._t("singlelabel",[n("div",{staticClass:"multiselect-single-label"},[e._v("\n "+e._s(e.internalValue[e.label])+"\n ")])],{value:e.internalValue})]:e._e(),e._v(" "),"multiple"==e.mode&&e.hasSelected&&!e.search?[e._t("multiplelabel",[n("div",{staticClass:"multiselect-multiple-label"},[e._v("\n "+e._s(e.multipleLabelText)+"\n ")])],{values:e.internalValue})]:e._e(),e._v(" "),"tags"!==e.mode&&e.searchable&&!e.disabled?[n("div",{staticClass:"multiselect-search"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})])]:e._e(),e._v(" "),"tags"==e.mode?[n("div",{staticClass:"multiselect-tags"},[e._l(e.internalValue,(function(t,a,l){return n("span",{key:l},[e._t("tag",[n("div",{staticClass:"multiselect-tag"},[e._v("\n "+e._s(t[e.label])+"\n "),e.disabled?e._e():n("i",{on:{click:function(e){e.preventDefault()},mousedown:function(n){return n.preventDefault(),e.remove(t)}}})])],{option:t,remove:e.remove,disabled:e.disabled})],2)})),e._v(" "),e.searchable&&!e.disabled?n("div",{staticClass:"multiselect-search",style:{width:e.tagsSearchWidth}},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",style:{width:e.tagsSearchWidth},domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})]):e._e()],2)]:e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.placeholder&&!e.hasSelected&&!e.search,expression:"placeholder && !hasSelected && !search"}],staticClass:"multiselect-placeholder"},[e._v("\n "+e._s(e.placeholder)+"\n ")]),e._v(" "),n("transition",{attrs:{name:"multiselect-loading"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.busy,expression:"busy"}],staticClass:"multiselect-spinner"})])],2),e._v(" "),n("transition",{attrs:{name:"multiselect"},on:{"after-leave":e.clearSearch}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.isOpen,expression:"isOpen"}],staticClass:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[e._t("beforelist"),e._v(" "),e._l(e.filteredOptions,(function(t,a,l){return n("a",{key:l,staticClass:"multiselect-option",class:{"is-pointed":e.isPointed(t),"is-selected":e.isSelected(t),"is-disabled":e.isDisabled(t)},attrs:{href:""},on:{mousedown:function(e){e.preventDefault()},mouseenter:function(n){return e.setPointer(t)},click:function(n){return n.stopPropagation(),n.preventDefault(),e.handleOptionClick(t)}}},[e._t("option",[n("span",[e._v(e._s(t[e.label]))])],{option:t,search:e.search})],2)})),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noOptions,expression:"noOptions"}]},[e._t("nooptions",[n("div",{staticClass:"multiselect-no-options"},[e._v(e._s(e.noOptionsText))])])],2),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noResults,expression:"noResults"}]},[e._t("noresults",[n("div",{staticClass:"multiselect-no-results"},[e._v(e._s(e.noResultsText))])])],2),e._v(" "),e._t("afterlist")],2)])],1)};s._withStripped=!0;return o({render:s,staticRenderFns:[]},undefined,c,undefined,false,undefined,!1,void 0,void 0,void 0)}(VueCompositionAPI);
var VueformMultiselect=function(e){"use strict";function t(e){return String(e).toLowerCase().trim()}function n(e){return-1!==[null,void 0,!1].indexOf(e)}function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function i(u,r,i){var o=e.toRefs(u),c=o.options,s=o.mode,d=o.trackBy,v=o.limit,p=o.hideSelected,f=o.createTag,m=o.label,h=o.appendNewTag,y=o.multipleLabel,g=o.object,b=o.loading,k=o.delay,_=o.resolveOnLoad,w=o.minChars,O=o.filterResults,S=o.clearOnSearch,x=o.clearOnSelect,C=o.valueProp,P=o.canDeselect,q=o.max,V=i.internalValue,T=i.externalValue,E=i.search,B=i.blurSearch,D=i.clearSearch,R=i.update,A=i.blurInput,N=i.pointer,j=e.ref([]),I=e.ref([]),H=e.ref(!1),U=e.computed((function(){var e,t=I.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var n,l=t[e];return a(n={},C.value,e),a(n,d.value,l),a(n,m.value,l),n}))),t=t.map((function(e,t){var n;return"object"===l(e)?e:(a(n={},C.value,t),a(n,d.value,e),a(n,m.value,e),n)})),j.value.length&&(t=t.concat(j.value)),t})),M=e.computed((function(){var e=U.value;return X.value.length&&(e=X.value.concat(e)),E.value&&O.value&&(e=e.filter((function(e){return-1!==t(e[d.value]).indexOf(t(E.value))}))),p.value&&(e=e.filter((function(e){return!ae(e)}))),v.value>0&&(e=e.slice(0,v.value)),e})),$=e.computed((function(){switch(s.value){case"single":return!n(V.value[C.value]);case"multiple":case"tags":return!n(V.value)&&V.value.length>0}})),L=e.computed((function(){return void 0!==y&&void 0!==y.value?y.value(V.value):V.value&&V.value.length>1?"".concat(V.value.length," options selected"):"1 option selected"})),F=e.computed((function(){return!U.value.length})),W=e.computed((function(){return U.value.length>0&&0==M.value.length})),X=e.computed((function(){var e;return!1!==f.value&&E.value?-1!==le(E.value)?[]:[(e={},a(e,C.value,E.value),a(e,m.value,E.value),a(e,d.value,E.value),e)]:[]})),z=e.computed((function(){switch(s.value){case"single":return null;case"multiple":case"tags":return[]}})),G=e.computed((function(){return b.value||H.value})),J=function(e){switch("object"!==l(e)&&(e=ne(e)),s.value){case"single":R(e);break;case"multiple":case"tags":R(V.value.concat(e))}r.emit("select",Q(e))},K=function(e){switch("object"!==l(e)&&(e=ne(e)),s.value){case"single":Y();break;case"tags":case"multiple":R(V.value.filter((function(t){return t[C.value]!=e[C.value]})))}r.emit("deselect",Q(e))},Q=function(e){return g.value?e:e[C.value]},Y=function(){R(z.value)},Z=function(e){switch(s.value){case"single":return!n(V.value)&&V.value[C.value]==e[C.value];case"tags":case"multiple":return!n(V.value)&&-1!==V.value.map((function(e){return e[C.value]})).indexOf(e[C.value])}},ee=function(e){return!0===e.disabled},te=function(){return!(void 0===q||-1===q.value||!$.value&&q.value>0)&&V.value.length>=q.value},ne=function(e){return U.value[U.value.map((function(e){return String(e[C.value])})).indexOf(String(e))]},le=function(e){return U.value.map((function(e){return t(e[d.value])})).indexOf(t(e))},ae=function(e){return"tags"===s.value&&p.value&&Z(e)},ue=function(e){j.value.push(e)},re=function(){n(T.value)||(V.value=oe(T.value))},ie=function(e){H.value=!0,c.value(E.value).then((function(t){I.value=t,H.value=!1,"function"==typeof e&&e(t)}))},oe=function(e){return n(e)?"single"===s.value?{}:[]:g.value?e:"single"===s.value?ne(e)||{}:e.filter((function(e){return!!ne(e)})).map((function(e){return ne(e)}))};if("single"!==s.value&&!n(T.value)&&!Array.isArray(T.value))throw new Error('v-model must be an array when using "'.concat(s.value,'" mode'));return c&&"function"==typeof c.value?_.value?ie(re):1==g.value&&re():(I.value=c&&c.value?c.value:[],re()),k.value>-1&&e.watch(E,(function(e){e.length<w.value||(S.value&&(I.value=[]),setTimeout((function(){e==E.value&&(H.value=!0,c.value(E.value).then((function(t){e==E.value&&(I.value=t,N.value=M.value.filter((function(e){return!0!==e.disabled}))[0]||null),H.value=!1})))}),k.value))}),{flush:"sync"}),e.watch(T,(function(e){var t,l,a;if(n(e))V.value=oe(e);else switch(s.value){case"single":(g.value?e[C.value]!=V.value[C.value]:e!=V.value[C.value])&&(V.value=oe(e));break;case"multiple":case"tags":t=g.value?e.map((function(e){return e[C.value]})):e,l=V.value.map((function(e){return e[C.value]})),a=l.slice().sort(),t.length===l.length&&t.slice().sort().every((function(e,t){return e===a[t]}))||(V.value=oe(e))}}),{deep:!0}),e.watch((function(){return u.options}),(function(e){"function"!=typeof u.options&&(I.value=u.options)})),{filteredOptions:M,hasSelected:$,multipleLabelText:L,extendedOptions:U,noOptions:F,noResults:W,busy:G,select:J,deselect:K,remove:function(e){K(e)},clear:Y,isSelected:Z,isDisabled:ee,isMax:te,getOption:ne,handleOptionClick:function(e){if(!ee(e))switch(s.value){case"single":if(Z(e))return void(P.value&&K(e));J(e),B(),A();break;case"multiple":if(Z(e))return void K(e);if(te())return;J(e),x.value&&D();break;case"tags":if(Z(e))return void K(e);if(te())return;void 0===ne(e[C.value])&&f.value&&(r.emit("tag",e[C.value]),h.value&&ue(e),D()),x.value&&D(),J(e)}},resolveOptions:ie}}function o(e,t,n,l,a,u,r,i,o,c){"boolean"!=typeof r&&(o=i,i=r,r=!1);var s,d="function"==typeof n?n.options:n;if(e&&e.render&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns,d._compiled=!0,a&&(d.functional=!0)),l&&(d._scopeId=l),u?(s=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,o(e)),e&&e._registeredComponents&&e._registeredComponents.add(u)},d._ssrRegister=s):t&&(s=r?function(e){t.call(this,c(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,i(e))}),s)if(d.functional){var v=d.render;d.render=function(e,t){return s.call(t),v(e,t)}}else{var p=d.beforeCreate;d.beforeCreate=p?[].concat(p,s):[s]}return n}const c={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(t,l){const a=function(t,n){var l=e.toRefs(t),a=l.value,u=l.modelValue,r=l.mode;return{internalValue:e.ref("single"!==r.value?[]:{}),externalValue:void 0!==n.expose?u:a}}(t,l),r=function(t,n,l){var a=e.toRefs(t),u=a.searchable,r=a.id;return{multiselect:e.ref(null),tabindex:e.computed((function(){return u.value?-1:0})),blurInput:function(){document.getElementById(r.value).querySelector(".multiselect-input").blur()}}}(t),o={pointer:e.ref(null)},c=function(t,n,l){var a=e.toRefs(t),u=a.maxHeight,r=a.disabled,i=a.searchable,o=l.multiselect,c=e.ref(!1),s=e.computed((function(){return"".concat(u.value,"px")}));return{isOpen:c,contentMaxHeight:s,open:function(e){r.value||(c.value=!0,n.emit("open"))},close:function(){c.value=!1,n.emit("close")},handleInputMousedown:function(e){c.value&&!i.value&&(o.value.querySelector(".multiselect-input").dispatchEvent(new Event("blur")),o.value.querySelector(".multiselect-input").blur(),e.preventDefault())}}}(t,l,{multiselect:r.multiselect}),s=function(t,l,a){var u=e.toRefs(t),r=u.object,i=u.valueProp,o=u.mode,c=a.internalValue,s=function(e){return r.value||n(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return n(e)?"single"===o.value?{}:[]:e};return{update:function(e){c.value=d(e);var t=s(e);l.emit("change",t),l.emit("input",t),l.emit("update:modelValue",t)}}}(t,l,{internalValue:a.internalValue}),d=function(t,n,l){var a=e.toRefs(t),u=a.searchable,r=a.mode,i=l.internalValue,o=e.ref(null),c=e.ref(null),s=e.computed((function(){return o.value?"".concat(o.value.length,"ch"):"tags"===r.value&&-1===[null,void 0].indexOf(i.value)&&i.value.length?"1ch":"100%"}));return e.watch(o,(function(e){n.emit("search-change",e)})),{search:o,input:c,tagsSearchWidth:s,clearSearch:function(){o.value=""},blurSearch:function(){u.value&&c.value.blur()}}}(t,l,{internalValue:a.internalValue}),v=i(t,l,{externalValue:a.externalValue,internalValue:a.internalValue,search:d.search,blurSearch:d.blurSearch,clearSearch:d.clearSearch,update:s.update,blurInput:r.blurInput,pointer:o.pointer}),p=function(t,n,l){var a=e.toRefs(t),u=a.id,r=a.valueProp,i=l.filteredOptions,o=l.handleOptionClick,c=l.search,s=l.pointer,d=e.computed((function(){return i.value.filter((function(e){return!0!==e.disabled}))})),v=function(e){s.value=e},p=function(){s.value=d.value[0]||null},f=function(){s.value=null},m=function(){var e=document.getElementById(u.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return e.watch(c,(function(e){p()})),{pointer:s,isPointed:function(e){return!!s.value&&s.value[r.value]==e[r.value]},setPointer:v,setPointerFirst:p,clearPointer:f,selectPointer:function(){s.value&&!0!==s.value.disabled?(o(s.value),f()):f()},forwardPointer:function(){if(null===s.value)v(d.value[0]||null);else{var t=d.value.map((function(e){return e[r.value]})).indexOf(s.value[r.value])+1;d.value.length<=t&&(t=0),v(d.value[t]||null)}e.nextTick((function(){m()}))},backwardPointer:function(){if(null===s.value)v(d.value[d.value.length-1]||null);else{var t=d.value.map((function(e){return e[r.value]})).indexOf(s.value[r.value])-1;t<0&&(t=d.value.length-1),v(d.value[t]||null)}e.nextTick((function(){m()}))}}}(t,0,{filteredOptions:v.filteredOptions,handleOptionClick:v.handleOptionClick,search:d.search,pointer:o.pointer}),f=function(t,n,l){var a=e.toRefs(t).mode,r=l.internalValue,i=l.update,o=l.close,c=l.clearPointer,s=l.search;return{handleBackspace:function(e){"single"!==a.value&&i(u(r.value).slice(0,-1))},handleEsc:function(e){o(),c(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(t,0,{internalValue:a.internalValue,update:s.update,close:c.close,clearPointer:p.clearPointer,search:d.search});return{...a,...c,...r,...o,...s,...d,...v,...p,...f}}};var s=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"multiselect",staticClass:"multiselect",class:["is-"+e.mode,{"is-open":e.isOpen,"is-searchable":e.searchable,"is-disabled":e.disabled,"no-caret":!e.caret}],attrs:{id:e.id},on:{keydown:function(t){if(!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter"))return null;t.preventDefault()}}},[n("div",{staticClass:"multiselect-input",attrs:{tabindex:e.tabindex},on:{mousedown:e.handleInputMousedown,focus:e.open,blur:e.close,keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.handleEsc(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.selectPointer(t)}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:(t.preventDefault(),e.handleBackspace(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.forwardPointer(t))}]}},["single"==e.mode&&e.hasSelected&&!e.search&&e.internalValue?[e._t("singlelabel",[n("div",{staticClass:"multiselect-single-label"},[e._v("\n "+e._s(e.internalValue[e.label])+"\n ")])],{value:e.internalValue})]:e._e(),e._v(" "),"multiple"==e.mode&&e.hasSelected&&!e.search?[e._t("multiplelabel",[n("div",{staticClass:"multiselect-multiple-label"},[e._v("\n "+e._s(e.multipleLabelText)+"\n ")])],{values:e.internalValue})]:e._e(),e._v(" "),"tags"!==e.mode&&e.searchable&&!e.disabled?[n("div",{staticClass:"multiselect-search"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})])]:e._e(),e._v(" "),"tags"==e.mode?[n("div",{staticClass:"multiselect-tags"},[e._l(e.internalValue,(function(t,l,a){return n("span",{key:a},[e._t("tag",[n("div",{staticClass:"multiselect-tag"},[e._v("\n "+e._s(t[e.label])+"\n "),e.disabled?e._e():n("i",{on:{click:function(e){e.preventDefault()},mousedown:function(n){return n.preventDefault(),n.stopPropagation(),e.remove(t)}}})])],{option:t,remove:e.remove,disabled:e.disabled})],2)})),e._v(" "),e.searchable&&!e.disabled?n("div",{staticClass:"multiselect-search",style:{width:e.tagsSearchWidth}},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",style:{width:e.tagsSearchWidth},domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})]):e._e()],2)]:e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.placeholder&&!e.hasSelected&&!e.search,expression:"placeholder && !hasSelected && !search"}],staticClass:"multiselect-placeholder"},[e._v("\n "+e._s(e.placeholder)+"\n ")]),e._v(" "),n("transition",{attrs:{name:"multiselect-loading"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.busy,expression:"busy"}],staticClass:"multiselect-spinner"})])],2),e._v(" "),n("transition",{attrs:{name:"multiselect"},on:{"after-leave":e.clearSearch}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.isOpen,expression:"isOpen"}],staticClass:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[e._t("beforelist"),e._v(" "),e._l(e.filteredOptions,(function(t,l,a){return n("a",{key:a,staticClass:"multiselect-option",class:{"is-pointed":e.isPointed(t),"is-selected":e.isSelected(t),"is-disabled":e.isDisabled(t)},attrs:{href:""},on:{mousedown:function(e){e.preventDefault()},mouseenter:function(n){return e.setPointer(t)},click:function(n){return n.stopPropagation(),n.preventDefault(),e.handleOptionClick(t)}}},[e._t("option",[n("span",[e._v(e._s(t[e.label]))])],{option:t,search:e.search})],2)})),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noOptions,expression:"noOptions"}]},[e._t("nooptions",[n("div",{staticClass:"multiselect-no-options"},[e._v(e._s(e.noOptionsText))])])],2),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noResults,expression:"noResults"}]},[e._t("noresults",[n("div",{staticClass:"multiselect-no-results"},[e._v(e._s(e.noResultsText))])])],2),e._v(" "),e._t("afterlist")],2)])],1)};s._withStripped=!0;return o({render:s,staticRenderFns:[]},undefined,c,undefined,false,undefined,!1,void 0,void 0,void 0)}(VueCompositionAPI);

@@ -1,1 +0,1 @@

import{toRefs as e,ref as t,computed as n,watch as a,nextTick as l}from"@vue/composition-api";function u(e){return String(e).toLowerCase().trim()}function r(e){return-1!==[null,void 0,!1].indexOf(e)}function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(l,s,c){var d=e(l),v=d.options,f=d.mode,p=d.trackBy,y=d.limit,h=d.hideSelected,m=d.createTag,g=d.label,b=d.appendNewTag,k=d.multipleLabel,_=d.object,w=d.loading,O=d.delay,x=d.resolveOnLoad,S=d.minChars,C=d.filterResults,P=d.clearOnSearch,q=d.clearOnSelect,V=d.valueProp,B=d.canDeselect,T=d.max,D=c.internalValue,E=c.externalValue,N=c.search,A=c.blurSearch,j=c.clearSearch,R=c.update,I=c.blurInput,H=t([]),U=t([]),$=t(!1),L=n((function(){var e,t=U.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var n,a=t[e];return o(n={},V.value,e),o(n,p.value,a),o(n,g.value,a),n}))),t=t.map((function(e,t){var n;return"object"===i(e)?e:(o(n={},V.value,t),o(n,p.value,e),o(n,g.value,e),n)})),H.value.length&&(t=t.concat(H.value)),t})),F=n((function(){var e=L.value;return G.value.length&&(e=G.value.concat(e)),N.value&&C.value&&(e=e.filter((function(e){return-1!==u(e[p.value]).indexOf(u(N.value))}))),h.value&&(e=e.filter((function(e){return!re(e)}))),y.value>0&&(e=e.slice(0,y.value)),e})),M=n((function(){switch(f.value){case"single":return!r(D.value[V.value]);case"multiple":case"tags":return!r(D.value)&&D.value.length>0}})),W=n((function(){return void 0!==k&&void 0!==k.value?k.value(D.value):D.value&&D.value.length>1?"".concat(D.value.length," options selected"):"1 option selected"})),X=n((function(){return!L.value.length})),z=n((function(){return L.value.length>0&&0==F.value.length})),G=n((function(){var e;return!1!==m.value&&N.value?-1!==ue(N.value)?[]:[(e={},o(e,V.value,N.value),o(e,g.value,N.value),o(e,p.value,N.value),e)]:[]})),J=n((function(){switch(f.value){case"single":return null;case"multiple":case"tags":return[]}})),K=n((function(){return w.value||$.value})),Q=function(e){switch("object"!==i(e)&&(e=le(e)),f.value){case"single":R(e);break;case"multiple":case"tags":R(D.value.concat(e))}s.emit("select",Z(e))},Y=function(e){switch("object"!==i(e)&&(e=le(e)),f.value){case"single":ee();break;case"tags":case"multiple":R(D.value.filter((function(t){return t[V.value]!=e[V.value]})))}s.emit("deselect",Z(e))},Z=function(e){return _.value?e:e[V.value]},ee=function(){R(J.value)},te=function(e){switch(f.value){case"single":return!r(D.value)&&D.value[V.value]==e[V.value];case"tags":case"multiple":return!r(D.value)&&-1!==D.value.map((function(e){return e[V.value]})).indexOf(e[V.value])}},ne=function(e){return!0===e.disabled},ae=function(){return!(void 0===T||-1===T.value||!M.value&&T.value>0)&&D.value.length>=T.value},le=function(e){return L.value[L.value.map((function(e){return String(e[V.value])})).indexOf(String(e))]},ue=function(e){return L.value.map((function(e){return u(e[p.value])})).indexOf(u(e))},re=function(e){return"tags"===f.value&&h.value&&te(e)},ie=function(e){H.value.push(e)},oe=function(){r(E.value)||(D.value=ce(E.value))},se=function(e){$.value=!0,v.value(N.value).then((function(t){U.value=t,$.value=!1,"function"==typeof e&&e(t)}))},ce=function(e){return r(e)?"single"===f.value?{}:[]:_.value?e:"single"===f.value?le(e)||{}:e.filter((function(e){return!!le(e)})).map((function(e){return le(e)}))};if("single"!==f.value&&!r(E.value)&&!Array.isArray(E.value))throw new Error('v-model must be an array when using "'.concat(f.value,'" mode'));return v&&"function"==typeof v.value?x.value?se(oe):1==_.value&&oe():(U.value=v&&v.value?v.value:[],oe()),O.value>-1&&a(N,(function(e){e.length<S.value||(P.value&&(U.value=[]),setTimeout((function(){e==N.value&&($.value=!0,v.value(N.value).then((function(t){e==N.value&&(U.value=t),$.value=!1})))}),O.value))}),{flush:"sync"}),a(E,(function(e){var t,n,a;if(r(e))D.value=ce(e);else switch(f.value){case"single":(_.value?e[V.value]!=D.value[V.value]:e!=D.value[V.value])&&(D.value=ce(e));break;case"multiple":case"tags":t=_.value?e.map((function(e){return e[V.value]})):e,n=D.value.map((function(e){return e[V.value]})),a=n.slice().sort(),t.length===n.length&&t.slice().sort().every((function(e,t){return e===a[t]}))||(D.value=ce(e))}}),{deep:!0}),{filteredOptions:F,hasSelected:M,multipleLabelText:W,extendedOptions:L,noOptions:X,noResults:z,busy:K,select:Q,deselect:Y,remove:function(e){Y(e)},clear:ee,isSelected:te,isDisabled:ne,isMax:ae,getOption:le,handleOptionClick:function(e){if(!ne(e))switch(f.value){case"single":if(te(e))return void(B.value&&Y(e));Q(e),A(),I();break;case"multiple":if(te(e))return void Y(e);if(ae())return;Q(e),q.value&&j();break;case"tags":if(te(e))return void Y(e);if(ae())return;void 0===le(e[V.value])&&m.value&&(s.emit("tag",e[V.value]),b.value&&ie(e),j()),q.value&&j(),Q(e)}},resolveOptions:se}}function c(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function v(e,t,n,a,l,u,r,i,o,s){"boolean"!=typeof r&&(o=i,i=r,r=!1);var c,d="function"==typeof n?n.options:n;if(e&&e.render&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns,d._compiled=!0,l&&(d.functional=!0)),a&&(d._scopeId=a),u?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,o(e)),e&&e._registeredComponents&&e._registeredComponents.add(u)},d._ssrRegister=c):t&&(c=r?function(e){t.call(this,s(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,i(e))}),c)if(d.functional){var v=d.render;d.render=function(e,t){return c.call(t),v(e,t)}}else{var f=d.beforeCreate;d.beforeCreate=f?[].concat(f,c):[c]}return n}const f={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(u,i){const o=function(n,a){var l=e(n),u=l.value,r=l.modelValue,i=l.mode;return{internalValue:t("single"!==i.value?[]:{}),externalValue:void 0!==a.expose?r:u}}(u,i),d=function(t,n,a){var l=e(t),u=l.object,i=l.valueProp,o=l.mode,s=a.internalValue,c=function(e){return u.value||r(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return r(e)?"single"===o.value?{}:[]:e};return{update:function(e){s.value=d(e);var t=c(e);n.emit("change",t),n.emit("input",t),n.emit("update:modelValue",t)}}}(u,i,{internalValue:o.internalValue}),v=function(l,u,r){var i=e(l),o=i.searchable,s=i.mode,c=r.internalValue,d=t(null),v=t(null),f=n((function(){return d.value?"".concat(d.value.length,"ch"):"tags"===s.value&&-1===[null,void 0].indexOf(c.value)&&c.value.length?"1ch":"100%"}));return a(d,(function(e){u.emit("search-change",e)})),{search:d,input:v,tagsSearchWidth:f,clearSearch:function(){d.value=""},blurSearch:function(){o.value&&v.value.blur()}}}(u,i,{internalValue:o.internalValue}),f=function(a,l,u){var r=e(a),i=r.maxHeight,o=r.disabled,s=t(!1),c=n((function(){return"".concat(i.value,"px")}));return{isOpen:s,contentMaxHeight:c,open:function(){o.value||(s.value=!0,l.emit("open"))},close:function(){s.value=!1,l.emit("close")}}}(u,i),p=function(a,l,u){var r=e(a),i=r.searchable,o=r.id;return{multiselect:t(null),tabindex:n((function(){return i.value?-1:0})),blurInput:function(){document.getElementById(o.value).querySelector(".multiselect-input").blur()}}}(u),y=s(u,i,{externalValue:o.externalValue,internalValue:o.internalValue,search:v.search,blurSearch:v.blurSearch,clearSearch:v.clearSearch,update:d.update,blurInput:p.blurInput}),h=function(u,r,i){var o=e(u),s=o.id,c=o.valueProp,d=i.filteredOptions,v=i.handleOptionClick,f=i.search,p=t(null),y=n((function(){return d.value.filter((function(e){return!0!==e.disabled}))})),h=function(e){p.value=e},m=function(){p.value=y.value[0]||null},g=function(){p.value=null},b=function(){var e=document.getElementById(s.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return a(f,(function(e){m()})),{pointer:p,isPointed:function(e){return!!p.value&&p.value[c.value]==e[c.value]},setPointer:h,setPointerFirst:m,clearPointer:g,selectPointer:function(){p.value&&!0!==p.value.disabled?(v(p.value),g()):g()},forwardPointer:function(){if(null===p.value)h(y.value[0]||null);else{var e=y.value.map((function(e){return e[c.value]})).indexOf(p.value[c.value])+1;y.value.length<=e&&(e=0),h(y.value[e]||null)}l((function(){b()}))},backwardPointer:function(){if(null===p.value)h(y.value[y.value.length-1]||null);else{var e=y.value.map((function(e){return e[c.value]})).indexOf(p.value[c.value])-1;e<0&&(e=y.value.length-1),h(y.value[e]||null)}l((function(){b()}))}}}(u,0,{filteredOptions:y.filteredOptions,handleOptionClick:y.handleOptionClick,search:v.search}),m=function(t,n,a){var l=e(t).mode,u=a.internalValue,r=a.update,i=a.close,o=a.clearPointer,s=a.search;return{handleBackspace:function(e){"single"!==l.value&&r(c(u.value).slice(0,-1))},handleEsc:function(e){i(),o(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(u,0,{internalValue:o.internalValue,update:d.update,close:f.close,clearPointer:h.clearPointer,search:v.search});return{...o,...d,...v,...f,...p,...y,...h,...m}}};var p=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"multiselect",staticClass:"multiselect",class:["is-"+e.mode,{"is-open":e.isOpen,"is-searchable":e.searchable,"is-disabled":e.disabled,"no-caret":!e.caret}],attrs:{id:e.id},on:{keydown:function(t){if(!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter"))return null;t.preventDefault()}}},[n("div",{staticClass:"multiselect-input",attrs:{tabindex:e.tabindex},on:{focus:e.open,blur:e.close,keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.handleEsc(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.selectPointer(t)}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:(t.preventDefault(),e.handleBackspace(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.forwardPointer(t))}]}},["single"==e.mode&&e.hasSelected&&!e.search&&e.internalValue?[e._t("singlelabel",[n("div",{staticClass:"multiselect-single-label"},[e._v("\n "+e._s(e.internalValue[e.label])+"\n ")])],{value:e.internalValue})]:e._e(),e._v(" "),"multiple"==e.mode&&e.hasSelected&&!e.search?[e._t("multiplelabel",[n("div",{staticClass:"multiselect-multiple-label"},[e._v("\n "+e._s(e.multipleLabelText)+"\n ")])],{values:e.internalValue})]:e._e(),e._v(" "),"tags"!==e.mode&&e.searchable&&!e.disabled?[n("div",{staticClass:"multiselect-search"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})])]:e._e(),e._v(" "),"tags"==e.mode?[n("div",{staticClass:"multiselect-tags"},[e._l(e.internalValue,(function(t,a,l){return n("span",{key:l},[e._t("tag",[n("div",{staticClass:"multiselect-tag"},[e._v("\n "+e._s(t[e.label])+"\n "),e.disabled?e._e():n("i",{on:{click:function(e){e.preventDefault()},mousedown:function(n){return n.preventDefault(),e.remove(t)}}})])],{option:t,remove:e.remove,disabled:e.disabled})],2)})),e._v(" "),e.searchable&&!e.disabled?n("div",{staticClass:"multiselect-search",style:{width:e.tagsSearchWidth}},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",style:{width:e.tagsSearchWidth},domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})]):e._e()],2)]:e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.placeholder&&!e.hasSelected&&!e.search,expression:"placeholder && !hasSelected && !search"}],staticClass:"multiselect-placeholder"},[e._v("\n "+e._s(e.placeholder)+"\n ")]),e._v(" "),n("transition",{attrs:{name:"multiselect-loading"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.busy,expression:"busy"}],staticClass:"multiselect-spinner"})])],2),e._v(" "),n("transition",{attrs:{name:"multiselect"},on:{"after-leave":e.clearSearch}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.isOpen,expression:"isOpen"}],staticClass:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[e._t("beforelist"),e._v(" "),e._l(e.filteredOptions,(function(t,a,l){return n("a",{key:l,staticClass:"multiselect-option",class:{"is-pointed":e.isPointed(t),"is-selected":e.isSelected(t),"is-disabled":e.isDisabled(t)},attrs:{href:""},on:{mousedown:function(e){e.preventDefault()},mouseenter:function(n){return e.setPointer(t)},click:function(n){return n.stopPropagation(),n.preventDefault(),e.handleOptionClick(t)}}},[e._t("option",[n("span",[e._v(e._s(t[e.label]))])],{option:t,search:e.search})],2)})),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noOptions,expression:"noOptions"}]},[e._t("nooptions",[n("div",{staticClass:"multiselect-no-options"},[e._v(e._s(e.noOptionsText))])])],2),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noResults,expression:"noResults"}]},[e._t("noresults",[n("div",{staticClass:"multiselect-no-results"},[e._v(e._s(e.noResultsText))])])],2),e._v(" "),e._t("afterlist")],2)])],1)};p._withStripped=!0;const y=v({render:p,staticRenderFns:[]},undefined,f,undefined,false,undefined,!1,void 0,void 0,void 0);export default y;
import{toRefs as e,ref as t,computed as n,watch as l,nextTick as a}from"@vue/composition-api";function u(e){return String(e).toLowerCase().trim()}function r(e){return-1!==[null,void 0,!1].indexOf(e)}function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(a,s,c){var d=e(a),v=d.options,p=d.mode,f=d.trackBy,h=d.limit,m=d.hideSelected,y=d.createTag,g=d.label,b=d.appendNewTag,k=d.multipleLabel,_=d.object,w=d.loading,O=d.delay,S=d.resolveOnLoad,x=d.minChars,C=d.filterResults,P=d.clearOnSearch,q=d.clearOnSelect,V=d.valueProp,E=d.canDeselect,B=d.max,D=c.internalValue,T=c.externalValue,N=c.search,A=c.blurSearch,j=c.clearSearch,R=c.update,I=c.blurInput,H=c.pointer,U=t([]),$=t([]),L=t(!1),M=n((function(){var e,t=$.value||[];return e=t,"[object Object]"===Object.prototype.toString.call(e)&&(t=Object.keys(t).map((function(e){var n,l=t[e];return o(n={},V.value,e),o(n,f.value,l),o(n,g.value,l),n}))),t=t.map((function(e,t){var n;return"object"===i(e)?e:(o(n={},V.value,t),o(n,f.value,e),o(n,g.value,e),n)})),U.value.length&&(t=t.concat(U.value)),t})),F=n((function(){var e=M.value;return J.value.length&&(e=J.value.concat(e)),N.value&&C.value&&(e=e.filter((function(e){return-1!==u(e[f.value]).indexOf(u(N.value))}))),m.value&&(e=e.filter((function(e){return!ie(e)}))),h.value>0&&(e=e.slice(0,h.value)),e})),W=n((function(){switch(p.value){case"single":return!r(D.value[V.value]);case"multiple":case"tags":return!r(D.value)&&D.value.length>0}})),X=n((function(){return void 0!==k&&void 0!==k.value?k.value(D.value):D.value&&D.value.length>1?"".concat(D.value.length," options selected"):"1 option selected"})),z=n((function(){return!M.value.length})),G=n((function(){return M.value.length>0&&0==F.value.length})),J=n((function(){var e;return!1!==y.value&&N.value?-1!==re(N.value)?[]:[(e={},o(e,V.value,N.value),o(e,g.value,N.value),o(e,f.value,N.value),e)]:[]})),K=n((function(){switch(p.value){case"single":return null;case"multiple":case"tags":return[]}})),Q=n((function(){return w.value||L.value})),Y=function(e){switch("object"!==i(e)&&(e=ue(e)),p.value){case"single":R(e);break;case"multiple":case"tags":R(D.value.concat(e))}s.emit("select",ee(e))},Z=function(e){switch("object"!==i(e)&&(e=ue(e)),p.value){case"single":te();break;case"tags":case"multiple":R(D.value.filter((function(t){return t[V.value]!=e[V.value]})))}s.emit("deselect",ee(e))},ee=function(e){return _.value?e:e[V.value]},te=function(){R(K.value)},ne=function(e){switch(p.value){case"single":return!r(D.value)&&D.value[V.value]==e[V.value];case"tags":case"multiple":return!r(D.value)&&-1!==D.value.map((function(e){return e[V.value]})).indexOf(e[V.value])}},le=function(e){return!0===e.disabled},ae=function(){return!(void 0===B||-1===B.value||!W.value&&B.value>0)&&D.value.length>=B.value},ue=function(e){return M.value[M.value.map((function(e){return String(e[V.value])})).indexOf(String(e))]},re=function(e){return M.value.map((function(e){return u(e[f.value])})).indexOf(u(e))},ie=function(e){return"tags"===p.value&&m.value&&ne(e)},oe=function(e){U.value.push(e)},se=function(){r(T.value)||(D.value=de(T.value))},ce=function(e){L.value=!0,v.value(N.value).then((function(t){$.value=t,L.value=!1,"function"==typeof e&&e(t)}))},de=function(e){return r(e)?"single"===p.value?{}:[]:_.value?e:"single"===p.value?ue(e)||{}:e.filter((function(e){return!!ue(e)})).map((function(e){return ue(e)}))};if("single"!==p.value&&!r(T.value)&&!Array.isArray(T.value))throw new Error('v-model must be an array when using "'.concat(p.value,'" mode'));return v&&"function"==typeof v.value?S.value?ce(se):1==_.value&&se():($.value=v&&v.value?v.value:[],se()),O.value>-1&&l(N,(function(e){e.length<x.value||(P.value&&($.value=[]),setTimeout((function(){e==N.value&&(L.value=!0,v.value(N.value).then((function(t){e==N.value&&($.value=t,H.value=F.value.filter((function(e){return!0!==e.disabled}))[0]||null),L.value=!1})))}),O.value))}),{flush:"sync"}),l(T,(function(e){var t,n,l;if(r(e))D.value=de(e);else switch(p.value){case"single":(_.value?e[V.value]!=D.value[V.value]:e!=D.value[V.value])&&(D.value=de(e));break;case"multiple":case"tags":t=_.value?e.map((function(e){return e[V.value]})):e,n=D.value.map((function(e){return e[V.value]})),l=n.slice().sort(),t.length===n.length&&t.slice().sort().every((function(e,t){return e===l[t]}))||(D.value=de(e))}}),{deep:!0}),l((function(){return a.options}),(function(e){"function"!=typeof a.options&&($.value=a.options)})),{filteredOptions:F,hasSelected:W,multipleLabelText:X,extendedOptions:M,noOptions:z,noResults:G,busy:Q,select:Y,deselect:Z,remove:function(e){Z(e)},clear:te,isSelected:ne,isDisabled:le,isMax:ae,getOption:ue,handleOptionClick:function(e){if(!le(e))switch(p.value){case"single":if(ne(e))return void(E.value&&Z(e));Y(e),A(),I();break;case"multiple":if(ne(e))return void Z(e);if(ae())return;Y(e),q.value&&j();break;case"tags":if(ne(e))return void Z(e);if(ae())return;void 0===ue(e[V.value])&&y.value&&(s.emit("tag",e[V.value]),b.value&&oe(e),j()),q.value&&j(),Y(e)}},resolveOptions:ce}}function c(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function v(e,t,n,l,a,u,r,i,o,s){"boolean"!=typeof r&&(o=i,i=r,r=!1);var c,d="function"==typeof n?n.options:n;if(e&&e.render&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns,d._compiled=!0,a&&(d.functional=!0)),l&&(d._scopeId=l),u?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,o(e)),e&&e._registeredComponents&&e._registeredComponents.add(u)},d._ssrRegister=c):t&&(c=r?function(e){t.call(this,s(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,i(e))}),c)if(d.functional){var v=d.render;d.render=function(e,t){return c.call(t),v(e,t)}}else{var p=d.beforeCreate;d.beforeCreate=p?[].concat(p,c):[c]}return n}const p={name:"Multiselect",emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change"],props:{value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1},id:{type:[String,Number],required:!1,default:"multiselect"},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},maxHeight:{type:Number,required:!1,default:160},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},max:{type:Number,required:!1,default:-1}},setup(u,i){const o=function(n,l){var a=e(n),u=a.value,r=a.modelValue,i=a.mode;return{internalValue:t("single"!==i.value?[]:{}),externalValue:void 0!==l.expose?r:u}}(u,i),d=function(l,a,u){var r=e(l),i=r.searchable,o=r.id;return{multiselect:t(null),tabindex:n((function(){return i.value?-1:0})),blurInput:function(){document.getElementById(o.value).querySelector(".multiselect-input").blur()}}}(u),v={pointer:t(null)},p=function(l,a,u){var r=e(l),i=r.maxHeight,o=r.disabled,s=r.searchable,c=u.multiselect,d=t(!1),v=n((function(){return"".concat(i.value,"px")}));return{isOpen:d,contentMaxHeight:v,open:function(e){o.value||(d.value=!0,a.emit("open"))},close:function(){d.value=!1,a.emit("close")},handleInputMousedown:function(e){d.value&&!s.value&&(c.value.querySelector(".multiselect-input").dispatchEvent(new Event("blur")),c.value.querySelector(".multiselect-input").blur(),e.preventDefault())}}}(u,i,{multiselect:d.multiselect}),f=function(t,n,l){var a=e(t),u=a.object,i=a.valueProp,o=a.mode,s=l.internalValue,c=function(e){return u.value||r(e)?e:Array.isArray(e)?e.map((function(e){return e[i.value]})):e[i.value]},d=function(e){return r(e)?"single"===o.value?{}:[]:e};return{update:function(e){s.value=d(e);var t=c(e);n.emit("change",t),n.emit("input",t),n.emit("update:modelValue",t)}}}(u,i,{internalValue:o.internalValue}),h=function(a,u,r){var i=e(a),o=i.searchable,s=i.mode,c=r.internalValue,d=t(null),v=t(null),p=n((function(){return d.value?"".concat(d.value.length,"ch"):"tags"===s.value&&-1===[null,void 0].indexOf(c.value)&&c.value.length?"1ch":"100%"}));return l(d,(function(e){u.emit("search-change",e)})),{search:d,input:v,tagsSearchWidth:p,clearSearch:function(){d.value=""},blurSearch:function(){o.value&&v.value.blur()}}}(u,i,{internalValue:o.internalValue}),m=s(u,i,{externalValue:o.externalValue,internalValue:o.internalValue,search:h.search,blurSearch:h.blurSearch,clearSearch:h.clearSearch,update:f.update,blurInput:d.blurInput,pointer:v.pointer}),y=function(t,u,r){var i=e(t),o=i.id,s=i.valueProp,c=r.filteredOptions,d=r.handleOptionClick,v=r.search,p=r.pointer,f=n((function(){return c.value.filter((function(e){return!0!==e.disabled}))})),h=function(e){p.value=e},m=function(){p.value=f.value[0]||null},y=function(){p.value=null},g=function(){var e=document.getElementById(o.value).querySelector(".is-pointed");if(e){var t=e.parentElement;e.offsetTop+e.offsetHeight>t.clientHeight+t.scrollTop&&(t.scrollTop=e.offsetTop+e.offsetHeight-t.clientHeight),e.offsetTop<t.scrollTop&&(t.scrollTop=e.offsetTop)}};return l(v,(function(e){m()})),{pointer:p,isPointed:function(e){return!!p.value&&p.value[s.value]==e[s.value]},setPointer:h,setPointerFirst:m,clearPointer:y,selectPointer:function(){p.value&&!0!==p.value.disabled?(d(p.value),y()):y()},forwardPointer:function(){if(null===p.value)h(f.value[0]||null);else{var e=f.value.map((function(e){return e[s.value]})).indexOf(p.value[s.value])+1;f.value.length<=e&&(e=0),h(f.value[e]||null)}a((function(){g()}))},backwardPointer:function(){if(null===p.value)h(f.value[f.value.length-1]||null);else{var e=f.value.map((function(e){return e[s.value]})).indexOf(p.value[s.value])-1;e<0&&(e=f.value.length-1),h(f.value[e]||null)}a((function(){g()}))}}}(u,0,{filteredOptions:m.filteredOptions,handleOptionClick:m.handleOptionClick,search:h.search,pointer:v.pointer}),g=function(t,n,l){var a=e(t).mode,u=l.internalValue,r=l.update,i=l.close,o=l.clearPointer,s=l.search;return{handleBackspace:function(e){"single"!==a.value&&r(c(u.value).slice(0,-1))},handleEsc:function(e){i(),o(),e.target.blur()},handleSearchBackspace:function(e){""!==s.value&&e.stopPropagation()}}}(u,0,{internalValue:o.internalValue,update:f.update,close:p.close,clearPointer:y.clearPointer,search:h.search});return{...o,...p,...d,...v,...f,...h,...m,...y,...g}}};var f=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"multiselect",staticClass:"multiselect",class:["is-"+e.mode,{"is-open":e.isOpen,"is-searchable":e.searchable,"is-disabled":e.disabled,"no-caret":!e.caret}],attrs:{id:e.id},on:{keydown:function(t){if(!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter"))return null;t.preventDefault()}}},[n("div",{staticClass:"multiselect-input",attrs:{tabindex:e.tabindex},on:{mousedown:e.handleInputMousedown,focus:e.open,blur:e.close,keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.handleEsc(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.selectPointer(t)}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:(t.preventDefault(),e.handleBackspace(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.forwardPointer(t))}]}},["single"==e.mode&&e.hasSelected&&!e.search&&e.internalValue?[e._t("singlelabel",[n("div",{staticClass:"multiselect-single-label"},[e._v("\n "+e._s(e.internalValue[e.label])+"\n ")])],{value:e.internalValue})]:e._e(),e._v(" "),"multiple"==e.mode&&e.hasSelected&&!e.search?[e._t("multiplelabel",[n("div",{staticClass:"multiselect-multiple-label"},[e._v("\n "+e._s(e.multipleLabelText)+"\n ")])],{values:e.internalValue})]:e._e(),e._v(" "),"tags"!==e.mode&&e.searchable&&!e.disabled?[n("div",{staticClass:"multiselect-search"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})])]:e._e(),e._v(" "),"tags"==e.mode?[n("div",{staticClass:"multiselect-tags"},[e._l(e.internalValue,(function(t,l,a){return n("span",{key:a},[e._t("tag",[n("div",{staticClass:"multiselect-tag"},[e._v("\n "+e._s(t[e.label])+"\n "),e.disabled?e._e():n("i",{on:{click:function(e){e.preventDefault()},mousedown:function(n){return n.preventDefault(),n.stopPropagation(),e.remove(t)}}})])],{option:t,remove:e.remove,disabled:e.disabled})],2)})),e._v(" "),e.searchable&&!e.disabled?n("div",{staticClass:"multiselect-search",style:{width:e.tagsSearchWidth}},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"input",style:{width:e.tagsSearchWidth},domProps:{value:e.search},on:{focus:function(t){return t.stopPropagation(),e.open(t)},blur:function(t){return t.stopPropagation(),e.close(t)},keyup:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),e.handleEsc(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.stopPropagation(),e.selectPointer(t))}],keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"delete",[8,46],t.key,["Backspace","Delete","Del"])?null:e.handleSearchBackspace(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.stopPropagation(),e.backwardPointer(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.stopPropagation(),e.forwardPointer(t))}],input:function(t){t.target.composing||(e.search=t.target.value)}}})]):e._e()],2)]:e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.placeholder&&!e.hasSelected&&!e.search,expression:"placeholder && !hasSelected && !search"}],staticClass:"multiselect-placeholder"},[e._v("\n "+e._s(e.placeholder)+"\n ")]),e._v(" "),n("transition",{attrs:{name:"multiselect-loading"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.busy,expression:"busy"}],staticClass:"multiselect-spinner"})])],2),e._v(" "),n("transition",{attrs:{name:"multiselect"},on:{"after-leave":e.clearSearch}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.isOpen,expression:"isOpen"}],staticClass:"multiselect-options",style:{maxHeight:e.contentMaxHeight}},[e._t("beforelist"),e._v(" "),e._l(e.filteredOptions,(function(t,l,a){return n("a",{key:a,staticClass:"multiselect-option",class:{"is-pointed":e.isPointed(t),"is-selected":e.isSelected(t),"is-disabled":e.isDisabled(t)},attrs:{href:""},on:{mousedown:function(e){e.preventDefault()},mouseenter:function(n){return e.setPointer(t)},click:function(n){return n.stopPropagation(),n.preventDefault(),e.handleOptionClick(t)}}},[e._t("option",[n("span",[e._v(e._s(t[e.label]))])],{option:t,search:e.search})],2)})),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noOptions,expression:"noOptions"}]},[e._t("nooptions",[n("div",{staticClass:"multiselect-no-options"},[e._v(e._s(e.noOptionsText))])])],2),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.noResults,expression:"noResults"}]},[e._t("noresults",[n("div",{staticClass:"multiselect-no-results"},[e._v(e._s(e.noResultsText))])])],2),e._v(" "),e._t("afterlist")],2)])],1)};f._withStripped=!0;const h=v({render:f,staticRenderFns:[]},undefined,p,undefined,false,undefined,!1,void 0,void 0,void 0);export default h;
{
"name": "@vueform/multiselect",
"version": "1.2.4",
"version": "1.2.5",
"private": false,

@@ -5,0 +5,0 @@ "description": "Vue 3 multiselect component with single select, multiselect and tagging options.",

@@ -71,3 +71,3 @@ <div align="center">

Check out our [demo](https://jsfiddle.net/wLxfv2p5/).
Check out our <a href="https://jsfiddle.net/5qsugfxt/" target="_blank">demo</a>.

@@ -213,3 +213,3 @@ ## Installation

[JSFiddle - Example #1](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #1</a>

@@ -230,3 +230,3 @@ ### Multiselect with object options

[JSFiddle - Example #2](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #2</a>

@@ -247,3 +247,3 @@ ### Multiselect with disabled options

[JSFiddle - Example #3](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #3</a>

@@ -266,3 +266,3 @@ ### Tags with search, create and array of objects options

[JSFiddle - Example #4](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #4</a>

@@ -286,3 +286,3 @@ ### Autocomplete with async options

[JSFiddle - Example #5](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #5</a>

@@ -307,3 +307,3 @@ ### Tags with async options

[JSFiddle - Example #6](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #6</a>

@@ -336,3 +336,3 @@ ### Select with custom options slot

[JSFiddle - Example #7](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #7</a>

@@ -361,3 +361,3 @@ ### Multiselect with custom label slot

[JSFiddle - Example #8](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #8</a>

@@ -389,3 +389,3 @@ ### Tags with custom tags slot

@click.prevent
@mousedown.prevent="remove(option)"
@mousedown.prevent.stop="remove(option)"
/>

@@ -426,3 +426,3 @@ </div>

[JSFiddle - Example #9](https://jsfiddle.net/wLxfv2p5/)
<a href="https://jsfiddle.net/5qsugfxt/" target="_blank">JSFiddle - Example #9</a>

@@ -429,0 +429,0 @@ ## About Vueform

@@ -5,4 +5,8 @@ import { ref, toRefs, computed } from 'composition-api'

{
const { maxHeight, disabled } = toRefs(props)
const { maxHeight, disabled, searchable } = toRefs(props)
// ============ DEPENDENCIES ============
const multiselect = dependencies.multiselect
// ================ DATA ================

@@ -20,3 +24,3 @@

const open = () => {
const open = (e) => {
if (disabled.value) {

@@ -35,2 +39,10 @@ return

const handleInputMousedown = (e) => {
if (isOpen.value && !searchable.value) {
multiselect.value.querySelector('.multiselect-input').dispatchEvent(new Event('blur'))
multiselect.value.querySelector('.multiselect-input').blur()
e.preventDefault()
}
}
return {

@@ -41,3 +53,4 @@ isOpen,

close,
handleInputMousedown,
}
}

@@ -23,2 +23,3 @@ import { ref, toRefs, computed, watch } from 'composition-api'

const blurInput = dependencies.blurInput
const pointer = dependencies.pointer

@@ -376,2 +377,3 @@ // ================ DATA ================

resolvedOptions.value = response
pointer.value = filteredOptions.value.filter(o => o.disabled !== true)[0] || null
}

@@ -408,2 +410,8 @@

watch(() => props.options, (n) => {
if (typeof props.options !== 'function') {
resolvedOptions.value = props.options
}
})
return {

@@ -410,0 +418,0 @@ filteredOptions,

@@ -1,13 +0,5 @@

import { ref, toRefs, watch, nextTick, computed } from 'composition-api'
import { ref } from 'composition-api'
export default function usePointer (props, context, dependencies)
{
const { id, valueProp } = toRefs(props)
// ============ DEPENDENCIES ============
const filteredOptions = dependencies.filteredOptions
const handleOptionClick = dependencies.handleOptionClick
const search = dependencies.search
// ================ DATA ================

@@ -17,112 +9,5 @@

// ============== COMPUTED ==============
// no export
const options = computed(() => {
return filteredOptions.value.filter(o => o.disabled !== true)
})
// =============== METHODS ==============
const isPointed = (option) => {
return !!pointer.value && pointer.value[valueProp.value] == option[valueProp.value]
}
const setPointer = (option) => {
pointer.value = option
}
const setPointerFirst = () => {
pointer.value = options.value[0] || null
}
const clearPointer = () => {
pointer.value = null
}
const selectPointer = () => {
if (!pointer.value || pointer.value.disabled === true) {
clearPointer()
return
}
handleOptionClick(pointer.value)
clearPointer()
}
const forwardPointer = () => {
if (pointer.value === null) {
setPointer(options.value[0] || null)
}
else {
let next = options.value.map(o => o[valueProp.value]).indexOf(pointer.value[valueProp.value]) + 1
if (options.value.length <= next) {
next = 0
}
setPointer(options.value[next] || null)
}
nextTick(() => {
adjustWrapperScrollToPointer()
})
}
const backwardPointer = () => {
if (pointer.value === null) {
setPointer(options.value[options.value.length - 1] || null)
}
else {
let prevIndex = options.value.map(o => o[valueProp.value]).indexOf(pointer.value[valueProp.value]) - 1
if (prevIndex < 0) {
prevIndex = options.value.length - 1
}
setPointer(options.value[prevIndex] || null)
}
nextTick(() => {
adjustWrapperScrollToPointer()
})
}
// no export
/* istanbul ignore next */
const adjustWrapperScrollToPointer = () => {
let pointedOption = document.getElementById(id.value).querySelector(`.is-pointed`)
if (!pointedOption) {
return
}
let wrapper = pointedOption.parentElement
if (pointedOption.offsetTop + pointedOption.offsetHeight > wrapper.clientHeight + wrapper.scrollTop) {
wrapper.scrollTop = pointedOption.offsetTop + pointedOption.offsetHeight - wrapper.clientHeight
}
if (pointedOption.offsetTop < wrapper.scrollTop) {
wrapper.scrollTop = pointedOption.offsetTop
}
}
// ============== WATCHERS ==============
watch(search, (val) => {
setPointerFirst()
})
return {
pointer,
isPointed,
setPointer,
setPointerFirst,
clearPointer,
selectPointer,
forwardPointer,
backwardPointer,
}
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc