@xn-lib/component 0.0.18 → 0.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("element-plus"),l=require("vueuc"),n=require("@element-plus/icons-vue");function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function a(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=d(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return u=e.done,e},e:function(e){o=!0,a=e},f:function(){try{u||null==l.return||l.return()}finally{if(o)throw a}}}}function u(e,t,l){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function o(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function i(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?o(Object(l),!0).forEach(function(t){u(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):o(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function c(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(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){if(e){if("string"==typeof e)return r(e,t);var l={}.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?r(e,t):void 0}}var s=["title"],v={class:"base-cascader-option__suffix"},f=e.defineComponent({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(l){var r=l,a=e.inject("cascaderContext"),u=e.computed(function(){return r.tmNode.key}),o=e.computed(function(){return r.tmNode.rawNode[a.value.labelField]}),i=e.computed(function(){return r.tmNode.disabled}),c=e.computed(function(){return r.tmNode.isLeaf}),d=e.computed(function(){return a.value.loadingKeySet.has(u.value)}),f=e.computed(function(){return!a.value.remote&&"hover"===a.value.expandTrigger}),p=e.computed(function(){if(!a.value.multiple){var e=a.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===u.value:e===u.value}return a.value.checkedKeys.includes(u.value)}),m=e.computed(function(){return!!a.value.multiple&&a.value.indeterminateKeys.includes(u.value)}),h=e.computed(function(){return a.value.hoverKeyPath.includes(u.value)}),y=e.computed(function(){return a.value.keyboardKey===u.value}),k=e.computed(function(){if(p.value||h.value)return!0;if(!a.value.multiple){var e=a.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(u.value)}return!1}),b=e.computed(function(){return a.value.showCheckbox}),g=e.computed(function(){return a.value.checkStrategy}),w=e.computed(function(){return a.value.multiple}),C=e.computed(function(){return a.value.cascade}),N=e.computed(function(){return!!p.value&&(w.value?!b.value:"child"===g.value&&!(w.value&&C.value))});function S(e){if(!i.value&&!e.target.closest(".base-cascader-option__checkbox")){var t=a.value;t.updateHoverKey(u.value),t.updateKeyboardKey(u.value),t.remote&&!r.tmNode.shallowLoaded&&!d.value&&t.onLoad&&(t.addLoadingKey(u.value),t.onLoad(r.tmNode.rawNode).then(function(){t.deleteLoadingKey(u.value)}).catch(function(){t.deleteLoadingKey(u.value)})),t.multiple,c.value&&q()}}function B(){if(f.value&&!i.value){var e=a.value;e.updateHoverKey(u.value),e.updateKeyboardKey(u.value),e.remote&&!r.tmNode.shallowLoaded&&!d.value&&e.onLoad&&(e.addLoadingKey(u.value),e.onLoad(r.tmNode.rawNode).then(function(){e.deleteLoadingKey(u.value)}).catch(function(){e.deleteLoadingKey(u.value)}))}}function _(){f.value&&B()}function x(){q()}function q(){var e=a.value;e.multiple?m.value||p.value?e.doUncheck(u.value):e.doCheck(u.value):(e.doCheck(u.value),!e.showCheckbox&&c.value&&e.closeMenu(!1))}return function(r,a){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["base-cascader-option",{"is-active":k.value,"is-disabled":i.value,"is-hover":h.value||y.value,"has-checkbox":b.value}]),onClick:S,onMouseenter:B,onMousemove:_},[b.value?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":p.value,indeterminate:m.value,disabled:i.value,class:"base-cascader-option__checkbox",onClick:a[0]||(a[0]=e.withModifiers(function(){},["stop"])),onChange:x},null,8,["model-value","indeterminate","disabled"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",{class:"base-cascader-option__label",title:o.value},[e.renderSlot(r.$slots,"label",{option:l.tmNode.rawNode,checked:p.value},function(){return[e.createTextVNode(e.toDisplayString(o.value),1)]})],8,s),e.createElementVNode("span",v,[d.value?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:0,class:"is-loading"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Loading))]}),_:1})):c.value?N.value?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:2,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"arrow-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.ArrowRight))]}),_:1}))])],34)}}});f.__scopeId="data-v-248f99f8",f.__file="packages/components/src/cascader/CascaderOption.vue";var p={key:0,class:"base-cascader-menu__wrapper"},m={key:0,class:"base-cascader-submenu__list"},h={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},y={key:1,class:"base-cascader-menu__empty"},k={key:2,class:"base-cascader-menu__action"},b=e.defineComponent({__name:"CascaderMenu",props:{show:{type:Boolean,required:!0},menuModel:{type:Array,required:!0},onFocus:{type:Function,required:!0},onBlur:{type:Function,required:!0},onKeydown:{type:Function,required:!0},onMousedown:{type:Function,required:!0},getColumnStyle:{type:Function,required:!1},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(n,r){var a=r.expose,u=n,o=e.ref(null);function i(e){o.value&&(o.value.contains(e.relatedTarget)||u.onFocus(e))}function c(e){o.value&&(o.value.contains(e.relatedTarget)||u.onBlur(e))}return a({scroll:function(e,t,l){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(r,a){return e.openBlock(),e.createBlock(e.Transition,{name:"el-zoom-in-top",persisted:""},{default:e.withCtx(function(){var u;return[e.withDirectives(e.createElementVNode("div",{ref_key:"menuRef",ref:o,class:"base-cascader-menu",tabindex:"0",onMousedown:a[0]||(a[0]=function(){return n.onMousedown&&n.onMousedown.apply(n,arguments)}),onKeydown:a[1]||(a[1]=function(){return n.onKeydown&&n.onKeydown.apply(n,arguments)}),onFocusin:i,onFocusout:c,onClick:a[2]||(a[2]=e.withModifiers(function(){},["stop"]))},[null!==(u=n.menuModel[0])&&void 0!==u&&u.length?(e.openBlock(),e.createElementBlock("div",p,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.menuModel,function(a,u){var o;return e.openBlock(),e.createElementBlock("div",{key:u,class:"base-cascader-submenu",style:e.normalizeStyle(null===(o=n.getColumnStyle)||void 0===o?void 0:o.call(n,{level:u}))},[!n.virtualScroll||a.length<50?(e.openBlock(),e.createElementBlock("div",m,[e.createVNode(e.unref(t.ElScrollbar),null,{default:e.withCtx(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a,function(t){return e.openBlock(),e.createBlock(f,{key:t.key,"tm-node":t},e.createSlots({_:2},[r.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,n=t.checked;return[e.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(e.openBlock(),e.createElementBlock("div",h,[e.createVNode(e.unref(l.VirtualList),{items:a,"item-size":n.optionHeight,style:{height:"280px"}},{default:e.withCtx(function(t){var l=t.item;return[(e.openBlock(),e.createBlock(f,{key:l.key,"tm-node":l},e.createSlots({_:2},[r.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,n=t.checked;return[e.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(e.openBlock(),e.createElementBlock("div",y,[e.renderSlot(r.$slots,"empty",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"暂无数据"})]})])),r.$slots.action?(e.openBlock(),e.createElementBlock("div",k,[e.renderSlot(r.$slots,"action")])):e.createCommentVNode("v-if",!0)],544),[[e.vShow,n.show]])]}),_:3})}}});function g(e,t){var l=new Map,n=[];var r=function e(n,r,a){var u=[];return n.map(function(n,o){var i=t.getKey(n),c=t.getChildren(n),d=t.getDisabled(n),s=void 0!==n.isLeaf?n.isLeaf:!c||0===c.length,v=s||void 0!==c&&c.length>0,f={key:i,rawNode:n,level:r,index:o,isLeaf:s,isGroup:!1,ignored:!1,disabled:d,shallowLoaded:v,parent:a,siblings:u,children:void 0};return u.push(f),l.set(i,f),c&&c.length>0&&(f.children=e(c,r+1,f)),f})}(e,0,null);function u(e){return l.get(e)||null}function o(e){var t=[e.key];return e.children&&e.children.forEach(function(e){t.push.apply(t,c(o(e)))}),t}n.push.apply(n,c(r));var i=function e(t){var l=[];return t.forEach(function(t){t.disabled||(l.push(t),t.children&&l.push.apply(l,c(e(t.children))))}),l}(n);return{treeNodes:n,getNode:u,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var t=u(e);if(!t)return{treeNodePath:[],keyPath:[],treeNode:null};for(var l=[],n=[],r=t;r;)l.unshift(r),n.unshift(r.key),r=r.parent;return{treeNodePath:l,keyPath:n,treeNode:t}},getCheckedKeys:function(e,t){var l=new Set(e),r=new Set;if(!t.cascade)return{checkedKeys:e,indeterminateKeys:[]};function u(e){if(!e.children||0===e.children.length)return{allChecked:l.has(e.key),someChecked:l.has(e.key)};var t,n=!0,o=!1,i=a(e.children);try{for(i.s();!(t=i.n()).done;){var c=u(t.value);c.allChecked||(n=!1),c.someChecked&&(o=!0)}}catch(e){i.e(e)}finally{i.f()}var d=l.has(e.key);return n?(l.add(e.key),{allChecked:!0,someChecked:!0}):o||d?(r.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return n.forEach(function(e){return u(e)}),{checkedKeys:Array.from(l),indeterminateKeys:Array.from(r)}},check:function(e,t,l){var n=u(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.add(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return r.add(e)}),{checkedKeys:Array.from(r)}},uncheck:function(e,t,l){var n=u(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.delete(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return r.delete(e)}),{checkedKeys:Array.from(r)}},getPrev:function(e,t){var l=i.findIndex(function(t){return t.key===e});return-1===l?null:0===l?t.loop?i[i.length-1]:null:i[l-1]},getNext:function(e,t){var l=i.findIndex(function(t){return t.key===e});return-1===l?null:l===i.length-1?t.loop?i[0]:null:i[l+1]},getChild:function(e){var t=u(e);return t&&t.children&&0!==t.children.length&&t.children.find(function(e){return!e.disabled})||null},getParent:function(e){var t=u(e);return(null==t?void 0:t.parent)||null},getFirstAvailableNode:function(){return i[0]||null}}}function w(e){return e?e.map(function(e){return e.rawNode}):null}function C(e,t,l){for(var n=[];e;)n.push(e.rawNode[l]),e=e.parent;return n.reverse().join(t)}b.__scopeId="data-v-097326a4",b.__file="packages/components/src/cascader/CascaderMenu.vue";var N=["onClick","onMouseenter"],S={class:"base-cascader-select-option__label"},B={key:0,class:"base-cascader-select-menu__empty"},_={key:1,class:"base-cascader-select-menu__virtual"},x=["onClick","onMouseenter"],q={class:"base-cascader-select-option__label"},E={key:1,class:"base-cascader-select-menu__empty"},K=e.defineComponent({__name:"CascaderSelectMenu",props:{show:{type:Boolean,required:!0},pattern:{type:String,required:!0},multiple:{type:Boolean,required:!0},tmNodes:{type:Array,required:!0},filter:{type:null,required:!1},labelField:{type:String,required:!0},separator:{type:String,required:!0},value:{type:null,required:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(r,u){var o=u.expose,i=r,c=e.inject("cascaderContext"),d=e.ref(null),s=e.ref(null),v=e.computed(function(){return function(e,t,l,n){var r=[],u=[];return function e(o){var i,c=a(o);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(!d.disabled){var s=d.rawNode;u.push(s),!d.isLeaf&&t||r.push({label:C(d,n,l),value:d.key,rawNode:d.rawNode,path:Array.from(u)}),!d.isLeaf&&d.children&&e(d.children),u.pop()}}}catch(e){c.e(e)}finally{c.f()}}(e),r}(i.tmNodes,"child"===c.value.checkStrategy,i.labelField,i.separator)}),f=e.computed(function(){return i.filter?i.filter:function(e,t,l){return l.some(function(t){return t[i.labelField]&&t[i.labelField].toLowerCase().includes(e.toLowerCase())})}}),p=e.computed(function(){return i.pattern?v.value.filter(function(e){return f.value(i.pattern,e.rawNode,e.path)}):v.value});function m(e){return i.multiple&&Array.isArray(i.value)?i.value.includes(e):i.value===e}function h(e){var t=c.value;i.multiple?m(e.value)?t.doUncheck(e.value):t.doCheck(e.value):(t.doCheck(e.value),t.clearPattern(),t.closeMenu())}return o({prev:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e>0?s.value=p.value[e-1].value:p.value.length>0&&(s.value=p.value[p.value.length-1].value)},next:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e<p.value.length-1?s.value=p.value[e+1].value:p.value.length>0&&(s.value=p.value[0].value)},enter:function(){if(null!==s.value){var e=p.value.find(function(e){return e.value===s.value});if(e)return h(e),!0}return!1}}),function(a,u){return e.openBlock(),e.createBlock(e.Transition,{name:"el-zoom-in-top",persisted:""},{default:e.withCtx(function(){return[e.withDirectives(e.createElementVNode("div",{ref_key:"selectMenuRef",ref:d,class:"base-cascader-select-menu",onClick:u[2]||(u[2]=e.withModifiers(function(){},["stop"]))},[!r.virtualScroll||p.value.length<50?(e.openBlock(),e.createBlock(e.unref(t.ElScrollbar),{key:0,"max-height":"280px"},{default:e.withCtx(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,function(l){return e.openBlock(),e.createElementBlock("div",{key:l.value,class:e.normalizeClass(["base-cascader-select-option",{"is-selected":m(l.value),"is-hover":s.value===l.value}]),onClick:function(e){return h(l)},onMouseenter:function(e){return s.value=l.value}},[r.multiple?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":m(l.value),class:"base-cascader-select-option__checkbox",onClick:u[0]||(u[0]=e.withModifiers(function(){},["stop"]))},null,8,["model-value"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",S,e.toDisplayString(l.label),1),!r.multiple&&m(l.value)?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0)],42,N)}),128)),0===p.value.length?(e.openBlock(),e.createElementBlock("div",B,[e.renderSlot(a.$slots,"not-found",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"无匹配数据"})]})])):e.createCommentVNode("v-if",!0)]}),_:3})):(e.openBlock(),e.createElementBlock("div",_,[p.value.length>0?(e.openBlock(),e.createBlock(e.unref(t.ElScrollbar),{key:0,"max-height":"280px"},{default:e.withCtx(function(){return[e.createVNode(e.unref(l.VirtualList),{items:p.value,"item-size":r.optionHeight,style:{height:"280px"}},{default:e.withCtx(function(l){var a=l.item;return[(e.openBlock(),e.createElementBlock("div",{key:a.value,class:e.normalizeClass(["base-cascader-select-option",{"is-selected":m(a.value),"is-hover":s.value===a.value}]),onClick:function(e){return h(a)},onMouseenter:function(e){return s.value=a.value}},[r.multiple?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":m(a.value),class:"base-cascader-select-option__checkbox",onClick:u[1]||(u[1]=e.withModifiers(function(){},["stop"]))},null,8,["model-value"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",q,e.toDisplayString(a.label),1),!r.multiple&&m(a.value)?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0)],42,x))]}),_:1},8,["items","item-size"])]}),_:1})):(e.openBlock(),e.createElementBlock("div",E,[e.renderSlot(a.$slots,"not-found",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[e.vShow,r.show]])]}),_:3})}}});K.__scopeId="data-v-3901f6ec",K.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var P={class:"base-cascader-dropdown"},A=e.defineComponent(i(i({},{name:"XnCascader"}),{},{__name:"index",props:{modelValue:{type:null,required:!1,default:null},options:{type:Array,required:!1,default:function(){return[]}},placeholder:{type:String,required:!1,default:"请选择"},disabled:{type:Boolean,required:!1,default:!1},clearable:{type:Boolean,required:!1,default:!1},filterable:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:"default"},expandTrigger:{type:null,required:!1,default:"click"},separator:{type:String,required:!1,default:" / "},showPath:{type:Boolean,required:!1,default:!0},cascade:{type:Boolean,required:!1,default:!0},checkStrategy:{type:null,required:!1,default:"all"},remote:{type:Boolean,required:!1,default:!1},onLoad:{type:null,required:!1},filter:{type:null,required:!1},valueField:{type:String,required:!1,default:"value"},labelField:{type:String,required:!1,default:"label"},childrenField:{type:String,required:!1,default:"children"},disabledField:{type:String,required:!1,default:"disabled"},maxTagCount:{type:Number,required:!1,default:1},popperClass:{type:String,required:!1},getColumnStyle:{type:Function,required:!1},clearFilterAfterSelect:{type:Boolean,required:!1,default:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34},showCheckbox:{type:Boolean,required:!1,default:void 0},emitPath:{type:Boolean,required:!1,default:!1}},emits:["update:modelValue","change","focus","blur"],setup:function(l,n){var r=n.expose,a=n.emit,u=l,o=a,i=e.ref(null),c=e.ref(null),d=e.ref(null),s=e.ref(u.modelValue),v=e.ref(""),f=e.ref(!1),p=e.ref(null),m=e.ref(null),h=e.ref(new Set),y=e.computed(function(){return u.disabled});e.computed(function(){return h.value.size>0});var k=e.computed(function(){return g(u.options,{getKey:function(e){return e[u.valueField]},getChildren:function(e){return e[u.childrenField]},getDisabled:function(e){return e[u.disabledField]||!1}})}),N=e.computed(function(){var e;return u.multiple&&Array.isArray(s.value)?(e=u.emitPath?0===s.value.length?[]:Array.isArray(s.value[0])?s.value.map(function(e){return e[e.length-1]}):s.value:s.value,k.value.getCheckedKeys(e,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),S=e.computed(function(){return N.value.checkedKeys}),B=e.computed(function(){return N.value.indeterminateKeys}),_=e.computed(function(){var e,t=k.value.getPath(m.value),l=t.treeNodePath,n=t.treeNode;return null===n?e=[k.value.treeNodes]:(e=l.map(function(e){return e.siblings}),n.isLeaf||h.value.has(n.key)||!n.children||e.push(n.children)),e}),x=e.computed(function(){return k.value.getPath(m.value).keyPath}),q=e.computed(function(){return void 0!==u.showCheckbox?u.showCheckbox:!(!u.multiple||!u.cascade)||"child"!==u.checkStrategy}),E=e.computed(function(){return!(!u.filterable||!v.value)}),A=e.computed(function(){if(u.multiple){var e=k.value,t=e.getCheckedKeys,l=e.getNode;return t(S.value,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var t=l(e);return null===t?{label:String(e),value:e}:{label:u.showPath?C(t,u.separator,u.labelField):t.rawNode[u.labelField],value:t.key}})}return[]}),F=e.computed(function(){if(!u.multiple){var e=k.value.getNode;if(null===s.value)return null;var t=null;if(u.emitPath&&Array.isArray(s.value)){if(0===s.value.length)return null;var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||(t=s.value);if(null==t)return null;var n=e(t);return null===n?{label:String(t),value:t}:{label:u.showPath?C(n,u.separator,u.labelField):n.rawNode[u.labelField],value:n.key}}return null}),L=e.computed({get:function(){var e;return u.multiple?A.value.map(function(e){return e.label}):(null===(e=F.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function V(e,t,l){s.value=e,o("update:modelValue",e),o("change",e,t,l)}function M(e){var t=k.value.getNode;return e.map(function(e){var l;return(null===(l=t(e))||void 0===l?void 0:l.rawNode)||null})}function O(e){var t=u.cascade,l=u.multiple,n=u.checkStrategy,r=u.emitPath,a=k.value,o=a.check,i=a.getNode,c=a.getPath;if(l){var d=o(e,N.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;V(r?d.map(function(e){return c(e).keyPath}):d,M(d),d.map(function(e){var t;return w(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}else if("child"===n){var s=i(e);if(null==s||!s.isLeaf)return!1;var v=c(e);V(r?v.keyPath:e,s.rawNode,w(v.treeNodePath)),R()}else{var f=i(e),h=c(e);V(r?h.keyPath:e,(null==f?void 0:f.rawNode)||null,w(null==h?void 0:h.treeNodePath)),R()}return!0}function j(e){var t=u.cascade,l=u.multiple,n=u.checkStrategy,r=u.emitPath;if(l){var a=k.value,o=a.uncheck,i=a.getNode,c=a.getPath,d=o(e,N.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;V(r?d.map(function(e){return c(e).keyPath}):d,d.map(function(e){var t;return(null===(t=i(e))||void 0===t?void 0:t.rawNode)||null}),d.map(function(e){var t;return w(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}}function $(e){m.value=e}function z(e){p.value=e}function D(e){h.value.add(e)}function I(e){h.value.delete(e)}function T(){var e,t,l=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(f.value=!1,v.value="",l)?null===(e=i.value)||void 0===e||e.focus():null===(t=i.value)||void 0===t||t.blur()}function H(){u.clearFilterAfterSelect&&(v.value="")}function R(){v.value="",setTimeout(function(){if(i.value&&void 0!==i.value.query){var e;i.value.query="";var t=null===(e=i.value.$el)||void 0===e?void 0:e.querySelector("input");t&&F.value&&(t.value=F.value.label)}},0)}function U(){y.value||f.value||(f.value=!0)}function X(e){f.value=e,e||(v.value="")}function G(){u.multiple?V([],[],[]):V(null,null,null)}function J(e){var t=A.value.find(function(t){return t.label===e});t&&j(t.value)}function Q(e){v.value=e}function W(e){o("focus",e)}function Y(e){o("blur",e)}function Z(e){o("focus",e)}function ee(e){o("blur",e)}function te(e){ne(e)}function le(e){e.preventDefault()}function ne(e){if(f.value)switch(e.key){case"Enter":var t;if(E.value)null===(t=d.value)||void 0===t||t.enter();else if(null!==p.value)if(S.value.includes(p.value)||B.value.includes(p.value))j(p.value);else{var l=O(p.value);!u.multiple&&l&&T(!0)}break;case"ArrowUp":var n;if(e.preventDefault(),E.value)null===(n=d.value)||void 0===n||n.prev();else re("prev");break;case"ArrowDown":var r;if(e.preventDefault(),E.value)null===(r=d.value)||void 0===r||r.next();else re("next");break;case"ArrowLeft":e.preventDefault(),E.value||re("parent");break;case"ArrowRight":e.preventDefault(),E.value||re("child");break;case"Escape":T(!0)}}function re(e){var t=p.value,l=k.value,n=l.getPrev,r=l.getNext,a=l.getChild,o=l.getParent,i=l.getFirstAvailableNode,c=l.getNode;switch(e){case"prev":if(null!==t){var d=n(t,{loop:!0});d&&z(d.key)}break;case"next":if(null===t){var s=i();s&&z(s.key)}else{var v=r(t,{loop:!0});v&&z(v.key)}break;case"child":if(null!==t){var f=c(t);if(null!=f&&f.shallowLoaded){var m=a(t);m&&($(t),z(m.key))}else f&&!h.value.has(t)&&u.onLoad&&(D(t),$(t),u.onLoad(f.rawNode).then(function(){return I(t)}).catch(function(){return I(t)}))}break;case"parent":if(null!==t){var y=o(t);if(y){z(y.key);var b=o(y.key);$((null==b?void 0:b.key)||null)}}}}e.watch(function(){return u.modelValue},function(e){s.value=e}),e.watch(f,function(e){if(!e)return p.value=null,void(m.value=null);if(u.multiple)p.value=null,m.value=null;else{var t=null;if(u.emitPath&&Array.isArray(s.value)&&s.value.length>0){var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||null===s.value||(t=s.value);if(null!==t){var n=k.value.getNode(t);if(n){var r=n.parent;r?(p.value=r.key,m.value=r.key):(p.value=t,m.value=t)}}else p.value=null,m.value=null}});var ae=e.computed(function(){return{mergedValue:s.value,checkedKeys:S.value,indeterminateKeys:B.value,hoverKeyPath:x.value,keyboardKey:p.value,hoverKey:m.value,loadingKeySet:h.value,multiple:u.multiple,cascade:u.cascade,checkStrategy:u.checkStrategy,expandTrigger:u.expandTrigger,remote:u.remote,showCheckbox:q.value,labelField:u.labelField,valueField:u.valueField,childrenField:u.childrenField,disabledField:u.disabledField,onLoad:u.onLoad,updateHoverKey:$,updateKeyboardKey:z,addLoadingKey:D,deleteLoadingKey:I,doCheck:O,doUncheck:j,closeMenu:T,clearPattern:H}});return e.provide("cascaderContext",ae),r({focus:function(){var e;null===(e=i.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=i.value)||void 0===e||e.blur()},getCheckedData:function(){return q.value?{keys:S.value,options:M(S.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return q.value?{keys:B.value,options:M(B.value)}:{keys:[],options:[]}}}),function(n,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["base-cascader",{"is-disabled":y.value}])},[e.createVNode(e.unref(t.ElSelect),{ref_key:"selectRef",ref:i,modelValue:L.value,"onUpdate:modelValue":r[0]||(r[0]=function(e){return L.value=e}),placeholder:l.placeholder,disabled:y.value,clearable:l.clearable,filterable:l.filterable,multiple:l.multiple,size:l.size,"collapse-tags":l.multiple,"collapse-tags-tooltip":l.multiple,"max-collapse-tags":l.maxTagCount,"filter-method":Q,"popper-class":"base-cascader-popper ".concat(l.popperClass||""),"automatic-dropdown":"",onVisibleChange:X,onClear:G,onRemoveTag:J,onFocus:W,onBlur:Y,onKeydown:ne,onClick:U},{empty:e.withCtx(function(){return[e.createElementVNode("div",P,[E.value?(e.openBlock(),e.createBlock(K,{key:0,ref_key:"selectMenuRef",ref:d,show:f.value&&E.value,pattern:v.value,multiple:l.multiple,"tm-nodes":k.value.treeNodes,filter:l.filter,"label-field":l.labelField,separator:l.separator,value:s.value,"virtual-scroll":l.virtualScroll,"option-height":l.optionHeight},e.createSlots({_:2},[n.$slots["not-found"]?{name:"not-found",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(e.openBlock(),e.createBlock(b,{key:1,ref_key:"cascaderMenuRef",ref:c,show:f.value&&!E.value,"menu-model":_.value,"get-column-style":l.getColumnStyle,"on-focus":Z,"on-blur":ee,"on-keydown":te,"on-mousedown":le,"virtual-scroll":l.virtualScroll,"option-height":l.optionHeight},e.createSlots({_:2},[n.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,r=t.checked;return[e.renderSlot(n.$slots,"label",{option:l,checked:r})]}),key:"0"}:void 0,n.$slots.empty?{name:"empty",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"empty")]}),key:"1"}:void 0,n.$slots.action?{name:"action",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"action")]}),key:"2"}:void 0]),1032,["show","menu-model","get-column-style","virtual-scroll","option-height"]))])]}),_:3},8,["modelValue","placeholder","disabled","clearable","filterable","multiple","size","collapse-tags","collapse-tags-tooltip","max-collapse-tags","popper-class"])],2)}}}));A.__scopeId="data-v-243e9ed1",A.__file="packages/components/src/cascader/index.vue";var F=A;F.install=function(e){A.name&&e.component(A.name,A)};var L={XnCascader:F},V={install:function(e){Object.values(L).forEach(function(t){t.name&&e.component(t.name,t)})}};exports.XnCascader=F,exports.components=L,exports.default=V;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("element-plus"),l=require("vueuc"),n=require("@element-plus/icons-vue"),r=require("@xn-lib/core");function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function o(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=s(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,u=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return o=e.done,e},e:function(e){u=!0,a=e},f:function(){try{o||null==l.return||l.return()}finally{if(u)throw a}}}}function u(e,t,l){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function c(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function i(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?c(Object(l),!0).forEach(function(t){u(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):c(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function d(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(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 s(e,t){if(e){if("string"==typeof e)return a(e,t);var l={}.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?a(e,t):void 0}}var v=["title"],f={class:"base-cascader-option__suffix"},p=e.defineComponent({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(l){var r=l,a=e.inject("cascaderContext"),o=e.computed(function(){return r.tmNode.key}),u=e.computed(function(){return r.tmNode.rawNode[a.value.labelField]}),c=e.computed(function(){return r.tmNode.disabled}),i=e.computed(function(){return r.tmNode.isLeaf}),d=e.computed(function(){return a.value.loadingKeySet.has(o.value)}),s=e.computed(function(){return!a.value.remote&&"hover"===a.value.expandTrigger}),p=e.computed(function(){if(!a.value.multiple){var e=a.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===o.value:e===o.value}return a.value.checkedKeys.includes(o.value)}),m=e.computed(function(){return!!a.value.multiple&&a.value.indeterminateKeys.includes(o.value)}),y=e.computed(function(){return a.value.hoverKeyPath.includes(o.value)}),h=e.computed(function(){return a.value.keyboardKey===o.value}),k=e.computed(function(){if(p.value||y.value)return!0;if(!a.value.multiple){var e=a.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(o.value)}return!1}),g=e.computed(function(){return a.value.showCheckbox}),b=e.computed(function(){return a.value.checkStrategy}),C=e.computed(function(){return a.value.multiple}),w=e.computed(function(){return a.value.cascade}),N=e.computed(function(){return!!p.value&&(C.value?!g.value:"child"===b.value&&!(C.value&&w.value))});function S(e){if(!c.value&&!e.target.closest(".base-cascader-option__checkbox")){var t=a.value;t.updateHoverKey(o.value),t.updateKeyboardKey(o.value),t.remote&&!r.tmNode.shallowLoaded&&!d.value&&t.onLoad&&(t.addLoadingKey(o.value),t.onLoad(r.tmNode.rawNode).then(function(){t.deleteLoadingKey(o.value)}).catch(function(){t.deleteLoadingKey(o.value)})),t.multiple,i.value&&E()}}function B(){if(s.value&&!c.value){var e=a.value;e.updateHoverKey(o.value),e.updateKeyboardKey(o.value),e.remote&&!r.tmNode.shallowLoaded&&!d.value&&e.onLoad&&(e.addLoadingKey(o.value),e.onLoad(r.tmNode.rawNode).then(function(){e.deleteLoadingKey(o.value)}).catch(function(){e.deleteLoadingKey(o.value)}))}}function _(){s.value&&B()}function x(){E()}function E(){var e=a.value;e.multiple?m.value||p.value?e.doUncheck(o.value):e.doCheck(o.value):(e.doCheck(o.value),!e.showCheckbox&&i.value&&e.closeMenu(!1))}return function(r,a){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["base-cascader-option",{"is-active":k.value,"is-disabled":c.value,"is-hover":y.value||h.value,"has-checkbox":g.value}]),onClick:S,onMouseenter:B,onMousemove:_},[g.value?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":p.value,indeterminate:m.value,disabled:c.value,class:"base-cascader-option__checkbox",onClick:a[0]||(a[0]=e.withModifiers(function(){},["stop"])),onChange:x},null,8,["model-value","indeterminate","disabled"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",{class:"base-cascader-option__label",title:u.value},[e.renderSlot(r.$slots,"label",{option:l.tmNode.rawNode,checked:p.value},function(){return[e.createTextVNode(e.toDisplayString(u.value),1)]})],8,v),e.createElementVNode("span",f,[d.value?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:0,class:"is-loading"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Loading))]}),_:1})):i.value?N.value?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:2,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"arrow-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.ArrowRight))]}),_:1}))])],34)}}});p.__scopeId="data-v-248f99f8",p.__file="packages/components/src/cascader/CascaderOption.vue";var m={key:0,class:"base-cascader-menu__wrapper"},y={key:0,class:"base-cascader-submenu__list"},h={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},k={key:1,class:"base-cascader-menu__empty"},g={key:2,class:"base-cascader-menu__action"},b=e.defineComponent({__name:"CascaderMenu",props:{show:{type:Boolean,required:!0},menuModel:{type:Array,required:!0},onFocus:{type:Function,required:!0},onBlur:{type:Function,required:!0},onKeydown:{type:Function,required:!0},onMousedown:{type:Function,required:!0},getColumnStyle:{type:Function,required:!1},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(n,r){var a=r.expose,o=n,u=e.ref(null);function c(e){u.value&&(u.value.contains(e.relatedTarget)||o.onFocus(e))}function i(e){u.value&&(u.value.contains(e.relatedTarget)||o.onBlur(e))}return a({scroll:function(e,t,l){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(r,a){return e.openBlock(),e.createBlock(e.Transition,{name:"el-zoom-in-top",persisted:""},{default:e.withCtx(function(){var o;return[e.withDirectives(e.createElementVNode("div",{ref_key:"menuRef",ref:u,class:"base-cascader-menu",tabindex:"0",onMousedown:a[0]||(a[0]=function(){return n.onMousedown&&n.onMousedown.apply(n,arguments)}),onKeydown:a[1]||(a[1]=function(){return n.onKeydown&&n.onKeydown.apply(n,arguments)}),onFocusin:c,onFocusout:i,onClick:a[2]||(a[2]=e.withModifiers(function(){},["stop"]))},[null!==(o=n.menuModel[0])&&void 0!==o&&o.length?(e.openBlock(),e.createElementBlock("div",m,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.menuModel,function(a,o){var u;return e.openBlock(),e.createElementBlock("div",{key:o,class:"base-cascader-submenu",style:e.normalizeStyle(null===(u=n.getColumnStyle)||void 0===u?void 0:u.call(n,{level:o}))},[!n.virtualScroll||a.length<50?(e.openBlock(),e.createElementBlock("div",y,[e.createVNode(e.unref(t.ElScrollbar),null,{default:e.withCtx(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a,function(t){return e.openBlock(),e.createBlock(p,{key:t.key,"tm-node":t},e.createSlots({_:2},[r.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,n=t.checked;return[e.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(e.openBlock(),e.createElementBlock("div",h,[e.createVNode(e.unref(l.VirtualList),{items:a,"item-size":n.optionHeight,style:{height:"280px"}},{default:e.withCtx(function(t){var l=t.item;return[(e.openBlock(),e.createBlock(p,{key:l.key,"tm-node":l},e.createSlots({_:2},[r.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,n=t.checked;return[e.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(e.openBlock(),e.createElementBlock("div",k,[e.renderSlot(r.$slots,"empty",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"暂无数据"})]})])),r.$slots.action?(e.openBlock(),e.createElementBlock("div",g,[e.renderSlot(r.$slots,"action")])):e.createCommentVNode("v-if",!0)],544),[[e.vShow,n.show]])]}),_:3})}}});function C(e,t){var l=new Map,n=[];var r=function e(n,r,a){var o=[];return n.map(function(n,u){var c=t.getKey(n),i=t.getChildren(n),d=t.getDisabled(n),s=void 0!==n.isLeaf?n.isLeaf:!i||0===i.length,v=s||void 0!==i&&i.length>0,f={key:c,rawNode:n,level:r,index:u,isLeaf:s,isGroup:!1,ignored:!1,disabled:d,shallowLoaded:v,parent:a,siblings:o,children:void 0};return o.push(f),l.set(c,f),i&&i.length>0&&(f.children=e(i,r+1,f)),f})}(e,0,null);function a(e){return l.get(e)||null}function u(e){var t=[e.key];return e.children&&e.children.forEach(function(e){t.push.apply(t,d(u(e)))}),t}n.push.apply(n,d(r));var c=function e(t){var l=[];return t.forEach(function(t){t.disabled||(l.push(t),t.children&&l.push.apply(l,d(e(t.children))))}),l}(n);return{treeNodes:n,getNode:a,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var t=a(e);if(!t)return{treeNodePath:[],keyPath:[],treeNode:null};for(var l=[],n=[],r=t;r;)l.unshift(r),n.unshift(r.key),r=r.parent;return{treeNodePath:l,keyPath:n,treeNode:t}},getCheckedKeys:function(e,t){var l=new Set(e),r=new Set;if(!t.cascade)return{checkedKeys:e,indeterminateKeys:[]};function a(e){if(!e.children||0===e.children.length)return{allChecked:l.has(e.key),someChecked:l.has(e.key)};var t,n=!0,u=!1,c=o(e.children);try{for(c.s();!(t=c.n()).done;){var i=a(t.value);i.allChecked||(n=!1),i.someChecked&&(u=!0)}}catch(e){c.e(e)}finally{c.f()}var d=l.has(e.key);return n?(l.add(e.key),{allChecked:!0,someChecked:!0}):u||d?(r.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return n.forEach(function(e){return a(e)}),{checkedKeys:Array.from(l),indeterminateKeys:Array.from(r)}},check:function(e,t,l){var n=a(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.add(e),l.cascade&&n.children&&u(n).slice(1).forEach(function(e){return r.add(e)}),{checkedKeys:Array.from(r)}},uncheck:function(e,t,l){var n=a(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.delete(e),l.cascade&&n.children&&u(n).slice(1).forEach(function(e){return r.delete(e)}),{checkedKeys:Array.from(r)}},getPrev:function(e,t){var l=c.findIndex(function(t){return t.key===e});return-1===l?null:0===l?t.loop?c[c.length-1]:null:c[l-1]},getNext:function(e,t){var l=c.findIndex(function(t){return t.key===e});return-1===l?null:l===c.length-1?t.loop?c[0]:null:c[l+1]},getChild:function(e){var t=a(e);return t&&t.children&&0!==t.children.length&&t.children.find(function(e){return!e.disabled})||null},getParent:function(e){var t=a(e);return(null==t?void 0:t.parent)||null},getFirstAvailableNode:function(){return c[0]||null}}}function w(e){return e?e.map(function(e){return e.rawNode}):null}function N(e,t,l){for(var n=[];e;)n.push(e.rawNode[l]),e=e.parent;return n.reverse().join(t)}b.__scopeId="data-v-097326a4",b.__file="packages/components/src/cascader/CascaderMenu.vue";var S=["onClick","onMouseenter"],B={class:"base-cascader-select-option__label"},_={key:0,class:"base-cascader-select-menu__empty"},x={key:1,class:"base-cascader-select-menu__virtual"},E=["onClick","onMouseenter"],q={class:"base-cascader-select-option__label"},K={key:1,class:"base-cascader-select-menu__empty"},P=e.defineComponent({__name:"CascaderSelectMenu",props:{show:{type:Boolean,required:!0},pattern:{type:String,required:!0},multiple:{type:Boolean,required:!0},tmNodes:{type:Array,required:!0},filter:{type:null,required:!1},labelField:{type:String,required:!0},separator:{type:String,required:!0},value:{type:null,required:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(r,a){var u=a.expose,c=r,i=e.inject("cascaderContext"),d=e.ref(null),s=e.ref(null),v=e.computed(function(){return function(e,t,l,n){var r=[],a=[];return function e(u){var c,i=o(u);try{for(i.s();!(c=i.n()).done;){var d=c.value;if(!d.disabled){var s=d.rawNode;a.push(s),!d.isLeaf&&t||r.push({label:N(d,n,l),value:d.key,rawNode:d.rawNode,path:Array.from(a)}),!d.isLeaf&&d.children&&e(d.children),a.pop()}}}catch(e){i.e(e)}finally{i.f()}}(e),r}(c.tmNodes,"child"===i.value.checkStrategy,c.labelField,c.separator)}),f=e.computed(function(){return c.filter?c.filter:function(e,t,l){return l.some(function(t){return t[c.labelField]&&t[c.labelField].toLowerCase().includes(e.toLowerCase())})}}),p=e.computed(function(){return c.pattern?v.value.filter(function(e){return f.value(c.pattern,e.rawNode,e.path)}):v.value});function m(e){return c.multiple&&Array.isArray(c.value)?c.value.includes(e):c.value===e}function y(e){var t=i.value;c.multiple?m(e.value)?t.doUncheck(e.value):t.doCheck(e.value):(t.doCheck(e.value),t.clearPattern(),t.closeMenu())}return u({prev:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e>0?s.value=p.value[e-1].value:p.value.length>0&&(s.value=p.value[p.value.length-1].value)},next:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e<p.value.length-1?s.value=p.value[e+1].value:p.value.length>0&&(s.value=p.value[0].value)},enter:function(){if(null!==s.value){var e=p.value.find(function(e){return e.value===s.value});if(e)return y(e),!0}return!1}}),function(a,o){return e.openBlock(),e.createBlock(e.Transition,{name:"el-zoom-in-top",persisted:""},{default:e.withCtx(function(){return[e.withDirectives(e.createElementVNode("div",{ref_key:"selectMenuRef",ref:d,class:"base-cascader-select-menu",onClick:o[2]||(o[2]=e.withModifiers(function(){},["stop"]))},[!r.virtualScroll||p.value.length<50?(e.openBlock(),e.createBlock(e.unref(t.ElScrollbar),{key:0,"max-height":"280px"},{default:e.withCtx(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,function(l){return e.openBlock(),e.createElementBlock("div",{key:l.value,class:e.normalizeClass(["base-cascader-select-option",{"is-selected":m(l.value),"is-hover":s.value===l.value}]),onClick:function(e){return y(l)},onMouseenter:function(e){return s.value=l.value}},[r.multiple?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":m(l.value),class:"base-cascader-select-option__checkbox",onClick:o[0]||(o[0]=e.withModifiers(function(){},["stop"]))},null,8,["model-value"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",B,e.toDisplayString(l.label),1),!r.multiple&&m(l.value)?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0)],42,S)}),128)),0===p.value.length?(e.openBlock(),e.createElementBlock("div",_,[e.renderSlot(a.$slots,"not-found",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"无匹配数据"})]})])):e.createCommentVNode("v-if",!0)]}),_:3})):(e.openBlock(),e.createElementBlock("div",x,[p.value.length>0?(e.openBlock(),e.createBlock(e.unref(t.ElScrollbar),{key:0,"max-height":"280px"},{default:e.withCtx(function(){return[e.createVNode(e.unref(l.VirtualList),{items:p.value,"item-size":r.optionHeight,style:{height:"280px"}},{default:e.withCtx(function(l){var a=l.item;return[(e.openBlock(),e.createElementBlock("div",{key:a.value,class:e.normalizeClass(["base-cascader-select-option",{"is-selected":m(a.value),"is-hover":s.value===a.value}]),onClick:function(e){return y(a)},onMouseenter:function(e){return s.value=a.value}},[r.multiple?(e.openBlock(),e.createBlock(e.unref(t.ElCheckbox),{key:0,"model-value":m(a.value),class:"base-cascader-select-option__checkbox",onClick:o[1]||(o[1]=e.withModifiers(function(){},["stop"]))},null,8,["model-value"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",q,e.toDisplayString(a.label),1),!r.multiple&&m(a.value)?(e.openBlock(),e.createBlock(e.unref(t.ElIcon),{key:1,class:"check-icon"},{default:e.withCtx(function(){return[e.createVNode(e.unref(n.Check))]}),_:1})):e.createCommentVNode("v-if",!0)],42,E))]}),_:1},8,["items","item-size"])]}),_:1})):(e.openBlock(),e.createElementBlock("div",K,[e.renderSlot(a.$slots,"not-found",{},function(){return[e.createVNode(e.unref(t.ElEmpty),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[e.vShow,r.show]])]}),_:3})}}});P.__scopeId="data-v-3901f6ec",P.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var A={class:"base-cascader-dropdown"},V=e.defineComponent(i(i({},{name:"XnCascader"}),{},{__name:"index",props:{modelValue:{type:null,required:!1,default:null},options:{type:Array,required:!1,default:function(){return[]}},placeholder:{type:String,required:!1,default:"请选择"},disabled:{type:Boolean,required:!1,default:!1},clearable:{type:Boolean,required:!1,default:!1},filterable:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:"default"},expandTrigger:{type:null,required:!1,default:"click"},separator:{type:String,required:!1,default:" / "},showPath:{type:Boolean,required:!1,default:!0},cascade:{type:Boolean,required:!1,default:!0},checkStrategy:{type:null,required:!1,default:"all"},remote:{type:Boolean,required:!1,default:!1},onLoad:{type:null,required:!1},filter:{type:null,required:!1},valueField:{type:String,required:!1,default:"value"},labelField:{type:String,required:!1,default:"label"},childrenField:{type:String,required:!1,default:"children"},disabledField:{type:String,required:!1,default:"disabled"},maxTagCount:{type:Number,required:!1,default:1},popperClass:{type:String,required:!1},getColumnStyle:{type:Function,required:!1},clearFilterAfterSelect:{type:Boolean,required:!1,default:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34},showCheckbox:{type:Boolean,required:!1,default:void 0},emitPath:{type:Boolean,required:!1,default:!1}},emits:["update:modelValue","change","focus","blur"],setup:function(l,n){var r=n.expose,a=n.emit,o=l,u=a,c=e.ref(null),i=e.ref(null),d=e.ref(null),s=e.ref(o.modelValue),v=e.ref(""),f=e.ref(!1),p=e.ref(null),m=e.ref(null),y=e.ref(new Set),h=e.computed(function(){return o.disabled});e.computed(function(){return y.value.size>0});var k=e.computed(function(){return C(o.options,{getKey:function(e){return e[o.valueField]},getChildren:function(e){return e[o.childrenField]},getDisabled:function(e){return e[o.disabledField]||!1}})}),g=e.computed(function(){var e;return o.multiple&&Array.isArray(s.value)?(e=o.emitPath?0===s.value.length?[]:Array.isArray(s.value[0])?s.value.map(function(e){return e[e.length-1]}):s.value:s.value,k.value.getCheckedKeys(e,{cascade:o.cascade,checkStrategy:o.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),S=e.computed(function(){return g.value.checkedKeys}),B=e.computed(function(){return g.value.indeterminateKeys}),_=e.computed(function(){var e,t=k.value.getPath(m.value),l=t.treeNodePath,n=t.treeNode;return null===n?e=[k.value.treeNodes]:(e=l.map(function(e){return e.siblings}),n.isLeaf||y.value.has(n.key)||!n.children||e.push(n.children)),e}),x=e.computed(function(){return k.value.getPath(m.value).keyPath}),E=e.computed(function(){return void 0!==o.showCheckbox?o.showCheckbox:!(!o.multiple||!o.cascade)||"child"!==o.checkStrategy}),q=e.computed(function(){return!(!o.filterable||!v.value)}),K=e.computed(function(){if(o.multiple){var e=k.value,t=e.getCheckedKeys,l=e.getNode;return t(S.value,{cascade:o.cascade,checkStrategy:o.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var t=l(e);return null===t?{label:String(e),value:e}:{label:o.showPath?N(t,o.separator,o.labelField):t.rawNode[o.labelField],value:t.key}})}return[]}),V=e.computed(function(){if(!o.multiple){var e=k.value.getNode;if(null===s.value)return null;var t=null;if(o.emitPath&&Array.isArray(s.value)){if(0===s.value.length)return null;var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||(t=s.value);if(null==t)return null;var n=e(t);return null===n?{label:String(t),value:t}:{label:o.showPath?N(n,o.separator,o.labelField):n.rawNode[o.labelField],value:n.key}}return null}),F=e.computed({get:function(){var e;return o.multiple?K.value.map(function(e){return e.label}):(null===(e=V.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function L(e,t,l){s.value=e,u("update:modelValue",e),u("change",e,t,l)}function M(e){var t=k.value.getNode;return e.map(function(e){var l;return(null===(l=t(e))||void 0===l?void 0:l.rawNode)||null})}function z(e){var t=o.cascade,l=o.multiple,n=o.checkStrategy,r=o.emitPath,a=k.value,u=a.check,c=a.getNode,i=a.getPath;if(l){var d=u(e,g.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(r?d.map(function(e){return i(e).keyPath}):d,M(d),d.map(function(e){var t;return w(null===(t=i(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}else if("child"===n){var s=c(e);if(null==s||!s.isLeaf)return!1;var v=i(e);L(r?v.keyPath:e,s.rawNode,w(v.treeNodePath)),R()}else{var f=c(e),y=i(e);L(r?y.keyPath:e,(null==f?void 0:f.rawNode)||null,w(null==y?void 0:y.treeNodePath)),R()}return!0}function O(e){var t=o.cascade,l=o.multiple,n=o.checkStrategy,r=o.emitPath;if(l){var a=k.value,u=a.uncheck,c=a.getNode,i=a.getPath,d=u(e,g.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(r?d.map(function(e){return i(e).keyPath}):d,d.map(function(e){var t;return(null===(t=c(e))||void 0===t?void 0:t.rawNode)||null}),d.map(function(e){var t;return w(null===(t=i(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}}function $(e){m.value=e}function j(e){p.value=e}function I(e){y.value.add(e)}function D(e){y.value.delete(e)}function T(){var e,t,l=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(f.value=!1,v.value="",l)?null===(e=c.value)||void 0===e||e.focus():null===(t=c.value)||void 0===t||t.blur()}function H(){o.clearFilterAfterSelect&&(v.value="")}function R(){v.value="",setTimeout(function(){if(c.value&&void 0!==c.value.query){var e;c.value.query="";var t=null===(e=c.value.$el)||void 0===e?void 0:e.querySelector("input");t&&V.value&&(t.value=V.value.label)}},0)}function U(){h.value||f.value||(f.value=!0)}function X(e){f.value=e,e||(v.value="")}function G(){o.multiple?L([],[],[]):L(null,null,null)}function J(e){var t=K.value.find(function(t){return t.label===e});t&&O(t.value)}function Q(e){v.value=e}function W(e){u("focus",e)}function Y(e){u("blur",e)}function Z(e){u("focus",e)}function ee(e){u("blur",e)}function te(e){ne(e)}function le(e){e.preventDefault()}function ne(e){if(f.value)switch(e.key){case"Enter":var t;if(q.value)null===(t=d.value)||void 0===t||t.enter();else if(null!==p.value)if(S.value.includes(p.value)||B.value.includes(p.value))O(p.value);else{var l=z(p.value);!o.multiple&&l&&T(!0)}break;case"ArrowUp":var n;if(e.preventDefault(),q.value)null===(n=d.value)||void 0===n||n.prev();else re("prev");break;case"ArrowDown":var r;if(e.preventDefault(),q.value)null===(r=d.value)||void 0===r||r.next();else re("next");break;case"ArrowLeft":e.preventDefault(),q.value||re("parent");break;case"ArrowRight":e.preventDefault(),q.value||re("child");break;case"Escape":T(!0)}}function re(e){var t=p.value,l=k.value,n=l.getPrev,r=l.getNext,a=l.getChild,u=l.getParent,c=l.getFirstAvailableNode,i=l.getNode;switch(e){case"prev":if(null!==t){var d=n(t,{loop:!0});d&&j(d.key)}break;case"next":if(null===t){var s=c();s&&j(s.key)}else{var v=r(t,{loop:!0});v&&j(v.key)}break;case"child":if(null!==t){var f=i(t);if(null!=f&&f.shallowLoaded){var m=a(t);m&&($(t),j(m.key))}else f&&!y.value.has(t)&&o.onLoad&&(I(t),$(t),o.onLoad(f.rawNode).then(function(){return D(t)}).catch(function(){return D(t)}))}break;case"parent":if(null!==t){var h=u(t);if(h){j(h.key);var g=u(h.key);$((null==g?void 0:g.key)||null)}}}}e.watch(function(){return o.modelValue},function(e){s.value=e}),e.watch(f,function(e){if(!e)return p.value=null,void(m.value=null);if(o.multiple)p.value=null,m.value=null;else{var t=null;if(o.emitPath&&Array.isArray(s.value)&&s.value.length>0){var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||null===s.value||(t=s.value);if(null!==t){var n=k.value.getNode(t);if(n){var r=n.parent;r?(p.value=r.key,m.value=r.key):(p.value=t,m.value=t)}}else p.value=null,m.value=null}});var ae=e.computed(function(){return{mergedValue:s.value,checkedKeys:S.value,indeterminateKeys:B.value,hoverKeyPath:x.value,keyboardKey:p.value,hoverKey:m.value,loadingKeySet:y.value,multiple:o.multiple,cascade:o.cascade,checkStrategy:o.checkStrategy,expandTrigger:o.expandTrigger,remote:o.remote,showCheckbox:E.value,labelField:o.labelField,valueField:o.valueField,childrenField:o.childrenField,disabledField:o.disabledField,onLoad:o.onLoad,updateHoverKey:$,updateKeyboardKey:j,addLoadingKey:I,deleteLoadingKey:D,doCheck:z,doUncheck:O,closeMenu:T,clearPattern:H}});return e.provide("cascaderContext",ae),r({focus:function(){var e;null===(e=c.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=c.value)||void 0===e||e.blur()},getCheckedData:function(){return E.value?{keys:S.value,options:M(S.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return E.value?{keys:B.value,options:M(B.value)}:{keys:[],options:[]}}}),function(n,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["base-cascader",{"is-disabled":h.value}])},[e.createVNode(e.unref(t.ElSelect),{ref_key:"selectRef",ref:c,modelValue:F.value,"onUpdate:modelValue":r[0]||(r[0]=function(e){return F.value=e}),placeholder:l.placeholder,disabled:h.value,clearable:l.clearable,filterable:l.filterable,multiple:l.multiple,size:l.size,"collapse-tags":l.multiple,"collapse-tags-tooltip":l.multiple,"max-collapse-tags":l.maxTagCount,"filter-method":Q,"popper-class":"base-cascader-popper ".concat(l.popperClass||""),"automatic-dropdown":"",onVisibleChange:X,onClear:G,onRemoveTag:J,onFocus:W,onBlur:Y,onKeydown:ne,onClick:U},{empty:e.withCtx(function(){return[e.createElementVNode("div",A,[q.value?(e.openBlock(),e.createBlock(P,{key:0,ref_key:"selectMenuRef",ref:d,show:f.value&&q.value,pattern:v.value,multiple:l.multiple,"tm-nodes":k.value.treeNodes,filter:l.filter,"label-field":l.labelField,separator:l.separator,value:s.value,"virtual-scroll":l.virtualScroll,"option-height":l.optionHeight},e.createSlots({_:2},[n.$slots["not-found"]?{name:"not-found",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(e.openBlock(),e.createBlock(b,{key:1,ref_key:"cascaderMenuRef",ref:i,show:f.value&&!q.value,"menu-model":_.value,"get-column-style":l.getColumnStyle,"on-focus":Z,"on-blur":ee,"on-keydown":te,"on-mousedown":le,"virtual-scroll":l.virtualScroll,"option-height":l.optionHeight},e.createSlots({_:2},[n.$slots.label?{name:"label",fn:e.withCtx(function(t){var l=t.option,r=t.checked;return[e.renderSlot(n.$slots,"label",{option:l,checked:r})]}),key:"0"}:void 0,n.$slots.empty?{name:"empty",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"empty")]}),key:"1"}:void 0,n.$slots.action?{name:"action",fn:e.withCtx(function(){return[e.renderSlot(n.$slots,"action")]}),key:"2"}:void 0]),1032,["show","menu-model","get-column-style","virtual-scroll","option-height"]))])]}),_:3},8,["modelValue","placeholder","disabled","clearable","filterable","multiple","size","collapse-tags","collapse-tags-tooltip","max-collapse-tags","popper-class"])],2)}}}));V.__scopeId="data-v-243e9ed1",V.__file="packages/components/src/cascader/index.vue";var F=V;F.install=function(e){V.name&&e.component(V.name,V)};var L={type:{type:String,default:"default"},color:{type:String,default:void 0},bgColor:{type:String,default:void 0},size:{type:String,default:"default"},dot:{type:Boolean,default:!1},dotColor:{type:String,default:void 0},icon:{type:String,default:void 0},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},closable:{type:Boolean,default:!1},border:{type:Boolean,default:!0}},M={class:"custom-tag__content"},z=e.defineComponent({__name:"index",props:L,emits:["close"],setup:function(t,l){l.emit;var n=t,a=e.computed(function(){return["custom-tag--".concat(n.size),{"custom-tag--plain":n.plain,"custom-tag--round":n.round,"custom-tag--no-border":!n.border}]}),o=e.computed(function(){var e=r.TypeColorMap.getOption(n.type)||{},t={};return n.color?(t.color=n.color,n.plain?(t.backgroundColor="transparent",t.borderColor=n.color):(t.backgroundColor=n.bgColor||"".concat(n.color,"15"),t.borderColor=n.bgColor||"".concat(n.color,"30"))):n.bgColor?(t.backgroundColor=n.bgColor,t.borderColor=n.bgColor):n.plain?(t.color=e.color,t.backgroundColor="transparent",t.borderColor=e.color):(t.color=e.color,t.backgroundColor=e.bgColor,t.borderColor=e.borderColor),t}),u=e.computed(function(){return n.dotColor?{backgroundColor:n.dotColor}:{}});return function(t,l){return e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["custom-tag",a.value]),style:e.normalizeStyle(o.value)},[e.createCommentVNode(" 前缀插槽 "),e.renderSlot(t.$slots,"prefix",{},function(){return[t.dot?(e.openBlock(),e.createElementBlock("span",{key:0,class:"custom-tag__dot",style:e.normalizeStyle(u.value)},null,4)):t.icon?(e.openBlock(),e.createElementBlock("i",{key:1,class:e.normalizeClass([t.icon,"custom-tag__icon"])},null,2)):e.createCommentVNode("v-if",!0)]}),e.createCommentVNode(" 内容 "),e.createElementVNode("span",M,[e.renderSlot(t.$slots,"default")]),e.createCommentVNode(" 后缀插槽 "),e.renderSlot(t.$slots,"suffix")],6)}}});z.__scopeId="data-v-6a58d386",z.__file="packages/components/src/tag/index.vue";var O=z;O.install=function(e){z.name&&e.component(z.name,z)};var $={XnCascader:F,XnTag:O},j={install:function(e){Object.values($).forEach(function(t){t.name&&e.component(t.name,t)})}};exports.XnCascader=F,exports.XnTag=O,exports.components=$,exports.default=j;
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- .base-cascader-option[data-v-248f99f8]{align-items:center;box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:14px;height:34px;line-height:34px;padding:0 12px;position:relative;transition:background-color .3s;width:100%}.base-cascader-option.is-hover[data-v-248f99f8],.base-cascader-option[data-v-248f99f8]:hover{background-color:var(--el-fill-color-light)}.base-cascader-option.is-active[data-v-248f99f8]{color:var(--el-color-primary);font-weight:600}.base-cascader-option.is-disabled[data-v-248f99f8]{background-color:transparent;color:var(--el-text-color-disabled);cursor:not-allowed}.base-cascader-option.is-disabled[data-v-248f99f8]:hover{background-color:transparent}.base-cascader-option.has-checkbox[data-v-248f99f8]{padding-left:8px}.base-cascader-option__checkbox[data-v-248f99f8]{flex-shrink:0;margin-right:8px;pointer-events:auto}.base-cascader-option__label[data-v-248f99f8]{flex:1;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.base-cascader-option__suffix[data-v-248f99f8]{align-items:center;color:var(--el-text-color-placeholder);display:flex;flex-shrink:0;margin-left:8px}.base-cascader-option__suffix .arrow-icon[data-v-248f99f8]{font-size:12px}.base-cascader-option__suffix .check-icon[data-v-248f99f8]{color:var(--el-color-primary);font-size:14px}.base-cascader-option__suffix .is-loading[data-v-248f99f8]{animation:rotating-248f99f8 2s linear infinite}@keyframes rotating-248f99f8{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.base-cascader-menu[data-v-097326a4]{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);max-height:280px;outline:none;overflow:hidden}.base-cascader-menu__wrapper[data-v-097326a4]{display:flex;height:100%}.base-cascader-menu__empty[data-v-097326a4]{color:var(--el-text-color-secondary);min-width:180px;text-align:center}.base-cascader-menu__action[data-v-097326a4]{border-top:1px solid var(--el-border-color-lighter);padding:8px}@keyframes rotating-097326a4{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.is-loading[data-v-097326a4]{animation:rotating-097326a4 2s linear infinite}.base-cascader-submenu[data-v-097326a4]{border-right:1px solid var(--el-border-color-lighter);flex-shrink:0;height:280px;max-width:180px;min-width:180px;overflow:hidden;width:180px}.base-cascader-submenu[data-v-097326a4]:last-child{border-right:none}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar,.base-cascader-submenu__list[data-v-097326a4]{height:100%;width:100%}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar__wrap{overflow-x:hidden}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar__view{box-sizing:border-box;padding:6px 0;width:100%}.base-cascader-submenu__list--virtual[data-v-097326a4]{padding:6px 0}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar{height:100%;width:100%}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar__wrap{overflow-x:hidden}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar__view{width:100%}.base-cascader-select-menu[data-v-3901f6ec]{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);min-width:200px;padding:6px 0}.base-cascader-select-menu__empty[data-v-3901f6ec]{text-align:center}.base-cascader-select-menu__virtual[data-v-3901f6ec]{overflow:hidden}.base-cascader-select-option[data-v-3901f6ec]{align-items:center;box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:14px;height:34px;line-height:34px;padding:0 12px;transition:background-color .3s;width:100%}.base-cascader-select-option.is-hover[data-v-3901f6ec],.base-cascader-select-option[data-v-3901f6ec]:hover{background-color:var(--el-fill-color-light)}.base-cascader-select-option.is-selected[data-v-3901f6ec]{color:var(--el-color-primary);font-weight:600}.base-cascader-select-option__checkbox[data-v-3901f6ec]{flex-shrink:0;margin-right:8px}.base-cascader-select-option__label[data-v-3901f6ec]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-cascader-select-option .check-icon[data-v-3901f6ec]{color:var(--el-color-primary);flex-shrink:0;font-size:14px;margin-left:8px}.base-cascader[data-v-243e9ed1]{width:100%}.base-cascader.is-disabled[data-v-243e9ed1]{cursor:not-allowed}.base-cascader [data-v-243e9ed1] .el-select{width:100%}.base-cascader [data-v-243e9ed1] .el-select__tags{flex-wrap:nowrap}.base-cascader-dropdown[data-v-243e9ed1]{padding:0}.base-cascader-popper{min-width:auto!important;width:auto!important}.base-cascader-popper .el-select-dropdown__empty,.base-cascader-popper .el-select-dropdown__list{padding:0!important}
1
+ .base-cascader-option[data-v-248f99f8]{align-items:center;box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:14px;height:34px;line-height:34px;padding:0 12px;position:relative;transition:background-color .3s;width:100%}.base-cascader-option.is-hover[data-v-248f99f8],.base-cascader-option[data-v-248f99f8]:hover{background-color:var(--el-fill-color-light)}.base-cascader-option.is-active[data-v-248f99f8]{color:var(--el-color-primary);font-weight:600}.base-cascader-option.is-disabled[data-v-248f99f8]{background-color:transparent;color:var(--el-text-color-disabled);cursor:not-allowed}.base-cascader-option.is-disabled[data-v-248f99f8]:hover{background-color:transparent}.base-cascader-option.has-checkbox[data-v-248f99f8]{padding-left:8px}.base-cascader-option__checkbox[data-v-248f99f8]{flex-shrink:0;margin-right:8px;pointer-events:auto}.base-cascader-option__label[data-v-248f99f8]{flex:1;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.base-cascader-option__suffix[data-v-248f99f8]{align-items:center;color:var(--el-text-color-placeholder);display:flex;flex-shrink:0;margin-left:8px}.base-cascader-option__suffix .arrow-icon[data-v-248f99f8]{font-size:12px}.base-cascader-option__suffix .check-icon[data-v-248f99f8]{color:var(--el-color-primary);font-size:14px}.base-cascader-option__suffix .is-loading[data-v-248f99f8]{animation:rotating-248f99f8 2s linear infinite}@keyframes rotating-248f99f8{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.base-cascader-menu[data-v-097326a4]{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);max-height:280px;outline:none;overflow:hidden}.base-cascader-menu__wrapper[data-v-097326a4]{display:flex;height:100%}.base-cascader-menu__empty[data-v-097326a4]{color:var(--el-text-color-secondary);min-width:180px;text-align:center}.base-cascader-menu__action[data-v-097326a4]{border-top:1px solid var(--el-border-color-lighter);padding:8px}@keyframes rotating-097326a4{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.is-loading[data-v-097326a4]{animation:rotating-097326a4 2s linear infinite}.base-cascader-submenu[data-v-097326a4]{border-right:1px solid var(--el-border-color-lighter);flex-shrink:0;height:280px;max-width:180px;min-width:180px;overflow:hidden;width:180px}.base-cascader-submenu[data-v-097326a4]:last-child{border-right:none}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar,.base-cascader-submenu__list[data-v-097326a4]{height:100%;width:100%}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar__wrap{overflow-x:hidden}.base-cascader-submenu__list [data-v-097326a4] .el-scrollbar__view{box-sizing:border-box;padding:6px 0;width:100%}.base-cascader-submenu__list--virtual[data-v-097326a4]{padding:6px 0}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar{height:100%;width:100%}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar__wrap{overflow-x:hidden}.base-cascader-submenu__list--virtual [data-v-097326a4] .el-scrollbar__view{width:100%}.base-cascader-select-menu[data-v-3901f6ec]{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);min-width:200px;padding:6px 0}.base-cascader-select-menu__empty[data-v-3901f6ec]{text-align:center}.base-cascader-select-menu__virtual[data-v-3901f6ec]{overflow:hidden}.base-cascader-select-option[data-v-3901f6ec]{align-items:center;box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;display:flex;font-size:14px;height:34px;line-height:34px;padding:0 12px;transition:background-color .3s;width:100%}.base-cascader-select-option.is-hover[data-v-3901f6ec],.base-cascader-select-option[data-v-3901f6ec]:hover{background-color:var(--el-fill-color-light)}.base-cascader-select-option.is-selected[data-v-3901f6ec]{color:var(--el-color-primary);font-weight:600}.base-cascader-select-option__checkbox[data-v-3901f6ec]{flex-shrink:0;margin-right:8px}.base-cascader-select-option__label[data-v-3901f6ec]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-cascader-select-option .check-icon[data-v-3901f6ec]{color:var(--el-color-primary);flex-shrink:0;font-size:14px;margin-left:8px}.base-cascader[data-v-243e9ed1]{width:100%}.base-cascader.is-disabled[data-v-243e9ed1]{cursor:not-allowed}.base-cascader [data-v-243e9ed1] .el-select{width:100%}.base-cascader [data-v-243e9ed1] .el-select__tags{flex-wrap:nowrap}.base-cascader-dropdown[data-v-243e9ed1]{padding:0}.base-cascader-popper{min-width:auto!important;width:auto!important}.base-cascader-popper .el-select-dropdown__empty,.base-cascader-popper .el-select-dropdown__list{padding:0!important}.custom-tag[data-v-6a58d386]{align-items:center;border:1px solid;border-radius:4px;box-sizing:border-box;display:inline-flex;font-size:12px;gap:4px;line-height:1.5;padding:2px 8px;transition:all .3s;white-space:nowrap}.custom-tag--small[data-v-6a58d386]{font-size:11px;gap:3px;padding:1px 6px}.custom-tag--small .custom-tag__dot[data-v-6a58d386]{height:4px;width:4px}.custom-tag--default[data-v-6a58d386]{font-size:12px;gap:4px;padding:2px 8px}.custom-tag--default .custom-tag__dot[data-v-6a58d386]{height:6px;width:6px}.custom-tag--large[data-v-6a58d386]{font-size:13px;gap:5px;padding:4px 10px}.custom-tag--large .custom-tag__dot[data-v-6a58d386]{height:7px;width:7px}.custom-tag--round[data-v-6a58d386]{border-radius:12px}.custom-tag--no-border[data-v-6a58d386]{border:none}.custom-tag--plain[data-v-6a58d386]{background-color:transparent}.custom-tag__dot[data-v-6a58d386]{background-color:currentColor;border-radius:50%;flex-shrink:0;height:6px;width:6px}.custom-tag__icon[data-v-6a58d386]{flex-shrink:0;font-size:1em}.custom-tag__content[data-v-6a58d386]{flex:1}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,257 @@
1
- import type { Plugin } from 'vue';
2
- import type { Component } from 'vue';
3
- import XnCascader from './types/cascader/index';
4
- export { XnCascader };
5
- export declare const components: Record<string, Component>;
6
- export type { CascaderProps } from './types/cascader/props';
7
- export type { CascaderOption, CascaderValue, CascaderInst, ExpandTrigger, CheckStrategy, Filter, OnLoad, ValueAtom, Key, TreeNode, OnUpdateValue } from './types/cascader/types';
1
+ import { Plugin, ExtractPropTypes, PropType, Component } from 'vue';
2
+ import CascaderComponent from './cascader/index.vue';
3
+ import TagComponent from './tag/index.vue';
4
+
5
+ type ValueAtom = string | number;
6
+ type CascaderValue = ValueAtom | ValueAtom[] | ValueAtom[][];
7
+ type Key = ValueAtom;
8
+ interface CascaderOption {
9
+ label?: string;
10
+ value?: ValueAtom;
11
+ disabled?: boolean;
12
+ children?: CascaderOption[];
13
+ [key: string]: unknown;
14
+ }
15
+ type ExpandTrigger = 'hover' | 'click';
16
+ type CheckStrategy = 'all' | 'parent' | 'child';
17
+ type Filter = (pattern: string, option: CascaderOption, path: CascaderOption[]) => boolean;
18
+ type OnLoad = (option: CascaderOption) => Promise<void>;
19
+ type OnUpdateValue = (value: CascaderValue | null, option: CascaderOption | null | Array<CascaderOption | null>, path: Array<CascaderOption[] | null> | CascaderOption[] | null) => void;
20
+ interface TreeNode {
21
+ key: Key;
22
+ rawNode: CascaderOption;
23
+ level: number;
24
+ index: number;
25
+ isLeaf: boolean;
26
+ isGroup: boolean;
27
+ ignored: boolean;
28
+ disabled: boolean;
29
+ shallowLoaded: boolean;
30
+ parent: TreeNode | null;
31
+ children?: TreeNode[];
32
+ siblings: TreeNode[];
33
+ }
34
+ interface CascaderInst {
35
+ focus: () => void;
36
+ blur: () => void;
37
+ getCheckedData: () => {
38
+ keys: Key[];
39
+ options: Array<CascaderOption | null>;
40
+ };
41
+ getIndeterminateData: () => {
42
+ keys: Key[];
43
+ options: Array<CascaderOption | null>;
44
+ };
45
+ }
46
+ interface CascaderContext {
47
+ mergedValue: CascaderValue | null;
48
+ checkedKeys: Key[];
49
+ indeterminateKeys: Key[];
50
+ hoverKeyPath: Key[];
51
+ keyboardKey: Key | null;
52
+ hoverKey: Key | null;
53
+ loadingKeySet: Set<Key>;
54
+ multiple: boolean;
55
+ cascade: boolean;
56
+ checkStrategy: CheckStrategy;
57
+ expandTrigger: ExpandTrigger;
58
+ remote: boolean;
59
+ showCheckbox: boolean;
60
+ labelField: string;
61
+ valueField: string;
62
+ childrenField: string;
63
+ disabledField: string;
64
+ onLoad?: OnLoad;
65
+ updateHoverKey: (key: Key | null) => void;
66
+ updateKeyboardKey: (key: Key | null) => void;
67
+ addLoadingKey: (key: Key) => void;
68
+ deleteLoadingKey: (key: Key) => void;
69
+ doCheck: (key: Key) => boolean;
70
+ doUncheck: (key: Key) => void;
71
+ closeMenu: (returnFocus?: boolean) => void;
72
+ clearPattern: () => void;
73
+ }
74
+
75
+ declare const Cascader: typeof CascaderComponent & Plugin;
76
+
77
+ type DefaultType = 'success' | 'info' | 'warning' | 'danger' | 'primary' | 'default';
78
+ type DefaultSize = 'small' | 'default' | 'large';
79
+
80
+ interface TagInst {
81
+ close: () => void;
82
+ }
83
+
84
+ declare const Tag: typeof TagComponent & Plugin;
85
+
86
+ declare const cascaderProps: {
87
+ readonly modelValue: {
88
+ readonly type: PropType<CascaderValue | null>;
89
+ readonly default: null;
90
+ };
91
+ readonly options: {
92
+ readonly type: PropType<CascaderOption[]>;
93
+ readonly default: () => never[];
94
+ };
95
+ readonly placeholder: {
96
+ readonly type: StringConstructor;
97
+ readonly default: "请选择";
98
+ };
99
+ readonly disabled: {
100
+ readonly type: BooleanConstructor;
101
+ readonly default: false;
102
+ };
103
+ readonly clearable: {
104
+ readonly type: BooleanConstructor;
105
+ readonly default: false;
106
+ };
107
+ readonly filterable: {
108
+ readonly type: BooleanConstructor;
109
+ readonly default: false;
110
+ };
111
+ readonly multiple: {
112
+ readonly type: BooleanConstructor;
113
+ readonly default: false;
114
+ };
115
+ readonly size: {
116
+ readonly type: PropType<"large" | "default" | "small">;
117
+ readonly default: "default";
118
+ };
119
+ readonly expandTrigger: {
120
+ readonly type: PropType<ExpandTrigger>;
121
+ readonly default: "click";
122
+ };
123
+ readonly separator: {
124
+ readonly type: StringConstructor;
125
+ readonly default: " / ";
126
+ };
127
+ readonly showPath: {
128
+ readonly type: BooleanConstructor;
129
+ readonly default: true;
130
+ };
131
+ readonly cascade: {
132
+ readonly type: BooleanConstructor;
133
+ readonly default: true;
134
+ };
135
+ readonly checkStrategy: {
136
+ readonly type: PropType<CheckStrategy>;
137
+ readonly default: "all";
138
+ };
139
+ readonly remote: {
140
+ readonly type: BooleanConstructor;
141
+ readonly default: false;
142
+ };
143
+ readonly onLoad: {
144
+ readonly type: PropType<OnLoad>;
145
+ readonly default: undefined;
146
+ };
147
+ readonly filter: {
148
+ readonly type: PropType<Filter>;
149
+ readonly default: undefined;
150
+ };
151
+ readonly valueField: {
152
+ readonly type: StringConstructor;
153
+ readonly default: "value";
154
+ };
155
+ readonly labelField: {
156
+ readonly type: StringConstructor;
157
+ readonly default: "label";
158
+ };
159
+ readonly childrenField: {
160
+ readonly type: StringConstructor;
161
+ readonly default: "children";
162
+ };
163
+ readonly disabledField: {
164
+ readonly type: StringConstructor;
165
+ readonly default: "disabled";
166
+ };
167
+ readonly maxTagCount: {
168
+ readonly type: NumberConstructor;
169
+ readonly default: 1;
170
+ };
171
+ readonly popperClass: {
172
+ readonly type: StringConstructor;
173
+ readonly default: "";
174
+ };
175
+ readonly getColumnStyle: {
176
+ readonly type: PropType<(detail: {
177
+ level: number;
178
+ }) => string | Record<string, any>>;
179
+ readonly default: undefined;
180
+ };
181
+ readonly clearFilterAfterSelect: {
182
+ readonly type: BooleanConstructor;
183
+ readonly default: true;
184
+ };
185
+ readonly virtualScroll: {
186
+ readonly type: BooleanConstructor;
187
+ readonly default: true;
188
+ };
189
+ readonly optionHeight: {
190
+ readonly type: NumberConstructor;
191
+ readonly default: 34;
192
+ };
193
+ readonly showCheckbox: {
194
+ readonly type: BooleanConstructor;
195
+ readonly default: undefined;
196
+ };
197
+ readonly emitPath: {
198
+ readonly type: BooleanConstructor;
199
+ readonly default: false;
200
+ };
201
+ };
202
+ type CascaderProps = ExtractPropTypes<typeof cascaderProps>;
203
+
204
+ declare const tagProps: {
205
+ readonly type: {
206
+ readonly type: PropType<DefaultSize>;
207
+ readonly default: "default";
208
+ };
209
+ readonly color: {
210
+ readonly type: StringConstructor;
211
+ readonly default: undefined;
212
+ };
213
+ readonly bgColor: {
214
+ readonly type: StringConstructor;
215
+ readonly default: undefined;
216
+ };
217
+ readonly size: {
218
+ readonly type: PropType<DefaultType>;
219
+ readonly default: "default";
220
+ };
221
+ readonly dot: {
222
+ readonly type: BooleanConstructor;
223
+ readonly default: false;
224
+ };
225
+ readonly dotColor: {
226
+ readonly type: StringConstructor;
227
+ readonly default: undefined;
228
+ };
229
+ readonly icon: {
230
+ readonly type: StringConstructor;
231
+ readonly default: undefined;
232
+ };
233
+ readonly plain: {
234
+ readonly type: BooleanConstructor;
235
+ readonly default: false;
236
+ };
237
+ readonly round: {
238
+ readonly type: BooleanConstructor;
239
+ readonly default: false;
240
+ };
241
+ readonly closable: {
242
+ readonly type: BooleanConstructor;
243
+ readonly default: false;
244
+ };
245
+ readonly border: {
246
+ readonly type: BooleanConstructor;
247
+ readonly default: true;
248
+ };
249
+ };
250
+ type TagProps = Readonly<ExtractPropTypes<typeof tagProps>>;
251
+
252
+ declare const components: Record<string, Component>;
253
+
8
254
  declare const plugin: Plugin;
9
- export default plugin;
255
+
256
+ export { Cascader as XnCascader, Tag as XnTag, components, plugin as default };
257
+ export type { CascaderContext, CascaderInst, CascaderOption, CascaderProps, CascaderValue, CheckStrategy, DefaultSize, DefaultType, ExpandTrigger, Filter, Key, OnLoad, OnUpdateValue, TagInst, TagProps, TreeNode, ValueAtom };
@@ -1 +1 @@
1
- !function(e,t,l,n,a){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function u(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=s(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,u=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return u=e.done,e},e:function(e){o=!0,r=e},f:function(){try{u||null==l.return||l.return()}finally{if(o)throw r}}}}function o(e,t,l){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function i(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function c(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?i(Object(l),!0).forEach(function(t){o(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):i(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function d(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(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 s(e,t){if(e){if("string"==typeof e)return r(e,t);var l={}.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?r(e,t):void 0}}var v=["title"],f={class:"base-cascader-option__suffix"},p=t.defineComponent({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(e){var n=e,r=t.inject("cascaderContext"),u=t.computed(function(){return n.tmNode.key}),o=t.computed(function(){return n.tmNode.rawNode[r.value.labelField]}),i=t.computed(function(){return n.tmNode.disabled}),c=t.computed(function(){return n.tmNode.isLeaf}),d=t.computed(function(){return r.value.loadingKeySet.has(u.value)}),s=t.computed(function(){return!r.value.remote&&"hover"===r.value.expandTrigger}),p=t.computed(function(){if(!r.value.multiple){var e=r.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===u.value:e===u.value}return r.value.checkedKeys.includes(u.value)}),m=t.computed(function(){return!!r.value.multiple&&r.value.indeterminateKeys.includes(u.value)}),h=t.computed(function(){return r.value.hoverKeyPath.includes(u.value)}),y=t.computed(function(){return r.value.keyboardKey===u.value}),k=t.computed(function(){if(p.value||h.value)return!0;if(!r.value.multiple){var e=r.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(u.value)}return!1}),b=t.computed(function(){return r.value.showCheckbox}),g=t.computed(function(){return r.value.checkStrategy}),w=t.computed(function(){return r.value.multiple}),C=t.computed(function(){return r.value.cascade}),N=t.computed(function(){return!!p.value&&(w.value?!b.value:"child"===g.value&&!(w.value&&C.value))});function S(e){if(!i.value&&!e.target.closest(".base-cascader-option__checkbox")){var t=r.value;t.updateHoverKey(u.value),t.updateKeyboardKey(u.value),t.remote&&!n.tmNode.shallowLoaded&&!d.value&&t.onLoad&&(t.addLoadingKey(u.value),t.onLoad(n.tmNode.rawNode).then(function(){t.deleteLoadingKey(u.value)}).catch(function(){t.deleteLoadingKey(u.value)})),t.multiple,c.value&&E()}}function B(){if(s.value&&!i.value){var e=r.value;e.updateHoverKey(u.value),e.updateKeyboardKey(u.value),e.remote&&!n.tmNode.shallowLoaded&&!d.value&&e.onLoad&&(e.addLoadingKey(u.value),e.onLoad(n.tmNode.rawNode).then(function(){e.deleteLoadingKey(u.value)}).catch(function(){e.deleteLoadingKey(u.value)}))}}function _(){s.value&&B()}function x(){E()}function E(){var e=r.value;e.multiple?m.value||p.value?e.doUncheck(u.value):e.doCheck(u.value):(e.doCheck(u.value),!e.showCheckbox&&c.value&&e.closeMenu(!1))}return function(n,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader-option",{"is-active":k.value,"is-disabled":i.value,"is-hover":h.value||y.value,"has-checkbox":b.value}]),onClick:S,onMouseenter:B,onMousemove:_},[b.value?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":p.value,indeterminate:m.value,disabled:i.value,class:"base-cascader-option__checkbox",onClick:r[0]||(r[0]=t.withModifiers(function(){},["stop"])),onChange:x},null,8,["model-value","indeterminate","disabled"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",{class:"base-cascader-option__label",title:o.value},[t.renderSlot(n.$slots,"label",{option:e.tmNode.rawNode,checked:p.value},function(){return[t.createTextVNode(t.toDisplayString(o.value),1)]})],8,v),t.createElementVNode("span",f,[d.value?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:0,class:"is-loading"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Loading))]}),_:1})):c.value?N.value?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:2,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0):(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"arrow-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.ArrowRight))]}),_:1}))])],34)}}});p.__scopeId="data-v-248f99f8",p.__file="packages/components/src/cascader/CascaderOption.vue";var m={key:0,class:"base-cascader-menu__wrapper"},h={key:0,class:"base-cascader-submenu__list"},y={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},k={key:1,class:"base-cascader-menu__empty"},b={key:2,class:"base-cascader-menu__action"},g=t.defineComponent({__name:"CascaderMenu",props:{show:{type:Boolean,required:!0},menuModel:{type:Array,required:!0},onFocus:{type:Function,required:!0},onBlur:{type:Function,required:!0},onKeydown:{type:Function,required:!0},onMousedown:{type:Function,required:!0},getColumnStyle:{type:Function,required:!1},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,a){var r=a.expose,u=e,o=t.ref(null);function i(e){o.value&&(o.value.contains(e.relatedTarget)||u.onFocus(e))}function c(e){o.value&&(o.value.contains(e.relatedTarget)||u.onBlur(e))}return r({scroll:function(e,t,l){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(a,r){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){var u;return[t.withDirectives(t.createElementVNode("div",{ref_key:"menuRef",ref:o,class:"base-cascader-menu",tabindex:"0",onMousedown:r[0]||(r[0]=function(){return e.onMousedown&&e.onMousedown.apply(e,arguments)}),onKeydown:r[1]||(r[1]=function(){return e.onKeydown&&e.onKeydown.apply(e,arguments)}),onFocusin:i,onFocusout:c,onClick:r[2]||(r[2]=t.withModifiers(function(){},["stop"]))},[null!==(u=e.menuModel[0])&&void 0!==u&&u.length?(t.openBlock(),t.createElementBlock("div",m,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.menuModel,function(r,u){var o;return t.openBlock(),t.createElementBlock("div",{key:u,class:"base-cascader-submenu",style:t.normalizeStyle(null===(o=e.getColumnStyle)||void 0===o?void 0:o.call(e,{level:u}))},[!e.virtualScroll||r.length<50?(t.openBlock(),t.createElementBlock("div",h,[t.createVNode(t.unref(l.ElScrollbar),null,{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r,function(e){return t.openBlock(),t.createBlock(p,{key:e.key,"tm-node":e},t.createSlots({_:2},[a.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,n=e.checked;return[t.renderSlot(a.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(t.openBlock(),t.createElementBlock("div",y,[t.createVNode(t.unref(n.VirtualList),{items:r,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(e){var l=e.item;return[(t.openBlock(),t.createBlock(p,{key:l.key,"tm-node":l},t.createSlots({_:2},[a.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,n=e.checked;return[t.renderSlot(a.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(t.openBlock(),t.createElementBlock("div",k,[t.renderSlot(a.$slots,"empty",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"暂无数据"})]})])),a.$slots.action?(t.openBlock(),t.createElementBlock("div",b,[t.renderSlot(a.$slots,"action")])):t.createCommentVNode("v-if",!0)],544),[[t.vShow,e.show]])]}),_:3})}}});function w(e,t){var l=new Map,n=[];var a=function e(n,a,r){var u=[];return n.map(function(n,o){var i=t.getKey(n),c=t.getChildren(n),d=t.getDisabled(n),s=void 0!==n.isLeaf?n.isLeaf:!c||0===c.length,v=s||void 0!==c&&c.length>0,f={key:i,rawNode:n,level:a,index:o,isLeaf:s,isGroup:!1,ignored:!1,disabled:d,shallowLoaded:v,parent:r,siblings:u,children:void 0};return u.push(f),l.set(i,f),c&&c.length>0&&(f.children=e(c,a+1,f)),f})}(e,0,null);function r(e){return l.get(e)||null}function o(e){var t=[e.key];return e.children&&e.children.forEach(function(e){t.push.apply(t,d(o(e)))}),t}n.push.apply(n,d(a));var i=function e(t){var l=[];return t.forEach(function(t){t.disabled||(l.push(t),t.children&&l.push.apply(l,d(e(t.children))))}),l}(n);return{treeNodes:n,getNode:r,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var t=r(e);if(!t)return{treeNodePath:[],keyPath:[],treeNode:null};for(var l=[],n=[],a=t;a;)l.unshift(a),n.unshift(a.key),a=a.parent;return{treeNodePath:l,keyPath:n,treeNode:t}},getCheckedKeys:function(e,t){var l=new Set(e),a=new Set;if(!t.cascade)return{checkedKeys:e,indeterminateKeys:[]};function r(e){if(!e.children||0===e.children.length)return{allChecked:l.has(e.key),someChecked:l.has(e.key)};var t,n=!0,o=!1,i=u(e.children);try{for(i.s();!(t=i.n()).done;){var c=r(t.value);c.allChecked||(n=!1),c.someChecked&&(o=!0)}}catch(e){i.e(e)}finally{i.f()}var d=l.has(e.key);return n?(l.add(e.key),{allChecked:!0,someChecked:!0}):o||d?(a.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return n.forEach(function(e){return r(e)}),{checkedKeys:Array.from(l),indeterminateKeys:Array.from(a)}},check:function(e,t,l){var n=r(e);if(!n)return{checkedKeys:t};var a=new Set(t);return a.add(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return a.add(e)}),{checkedKeys:Array.from(a)}},uncheck:function(e,t,l){var n=r(e);if(!n)return{checkedKeys:t};var a=new Set(t);return a.delete(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return a.delete(e)}),{checkedKeys:Array.from(a)}},getPrev:function(e,t){var l=i.findIndex(function(t){return t.key===e});return-1===l?null:0===l?t.loop?i[i.length-1]:null:i[l-1]},getNext:function(e,t){var l=i.findIndex(function(t){return t.key===e});return-1===l?null:l===i.length-1?t.loop?i[0]:null:i[l+1]},getChild:function(e){var t=r(e);return t&&t.children&&0!==t.children.length&&t.children.find(function(e){return!e.disabled})||null},getParent:function(e){var t=r(e);return(null==t?void 0:t.parent)||null},getFirstAvailableNode:function(){return i[0]||null}}}function C(e){return e?e.map(function(e){return e.rawNode}):null}function N(e,t,l){for(var n=[];e;)n.push(e.rawNode[l]),e=e.parent;return n.reverse().join(t)}g.__scopeId="data-v-097326a4",g.__file="packages/components/src/cascader/CascaderMenu.vue";var S=["onClick","onMouseenter"],B={class:"base-cascader-select-option__label"},_={key:0,class:"base-cascader-select-menu__empty"},x={key:1,class:"base-cascader-select-menu__virtual"},E=["onClick","onMouseenter"],K={class:"base-cascader-select-option__label"},q={key:1,class:"base-cascader-select-menu__empty"},P=t.defineComponent({__name:"CascaderSelectMenu",props:{show:{type:Boolean,required:!0},pattern:{type:String,required:!0},multiple:{type:Boolean,required:!0},tmNodes:{type:Array,required:!0},filter:{type:null,required:!1},labelField:{type:String,required:!0},separator:{type:String,required:!0},value:{type:null,required:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,r){var o=r.expose,i=e,c=t.inject("cascaderContext"),d=t.ref(null),s=t.ref(null),v=t.computed(function(){return function(e,t,l,n){var a=[],r=[];return function e(o){var i,c=u(o);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(!d.disabled){var s=d.rawNode;r.push(s),!d.isLeaf&&t||a.push({label:N(d,n,l),value:d.key,rawNode:d.rawNode,path:Array.from(r)}),!d.isLeaf&&d.children&&e(d.children),r.pop()}}}catch(e){c.e(e)}finally{c.f()}}(e),a}(i.tmNodes,"child"===c.value.checkStrategy,i.labelField,i.separator)}),f=t.computed(function(){return i.filter?i.filter:function(e,t,l){return l.some(function(t){return t[i.labelField]&&t[i.labelField].toLowerCase().includes(e.toLowerCase())})}}),p=t.computed(function(){return i.pattern?v.value.filter(function(e){return f.value(i.pattern,e.rawNode,e.path)}):v.value});function m(e){return i.multiple&&Array.isArray(i.value)?i.value.includes(e):i.value===e}function h(e){var t=c.value;i.multiple?m(e.value)?t.doUncheck(e.value):t.doCheck(e.value):(t.doCheck(e.value),t.clearPattern(),t.closeMenu())}return o({prev:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e>0?s.value=p.value[e-1].value:p.value.length>0&&(s.value=p.value[p.value.length-1].value)},next:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e<p.value.length-1?s.value=p.value[e+1].value:p.value.length>0&&(s.value=p.value[0].value)},enter:function(){if(null!==s.value){var e=p.value.find(function(e){return e.value===s.value});if(e)return h(e),!0}return!1}}),function(r,u){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){return[t.withDirectives(t.createElementVNode("div",{ref_key:"selectMenuRef",ref:d,class:"base-cascader-select-menu",onClick:u[2]||(u[2]=t.withModifiers(function(){},["stop"]))},[!e.virtualScroll||p.value.length<50?(t.openBlock(),t.createBlock(t.unref(l.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,function(n){return t.openBlock(),t.createElementBlock("div",{key:n.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(n.value),"is-hover":s.value===n.value}]),onClick:function(e){return h(n)},onMouseenter:function(e){return s.value=n.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":m(n.value),class:"base-cascader-select-option__checkbox",onClick:u[0]||(u[0]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",B,t.toDisplayString(n.label),1),!e.multiple&&m(n.value)?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,S)}),128)),0===p.value.length?(t.openBlock(),t.createElementBlock("div",_,[t.renderSlot(r.$slots,"not-found",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"无匹配数据"})]})])):t.createCommentVNode("v-if",!0)]}),_:3})):(t.openBlock(),t.createElementBlock("div",x,[p.value.length>0?(t.openBlock(),t.createBlock(t.unref(l.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[t.createVNode(t.unref(n.VirtualList),{items:p.value,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(n){var r=n.item;return[(t.openBlock(),t.createElementBlock("div",{key:r.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(r.value),"is-hover":s.value===r.value}]),onClick:function(e){return h(r)},onMouseenter:function(e){return s.value=r.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":m(r.value),class:"base-cascader-select-option__checkbox",onClick:u[1]||(u[1]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",K,t.toDisplayString(r.label),1),!e.multiple&&m(r.value)?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,E))]}),_:1},8,["items","item-size"])]}),_:1})):(t.openBlock(),t.createElementBlock("div",q,[t.renderSlot(r.$slots,"not-found",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[t.vShow,e.show]])]}),_:3})}}});P.__scopeId="data-v-3901f6ec",P.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var A={class:"base-cascader-dropdown"},V=t.defineComponent(c(c({},{name:"XnCascader"}),{},{__name:"index",props:{modelValue:{type:null,required:!1,default:null},options:{type:Array,required:!1,default:function(){return[]}},placeholder:{type:String,required:!1,default:"请选择"},disabled:{type:Boolean,required:!1,default:!1},clearable:{type:Boolean,required:!1,default:!1},filterable:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:"default"},expandTrigger:{type:null,required:!1,default:"click"},separator:{type:String,required:!1,default:" / "},showPath:{type:Boolean,required:!1,default:!0},cascade:{type:Boolean,required:!1,default:!0},checkStrategy:{type:null,required:!1,default:"all"},remote:{type:Boolean,required:!1,default:!1},onLoad:{type:null,required:!1},filter:{type:null,required:!1},valueField:{type:String,required:!1,default:"value"},labelField:{type:String,required:!1,default:"label"},childrenField:{type:String,required:!1,default:"children"},disabledField:{type:String,required:!1,default:"disabled"},maxTagCount:{type:Number,required:!1,default:1},popperClass:{type:String,required:!1},getColumnStyle:{type:Function,required:!1},clearFilterAfterSelect:{type:Boolean,required:!1,default:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34},showCheckbox:{type:Boolean,required:!1,default:void 0},emitPath:{type:Boolean,required:!1,default:!1}},emits:["update:modelValue","change","focus","blur"],setup:function(e,n){var a=n.expose,r=n.emit,u=e,o=r,i=t.ref(null),c=t.ref(null),d=t.ref(null),s=t.ref(u.modelValue),v=t.ref(""),f=t.ref(!1),p=t.ref(null),m=t.ref(null),h=t.ref(new Set),y=t.computed(function(){return u.disabled});t.computed(function(){return h.value.size>0});var k=t.computed(function(){return w(u.options,{getKey:function(e){return e[u.valueField]},getChildren:function(e){return e[u.childrenField]},getDisabled:function(e){return e[u.disabledField]||!1}})}),b=t.computed(function(){var e;return u.multiple&&Array.isArray(s.value)?(e=u.emitPath?0===s.value.length?[]:Array.isArray(s.value[0])?s.value.map(function(e){return e[e.length-1]}):s.value:s.value,k.value.getCheckedKeys(e,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),S=t.computed(function(){return b.value.checkedKeys}),B=t.computed(function(){return b.value.indeterminateKeys}),_=t.computed(function(){var e,t=k.value.getPath(m.value),l=t.treeNodePath,n=t.treeNode;return null===n?e=[k.value.treeNodes]:(e=l.map(function(e){return e.siblings}),n.isLeaf||h.value.has(n.key)||!n.children||e.push(n.children)),e}),x=t.computed(function(){return k.value.getPath(m.value).keyPath}),E=t.computed(function(){return void 0!==u.showCheckbox?u.showCheckbox:!(!u.multiple||!u.cascade)||"child"!==u.checkStrategy}),K=t.computed(function(){return!(!u.filterable||!v.value)}),q=t.computed(function(){if(u.multiple){var e=k.value,t=e.getCheckedKeys,l=e.getNode;return t(S.value,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var t=l(e);return null===t?{label:String(e),value:e}:{label:u.showPath?N(t,u.separator,u.labelField):t.rawNode[u.labelField],value:t.key}})}return[]}),V=t.computed(function(){if(!u.multiple){var e=k.value.getNode;if(null===s.value)return null;var t=null;if(u.emitPath&&Array.isArray(s.value)){if(0===s.value.length)return null;var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||(t=s.value);if(null==t)return null;var n=e(t);return null===n?{label:String(t),value:t}:{label:u.showPath?N(n,u.separator,u.labelField):n.rawNode[u.labelField],value:n.key}}return null}),F=t.computed({get:function(){var e;return u.multiple?q.value.map(function(e){return e.label}):(null===(e=V.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function L(e,t,l){s.value=e,o("update:modelValue",e),o("change",e,t,l)}function M(e){var t=k.value.getNode;return e.map(function(e){var l;return(null===(l=t(e))||void 0===l?void 0:l.rawNode)||null})}function O(e){var t=u.cascade,l=u.multiple,n=u.checkStrategy,a=u.emitPath,r=k.value,o=r.check,i=r.getNode,c=r.getPath;if(l){var d=o(e,b.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(a?d.map(function(e){return c(e).keyPath}):d,M(d),d.map(function(e){var t;return C(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}else if("child"===n){var s=i(e);if(null==s||!s.isLeaf)return!1;var v=c(e);L(a?v.keyPath:e,s.rawNode,C(v.treeNodePath)),R()}else{var f=i(e),h=c(e);L(a?h.keyPath:e,(null==f?void 0:f.rawNode)||null,C(null==h?void 0:h.treeNodePath)),R()}return!0}function j(e){var t=u.cascade,l=u.multiple,n=u.checkStrategy,a=u.emitPath;if(l){var r=k.value,o=r.uncheck,i=r.getNode,c=r.getPath,d=o(e,b.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(a?d.map(function(e){return c(e).keyPath}):d,d.map(function(e){var t;return(null===(t=i(e))||void 0===t?void 0:t.rawNode)||null}),d.map(function(e){var t;return C(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}}function I(e){m.value=e}function $(e){p.value=e}function z(e){h.value.add(e)}function D(e){h.value.delete(e)}function T(){var e,t,l=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(f.value=!1,v.value="",l)?null===(e=i.value)||void 0===e||e.focus():null===(t=i.value)||void 0===t||t.blur()}function H(){u.clearFilterAfterSelect&&(v.value="")}function R(){v.value="",setTimeout(function(){if(i.value&&void 0!==i.value.query){var e;i.value.query="";var t=null===(e=i.value.$el)||void 0===e?void 0:e.querySelector("input");t&&V.value&&(t.value=V.value.label)}},0)}function U(){y.value||f.value||(f.value=!0)}function X(e){f.value=e,e||(v.value="")}function G(){u.multiple?L([],[],[]):L(null,null,null)}function J(e){var t=q.value.find(function(t){return t.label===e});t&&j(t.value)}function Q(e){v.value=e}function W(e){o("focus",e)}function Y(e){o("blur",e)}function Z(e){o("focus",e)}function ee(e){o("blur",e)}function te(e){ne(e)}function le(e){e.preventDefault()}function ne(e){if(f.value)switch(e.key){case"Enter":var t;if(K.value)null===(t=d.value)||void 0===t||t.enter();else if(null!==p.value)if(S.value.includes(p.value)||B.value.includes(p.value))j(p.value);else{var l=O(p.value);!u.multiple&&l&&T(!0)}break;case"ArrowUp":var n;if(e.preventDefault(),K.value)null===(n=d.value)||void 0===n||n.prev();else ae("prev");break;case"ArrowDown":var a;if(e.preventDefault(),K.value)null===(a=d.value)||void 0===a||a.next();else ae("next");break;case"ArrowLeft":e.preventDefault(),K.value||ae("parent");break;case"ArrowRight":e.preventDefault(),K.value||ae("child");break;case"Escape":T(!0)}}function ae(e){var t=p.value,l=k.value,n=l.getPrev,a=l.getNext,r=l.getChild,o=l.getParent,i=l.getFirstAvailableNode,c=l.getNode;switch(e){case"prev":if(null!==t){var d=n(t,{loop:!0});d&&$(d.key)}break;case"next":if(null===t){var s=i();s&&$(s.key)}else{var v=a(t,{loop:!0});v&&$(v.key)}break;case"child":if(null!==t){var f=c(t);if(null!=f&&f.shallowLoaded){var m=r(t);m&&(I(t),$(m.key))}else f&&!h.value.has(t)&&u.onLoad&&(z(t),I(t),u.onLoad(f.rawNode).then(function(){return D(t)}).catch(function(){return D(t)}))}break;case"parent":if(null!==t){var y=o(t);if(y){$(y.key);var b=o(y.key);I((null==b?void 0:b.key)||null)}}}}t.watch(function(){return u.modelValue},function(e){s.value=e}),t.watch(f,function(e){if(!e)return p.value=null,void(m.value=null);if(u.multiple)p.value=null,m.value=null;else{var t=null;if(u.emitPath&&Array.isArray(s.value)&&s.value.length>0){var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||null===s.value||(t=s.value);if(null!==t){var n=k.value.getNode(t);if(n){var a=n.parent;a?(p.value=a.key,m.value=a.key):(p.value=t,m.value=t)}}else p.value=null,m.value=null}});var re=t.computed(function(){return{mergedValue:s.value,checkedKeys:S.value,indeterminateKeys:B.value,hoverKeyPath:x.value,keyboardKey:p.value,hoverKey:m.value,loadingKeySet:h.value,multiple:u.multiple,cascade:u.cascade,checkStrategy:u.checkStrategy,expandTrigger:u.expandTrigger,remote:u.remote,showCheckbox:E.value,labelField:u.labelField,valueField:u.valueField,childrenField:u.childrenField,disabledField:u.disabledField,onLoad:u.onLoad,updateHoverKey:I,updateKeyboardKey:$,addLoadingKey:z,deleteLoadingKey:D,doCheck:O,doUncheck:j,closeMenu:T,clearPattern:H}});return t.provide("cascaderContext",re),a({focus:function(){var e;null===(e=i.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=i.value)||void 0===e||e.blur()},getCheckedData:function(){return E.value?{keys:S.value,options:M(S.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return E.value?{keys:B.value,options:M(B.value)}:{keys:[],options:[]}}}),function(n,a){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader",{"is-disabled":y.value}])},[t.createVNode(t.unref(l.ElSelect),{ref_key:"selectRef",ref:i,modelValue:F.value,"onUpdate:modelValue":a[0]||(a[0]=function(e){return F.value=e}),placeholder:e.placeholder,disabled:y.value,clearable:e.clearable,filterable:e.filterable,multiple:e.multiple,size:e.size,"collapse-tags":e.multiple,"collapse-tags-tooltip":e.multiple,"max-collapse-tags":e.maxTagCount,"filter-method":Q,"popper-class":"base-cascader-popper ".concat(e.popperClass||""),"automatic-dropdown":"",onVisibleChange:X,onClear:G,onRemoveTag:J,onFocus:W,onBlur:Y,onKeydown:ne,onClick:U},{empty:t.withCtx(function(){return[t.createElementVNode("div",A,[K.value?(t.openBlock(),t.createBlock(P,{key:0,ref_key:"selectMenuRef",ref:d,show:f.value&&K.value,pattern:v.value,multiple:e.multiple,"tm-nodes":k.value.treeNodes,filter:e.filter,"label-field":e.labelField,separator:e.separator,value:s.value,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},t.createSlots({_:2},[n.$slots["not-found"]?{name:"not-found",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(t.openBlock(),t.createBlock(g,{key:1,ref_key:"cascaderMenuRef",ref:c,show:f.value&&!K.value,"menu-model":_.value,"get-column-style":e.getColumnStyle,"on-focus":Z,"on-blur":ee,"on-keydown":te,"on-mousedown":le,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},t.createSlots({_:2},[n.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,a=e.checked;return[t.renderSlot(n.$slots,"label",{option:l,checked:a})]}),key:"0"}:void 0,n.$slots.empty?{name:"empty",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"empty")]}),key:"1"}:void 0,n.$slots.action?{name:"action",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"action")]}),key:"2"}:void 0]),1032,["show","menu-model","get-column-style","virtual-scroll","option-height"]))])]}),_:3},8,["modelValue","placeholder","disabled","clearable","filterable","multiple","size","collapse-tags","collapse-tags-tooltip","max-collapse-tags","popper-class"])],2)}}}));V.__scopeId="data-v-243e9ed1",V.__file="packages/components/src/cascader/index.vue";var F=V;F.install=function(e){V.name&&e.component(V.name,V)};var L={XnCascader:F},M={install:function(e){Object.values(L).forEach(function(t){t.name&&e.component(t.name,t)})}};e.XnCascader=F,e.components=L,e.default=M,Object.defineProperty(e,"__esModule",{value:!0})}(this["@xn-lib/component"]=this["@xn-lib/component"]||{},Vue,ElementPlus,vueuc,ElementPlusIconsVue);
1
+ !function(e,t,l,n,r,a){"use strict";function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function u(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=v(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,u=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return o=e.done,e},e:function(e){u=!0,a=e},f:function(){try{o||null==l.return||l.return()}finally{if(u)throw a}}}}function c(e,t,l){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function i(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function d(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?i(Object(l),!0).forEach(function(t){c(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):i(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function s(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||v(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 v(e,t){if(e){if("string"==typeof e)return o(e,t);var l={}.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?o(e,t):void 0}}var f=["title"],p={class:"base-cascader-option__suffix"},m=t.defineComponent({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(e){var n=e,a=t.inject("cascaderContext"),o=t.computed(function(){return n.tmNode.key}),u=t.computed(function(){return n.tmNode.rawNode[a.value.labelField]}),c=t.computed(function(){return n.tmNode.disabled}),i=t.computed(function(){return n.tmNode.isLeaf}),d=t.computed(function(){return a.value.loadingKeySet.has(o.value)}),s=t.computed(function(){return!a.value.remote&&"hover"===a.value.expandTrigger}),v=t.computed(function(){if(!a.value.multiple){var e=a.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===o.value:e===o.value}return a.value.checkedKeys.includes(o.value)}),m=t.computed(function(){return!!a.value.multiple&&a.value.indeterminateKeys.includes(o.value)}),y=t.computed(function(){return a.value.hoverKeyPath.includes(o.value)}),h=t.computed(function(){return a.value.keyboardKey===o.value}),k=t.computed(function(){if(v.value||y.value)return!0;if(!a.value.multiple){var e=a.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(o.value)}return!1}),g=t.computed(function(){return a.value.showCheckbox}),b=t.computed(function(){return a.value.checkStrategy}),C=t.computed(function(){return a.value.multiple}),w=t.computed(function(){return a.value.cascade}),N=t.computed(function(){return!!v.value&&(C.value?!g.value:"child"===b.value&&!(C.value&&w.value))});function S(e){if(!c.value&&!e.target.closest(".base-cascader-option__checkbox")){var t=a.value;t.updateHoverKey(o.value),t.updateKeyboardKey(o.value),t.remote&&!n.tmNode.shallowLoaded&&!d.value&&t.onLoad&&(t.addLoadingKey(o.value),t.onLoad(n.tmNode.rawNode).then(function(){t.deleteLoadingKey(o.value)}).catch(function(){t.deleteLoadingKey(o.value)})),t.multiple,i.value&&E()}}function B(){if(s.value&&!c.value){var e=a.value;e.updateHoverKey(o.value),e.updateKeyboardKey(o.value),e.remote&&!n.tmNode.shallowLoaded&&!d.value&&e.onLoad&&(e.addLoadingKey(o.value),e.onLoad(n.tmNode.rawNode).then(function(){e.deleteLoadingKey(o.value)}).catch(function(){e.deleteLoadingKey(o.value)}))}}function _(){s.value&&B()}function x(){E()}function E(){var e=a.value;e.multiple?m.value||v.value?e.doUncheck(o.value):e.doCheck(o.value):(e.doCheck(o.value),!e.showCheckbox&&i.value&&e.closeMenu(!1))}return function(n,a){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader-option",{"is-active":k.value,"is-disabled":c.value,"is-hover":y.value||h.value,"has-checkbox":g.value}]),onClick:S,onMouseenter:B,onMousemove:_},[g.value?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":v.value,indeterminate:m.value,disabled:c.value,class:"base-cascader-option__checkbox",onClick:a[0]||(a[0]=t.withModifiers(function(){},["stop"])),onChange:x},null,8,["model-value","indeterminate","disabled"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",{class:"base-cascader-option__label",title:u.value},[t.renderSlot(n.$slots,"label",{option:e.tmNode.rawNode,checked:v.value},function(){return[t.createTextVNode(t.toDisplayString(u.value),1)]})],8,f),t.createElementVNode("span",p,[d.value?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:0,class:"is-loading"},{default:t.withCtx(function(){return[t.createVNode(t.unref(r.Loading))]}),_:1})):i.value?N.value?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:2,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(r.Check))]}),_:1})):t.createCommentVNode("v-if",!0):(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"arrow-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(r.ArrowRight))]}),_:1}))])],34)}}});m.__scopeId="data-v-248f99f8",m.__file="packages/components/src/cascader/CascaderOption.vue";var y={key:0,class:"base-cascader-menu__wrapper"},h={key:0,class:"base-cascader-submenu__list"},k={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},g={key:1,class:"base-cascader-menu__empty"},b={key:2,class:"base-cascader-menu__action"},C=t.defineComponent({__name:"CascaderMenu",props:{show:{type:Boolean,required:!0},menuModel:{type:Array,required:!0},onFocus:{type:Function,required:!0},onBlur:{type:Function,required:!0},onKeydown:{type:Function,required:!0},onMousedown:{type:Function,required:!0},getColumnStyle:{type:Function,required:!1},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,r){var a=r.expose,o=e,u=t.ref(null);function c(e){u.value&&(u.value.contains(e.relatedTarget)||o.onFocus(e))}function i(e){u.value&&(u.value.contains(e.relatedTarget)||o.onBlur(e))}return a({scroll:function(e,t,l){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(r,a){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){var o;return[t.withDirectives(t.createElementVNode("div",{ref_key:"menuRef",ref:u,class:"base-cascader-menu",tabindex:"0",onMousedown:a[0]||(a[0]=function(){return e.onMousedown&&e.onMousedown.apply(e,arguments)}),onKeydown:a[1]||(a[1]=function(){return e.onKeydown&&e.onKeydown.apply(e,arguments)}),onFocusin:c,onFocusout:i,onClick:a[2]||(a[2]=t.withModifiers(function(){},["stop"]))},[null!==(o=e.menuModel[0])&&void 0!==o&&o.length?(t.openBlock(),t.createElementBlock("div",y,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.menuModel,function(a,o){var u;return t.openBlock(),t.createElementBlock("div",{key:o,class:"base-cascader-submenu",style:t.normalizeStyle(null===(u=e.getColumnStyle)||void 0===u?void 0:u.call(e,{level:o}))},[!e.virtualScroll||a.length<50?(t.openBlock(),t.createElementBlock("div",h,[t.createVNode(t.unref(l.ElScrollbar),null,{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a,function(e){return t.openBlock(),t.createBlock(m,{key:e.key,"tm-node":e},t.createSlots({_:2},[r.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,n=e.checked;return[t.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(t.openBlock(),t.createElementBlock("div",k,[t.createVNode(t.unref(n.VirtualList),{items:a,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(e){var l=e.item;return[(t.openBlock(),t.createBlock(m,{key:l.key,"tm-node":l},t.createSlots({_:2},[r.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,n=e.checked;return[t.renderSlot(r.$slots,"label",{option:l,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(t.openBlock(),t.createElementBlock("div",g,[t.renderSlot(r.$slots,"empty",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"暂无数据"})]})])),r.$slots.action?(t.openBlock(),t.createElementBlock("div",b,[t.renderSlot(r.$slots,"action")])):t.createCommentVNode("v-if",!0)],544),[[t.vShow,e.show]])]}),_:3})}}});function w(e,t){var l=new Map,n=[];var r=function e(n,r,a){var o=[];return n.map(function(n,u){var c=t.getKey(n),i=t.getChildren(n),d=t.getDisabled(n),s=void 0!==n.isLeaf?n.isLeaf:!i||0===i.length,v=s||void 0!==i&&i.length>0,f={key:c,rawNode:n,level:r,index:u,isLeaf:s,isGroup:!1,ignored:!1,disabled:d,shallowLoaded:v,parent:a,siblings:o,children:void 0};return o.push(f),l.set(c,f),i&&i.length>0&&(f.children=e(i,r+1,f)),f})}(e,0,null);function a(e){return l.get(e)||null}function o(e){var t=[e.key];return e.children&&e.children.forEach(function(e){t.push.apply(t,s(o(e)))}),t}n.push.apply(n,s(r));var c=function e(t){var l=[];return t.forEach(function(t){t.disabled||(l.push(t),t.children&&l.push.apply(l,s(e(t.children))))}),l}(n);return{treeNodes:n,getNode:a,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var t=a(e);if(!t)return{treeNodePath:[],keyPath:[],treeNode:null};for(var l=[],n=[],r=t;r;)l.unshift(r),n.unshift(r.key),r=r.parent;return{treeNodePath:l,keyPath:n,treeNode:t}},getCheckedKeys:function(e,t){var l=new Set(e),r=new Set;if(!t.cascade)return{checkedKeys:e,indeterminateKeys:[]};function a(e){if(!e.children||0===e.children.length)return{allChecked:l.has(e.key),someChecked:l.has(e.key)};var t,n=!0,o=!1,c=u(e.children);try{for(c.s();!(t=c.n()).done;){var i=a(t.value);i.allChecked||(n=!1),i.someChecked&&(o=!0)}}catch(e){c.e(e)}finally{c.f()}var d=l.has(e.key);return n?(l.add(e.key),{allChecked:!0,someChecked:!0}):o||d?(r.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return n.forEach(function(e){return a(e)}),{checkedKeys:Array.from(l),indeterminateKeys:Array.from(r)}},check:function(e,t,l){var n=a(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.add(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return r.add(e)}),{checkedKeys:Array.from(r)}},uncheck:function(e,t,l){var n=a(e);if(!n)return{checkedKeys:t};var r=new Set(t);return r.delete(e),l.cascade&&n.children&&o(n).slice(1).forEach(function(e){return r.delete(e)}),{checkedKeys:Array.from(r)}},getPrev:function(e,t){var l=c.findIndex(function(t){return t.key===e});return-1===l?null:0===l?t.loop?c[c.length-1]:null:c[l-1]},getNext:function(e,t){var l=c.findIndex(function(t){return t.key===e});return-1===l?null:l===c.length-1?t.loop?c[0]:null:c[l+1]},getChild:function(e){var t=a(e);return t&&t.children&&0!==t.children.length&&t.children.find(function(e){return!e.disabled})||null},getParent:function(e){var t=a(e);return(null==t?void 0:t.parent)||null},getFirstAvailableNode:function(){return c[0]||null}}}function N(e){return e?e.map(function(e){return e.rawNode}):null}function S(e,t,l){for(var n=[];e;)n.push(e.rawNode[l]),e=e.parent;return n.reverse().join(t)}C.__scopeId="data-v-097326a4",C.__file="packages/components/src/cascader/CascaderMenu.vue";var B=["onClick","onMouseenter"],_={class:"base-cascader-select-option__label"},x={key:0,class:"base-cascader-select-menu__empty"},E={key:1,class:"base-cascader-select-menu__virtual"},K=["onClick","onMouseenter"],q={class:"base-cascader-select-option__label"},P={key:1,class:"base-cascader-select-menu__empty"},V=t.defineComponent({__name:"CascaderSelectMenu",props:{show:{type:Boolean,required:!0},pattern:{type:String,required:!0},multiple:{type:Boolean,required:!0},tmNodes:{type:Array,required:!0},filter:{type:null,required:!1},labelField:{type:String,required:!0},separator:{type:String,required:!0},value:{type:null,required:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,a){var o=a.expose,c=e,i=t.inject("cascaderContext"),d=t.ref(null),s=t.ref(null),v=t.computed(function(){return function(e,t,l,n){var r=[],a=[];return function e(o){var c,i=u(o);try{for(i.s();!(c=i.n()).done;){var d=c.value;if(!d.disabled){var s=d.rawNode;a.push(s),!d.isLeaf&&t||r.push({label:S(d,n,l),value:d.key,rawNode:d.rawNode,path:Array.from(a)}),!d.isLeaf&&d.children&&e(d.children),a.pop()}}}catch(e){i.e(e)}finally{i.f()}}(e),r}(c.tmNodes,"child"===i.value.checkStrategy,c.labelField,c.separator)}),f=t.computed(function(){return c.filter?c.filter:function(e,t,l){return l.some(function(t){return t[c.labelField]&&t[c.labelField].toLowerCase().includes(e.toLowerCase())})}}),p=t.computed(function(){return c.pattern?v.value.filter(function(e){return f.value(c.pattern,e.rawNode,e.path)}):v.value});function m(e){return c.multiple&&Array.isArray(c.value)?c.value.includes(e):c.value===e}function y(e){var t=i.value;c.multiple?m(e.value)?t.doUncheck(e.value):t.doCheck(e.value):(t.doCheck(e.value),t.clearPattern(),t.closeMenu())}return o({prev:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e>0?s.value=p.value[e-1].value:p.value.length>0&&(s.value=p.value[p.value.length-1].value)},next:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e<p.value.length-1?s.value=p.value[e+1].value:p.value.length>0&&(s.value=p.value[0].value)},enter:function(){if(null!==s.value){var e=p.value.find(function(e){return e.value===s.value});if(e)return y(e),!0}return!1}}),function(a,o){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){return[t.withDirectives(t.createElementVNode("div",{ref_key:"selectMenuRef",ref:d,class:"base-cascader-select-menu",onClick:o[2]||(o[2]=t.withModifiers(function(){},["stop"]))},[!e.virtualScroll||p.value.length<50?(t.openBlock(),t.createBlock(t.unref(l.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,function(n){return t.openBlock(),t.createElementBlock("div",{key:n.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(n.value),"is-hover":s.value===n.value}]),onClick:function(e){return y(n)},onMouseenter:function(e){return s.value=n.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":m(n.value),class:"base-cascader-select-option__checkbox",onClick:o[0]||(o[0]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",_,t.toDisplayString(n.label),1),!e.multiple&&m(n.value)?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(r.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,B)}),128)),0===p.value.length?(t.openBlock(),t.createElementBlock("div",x,[t.renderSlot(a.$slots,"not-found",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"无匹配数据"})]})])):t.createCommentVNode("v-if",!0)]}),_:3})):(t.openBlock(),t.createElementBlock("div",E,[p.value.length>0?(t.openBlock(),t.createBlock(t.unref(l.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[t.createVNode(t.unref(n.VirtualList),{items:p.value,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(n){var a=n.item;return[(t.openBlock(),t.createElementBlock("div",{key:a.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(a.value),"is-hover":s.value===a.value}]),onClick:function(e){return y(a)},onMouseenter:function(e){return s.value=a.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(l.ElCheckbox),{key:0,"model-value":m(a.value),class:"base-cascader-select-option__checkbox",onClick:o[1]||(o[1]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",q,t.toDisplayString(a.label),1),!e.multiple&&m(a.value)?(t.openBlock(),t.createBlock(t.unref(l.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(r.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,K))]}),_:1},8,["items","item-size"])]}),_:1})):(t.openBlock(),t.createElementBlock("div",P,[t.renderSlot(a.$slots,"not-found",{},function(){return[t.createVNode(t.unref(l.ElEmpty),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[t.vShow,e.show]])]}),_:3})}}});V.__scopeId="data-v-3901f6ec",V.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var A={class:"base-cascader-dropdown"},F=t.defineComponent(d(d({},{name:"XnCascader"}),{},{__name:"index",props:{modelValue:{type:null,required:!1,default:null},options:{type:Array,required:!1,default:function(){return[]}},placeholder:{type:String,required:!1,default:"请选择"},disabled:{type:Boolean,required:!1,default:!1},clearable:{type:Boolean,required:!1,default:!1},filterable:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:"default"},expandTrigger:{type:null,required:!1,default:"click"},separator:{type:String,required:!1,default:" / "},showPath:{type:Boolean,required:!1,default:!0},cascade:{type:Boolean,required:!1,default:!0},checkStrategy:{type:null,required:!1,default:"all"},remote:{type:Boolean,required:!1,default:!1},onLoad:{type:null,required:!1},filter:{type:null,required:!1},valueField:{type:String,required:!1,default:"value"},labelField:{type:String,required:!1,default:"label"},childrenField:{type:String,required:!1,default:"children"},disabledField:{type:String,required:!1,default:"disabled"},maxTagCount:{type:Number,required:!1,default:1},popperClass:{type:String,required:!1},getColumnStyle:{type:Function,required:!1},clearFilterAfterSelect:{type:Boolean,required:!1,default:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34},showCheckbox:{type:Boolean,required:!1,default:void 0},emitPath:{type:Boolean,required:!1,default:!1}},emits:["update:modelValue","change","focus","blur"],setup:function(e,n){var r=n.expose,a=n.emit,o=e,u=a,c=t.ref(null),i=t.ref(null),d=t.ref(null),s=t.ref(o.modelValue),v=t.ref(""),f=t.ref(!1),p=t.ref(null),m=t.ref(null),y=t.ref(new Set),h=t.computed(function(){return o.disabled});t.computed(function(){return y.value.size>0});var k=t.computed(function(){return w(o.options,{getKey:function(e){return e[o.valueField]},getChildren:function(e){return e[o.childrenField]},getDisabled:function(e){return e[o.disabledField]||!1}})}),g=t.computed(function(){var e;return o.multiple&&Array.isArray(s.value)?(e=o.emitPath?0===s.value.length?[]:Array.isArray(s.value[0])?s.value.map(function(e){return e[e.length-1]}):s.value:s.value,k.value.getCheckedKeys(e,{cascade:o.cascade,checkStrategy:o.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),b=t.computed(function(){return g.value.checkedKeys}),B=t.computed(function(){return g.value.indeterminateKeys}),_=t.computed(function(){var e,t=k.value.getPath(m.value),l=t.treeNodePath,n=t.treeNode;return null===n?e=[k.value.treeNodes]:(e=l.map(function(e){return e.siblings}),n.isLeaf||y.value.has(n.key)||!n.children||e.push(n.children)),e}),x=t.computed(function(){return k.value.getPath(m.value).keyPath}),E=t.computed(function(){return void 0!==o.showCheckbox?o.showCheckbox:!(!o.multiple||!o.cascade)||"child"!==o.checkStrategy}),K=t.computed(function(){return!(!o.filterable||!v.value)}),q=t.computed(function(){if(o.multiple){var e=k.value,t=e.getCheckedKeys,l=e.getNode;return t(b.value,{cascade:o.cascade,checkStrategy:o.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var t=l(e);return null===t?{label:String(e),value:e}:{label:o.showPath?S(t,o.separator,o.labelField):t.rawNode[o.labelField],value:t.key}})}return[]}),P=t.computed(function(){if(!o.multiple){var e=k.value.getNode;if(null===s.value)return null;var t=null;if(o.emitPath&&Array.isArray(s.value)){if(0===s.value.length)return null;var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||(t=s.value);if(null==t)return null;var n=e(t);return null===n?{label:String(t),value:t}:{label:o.showPath?S(n,o.separator,o.labelField):n.rawNode[o.labelField],value:n.key}}return null}),F=t.computed({get:function(){var e;return o.multiple?q.value.map(function(e){return e.label}):(null===(e=P.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function L(e,t,l){s.value=e,u("update:modelValue",e),u("change",e,t,l)}function M(e){var t=k.value.getNode;return e.map(function(e){var l;return(null===(l=t(e))||void 0===l?void 0:l.rawNode)||null})}function z(e){var t=o.cascade,l=o.multiple,n=o.checkStrategy,r=o.emitPath,a=k.value,u=a.check,c=a.getNode,i=a.getPath;if(l){var d=u(e,g.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(r?d.map(function(e){return i(e).keyPath}):d,M(d),d.map(function(e){var t;return N(null===(t=i(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}else if("child"===n){var s=c(e);if(null==s||!s.isLeaf)return!1;var v=i(e);L(r?v.keyPath:e,s.rawNode,N(v.treeNodePath)),R()}else{var f=c(e),y=i(e);L(r?y.keyPath:e,(null==f?void 0:f.rawNode)||null,N(null==y?void 0:y.treeNodePath)),R()}return!0}function O(e){var t=o.cascade,l=o.multiple,n=o.checkStrategy,r=o.emitPath;if(l){var a=k.value,u=a.uncheck,c=a.getNode,i=a.getPath,d=u(e,g.value.checkedKeys,{cascade:t,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;L(r?d.map(function(e){return i(e).keyPath}):d,d.map(function(e){var t;return(null===(t=c(e))||void 0===t?void 0:t.rawNode)||null}),d.map(function(e){var t;return N(null===(t=i(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}}function $(e){m.value=e}function j(e){p.value=e}function I(e){y.value.add(e)}function D(e){y.value.delete(e)}function T(){var e,t,l=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(f.value=!1,v.value="",l)?null===(e=c.value)||void 0===e||e.focus():null===(t=c.value)||void 0===t||t.blur()}function H(){o.clearFilterAfterSelect&&(v.value="")}function R(){v.value="",setTimeout(function(){if(c.value&&void 0!==c.value.query){var e;c.value.query="";var t=null===(e=c.value.$el)||void 0===e?void 0:e.querySelector("input");t&&P.value&&(t.value=P.value.label)}},0)}function U(){h.value||f.value||(f.value=!0)}function X(e){f.value=e,e||(v.value="")}function G(){o.multiple?L([],[],[]):L(null,null,null)}function J(e){var t=q.value.find(function(t){return t.label===e});t&&O(t.value)}function Q(e){v.value=e}function W(e){u("focus",e)}function Y(e){u("blur",e)}function Z(e){u("focus",e)}function ee(e){u("blur",e)}function te(e){ne(e)}function le(e){e.preventDefault()}function ne(e){if(f.value)switch(e.key){case"Enter":var t;if(K.value)null===(t=d.value)||void 0===t||t.enter();else if(null!==p.value)if(b.value.includes(p.value)||B.value.includes(p.value))O(p.value);else{var l=z(p.value);!o.multiple&&l&&T(!0)}break;case"ArrowUp":var n;if(e.preventDefault(),K.value)null===(n=d.value)||void 0===n||n.prev();else re("prev");break;case"ArrowDown":var r;if(e.preventDefault(),K.value)null===(r=d.value)||void 0===r||r.next();else re("next");break;case"ArrowLeft":e.preventDefault(),K.value||re("parent");break;case"ArrowRight":e.preventDefault(),K.value||re("child");break;case"Escape":T(!0)}}function re(e){var t=p.value,l=k.value,n=l.getPrev,r=l.getNext,a=l.getChild,u=l.getParent,c=l.getFirstAvailableNode,i=l.getNode;switch(e){case"prev":if(null!==t){var d=n(t,{loop:!0});d&&j(d.key)}break;case"next":if(null===t){var s=c();s&&j(s.key)}else{var v=r(t,{loop:!0});v&&j(v.key)}break;case"child":if(null!==t){var f=i(t);if(null!=f&&f.shallowLoaded){var m=a(t);m&&($(t),j(m.key))}else f&&!y.value.has(t)&&o.onLoad&&(I(t),$(t),o.onLoad(f.rawNode).then(function(){return D(t)}).catch(function(){return D(t)}))}break;case"parent":if(null!==t){var h=u(t);if(h){j(h.key);var g=u(h.key);$((null==g?void 0:g.key)||null)}}}}t.watch(function(){return o.modelValue},function(e){s.value=e}),t.watch(f,function(e){if(!e)return p.value=null,void(m.value=null);if(o.multiple)p.value=null,m.value=null;else{var t=null;if(o.emitPath&&Array.isArray(s.value)&&s.value.length>0){var l=s.value[s.value.length-1];t=Array.isArray(l)?null:l}else Array.isArray(s.value)||null===s.value||(t=s.value);if(null!==t){var n=k.value.getNode(t);if(n){var r=n.parent;r?(p.value=r.key,m.value=r.key):(p.value=t,m.value=t)}}else p.value=null,m.value=null}});var ae=t.computed(function(){return{mergedValue:s.value,checkedKeys:b.value,indeterminateKeys:B.value,hoverKeyPath:x.value,keyboardKey:p.value,hoverKey:m.value,loadingKeySet:y.value,multiple:o.multiple,cascade:o.cascade,checkStrategy:o.checkStrategy,expandTrigger:o.expandTrigger,remote:o.remote,showCheckbox:E.value,labelField:o.labelField,valueField:o.valueField,childrenField:o.childrenField,disabledField:o.disabledField,onLoad:o.onLoad,updateHoverKey:$,updateKeyboardKey:j,addLoadingKey:I,deleteLoadingKey:D,doCheck:z,doUncheck:O,closeMenu:T,clearPattern:H}});return t.provide("cascaderContext",ae),r({focus:function(){var e;null===(e=c.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=c.value)||void 0===e||e.blur()},getCheckedData:function(){return E.value?{keys:b.value,options:M(b.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return E.value?{keys:B.value,options:M(B.value)}:{keys:[],options:[]}}}),function(n,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader",{"is-disabled":h.value}])},[t.createVNode(t.unref(l.ElSelect),{ref_key:"selectRef",ref:c,modelValue:F.value,"onUpdate:modelValue":r[0]||(r[0]=function(e){return F.value=e}),placeholder:e.placeholder,disabled:h.value,clearable:e.clearable,filterable:e.filterable,multiple:e.multiple,size:e.size,"collapse-tags":e.multiple,"collapse-tags-tooltip":e.multiple,"max-collapse-tags":e.maxTagCount,"filter-method":Q,"popper-class":"base-cascader-popper ".concat(e.popperClass||""),"automatic-dropdown":"",onVisibleChange:X,onClear:G,onRemoveTag:J,onFocus:W,onBlur:Y,onKeydown:ne,onClick:U},{empty:t.withCtx(function(){return[t.createElementVNode("div",A,[K.value?(t.openBlock(),t.createBlock(V,{key:0,ref_key:"selectMenuRef",ref:d,show:f.value&&K.value,pattern:v.value,multiple:e.multiple,"tm-nodes":k.value.treeNodes,filter:e.filter,"label-field":e.labelField,separator:e.separator,value:s.value,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},t.createSlots({_:2},[n.$slots["not-found"]?{name:"not-found",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(t.openBlock(),t.createBlock(C,{key:1,ref_key:"cascaderMenuRef",ref:i,show:f.value&&!K.value,"menu-model":_.value,"get-column-style":e.getColumnStyle,"on-focus":Z,"on-blur":ee,"on-keydown":te,"on-mousedown":le,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},t.createSlots({_:2},[n.$slots.label?{name:"label",fn:t.withCtx(function(e){var l=e.option,r=e.checked;return[t.renderSlot(n.$slots,"label",{option:l,checked:r})]}),key:"0"}:void 0,n.$slots.empty?{name:"empty",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"empty")]}),key:"1"}:void 0,n.$slots.action?{name:"action",fn:t.withCtx(function(){return[t.renderSlot(n.$slots,"action")]}),key:"2"}:void 0]),1032,["show","menu-model","get-column-style","virtual-scroll","option-height"]))])]}),_:3},8,["modelValue","placeholder","disabled","clearable","filterable","multiple","size","collapse-tags","collapse-tags-tooltip","max-collapse-tags","popper-class"])],2)}}}));F.__scopeId="data-v-243e9ed1",F.__file="packages/components/src/cascader/index.vue";var L=F;L.install=function(e){F.name&&e.component(F.name,F)};var M={type:{type:String,default:"default"},color:{type:String,default:void 0},bgColor:{type:String,default:void 0},size:{type:String,default:"default"},dot:{type:Boolean,default:!1},dotColor:{type:String,default:void 0},icon:{type:String,default:void 0},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},closable:{type:Boolean,default:!1},border:{type:Boolean,default:!0}},z={class:"custom-tag__content"},O=t.defineComponent({__name:"index",props:M,emits:["close"],setup:function(e,l){l.emit;var n=e,r=t.computed(function(){return["custom-tag--".concat(n.size),{"custom-tag--plain":n.plain,"custom-tag--round":n.round,"custom-tag--no-border":!n.border}]}),o=t.computed(function(){var e=a.TypeColorMap.getOption(n.type)||{},t={};return n.color?(t.color=n.color,n.plain?(t.backgroundColor="transparent",t.borderColor=n.color):(t.backgroundColor=n.bgColor||"".concat(n.color,"15"),t.borderColor=n.bgColor||"".concat(n.color,"30"))):n.bgColor?(t.backgroundColor=n.bgColor,t.borderColor=n.bgColor):n.plain?(t.color=e.color,t.backgroundColor="transparent",t.borderColor=e.color):(t.color=e.color,t.backgroundColor=e.bgColor,t.borderColor=e.borderColor),t}),u=t.computed(function(){return n.dotColor?{backgroundColor:n.dotColor}:{}});return function(e,l){return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["custom-tag",r.value]),style:t.normalizeStyle(o.value)},[t.createCommentVNode(" 前缀插槽 "),t.renderSlot(e.$slots,"prefix",{},function(){return[e.dot?(t.openBlock(),t.createElementBlock("span",{key:0,class:"custom-tag__dot",style:t.normalizeStyle(u.value)},null,4)):e.icon?(t.openBlock(),t.createElementBlock("i",{key:1,class:t.normalizeClass([e.icon,"custom-tag__icon"])},null,2)):t.createCommentVNode("v-if",!0)]}),t.createCommentVNode(" 内容 "),t.createElementVNode("span",z,[t.renderSlot(e.$slots,"default")]),t.createCommentVNode(" 后缀插槽 "),t.renderSlot(e.$slots,"suffix")],6)}}});O.__scopeId="data-v-6a58d386",O.__file="packages/components/src/tag/index.vue";var $=O;$.install=function(e){O.name&&e.component(O.name,O)};var j={XnCascader:L,XnTag:$},I={install:function(e){Object.values(j).forEach(function(t){t.name&&e.component(t.name,t)})}};e.XnCascader=L,e.XnTag=$,e.components=j,e.default=I,Object.defineProperty(e,"__esModule",{value:!0})}(this["@xn-lib/component"]=this["@xn-lib/component"]||{},Vue,ElementPlus,vueuc,ElementPlusIconsVue,core);