UNPKG

ll-package

Version:

2 lines (1 loc) 4.03 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),k=require("../TransBtn.js"),q=require("./Input.js"),L=require("../../_util/classNames.js"),B=require("../../_util/pickAttrs.js"),l=require("../../_util/vue-types/index.js"),E=require("../../vc-overflow/Overflow.js"),O=require("../../vc-tree-select/LegacyContext.js"),K={id:String,prefixCls:String,values:l.default.array,open:{type:Boolean,default:void 0},searchValue:String,inputRef:l.default.any,placeholder:l.default.any,disabled:{type:Boolean,default:void 0},mode:String,showSearch:{type:Boolean,default:void 0},autofocus:{type:Boolean,default:void 0},autocomplete:String,activeDescendantId:String,tabindex:l.default.oneOfType([l.default.number,l.default.string]),removeIcon:l.default.any,choiceTransitionName:String,maxTagCount:l.default.oneOfType([l.default.number,l.default.string]),maxTagTextLength:Number,maxTagPlaceholder:l.default.any.def(()=>e=>`+ ${e.length} ...`),tagRender:Function,onToggleOpen:{type:Function},onRemove:Function,onInputChange:Function,onInputPaste:Function,onInputKeyDown:Function,onInputMouseDown:Function,onInputCompositionStart:Function,onInputCompositionEnd:Function},b=e=>{e.preventDefault(),e.stopPropagation()},_=t.defineComponent({name:"MultipleSelectSelector",inheritAttrs:!1,props:K,setup(e){const v=t.shallowRef(),h=t.shallowRef(0),p=t.shallowRef(!1),y=O.default(),s=t.computed(()=>`${e.prefixCls}-selection`),g=t.computed(()=>e.open||e.mode==="tags"?e.searchValue:""),C=t.computed(()=>e.mode==="tags"||e.showSearch&&(e.open||p.value));t.onMounted(()=>{t.watch(g,()=>{h.value=v.value.scrollWidth},{flush:"post",immediate:!0})});function x(n,a,o,d,c){return t.createVNode("span",{class:L.default(`${s.value}-item`,{[`${s.value}-item-disabled`]:o}),title:typeof n=="string"||typeof n=="number"?n.toString():void 0},[t.createVNode("span",{class:`${s.value}-item-content`},[a]),d&&t.createVNode(k.default,{class:`${s.value}-item-remove`,onMousedown:b,onClick:c,customizeIcon:e.removeIcon},{default:()=>[t.createTextVNode("×")]})])}function S(n,a,o,d,c,f){var u;const m=r=>{b(r),e.onToggleOpen(!open)};let i=f;return y.keyEntities&&(i=((u=y.keyEntities[n])===null||u===void 0?void 0:u.node)||{}),t.createVNode("span",{key:n,onMousedown:m},[e.tagRender({label:a,value:n,disabled:o,closable:d,onClose:c,option:i})])}function T(n){const{disabled:a,label:o,value:d,option:c}=n,f=!e.disabled&&!a;let u=o;if(typeof e.maxTagTextLength=="number"&&(typeof o=="string"||typeof o=="number")){const i=String(u);i.length>e.maxTagTextLength&&(u=`${i.slice(0,e.maxTagTextLength)}...`)}const m=i=>{var r;i&&i.stopPropagation(),(r=e.onRemove)===null||r===void 0||r.call(e,n)};return typeof e.tagRender=="function"?S(d,u,a,f,m,c):x(o,u,a,f,m)}function w(n){const{maxTagPlaceholder:a=d=>`+ ${d.length} ...`}=e,o=typeof a=="function"?a(n):a;return x(o,o,!1)}return()=>{const{id:n,prefixCls:a,values:o,open:d,inputRef:c,placeholder:f,disabled:u,autofocus:m,autocomplete:i,activeDescendantId:r,tabindex:I,onInputChange:N,onInputPaste:R,onInputKeyDown:V,onInputMouseDown:D,onInputCompositionStart:M,onInputCompositionEnd:$}=e,F=t.createVNode("div",{class:`${s.value}-search`,style:{width:h.value+"px"},key:"input"},[t.createVNode(q.default,{inputRef:c,open:d,prefixCls:a,id:n,inputElement:null,disabled:u,autofocus:m,autocomplete:i,editable:C.value,activeDescendantId:r,value:g.value,onKeydown:V,onMousedown:D,onChange:N,onPaste:R,onCompositionstart:M,onCompositionend:$,tabindex:I,attrs:B.default(e,!0),onFocus:()=>p.value=!0,onBlur:()=>p.value=!1},null),t.createVNode("span",{ref:v,class:`${s.value}-search-mirror`,"aria-hidden":!0},[g.value,t.createTextVNode(" ")])]),P=t.createVNode(E.default,{prefixCls:`${s.value}-overflow`,data:o,renderItem:T,renderRest:w,suffix:F,itemKey:"key",maxCount:e.maxTagCount,key:"overflow"},null);return t.createVNode(t.Fragment,null,[P,!o.length&&!g.value&&t.createVNode("span",{class:`${s.value}-placeholder`},[f])])}}}),A=_;exports.default=A;