@xn-lib/component 0.0.31 → 0.1.2

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 ADDED
@@ -0,0 +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"),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 T(e){y.value.delete(e)}function D(){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&&D(!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":D(!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 T(t)}).catch(function(){return T(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:T,doCheck:z,doUncheck:O,closeMenu:D,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(i(i({},{name:"XnTag"}),{},{__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 ADDED
@@ -0,0 +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}.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:12px;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:14px;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:16px;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}
@@ -0,0 +1,13 @@
1
+ import type { Plugin } from 'vue';
2
+ import type { Component } from 'vue';
3
+ import XnCascader from './types/cascader/index';
4
+ import XnTag from './types/tag/index';
5
+ export { XnCascader, XnTag };
6
+ export declare const components: Record<string, Component>;
7
+ export type { CascaderProps } from './types/cascader/props';
8
+ export type { TagProps } from './types/tag/props';
9
+ export * from './types/types';
10
+ export * from './types/cascader/types';
11
+ export * from './types/tag/types';
12
+ declare const plugin: Plugin;
13
+ export default plugin;
@@ -0,0 +1 @@
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 T(e){y.value.delete(e)}function D(){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&&D(!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":D(!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 T(t)}).catch(function(){return T(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:T,doCheck:z,doUncheck:O,closeMenu:D,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(d(d({},{name:"XnTag"}),{},{__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);
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ import{defineComponent as e,inject as l,computed as t,openBlock as n,createElementBlock as a,normalizeClass as r,createBlock as u,unref as o,withModifiers as i,createCommentVNode as c,createElementVNode as d,renderSlot as s,createTextVNode as v,toDisplayString as f,withCtx as p,createVNode as y,ref as h,Transition as m,withDirectives as g,Fragment as b,renderList as k,normalizeStyle as _,createSlots as w,vShow as C,watch as S,provide as N}from"vue";import{ElCheckbox as K,ElIcon as x,ElScrollbar as q,ElEmpty as P,ElSelect as A}from"element-plus";import{VirtualList as F}from"vueuc";import{Loading as L,ArrowRight as M,Check as B}from"@element-plus/icons-vue";import{TypeColorMap as O}from"@xn-lib/core";function $(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,n=Array(l);t<l;t++)n[t]=e[t];return n}function j(e,l){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=E(e))||l&&e&&"number"==typeof e.length){t&&(e=t);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(){t=t.call(e)},n:function(){var e=t.next();return u=e.done,e},e:function(e){o=!0,r=e},f:function(){try{u||null==t.return||t.return()}finally{if(o)throw r}}}}function z(e,l,t){return(l=function(e){var l=function(e,l){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,l||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===l?String:Number)(e)}(e,"string");return"symbol"==typeof l?l:l+""}(l))in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function T(e,l){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);l&&(n=n.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),t.push.apply(t,n)}return t}function I(e){for(var l=1;l<arguments.length;l++){var t=null!=arguments[l]?arguments[l]:{};l%2?T(Object(t),!0).forEach(function(l){z(e,l,t[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):T(Object(t)).forEach(function(l){Object.defineProperty(e,l,Object.getOwnPropertyDescriptor(t,l))})}return e}function D(e){return function(e){if(Array.isArray(e))return $(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||E(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 E(e,l){if(e){if("string"==typeof e)return $(e,l);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?$(e,l):void 0}}var V=["title"],H={class:"base-cascader-option__suffix"},R=e({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(e){var h=e,m=l("cascaderContext"),g=t(function(){return h.tmNode.key}),b=t(function(){return h.tmNode.rawNode[m.value.labelField]}),k=t(function(){return h.tmNode.disabled}),_=t(function(){return h.tmNode.isLeaf}),w=t(function(){return m.value.loadingKeySet.has(g.value)}),C=t(function(){return!m.value.remote&&"hover"===m.value.expandTrigger}),S=t(function(){if(!m.value.multiple){var e=m.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===g.value:e===g.value}return m.value.checkedKeys.includes(g.value)}),N=t(function(){return!!m.value.multiple&&m.value.indeterminateKeys.includes(g.value)}),q=t(function(){return m.value.hoverKeyPath.includes(g.value)}),P=t(function(){return m.value.keyboardKey===g.value}),A=t(function(){if(S.value||q.value)return!0;if(!m.value.multiple){var e=m.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(g.value)}return!1}),F=t(function(){return m.value.showCheckbox}),O=t(function(){return m.value.checkStrategy}),$=t(function(){return m.value.multiple}),j=t(function(){return m.value.cascade}),z=t(function(){return!!S.value&&($.value?!F.value:"child"===O.value&&!($.value&&j.value))});function T(e){if(!k.value&&!e.target.closest(".base-cascader-option__checkbox")){var l=m.value;l.updateHoverKey(g.value),l.updateKeyboardKey(g.value),l.remote&&!h.tmNode.shallowLoaded&&!w.value&&l.onLoad&&(l.addLoadingKey(g.value),l.onLoad(h.tmNode.rawNode).then(function(){l.deleteLoadingKey(g.value)}).catch(function(){l.deleteLoadingKey(g.value)})),l.multiple,_.value&&R()}}function I(){if(C.value&&!k.value){var e=m.value;e.updateHoverKey(g.value),e.updateKeyboardKey(g.value),e.remote&&!h.tmNode.shallowLoaded&&!w.value&&e.onLoad&&(e.addLoadingKey(g.value),e.onLoad(h.tmNode.rawNode).then(function(){e.deleteLoadingKey(g.value)}).catch(function(){e.deleteLoadingKey(g.value)}))}}function D(){C.value&&I()}function E(){R()}function R(){var e=m.value;e.multiple?N.value||S.value?e.doUncheck(g.value):e.doCheck(g.value):(e.doCheck(g.value),!e.showCheckbox&&_.value&&e.closeMenu(!1))}return function(l,t){return n(),a("div",{class:r(["base-cascader-option",{"is-active":A.value,"is-disabled":k.value,"is-hover":q.value||P.value,"has-checkbox":F.value}]),onClick:T,onMouseenter:I,onMousemove:D},[F.value?(n(),u(o(K),{key:0,"model-value":S.value,indeterminate:N.value,disabled:k.value,class:"base-cascader-option__checkbox",onClick:t[0]||(t[0]=i(function(){},["stop"])),onChange:E},null,8,["model-value","indeterminate","disabled"])):c("v-if",!0),d("span",{class:"base-cascader-option__label",title:b.value},[s(l.$slots,"label",{option:e.tmNode.rawNode,checked:S.value},function(){return[v(f(b.value),1)]})],8,V),d("span",H,[w.value?(n(),u(o(x),{key:0,class:"is-loading"},{default:p(function(){return[y(o(L))]}),_:1})):_.value?z.value?(n(),u(o(x),{key:2,class:"check-icon"},{default:p(function(){return[y(o(B))]}),_:1})):c("v-if",!0):(n(),u(o(x),{key:1,class:"arrow-icon"},{default:p(function(){return[y(o(M))]}),_:1}))])],34)}}});R.__scopeId="data-v-248f99f8",R.__file="packages/components/src/cascader/CascaderOption.vue";var U={key:0,class:"base-cascader-menu__wrapper"},X={key:0,class:"base-cascader-submenu__list"},G={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},J={key:1,class:"base-cascader-menu__empty"},Q={key:2,class:"base-cascader-menu__action"},W=e({__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,l){var t=l.expose,r=e,v=h(null);function f(e){v.value&&(v.value.contains(e.relatedTarget)||r.onFocus(e))}function S(e){v.value&&(v.value.contains(e.relatedTarget)||r.onBlur(e))}return t({scroll:function(e,l,t){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(l,t){return n(),u(m,{name:"el-zoom-in-top",persisted:""},{default:p(function(){var r;return[g(d("div",{ref_key:"menuRef",ref:v,class:"base-cascader-menu",tabindex:"0",onMousedown:t[0]||(t[0]=function(){return e.onMousedown&&e.onMousedown.apply(e,arguments)}),onKeydown:t[1]||(t[1]=function(){return e.onKeydown&&e.onKeydown.apply(e,arguments)}),onFocusin:f,onFocusout:S,onClick:t[2]||(t[2]=i(function(){},["stop"]))},[null!==(r=e.menuModel[0])&&void 0!==r&&r.length?(n(),a("div",U,[(n(!0),a(b,null,k(e.menuModel,function(t,r){var i;return n(),a("div",{key:r,class:"base-cascader-submenu",style:_(null===(i=e.getColumnStyle)||void 0===i?void 0:i.call(e,{level:r}))},[!e.virtualScroll||t.length<50?(n(),a("div",X,[y(o(q),null,{default:p(function(){return[(n(!0),a(b,null,k(t,function(e){return n(),u(R,{key:e.key,"tm-node":e},w({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var t=e.option,n=e.checked;return[s(l.$slots,"label",{option:t,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(n(),a("div",G,[y(o(F),{items:t,"item-size":e.optionHeight,style:{height:"280px"}},{default:p(function(e){var t=e.item;return[(n(),u(R,{key:t.key,"tm-node":t},w({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var t=e.option,n=e.checked;return[s(l.$slots,"label",{option:t,checked:n})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(n(),a("div",J,[s(l.$slots,"empty",{},function(){return[y(o(P),{"image-size":60,description:"暂无数据"})]})])),l.$slots.action?(n(),a("div",Q,[s(l.$slots,"action")])):c("v-if",!0)],544),[[C,e.show]])]}),_:3})}}});function Y(e,l){var t=new Map,n=[];var a=function e(n,a,r){var u=[];return n.map(function(n,o){var i=l.getKey(n),c=l.getChildren(n),d=l.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),t.set(i,f),c&&c.length>0&&(f.children=e(c,a+1,f)),f})}(e,0,null);function r(e){return t.get(e)||null}function u(e){var l=[e.key];return e.children&&e.children.forEach(function(e){l.push.apply(l,D(u(e)))}),l}n.push.apply(n,D(a));var o=function e(l){var t=[];return l.forEach(function(l){l.disabled||(t.push(l),l.children&&t.push.apply(t,D(e(l.children))))}),t}(n);return{treeNodes:n,getNode:r,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var l=r(e);if(!l)return{treeNodePath:[],keyPath:[],treeNode:null};for(var t=[],n=[],a=l;a;)t.unshift(a),n.unshift(a.key),a=a.parent;return{treeNodePath:t,keyPath:n,treeNode:l}},getCheckedKeys:function(e,l){var t=new Set(e),a=new Set;if(!l.cascade)return{checkedKeys:e,indeterminateKeys:[]};function r(e){if(!e.children||0===e.children.length)return{allChecked:t.has(e.key),someChecked:t.has(e.key)};var l,n=!0,u=!1,o=j(e.children);try{for(o.s();!(l=o.n()).done;){var i=r(l.value);i.allChecked||(n=!1),i.someChecked&&(u=!0)}}catch(e){o.e(e)}finally{o.f()}var c=t.has(e.key);return n?(t.add(e.key),{allChecked:!0,someChecked:!0}):u||c?(a.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return n.forEach(function(e){return r(e)}),{checkedKeys:Array.from(t),indeterminateKeys:Array.from(a)}},check:function(e,l,t){var n=r(e);if(!n)return{checkedKeys:l};var a=new Set(l);return a.add(e),t.cascade&&n.children&&u(n).slice(1).forEach(function(e){return a.add(e)}),{checkedKeys:Array.from(a)}},uncheck:function(e,l,t){var n=r(e);if(!n)return{checkedKeys:l};var a=new Set(l);return a.delete(e),t.cascade&&n.children&&u(n).slice(1).forEach(function(e){return a.delete(e)}),{checkedKeys:Array.from(a)}},getPrev:function(e,l){var t=o.findIndex(function(l){return l.key===e});return-1===t?null:0===t?l.loop?o[o.length-1]:null:o[t-1]},getNext:function(e,l){var t=o.findIndex(function(l){return l.key===e});return-1===t?null:t===o.length-1?l.loop?o[0]:null:o[t+1]},getChild:function(e){var l=r(e);return l&&l.children&&0!==l.children.length&&l.children.find(function(e){return!e.disabled})||null},getParent:function(e){var l=r(e);return(null==l?void 0:l.parent)||null},getFirstAvailableNode:function(){return o[0]||null}}}function Z(e){return e?e.map(function(e){return e.rawNode}):null}function ee(e,l,t){for(var n=[];e;)n.push(e.rawNode[t]),e=e.parent;return n.reverse().join(l)}W.__scopeId="data-v-097326a4",W.__file="packages/components/src/cascader/CascaderMenu.vue";var le=["onClick","onMouseenter"],te={class:"base-cascader-select-option__label"},ne={key:0,class:"base-cascader-select-menu__empty"},ae={key:1,class:"base-cascader-select-menu__virtual"},re=["onClick","onMouseenter"],ue={class:"base-cascader-select-option__label"},oe={key:1,class:"base-cascader-select-menu__empty"},ie=e({__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,v){var _=v.expose,w=e,S=l("cascaderContext"),N=h(null),A=h(null),L=t(function(){return function(e,l,t,n){var a=[],r=[];return function e(u){var o,i=j(u);try{for(i.s();!(o=i.n()).done;){var c=o.value;if(!c.disabled){var d=c.rawNode;r.push(d),!c.isLeaf&&l||a.push({label:ee(c,n,t),value:c.key,rawNode:c.rawNode,path:Array.from(r)}),!c.isLeaf&&c.children&&e(c.children),r.pop()}}}catch(e){i.e(e)}finally{i.f()}}(e),a}(w.tmNodes,"child"===S.value.checkStrategy,w.labelField,w.separator)}),M=t(function(){return w.filter?w.filter:function(e,l,t){return t.some(function(l){return l[w.labelField]&&l[w.labelField].toLowerCase().includes(e.toLowerCase())})}}),O=t(function(){return w.pattern?L.value.filter(function(e){return M.value(w.pattern,e.rawNode,e.path)}):L.value});function $(e){return w.multiple&&Array.isArray(w.value)?w.value.includes(e):w.value===e}function z(e){var l=S.value;w.multiple?$(e.value)?l.doUncheck(e.value):l.doCheck(e.value):(l.doCheck(e.value),l.clearPattern(),l.closeMenu())}return _({prev:function(){var e=O.value.findIndex(function(e){return e.value===A.value});e>0?A.value=O.value[e-1].value:O.value.length>0&&(A.value=O.value[O.value.length-1].value)},next:function(){var e=O.value.findIndex(function(e){return e.value===A.value});e<O.value.length-1?A.value=O.value[e+1].value:O.value.length>0&&(A.value=O.value[0].value)},enter:function(){if(null!==A.value){var e=O.value.find(function(e){return e.value===A.value});if(e)return z(e),!0}return!1}}),function(l,t){return n(),u(m,{name:"el-zoom-in-top",persisted:""},{default:p(function(){return[g(d("div",{ref_key:"selectMenuRef",ref:N,class:"base-cascader-select-menu",onClick:t[2]||(t[2]=i(function(){},["stop"]))},[!e.virtualScroll||O.value.length<50?(n(),u(o(q),{key:0,"max-height":"280px"},{default:p(function(){return[(n(!0),a(b,null,k(O.value,function(l){return n(),a("div",{key:l.value,class:r(["base-cascader-select-option",{"is-selected":$(l.value),"is-hover":A.value===l.value}]),onClick:function(e){return z(l)},onMouseenter:function(e){return A.value=l.value}},[e.multiple?(n(),u(o(K),{key:0,"model-value":$(l.value),class:"base-cascader-select-option__checkbox",onClick:t[0]||(t[0]=i(function(){},["stop"]))},null,8,["model-value"])):c("v-if",!0),d("span",te,f(l.label),1),!e.multiple&&$(l.value)?(n(),u(o(x),{key:1,class:"check-icon"},{default:p(function(){return[y(o(B))]}),_:1})):c("v-if",!0)],42,le)}),128)),0===O.value.length?(n(),a("div",ne,[s(l.$slots,"not-found",{},function(){return[y(o(P),{"image-size":60,description:"无匹配数据"})]})])):c("v-if",!0)]}),_:3})):(n(),a("div",ae,[O.value.length>0?(n(),u(o(q),{key:0,"max-height":"280px"},{default:p(function(){return[y(o(F),{items:O.value,"item-size":e.optionHeight,style:{height:"280px"}},{default:p(function(l){var s=l.item;return[(n(),a("div",{key:s.value,class:r(["base-cascader-select-option",{"is-selected":$(s.value),"is-hover":A.value===s.value}]),onClick:function(e){return z(s)},onMouseenter:function(e){return A.value=s.value}},[e.multiple?(n(),u(o(K),{key:0,"model-value":$(s.value),class:"base-cascader-select-option__checkbox",onClick:t[1]||(t[1]=i(function(){},["stop"]))},null,8,["model-value"])):c("v-if",!0),d("span",ue,f(s.label),1),!e.multiple&&$(s.value)?(n(),u(o(x),{key:1,class:"check-icon"},{default:p(function(){return[y(o(B))]}),_:1})):c("v-if",!0)],42,re))]}),_:1},8,["items","item-size"])]}),_:1})):(n(),a("div",oe,[s(l.$slots,"not-found",{},function(){return[y(o(P),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[C,e.show]])]}),_:3})}}});ie.__scopeId="data-v-3901f6ec",ie.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var ce={class:"base-cascader-dropdown"},de=e(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(e,l){var i=l.expose,c=l.emit,v=e,f=c,m=h(null),g=h(null),b=h(null),k=h(v.modelValue),_=h(""),C=h(!1),K=h(null),x=h(null),q=h(new Set),P=t(function(){return v.disabled});t(function(){return q.value.size>0});var F=t(function(){return Y(v.options,{getKey:function(e){return e[v.valueField]},getChildren:function(e){return e[v.childrenField]},getDisabled:function(e){return e[v.disabledField]||!1}})}),L=t(function(){var e;return v.multiple&&Array.isArray(k.value)?(e=v.emitPath?0===k.value.length?[]:Array.isArray(k.value[0])?k.value.map(function(e){return e[e.length-1]}):k.value:k.value,F.value.getCheckedKeys(e,{cascade:v.cascade,checkStrategy:v.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),M=t(function(){return L.value.checkedKeys}),B=t(function(){return L.value.indeterminateKeys}),O=t(function(){var e,l=F.value.getPath(x.value),t=l.treeNodePath,n=l.treeNode;return null===n?e=[F.value.treeNodes]:(e=t.map(function(e){return e.siblings}),n.isLeaf||q.value.has(n.key)||!n.children||e.push(n.children)),e}),$=t(function(){return F.value.getPath(x.value).keyPath}),j=t(function(){return void 0!==v.showCheckbox?v.showCheckbox:!(!v.multiple||!v.cascade)||"child"!==v.checkStrategy}),z=t(function(){return!(!v.filterable||!_.value)}),T=t(function(){if(v.multiple){var e=F.value,l=e.getCheckedKeys,t=e.getNode;return l(M.value,{cascade:v.cascade,checkStrategy:v.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var l=t(e);return null===l?{label:String(e),value:e}:{label:v.showPath?ee(l,v.separator,v.labelField):l.rawNode[v.labelField],value:l.key}})}return[]}),I=t(function(){if(!v.multiple){var e=F.value.getNode;if(null===k.value)return null;var l=null;if(v.emitPath&&Array.isArray(k.value)){if(0===k.value.length)return null;var t=k.value[k.value.length-1];l=Array.isArray(t)?null:t}else Array.isArray(k.value)||(l=k.value);if(null==l)return null;var n=e(l);return null===n?{label:String(l),value:l}:{label:v.showPath?ee(n,v.separator,v.labelField):n.rawNode[v.labelField],value:n.key}}return null}),D=t({get:function(){var e;return v.multiple?T.value.map(function(e){return e.label}):(null===(e=I.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function E(e,l,t){k.value=e,f("update:modelValue",e),f("change",e,l,t)}function V(e){var l=F.value.getNode;return e.map(function(e){var t;return(null===(t=l(e))||void 0===t?void 0:t.rawNode)||null})}function H(e){var l=v.cascade,t=v.multiple,n=v.checkStrategy,a=v.emitPath,r=F.value,u=r.check,o=r.getNode,i=r.getPath;if(t){var c=u(e,L.value.checkedKeys,{cascade:l,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;E(a?c.map(function(e){return i(e).keyPath}):c,V(c),c.map(function(e){var l;return Z(null===(l=i(e))||void 0===l?void 0:l.treeNodePath)})),K.value=e,x.value=e}else if("child"===n){var d=o(e);if(null==d||!d.isLeaf)return!1;var s=i(e);E(a?s.keyPath:e,d.rawNode,Z(s.treeNodePath)),te()}else{var f=o(e),p=i(e);E(a?p.keyPath:e,(null==f?void 0:f.rawNode)||null,Z(null==p?void 0:p.treeNodePath)),te()}return!0}function R(e){var l=v.cascade,t=v.multiple,n=v.checkStrategy,a=v.emitPath;if(t){var r=F.value,u=r.uncheck,o=r.getNode,i=r.getPath,c=u(e,L.value.checkedKeys,{cascade:l,checkStrategy:n,allowNotLoaded:!1}).checkedKeys;E(a?c.map(function(e){return i(e).keyPath}):c,c.map(function(e){var l;return(null===(l=o(e))||void 0===l?void 0:l.rawNode)||null}),c.map(function(e){var l;return Z(null===(l=i(e))||void 0===l?void 0:l.treeNodePath)})),K.value=e,x.value=e}}function U(e){x.value=e}function X(e){K.value=e}function G(e){q.value.add(e)}function J(e){q.value.delete(e)}function Q(){var e,l,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(C.value=!1,_.value="",t)?null===(e=m.value)||void 0===e||e.focus():null===(l=m.value)||void 0===l||l.blur()}function le(){v.clearFilterAfterSelect&&(_.value="")}function te(){_.value="",setTimeout(function(){if(m.value&&void 0!==m.value.query){var e;m.value.query="";var l=null===(e=m.value.$el)||void 0===e?void 0:e.querySelector("input");l&&I.value&&(l.value=I.value.label)}},0)}function ne(){P.value||C.value||(C.value=!0)}function ae(e){C.value=e,e||(_.value="")}function re(){v.multiple?E([],[],[]):E(null,null,null)}function ue(e){var l=T.value.find(function(l){return l.label===e});l&&R(l.value)}function oe(e){_.value=e}function de(e){f("focus",e)}function se(e){f("blur",e)}function ve(e){f("focus",e)}function fe(e){f("blur",e)}function pe(e){he(e)}function ye(e){e.preventDefault()}function he(e){if(C.value)switch(e.key){case"Enter":var l;if(z.value)null===(l=b.value)||void 0===l||l.enter();else if(null!==K.value)if(M.value.includes(K.value)||B.value.includes(K.value))R(K.value);else{var t=H(K.value);!v.multiple&&t&&Q(!0)}break;case"ArrowUp":var n;if(e.preventDefault(),z.value)null===(n=b.value)||void 0===n||n.prev();else me("prev");break;case"ArrowDown":var a;if(e.preventDefault(),z.value)null===(a=b.value)||void 0===a||a.next();else me("next");break;case"ArrowLeft":e.preventDefault(),z.value||me("parent");break;case"ArrowRight":e.preventDefault(),z.value||me("child");break;case"Escape":Q(!0)}}function me(e){var l=K.value,t=F.value,n=t.getPrev,a=t.getNext,r=t.getChild,u=t.getParent,o=t.getFirstAvailableNode,i=t.getNode;switch(e){case"prev":if(null!==l){var c=n(l,{loop:!0});c&&X(c.key)}break;case"next":if(null===l){var d=o();d&&X(d.key)}else{var s=a(l,{loop:!0});s&&X(s.key)}break;case"child":if(null!==l){var f=i(l);if(null!=f&&f.shallowLoaded){var p=r(l);p&&(U(l),X(p.key))}else f&&!q.value.has(l)&&v.onLoad&&(G(l),U(l),v.onLoad(f.rawNode).then(function(){return J(l)}).catch(function(){return J(l)}))}break;case"parent":if(null!==l){var y=u(l);if(y){X(y.key);var h=u(y.key);U((null==h?void 0:h.key)||null)}}}}S(function(){return v.modelValue},function(e){k.value=e}),S(C,function(e){if(!e)return K.value=null,void(x.value=null);if(v.multiple)K.value=null,x.value=null;else{var l=null;if(v.emitPath&&Array.isArray(k.value)&&k.value.length>0){var t=k.value[k.value.length-1];l=Array.isArray(t)?null:t}else Array.isArray(k.value)||null===k.value||(l=k.value);if(null!==l){var n=F.value.getNode(l);if(n){var a=n.parent;a?(K.value=a.key,x.value=a.key):(K.value=l,x.value=l)}}else K.value=null,x.value=null}});var ge=t(function(){return{mergedValue:k.value,checkedKeys:M.value,indeterminateKeys:B.value,hoverKeyPath:$.value,keyboardKey:K.value,hoverKey:x.value,loadingKeySet:q.value,multiple:v.multiple,cascade:v.cascade,checkStrategy:v.checkStrategy,expandTrigger:v.expandTrigger,remote:v.remote,showCheckbox:j.value,labelField:v.labelField,valueField:v.valueField,childrenField:v.childrenField,disabledField:v.disabledField,onLoad:v.onLoad,updateHoverKey:U,updateKeyboardKey:X,addLoadingKey:G,deleteLoadingKey:J,doCheck:H,doUncheck:R,closeMenu:Q,clearPattern:le}});return N("cascaderContext",ge),i({focus:function(){var e;null===(e=m.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=m.value)||void 0===e||e.blur()},getCheckedData:function(){return j.value?{keys:M.value,options:V(M.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return j.value?{keys:B.value,options:V(B.value)}:{keys:[],options:[]}}}),function(l,t){return n(),a("div",{class:r(["base-cascader",{"is-disabled":P.value}])},[y(o(A),{ref_key:"selectRef",ref:m,modelValue:D.value,"onUpdate:modelValue":t[0]||(t[0]=function(e){return D.value=e}),placeholder:e.placeholder,disabled:P.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":oe,"popper-class":"base-cascader-popper ".concat(e.popperClass||""),"automatic-dropdown":"",onVisibleChange:ae,onClear:re,onRemoveTag:ue,onFocus:de,onBlur:se,onKeydown:he,onClick:ne},{empty:p(function(){return[d("div",ce,[z.value?(n(),u(ie,{key:0,ref_key:"selectMenuRef",ref:b,show:C.value&&z.value,pattern:_.value,multiple:e.multiple,"tm-nodes":F.value.treeNodes,filter:e.filter,"label-field":e.labelField,separator:e.separator,value:k.value,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},w({_:2},[l.$slots["not-found"]?{name:"not-found",fn:p(function(){return[s(l.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(n(),u(W,{key:1,ref_key:"cascaderMenuRef",ref:g,show:C.value&&!z.value,"menu-model":O.value,"get-column-style":e.getColumnStyle,"on-focus":ve,"on-blur":fe,"on-keydown":pe,"on-mousedown":ye,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},w({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var t=e.option,n=e.checked;return[s(l.$slots,"label",{option:t,checked:n})]}),key:"0"}:void 0,l.$slots.empty?{name:"empty",fn:p(function(){return[s(l.$slots,"empty")]}),key:"1"}:void 0,l.$slots.action?{name:"action",fn:p(function(){return[s(l.$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)}}}));de.__scopeId="data-v-243e9ed1",de.__file="packages/components/src/cascader/index.vue";var se=de;se.install=function(e){de.name&&e.component(de.name,de)};var ve={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}},fe={class:"custom-tag__content"},pe=e(I(I({},{name:"XnTag"}),{},{__name:"index",props:ve,emits:["close"],setup:function(e,l){l.emit;var u=e,o=t(function(){return["custom-tag--".concat(u.size),{"custom-tag--plain":u.plain,"custom-tag--round":u.round,"custom-tag--no-border":!u.border}]}),i=t(function(){var e=O.getOption(u.type)||{},l={};return u.color?(l.color=u.color,u.plain?(l.backgroundColor="transparent",l.borderColor=u.color):(l.backgroundColor=u.bgColor||"".concat(u.color,"15"),l.borderColor=u.bgColor||"".concat(u.color,"30"))):u.bgColor?(l.backgroundColor=u.bgColor,l.borderColor=u.bgColor):u.plain?(l.color=e.color,l.backgroundColor="transparent",l.borderColor=e.color):(l.color=e.color,l.backgroundColor=e.bgColor,l.borderColor=e.borderColor),l}),v=t(function(){return u.dotColor?{backgroundColor:u.dotColor}:{}});return function(e,l){return n(),a("span",{class:r(["custom-tag",o.value]),style:_(i.value)},[c(" 前缀插槽 "),s(e.$slots,"prefix",{},function(){return[e.dot?(n(),a("span",{key:0,class:"custom-tag__dot",style:_(v.value)},null,4)):e.icon?(n(),a("i",{key:1,class:r([e.icon,"custom-tag__icon"])},null,2)):c("v-if",!0)]}),c(" 内容 "),d("span",fe,[s(e.$slots,"default")]),c(" 后缀插槽 "),s(e.$slots,"suffix")],6)}}}));pe.__scopeId="data-v-6a58d386",pe.__file="packages/components/src/tag/index.vue";var ye=pe;ye.install=function(e){pe.name&&e.component(pe.name,pe)};var he={XnCascader:se,XnTag:ye},me={install:function(e){Object.values(he).forEach(function(l){l.name&&e.component(l.name,l)})}};export{se as XnCascader,ye as XnTag,he as components,me as default};
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("element-plus"),require("vueuc"),require("@element-plus/icons-vue"),require("@xn-lib/core")):"function"==typeof define&&define.amd?define(["exports","vue","element-plus","vueuc","@element-plus/icons-vue","@xn-lib/core"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@xn-lib/component"]=e["@xn-lib/component"]||{},e.Vue,e.ElementPlus,e.vueuc,e.ElementPlusIconsVue,e.core)}(this,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"},q=["onClick","onMouseenter"],K={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",K,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,q))]}),_: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}),q=t.computed(function(){return!(!o.filterable||!v.value)}),K=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?K.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 j(e){m.value=e}function $(e){p.value=e}function T(e){y.value.add(e)}function I(e){y.value.delete(e)}function D(){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=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(b.value.includes(p.value)||B.value.includes(p.value))O(p.value);else{var l=z(p.value);!o.multiple&&l&&D(!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":D(!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&&$(d.key)}break;case"next":if(null===t){var s=c();s&&$(s.key)}else{var v=r(t,{loop:!0});v&&$(v.key)}break;case"child":if(null!==t){var f=i(t);if(null!=f&&f.shallowLoaded){var m=a(t);m&&(j(t),$(m.key))}else f&&!y.value.has(t)&&o.onLoad&&(T(t),j(t),o.onLoad(f.rawNode).then(function(){return I(t)}).catch(function(){return I(t)}))}break;case"parent":if(null!==t){var h=u(t);if(h){$(h.key);var g=u(h.key);j((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:j,updateKeyboardKey:$,addLoadingKey:T,deleteLoadingKey:I,doCheck:z,doUncheck:O,closeMenu:D,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,[q.value?(t.openBlock(),t.createBlock(V,{key:0,ref_key:"selectMenuRef",ref:d,show:f.value&&q.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&&!q.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(d(d({},{name:"XnTag"}),{},{__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 j=O;j.install=function(e){O.name&&e.component(O.name,O)};var $={XnCascader:L,XnTag:j},T={install:function(e){Object.values($).forEach(function(t){t.name&&e.component(t.name,t)})}};e.XnCascader=L,e.XnTag=j,e.components=$,e.default=T,Object.defineProperty(e,"__esModule",{value:!0})});