@xn-lib/component 0.0.18 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +256 -8
- package/dist/index.iife.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.umd.js +1 -1
- package/package.json +3 -3
- package/dist/types/cascader/CascaderMenu.vue.d.ts +0 -45
- package/dist/types/cascader/CascaderOption.vue.d.ts +0 -20
- package/dist/types/cascader/CascaderSelectMenu.vue.d.ts +0 -38
- package/dist/types/cascader/index.d.ts +0 -6
- package/dist/types/cascader/index.vue.d.ts +0 -90
- package/dist/types/cascader/props.d.ts +0 -119
- package/dist/types/cascader/types.d.ts +0 -69
- package/dist/types/cascader/utils.d.ts +0 -53
- package/dist/types/index.d.ts +0 -9
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defineComponent as e,inject as l,computed as n,openBlock as a,createElementBlock as t,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 b,Fragment as g,renderList as k,normalizeStyle as w,createSlots as _,vShow as C,watch as N,provide as S}from"vue";import{ElCheckbox as K,ElIcon as q,ElScrollbar as P,ElEmpty as x,ElSelect as A}from"element-plus";import{VirtualList as F}from"vueuc";import{Loading as L,ArrowRight as M,Check as O}from"@element-plus/icons-vue";function $(e,l){(null==l||l>e.length)&&(l=e.length);for(var n=0,a=Array(l);n<l;n++)a[n]=e[n];return a}function j(e,l){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=I(e))||l&&e&&"number"==typeof e.length){n&&(e=n);var a=0,t=function(){};return{s:t,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:t}}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(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){o=!0,r=e},f:function(){try{u||null==n.return||n.return()}finally{if(o)throw r}}}}function B(e,l,n){return(l=function(e){var l=function(e,l){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,l||"default");if("object"!=typeof a)return a;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:n,enumerable:!0,configurable:!0,writable:!0}):e[l]=n,e}function z(e,l){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);l&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,a)}return n}function D(e){for(var l=1;l<arguments.length;l++){var n=null!=arguments[l]?arguments[l]:{};l%2?z(Object(n),!0).forEach(function(l){B(e,l,n[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):z(Object(n)).forEach(function(l){Object.defineProperty(e,l,Object.getOwnPropertyDescriptor(n,l))})}return e}function E(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)||I(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,l){if(e){if("string"==typeof e)return $(e,l);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$(e,l):void 0}}var T=["title"],V={class:"base-cascader-option__suffix"},H=e({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(e){var h=e,m=l("cascaderContext"),b=n(function(){return h.tmNode.key}),g=n(function(){return h.tmNode.rawNode[m.value.labelField]}),k=n(function(){return h.tmNode.disabled}),w=n(function(){return h.tmNode.isLeaf}),_=n(function(){return m.value.loadingKeySet.has(b.value)}),C=n(function(){return!m.value.remote&&"hover"===m.value.expandTrigger}),N=n(function(){if(!m.value.multiple){var e=m.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===b.value:e===b.value}return m.value.checkedKeys.includes(b.value)}),S=n(function(){return!!m.value.multiple&&m.value.indeterminateKeys.includes(b.value)}),P=n(function(){return m.value.hoverKeyPath.includes(b.value)}),x=n(function(){return m.value.keyboardKey===b.value}),A=n(function(){if(N.value||P.value)return!0;if(!m.value.multiple){var e=m.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(b.value)}return!1}),F=n(function(){return m.value.showCheckbox}),$=n(function(){return m.value.checkStrategy}),j=n(function(){return m.value.multiple}),B=n(function(){return m.value.cascade}),z=n(function(){return!!N.value&&(j.value?!F.value:"child"===$.value&&!(j.value&&B.value))});function D(e){if(!k.value&&!e.target.closest(".base-cascader-option__checkbox")){var l=m.value;l.updateHoverKey(b.value),l.updateKeyboardKey(b.value),l.remote&&!h.tmNode.shallowLoaded&&!_.value&&l.onLoad&&(l.addLoadingKey(b.value),l.onLoad(h.tmNode.rawNode).then(function(){l.deleteLoadingKey(b.value)}).catch(function(){l.deleteLoadingKey(b.value)})),l.multiple,w.value&&R()}}function E(){if(C.value&&!k.value){var e=m.value;e.updateHoverKey(b.value),e.updateKeyboardKey(b.value),e.remote&&!h.tmNode.shallowLoaded&&!_.value&&e.onLoad&&(e.addLoadingKey(b.value),e.onLoad(h.tmNode.rawNode).then(function(){e.deleteLoadingKey(b.value)}).catch(function(){e.deleteLoadingKey(b.value)}))}}function I(){C.value&&E()}function H(){R()}function R(){var e=m.value;e.multiple?S.value||N.value?e.doUncheck(b.value):e.doCheck(b.value):(e.doCheck(b.value),!e.showCheckbox&&w.value&&e.closeMenu(!1))}return function(l,n){return a(),t("div",{class:r(["base-cascader-option",{"is-active":A.value,"is-disabled":k.value,"is-hover":P.value||x.value,"has-checkbox":F.value}]),onClick:D,onMouseenter:E,onMousemove:I},[F.value?(a(),u(o(K),{key:0,"model-value":N.value,indeterminate:S.value,disabled:k.value,class:"base-cascader-option__checkbox",onClick:n[0]||(n[0]=i(function(){},["stop"])),onChange:H},null,8,["model-value","indeterminate","disabled"])):c("v-if",!0),d("span",{class:"base-cascader-option__label",title:g.value},[s(l.$slots,"label",{option:e.tmNode.rawNode,checked:N.value},function(){return[v(f(g.value),1)]})],8,T),d("span",V,[_.value?(a(),u(o(q),{key:0,class:"is-loading"},{default:p(function(){return[y(o(L))]}),_:1})):w.value?z.value?(a(),u(o(q),{key:2,class:"check-icon"},{default:p(function(){return[y(o(O))]}),_:1})):c("v-if",!0):(a(),u(o(q),{key:1,class:"arrow-icon"},{default:p(function(){return[y(o(M))]}),_:1}))])],34)}}});H.__scopeId="data-v-248f99f8",H.__file="packages/components/src/cascader/CascaderOption.vue";var R={key:0,class:"base-cascader-menu__wrapper"},U={key:0,class:"base-cascader-submenu__list"},X={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},G={key:1,class:"base-cascader-menu__empty"},J={key:2,class:"base-cascader-menu__action"},Q=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 n=l.expose,r=e,v=h(null);function f(e){v.value&&(v.value.contains(e.relatedTarget)||r.onFocus(e))}function N(e){v.value&&(v.value.contains(e.relatedTarget)||r.onBlur(e))}return n({scroll:function(e,l,n){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(l,n){return a(),u(m,{name:"el-zoom-in-top",persisted:""},{default:p(function(){var r;return[b(d("div",{ref_key:"menuRef",ref:v,class:"base-cascader-menu",tabindex:"0",onMousedown:n[0]||(n[0]=function(){return e.onMousedown&&e.onMousedown.apply(e,arguments)}),onKeydown:n[1]||(n[1]=function(){return e.onKeydown&&e.onKeydown.apply(e,arguments)}),onFocusin:f,onFocusout:N,onClick:n[2]||(n[2]=i(function(){},["stop"]))},[null!==(r=e.menuModel[0])&&void 0!==r&&r.length?(a(),t("div",R,[(a(!0),t(g,null,k(e.menuModel,function(n,r){var i;return a(),t("div",{key:r,class:"base-cascader-submenu",style:w(null===(i=e.getColumnStyle)||void 0===i?void 0:i.call(e,{level:r}))},[!e.virtualScroll||n.length<50?(a(),t("div",U,[y(o(P),null,{default:p(function(){return[(a(!0),t(g,null,k(n,function(e){return a(),u(H,{key:e.key,"tm-node":e},_({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var n=e.option,a=e.checked;return[s(l.$slots,"label",{option:n,checked:a})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(a(),t("div",X,[y(o(F),{items:n,"item-size":e.optionHeight,style:{height:"280px"}},{default:p(function(e){var n=e.item;return[(a(),u(H,{key:n.key,"tm-node":n},_({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var n=e.option,a=e.checked;return[s(l.$slots,"label",{option:n,checked:a})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(a(),t("div",G,[s(l.$slots,"empty",{},function(){return[y(o(x),{"image-size":60,description:"暂无数据"})]})])),l.$slots.action?(a(),t("div",J,[s(l.$slots,"action")])):c("v-if",!0)],544),[[C,e.show]])]}),_:3})}}});function W(e,l){var n=new Map,a=[];var t=function e(a,t,r){var u=[];return a.map(function(a,o){var i=l.getKey(a),c=l.getChildren(a),d=l.getDisabled(a),s=void 0!==a.isLeaf?a.isLeaf:!c||0===c.length,v=s||void 0!==c&&c.length>0,f={key:i,rawNode:a,level:t,index:o,isLeaf:s,isGroup:!1,ignored:!1,disabled:d,shallowLoaded:v,parent:r,siblings:u,children:void 0};return u.push(f),n.set(i,f),c&&c.length>0&&(f.children=e(c,t+1,f)),f})}(e,0,null);function r(e){return n.get(e)||null}function u(e){var l=[e.key];return e.children&&e.children.forEach(function(e){l.push.apply(l,E(u(e)))}),l}a.push.apply(a,E(t));var o=function e(l){var n=[];return l.forEach(function(l){l.disabled||(n.push(l),l.children&&n.push.apply(n,E(e(l.children))))}),n}(a);return{treeNodes:a,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 n=[],a=[],t=l;t;)n.unshift(t),a.unshift(t.key),t=t.parent;return{treeNodePath:n,keyPath:a,treeNode:l}},getCheckedKeys:function(e,l){var n=new Set(e),t=new Set;if(!l.cascade)return{checkedKeys:e,indeterminateKeys:[]};function r(e){if(!e.children||0===e.children.length)return{allChecked:n.has(e.key),someChecked:n.has(e.key)};var l,a=!0,u=!1,o=j(e.children);try{for(o.s();!(l=o.n()).done;){var i=r(l.value);i.allChecked||(a=!1),i.someChecked&&(u=!0)}}catch(e){o.e(e)}finally{o.f()}var c=n.has(e.key);return a?(n.add(e.key),{allChecked:!0,someChecked:!0}):u||c?(t.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return a.forEach(function(e){return r(e)}),{checkedKeys:Array.from(n),indeterminateKeys:Array.from(t)}},check:function(e,l,n){var a=r(e);if(!a)return{checkedKeys:l};var t=new Set(l);return t.add(e),n.cascade&&a.children&&u(a).slice(1).forEach(function(e){return t.add(e)}),{checkedKeys:Array.from(t)}},uncheck:function(e,l,n){var a=r(e);if(!a)return{checkedKeys:l};var t=new Set(l);return t.delete(e),n.cascade&&a.children&&u(a).slice(1).forEach(function(e){return t.delete(e)}),{checkedKeys:Array.from(t)}},getPrev:function(e,l){var n=o.findIndex(function(l){return l.key===e});return-1===n?null:0===n?l.loop?o[o.length-1]:null:o[n-1]},getNext:function(e,l){var n=o.findIndex(function(l){return l.key===e});return-1===n?null:n===o.length-1?l.loop?o[0]:null:o[n+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 Y(e){return e?e.map(function(e){return e.rawNode}):null}function Z(e,l,n){for(var a=[];e;)a.push(e.rawNode[n]),e=e.parent;return a.reverse().join(l)}Q.__scopeId="data-v-097326a4",Q.__file="packages/components/src/cascader/CascaderMenu.vue";var ee=["onClick","onMouseenter"],le={class:"base-cascader-select-option__label"},ne={key:0,class:"base-cascader-select-menu__empty"},ae={key:1,class:"base-cascader-select-menu__virtual"},te=["onClick","onMouseenter"],re={class:"base-cascader-select-option__label"},ue={key:1,class:"base-cascader-select-menu__empty"},oe=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 w=v.expose,_=e,N=l("cascaderContext"),S=h(null),A=h(null),L=n(function(){return function(e,l,n,a){var t=[],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||t.push({label:Z(c,a,n),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),t}(_.tmNodes,"child"===N.value.checkStrategy,_.labelField,_.separator)}),M=n(function(){return _.filter?_.filter:function(e,l,n){return n.some(function(l){return l[_.labelField]&&l[_.labelField].toLowerCase().includes(e.toLowerCase())})}}),$=n(function(){return _.pattern?L.value.filter(function(e){return M.value(_.pattern,e.rawNode,e.path)}):L.value});function B(e){return _.multiple&&Array.isArray(_.value)?_.value.includes(e):_.value===e}function z(e){var l=N.value;_.multiple?B(e.value)?l.doUncheck(e.value):l.doCheck(e.value):(l.doCheck(e.value),l.clearPattern(),l.closeMenu())}return w({prev:function(){var e=$.value.findIndex(function(e){return e.value===A.value});e>0?A.value=$.value[e-1].value:$.value.length>0&&(A.value=$.value[$.value.length-1].value)},next:function(){var e=$.value.findIndex(function(e){return e.value===A.value});e<$.value.length-1?A.value=$.value[e+1].value:$.value.length>0&&(A.value=$.value[0].value)},enter:function(){if(null!==A.value){var e=$.value.find(function(e){return e.value===A.value});if(e)return z(e),!0}return!1}}),function(l,n){return a(),u(m,{name:"el-zoom-in-top",persisted:""},{default:p(function(){return[b(d("div",{ref_key:"selectMenuRef",ref:S,class:"base-cascader-select-menu",onClick:n[2]||(n[2]=i(function(){},["stop"]))},[!e.virtualScroll||$.value.length<50?(a(),u(o(P),{key:0,"max-height":"280px"},{default:p(function(){return[(a(!0),t(g,null,k($.value,function(l){return a(),t("div",{key:l.value,class:r(["base-cascader-select-option",{"is-selected":B(l.value),"is-hover":A.value===l.value}]),onClick:function(e){return z(l)},onMouseenter:function(e){return A.value=l.value}},[e.multiple?(a(),u(o(K),{key:0,"model-value":B(l.value),class:"base-cascader-select-option__checkbox",onClick:n[0]||(n[0]=i(function(){},["stop"]))},null,8,["model-value"])):c("v-if",!0),d("span",le,f(l.label),1),!e.multiple&&B(l.value)?(a(),u(o(q),{key:1,class:"check-icon"},{default:p(function(){return[y(o(O))]}),_:1})):c("v-if",!0)],42,ee)}),128)),0===$.value.length?(a(),t("div",ne,[s(l.$slots,"not-found",{},function(){return[y(o(x),{"image-size":60,description:"无匹配数据"})]})])):c("v-if",!0)]}),_:3})):(a(),t("div",ae,[$.value.length>0?(a(),u(o(P),{key:0,"max-height":"280px"},{default:p(function(){return[y(o(F),{items:$.value,"item-size":e.optionHeight,style:{height:"280px"}},{default:p(function(l){var s=l.item;return[(a(),t("div",{key:s.value,class:r(["base-cascader-select-option",{"is-selected":B(s.value),"is-hover":A.value===s.value}]),onClick:function(e){return z(s)},onMouseenter:function(e){return A.value=s.value}},[e.multiple?(a(),u(o(K),{key:0,"model-value":B(s.value),class:"base-cascader-select-option__checkbox",onClick:n[1]||(n[1]=i(function(){},["stop"]))},null,8,["model-value"])):c("v-if",!0),d("span",re,f(s.label),1),!e.multiple&&B(s.value)?(a(),u(o(q),{key:1,class:"check-icon"},{default:p(function(){return[y(o(O))]}),_:1})):c("v-if",!0)],42,te))]}),_:1},8,["items","item-size"])]}),_:1})):(a(),t("div",ue,[s(l.$slots,"not-found",{},function(){return[y(o(x),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[C,e.show]])]}),_:3})}}});oe.__scopeId="data-v-3901f6ec",oe.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var ie={class:"base-cascader-dropdown"},ce=e(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,l){var i=l.expose,c=l.emit,v=e,f=c,m=h(null),b=h(null),g=h(null),k=h(v.modelValue),w=h(""),C=h(!1),K=h(null),q=h(null),P=h(new Set),x=n(function(){return v.disabled});n(function(){return P.value.size>0});var F=n(function(){return W(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=n(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=n(function(){return L.value.checkedKeys}),O=n(function(){return L.value.indeterminateKeys}),$=n(function(){var e,l=F.value.getPath(q.value),n=l.treeNodePath,a=l.treeNode;return null===a?e=[F.value.treeNodes]:(e=n.map(function(e){return e.siblings}),a.isLeaf||P.value.has(a.key)||!a.children||e.push(a.children)),e}),j=n(function(){return F.value.getPath(q.value).keyPath}),B=n(function(){return void 0!==v.showCheckbox?v.showCheckbox:!(!v.multiple||!v.cascade)||"child"!==v.checkStrategy}),z=n(function(){return!(!v.filterable||!w.value)}),D=n(function(){if(v.multiple){var e=F.value,l=e.getCheckedKeys,n=e.getNode;return l(M.value,{cascade:v.cascade,checkStrategy:v.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var l=n(e);return null===l?{label:String(e),value:e}:{label:v.showPath?Z(l,v.separator,v.labelField):l.rawNode[v.labelField],value:l.key}})}return[]}),E=n(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 n=k.value[k.value.length-1];l=Array.isArray(n)?null:n}else Array.isArray(k.value)||(l=k.value);if(null==l)return null;var a=e(l);return null===a?{label:String(l),value:l}:{label:v.showPath?Z(a,v.separator,v.labelField):a.rawNode[v.labelField],value:a.key}}return null}),I=n({get:function(){var e;return v.multiple?D.value.map(function(e){return e.label}):(null===(e=E.value)||void 0===e?void 0:e.label)||""},set:function(e){}});function T(e,l,n){k.value=e,f("update:modelValue",e),f("change",e,l,n)}function V(e){var l=F.value.getNode;return e.map(function(e){var n;return(null===(n=l(e))||void 0===n?void 0:n.rawNode)||null})}function H(e){var l=v.cascade,n=v.multiple,a=v.checkStrategy,t=v.emitPath,r=F.value,u=r.check,o=r.getNode,i=r.getPath;if(n){var c=u(e,L.value.checkedKeys,{cascade:l,checkStrategy:a,allowNotLoaded:!1}).checkedKeys;T(t?c.map(function(e){return i(e).keyPath}):c,V(c),c.map(function(e){var l;return Y(null===(l=i(e))||void 0===l?void 0:l.treeNodePath)})),K.value=e,q.value=e}else if("child"===a){var d=o(e);if(null==d||!d.isLeaf)return!1;var s=i(e);T(t?s.keyPath:e,d.rawNode,Y(s.treeNodePath)),ne()}else{var f=o(e),p=i(e);T(t?p.keyPath:e,(null==f?void 0:f.rawNode)||null,Y(null==p?void 0:p.treeNodePath)),ne()}return!0}function R(e){var l=v.cascade,n=v.multiple,a=v.checkStrategy,t=v.emitPath;if(n){var r=F.value,u=r.uncheck,o=r.getNode,i=r.getPath,c=u(e,L.value.checkedKeys,{cascade:l,checkStrategy:a,allowNotLoaded:!1}).checkedKeys;T(t?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 Y(null===(l=i(e))||void 0===l?void 0:l.treeNodePath)})),K.value=e,q.value=e}}function U(e){q.value=e}function X(e){K.value=e}function G(e){P.value.add(e)}function J(e){P.value.delete(e)}function ee(){var e,l,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(C.value=!1,w.value="",n)?null===(e=m.value)||void 0===e||e.focus():null===(l=m.value)||void 0===l||l.blur()}function le(){v.clearFilterAfterSelect&&(w.value="")}function ne(){w.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&&E.value&&(l.value=E.value.label)}},0)}function ae(){x.value||C.value||(C.value=!0)}function te(e){C.value=e,e||(w.value="")}function re(){v.multiple?T([],[],[]):T(null,null,null)}function ue(e){var l=D.value.find(function(l){return l.label===e});l&&R(l.value)}function ce(e){w.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=g.value)||void 0===l||l.enter();else if(null!==K.value)if(M.value.includes(K.value)||O.value.includes(K.value))R(K.value);else{var n=H(K.value);!v.multiple&&n&&ee(!0)}break;case"ArrowUp":var a;if(e.preventDefault(),z.value)null===(a=g.value)||void 0===a||a.prev();else me("prev");break;case"ArrowDown":var t;if(e.preventDefault(),z.value)null===(t=g.value)||void 0===t||t.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":ee(!0)}}function me(e){var l=K.value,n=F.value,a=n.getPrev,t=n.getNext,r=n.getChild,u=n.getParent,o=n.getFirstAvailableNode,i=n.getNode;switch(e){case"prev":if(null!==l){var c=a(l,{loop:!0});c&&X(c.key)}break;case"next":if(null===l){var d=o();d&&X(d.key)}else{var s=t(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&&!P.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)}}}}N(function(){return v.modelValue},function(e){k.value=e}),N(C,function(e){if(!e)return K.value=null,void(q.value=null);if(v.multiple)K.value=null,q.value=null;else{var l=null;if(v.emitPath&&Array.isArray(k.value)&&k.value.length>0){var n=k.value[k.value.length-1];l=Array.isArray(n)?null:n}else Array.isArray(k.value)||null===k.value||(l=k.value);if(null!==l){var a=F.value.getNode(l);if(a){var t=a.parent;t?(K.value=t.key,q.value=t.key):(K.value=l,q.value=l)}}else K.value=null,q.value=null}});var be=n(function(){return{mergedValue:k.value,checkedKeys:M.value,indeterminateKeys:O.value,hoverKeyPath:j.value,keyboardKey:K.value,hoverKey:q.value,loadingKeySet:P.value,multiple:v.multiple,cascade:v.cascade,checkStrategy:v.checkStrategy,expandTrigger:v.expandTrigger,remote:v.remote,showCheckbox:B.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:ee,clearPattern:le}});return S("cascaderContext",be),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 B.value?{keys:M.value,options:V(M.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return B.value?{keys:O.value,options:V(O.value)}:{keys:[],options:[]}}}),function(l,n){return a(),t("div",{class:r(["base-cascader",{"is-disabled":x.value}])},[y(o(A),{ref_key:"selectRef",ref:m,modelValue:I.value,"onUpdate:modelValue":n[0]||(n[0]=function(e){return I.value=e}),placeholder:e.placeholder,disabled:x.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":ce,"popper-class":"base-cascader-popper ".concat(e.popperClass||""),"automatic-dropdown":"",onVisibleChange:te,onClear:re,onRemoveTag:ue,onFocus:de,onBlur:se,onKeydown:he,onClick:ae},{empty:p(function(){return[d("div",ie,[z.value?(a(),u(oe,{key:0,ref_key:"selectMenuRef",ref:g,show:C.value&&z.value,pattern:w.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},_({_: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"])):(a(),u(Q,{key:1,ref_key:"cascaderMenuRef",ref:b,show:C.value&&!z.value,"menu-model":$.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},_({_:2},[l.$slots.label?{name:"label",fn:p(function(e){var n=e.option,a=e.checked;return[s(l.$slots,"label",{option:n,checked:a})]}),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)}}}));ce.__scopeId="data-v-243e9ed1",ce.__file="packages/components/src/cascader/index.vue";var de=ce;de.install=function(e){ce.name&&e.component(ce.name,ce)};var se={XnCascader:de},ve={install:function(e){Object.values(se).forEach(function(l){l.name&&e.component(l.name,l)})}};export{de as XnCascader,se as components,ve as default};
|
|
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 I(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 T(e){for(var l=1;l<arguments.length;l++){var t=null!=arguments[l]?arguments[l]:{};l%2?I(Object(t),!0).forEach(function(l){z(e,l,t[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):I(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 I(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 T(){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&&T()}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:I,onMouseenter:T,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(T(T({},{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)}),I=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[]}),T=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?I.value.map(function(e){return e.label}):(null===(e=T.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&&T.value&&(l.value=T.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=I.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({__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};
|
package/dist/index.umd.js
CHANGED
|
@@ -1 +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")):"function"==typeof define&&define.amd?define(["exports","vue","element-plus","vueuc","@element-plus/icons-vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@xn-lib/component"]=e["@xn-lib/component"]||{},e.Vue,e.ElementPlus,e.vueuc,e.ElementPlusIconsVue)}(this,function(e,t,n,l,a){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=Array(t);n<t;n++)l[n]=e[n];return l}function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=s(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,a=function(){};return{s:a,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},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(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){o=!0,r=e},f:function(){try{u||null==n.return||n.return()}finally{if(o)throw r}}}}function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var l=n.call(e,t||"default");if("object"!=typeof l)return l;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:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,l)}return n}function c(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach(function(t){o(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function d(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}var v=["title"],f={class:"base-cascader-option__suffix"},p=t.defineComponent({__name:"CascaderOption",props:{tmNode:{type:null,required:!0}},setup:function(e){var l=e,r=t.inject("cascaderContext"),u=t.computed(function(){return l.tmNode.key}),o=t.computed(function(){return l.tmNode.rawNode[r.value.labelField]}),i=t.computed(function(){return l.tmNode.disabled}),c=t.computed(function(){return l.tmNode.isLeaf}),d=t.computed(function(){return r.value.loadingKeySet.has(u.value)}),s=t.computed(function(){return!r.value.remote&&"hover"===r.value.expandTrigger}),p=t.computed(function(){if(!r.value.multiple){var e=r.value.mergedValue;return Array.isArray(e)?0!==e.length&&e[e.length-1]===u.value:e===u.value}return r.value.checkedKeys.includes(u.value)}),m=t.computed(function(){return!!r.value.multiple&&r.value.indeterminateKeys.includes(u.value)}),h=t.computed(function(){return r.value.hoverKeyPath.includes(u.value)}),y=t.computed(function(){return r.value.keyboardKey===u.value}),k=t.computed(function(){if(p.value||h.value)return!0;if(!r.value.multiple){var e=r.value.mergedValue;if(Array.isArray(e)&&e.length>0)return e.includes(u.value)}return!1}),b=t.computed(function(){return r.value.showCheckbox}),g=t.computed(function(){return r.value.checkStrategy}),w=t.computed(function(){return r.value.multiple}),C=t.computed(function(){return r.value.cascade}),N=t.computed(function(){return!!p.value&&(w.value?!b.value:"child"===g.value&&!(w.value&&C.value))});function S(e){if(!i.value&&!e.target.closest(".base-cascader-option__checkbox")){var t=r.value;t.updateHoverKey(u.value),t.updateKeyboardKey(u.value),t.remote&&!l.tmNode.shallowLoaded&&!d.value&&t.onLoad&&(t.addLoadingKey(u.value),t.onLoad(l.tmNode.rawNode).then(function(){t.deleteLoadingKey(u.value)}).catch(function(){t.deleteLoadingKey(u.value)})),t.multiple,c.value&&E()}}function B(){if(s.value&&!i.value){var e=r.value;e.updateHoverKey(u.value),e.updateKeyboardKey(u.value),e.remote&&!l.tmNode.shallowLoaded&&!d.value&&e.onLoad&&(e.addLoadingKey(u.value),e.onLoad(l.tmNode.rawNode).then(function(){e.deleteLoadingKey(u.value)}).catch(function(){e.deleteLoadingKey(u.value)}))}}function _(){s.value&&B()}function x(){E()}function E(){var e=r.value;e.multiple?m.value||p.value?e.doUncheck(u.value):e.doCheck(u.value):(e.doCheck(u.value),!e.showCheckbox&&c.value&&e.closeMenu(!1))}return function(l,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader-option",{"is-active":k.value,"is-disabled":i.value,"is-hover":h.value||y.value,"has-checkbox":b.value}]),onClick:S,onMouseenter:B,onMousemove:_},[b.value?(t.openBlock(),t.createBlock(t.unref(n.ElCheckbox),{key:0,"model-value":p.value,indeterminate:m.value,disabled:i.value,class:"base-cascader-option__checkbox",onClick:r[0]||(r[0]=t.withModifiers(function(){},["stop"])),onChange:x},null,8,["model-value","indeterminate","disabled"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",{class:"base-cascader-option__label",title:o.value},[t.renderSlot(l.$slots,"label",{option:e.tmNode.rawNode,checked:p.value},function(){return[t.createTextVNode(t.toDisplayString(o.value),1)]})],8,v),t.createElementVNode("span",f,[d.value?(t.openBlock(),t.createBlock(t.unref(n.ElIcon),{key:0,class:"is-loading"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Loading))]}),_:1})):c.value?N.value?(t.openBlock(),t.createBlock(t.unref(n.ElIcon),{key:2,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0):(t.openBlock(),t.createBlock(t.unref(n.ElIcon),{key:1,class:"arrow-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.ArrowRight))]}),_:1}))])],34)}}});p.__scopeId="data-v-248f99f8",p.__file="packages/components/src/cascader/CascaderOption.vue";var m={key:0,class:"base-cascader-menu__wrapper"},h={key:0,class:"base-cascader-submenu__list"},y={key:1,class:"base-cascader-submenu__list base-cascader-submenu__list--virtual"},k={key:1,class:"base-cascader-menu__empty"},b={key:2,class:"base-cascader-menu__action"},g=t.defineComponent({__name:"CascaderMenu",props:{show:{type:Boolean,required:!0},menuModel:{type:Array,required:!0},onFocus:{type:Function,required:!0},onBlur:{type:Function,required:!0},onKeydown:{type:Function,required:!0},onMousedown:{type:Function,required:!0},getColumnStyle:{type:Function,required:!1},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,a){var r=a.expose,u=e,o=t.ref(null);function i(e){o.value&&(o.value.contains(e.relatedTarget)||u.onFocus(e))}function c(e){o.value&&(o.value.contains(e.relatedTarget)||u.onBlur(e))}return r({scroll:function(e,t,n){},showErrorMessage:function(e){console.warn("Loading required: ".concat(e))}}),function(a,r){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){var u;return[t.withDirectives(t.createElementVNode("div",{ref_key:"menuRef",ref:o,class:"base-cascader-menu",tabindex:"0",onMousedown:r[0]||(r[0]=function(){return e.onMousedown&&e.onMousedown.apply(e,arguments)}),onKeydown:r[1]||(r[1]=function(){return e.onKeydown&&e.onKeydown.apply(e,arguments)}),onFocusin:i,onFocusout:c,onClick:r[2]||(r[2]=t.withModifiers(function(){},["stop"]))},[null!==(u=e.menuModel[0])&&void 0!==u&&u.length?(t.openBlock(),t.createElementBlock("div",m,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.menuModel,function(r,u){var o;return t.openBlock(),t.createElementBlock("div",{key:u,class:"base-cascader-submenu",style:t.normalizeStyle(null===(o=e.getColumnStyle)||void 0===o?void 0:o.call(e,{level:u}))},[!e.virtualScroll||r.length<50?(t.openBlock(),t.createElementBlock("div",h,[t.createVNode(t.unref(n.ElScrollbar),null,{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r,function(e){return t.openBlock(),t.createBlock(p,{key:e.key,"tm-node":e},t.createSlots({_:2},[a.$slots.label?{name:"label",fn:t.withCtx(function(e){var n=e.option,l=e.checked;return[t.renderSlot(a.$slots,"label",{option:n,checked:l})]}),key:"0"}:void 0]),1032,["tm-node"])}),128))]}),_:2},1024)])):(t.openBlock(),t.createElementBlock("div",y,[t.createVNode(t.unref(l.VirtualList),{items:r,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(e){var n=e.item;return[(t.openBlock(),t.createBlock(p,{key:n.key,"tm-node":n},t.createSlots({_:2},[a.$slots.label?{name:"label",fn:t.withCtx(function(e){var n=e.option,l=e.checked;return[t.renderSlot(a.$slots,"label",{option:n,checked:l})]}),key:"0"}:void 0]),1032,["tm-node"]))]}),_:3},8,["items","item-size"])]))],4)}),128))])):(t.openBlock(),t.createElementBlock("div",k,[t.renderSlot(a.$slots,"empty",{},function(){return[t.createVNode(t.unref(n.ElEmpty),{"image-size":60,description:"暂无数据"})]})])),a.$slots.action?(t.openBlock(),t.createElementBlock("div",b,[t.renderSlot(a.$slots,"action")])):t.createCommentVNode("v-if",!0)],544),[[t.vShow,e.show]])]}),_:3})}}});function w(e,t){var n=new Map,l=[];var a=function e(l,a,r){var u=[];return l.map(function(l,o){var i=t.getKey(l),c=t.getChildren(l),d=t.getDisabled(l),s=void 0!==l.isLeaf?l.isLeaf:!c||0===c.length,v=s||void 0!==c&&c.length>0,f={key:i,rawNode:l,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),n.set(i,f),c&&c.length>0&&(f.children=e(c,a+1,f)),f})}(e,0,null);function r(e){return n.get(e)||null}function o(e){var t=[e.key];return e.children&&e.children.forEach(function(e){t.push.apply(t,d(o(e)))}),t}l.push.apply(l,d(a));var i=function e(t){var n=[];return t.forEach(function(t){t.disabled||(n.push(t),t.children&&n.push.apply(n,d(e(t.children))))}),n}(l);return{treeNodes:l,getNode:r,getPath:function(e){if(null===e)return{treeNodePath:[],keyPath:[],treeNode:null};var t=r(e);if(!t)return{treeNodePath:[],keyPath:[],treeNode:null};for(var n=[],l=[],a=t;a;)n.unshift(a),l.unshift(a.key),a=a.parent;return{treeNodePath:n,keyPath:l,treeNode:t}},getCheckedKeys:function(e,t){var n=new Set(e),a=new Set;if(!t.cascade)return{checkedKeys:e,indeterminateKeys:[]};function r(e){if(!e.children||0===e.children.length)return{allChecked:n.has(e.key),someChecked:n.has(e.key)};var t,l=!0,o=!1,i=u(e.children);try{for(i.s();!(t=i.n()).done;){var c=r(t.value);c.allChecked||(l=!1),c.someChecked&&(o=!0)}}catch(e){i.e(e)}finally{i.f()}var d=n.has(e.key);return l?(n.add(e.key),{allChecked:!0,someChecked:!0}):o||d?(a.add(e.key),{allChecked:!1,someChecked:!0}):{allChecked:!1,someChecked:!1}}return l.forEach(function(e){return r(e)}),{checkedKeys:Array.from(n),indeterminateKeys:Array.from(a)}},check:function(e,t,n){var l=r(e);if(!l)return{checkedKeys:t};var a=new Set(t);return a.add(e),n.cascade&&l.children&&o(l).slice(1).forEach(function(e){return a.add(e)}),{checkedKeys:Array.from(a)}},uncheck:function(e,t,n){var l=r(e);if(!l)return{checkedKeys:t};var a=new Set(t);return a.delete(e),n.cascade&&l.children&&o(l).slice(1).forEach(function(e){return a.delete(e)}),{checkedKeys:Array.from(a)}},getPrev:function(e,t){var n=i.findIndex(function(t){return t.key===e});return-1===n?null:0===n?t.loop?i[i.length-1]:null:i[n-1]},getNext:function(e,t){var n=i.findIndex(function(t){return t.key===e});return-1===n?null:n===i.length-1?t.loop?i[0]:null:i[n+1]},getChild:function(e){var t=r(e);return t&&t.children&&0!==t.children.length&&t.children.find(function(e){return!e.disabled})||null},getParent:function(e){var t=r(e);return(null==t?void 0:t.parent)||null},getFirstAvailableNode:function(){return i[0]||null}}}function C(e){return e?e.map(function(e){return e.rawNode}):null}function N(e,t,n){for(var l=[];e;)l.push(e.rawNode[n]),e=e.parent;return l.reverse().join(t)}g.__scopeId="data-v-097326a4",g.__file="packages/components/src/cascader/CascaderMenu.vue";var S=["onClick","onMouseenter"],B={class:"base-cascader-select-option__label"},_={key:0,class:"base-cascader-select-menu__empty"},x={key:1,class:"base-cascader-select-menu__virtual"},E=["onClick","onMouseenter"],q={class:"base-cascader-select-option__label"},K={key:1,class:"base-cascader-select-menu__empty"},P=t.defineComponent({__name:"CascaderSelectMenu",props:{show:{type:Boolean,required:!0},pattern:{type:String,required:!0},multiple:{type:Boolean,required:!0},tmNodes:{type:Array,required:!0},filter:{type:null,required:!1},labelField:{type:String,required:!0},separator:{type:String,required:!0},value:{type:null,required:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34}},setup:function(e,r){var o=r.expose,i=e,c=t.inject("cascaderContext"),d=t.ref(null),s=t.ref(null),v=t.computed(function(){return function(e,t,n,l){var a=[],r=[];return function e(o){var i,c=u(o);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(!d.disabled){var s=d.rawNode;r.push(s),!d.isLeaf&&t||a.push({label:N(d,l,n),value:d.key,rawNode:d.rawNode,path:Array.from(r)}),!d.isLeaf&&d.children&&e(d.children),r.pop()}}}catch(e){c.e(e)}finally{c.f()}}(e),a}(i.tmNodes,"child"===c.value.checkStrategy,i.labelField,i.separator)}),f=t.computed(function(){return i.filter?i.filter:function(e,t,n){return n.some(function(t){return t[i.labelField]&&t[i.labelField].toLowerCase().includes(e.toLowerCase())})}}),p=t.computed(function(){return i.pattern?v.value.filter(function(e){return f.value(i.pattern,e.rawNode,e.path)}):v.value});function m(e){return i.multiple&&Array.isArray(i.value)?i.value.includes(e):i.value===e}function h(e){var t=c.value;i.multiple?m(e.value)?t.doUncheck(e.value):t.doCheck(e.value):(t.doCheck(e.value),t.clearPattern(),t.closeMenu())}return o({prev:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e>0?s.value=p.value[e-1].value:p.value.length>0&&(s.value=p.value[p.value.length-1].value)},next:function(){var e=p.value.findIndex(function(e){return e.value===s.value});e<p.value.length-1?s.value=p.value[e+1].value:p.value.length>0&&(s.value=p.value[0].value)},enter:function(){if(null!==s.value){var e=p.value.find(function(e){return e.value===s.value});if(e)return h(e),!0}return!1}}),function(r,u){return t.openBlock(),t.createBlock(t.Transition,{name:"el-zoom-in-top",persisted:""},{default:t.withCtx(function(){return[t.withDirectives(t.createElementVNode("div",{ref_key:"selectMenuRef",ref:d,class:"base-cascader-select-menu",onClick:u[2]||(u[2]=t.withModifiers(function(){},["stop"]))},[!e.virtualScroll||p.value.length<50?(t.openBlock(),t.createBlock(t.unref(n.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,function(l){return t.openBlock(),t.createElementBlock("div",{key:l.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(l.value),"is-hover":s.value===l.value}]),onClick:function(e){return h(l)},onMouseenter:function(e){return s.value=l.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(n.ElCheckbox),{key:0,"model-value":m(l.value),class:"base-cascader-select-option__checkbox",onClick:u[0]||(u[0]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",B,t.toDisplayString(l.label),1),!e.multiple&&m(l.value)?(t.openBlock(),t.createBlock(t.unref(n.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,S)}),128)),0===p.value.length?(t.openBlock(),t.createElementBlock("div",_,[t.renderSlot(r.$slots,"not-found",{},function(){return[t.createVNode(t.unref(n.ElEmpty),{"image-size":60,description:"无匹配数据"})]})])):t.createCommentVNode("v-if",!0)]}),_:3})):(t.openBlock(),t.createElementBlock("div",x,[p.value.length>0?(t.openBlock(),t.createBlock(t.unref(n.ElScrollbar),{key:0,"max-height":"280px"},{default:t.withCtx(function(){return[t.createVNode(t.unref(l.VirtualList),{items:p.value,"item-size":e.optionHeight,style:{height:"280px"}},{default:t.withCtx(function(l){var r=l.item;return[(t.openBlock(),t.createElementBlock("div",{key:r.value,class:t.normalizeClass(["base-cascader-select-option",{"is-selected":m(r.value),"is-hover":s.value===r.value}]),onClick:function(e){return h(r)},onMouseenter:function(e){return s.value=r.value}},[e.multiple?(t.openBlock(),t.createBlock(t.unref(n.ElCheckbox),{key:0,"model-value":m(r.value),class:"base-cascader-select-option__checkbox",onClick:u[1]||(u[1]=t.withModifiers(function(){},["stop"]))},null,8,["model-value"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",q,t.toDisplayString(r.label),1),!e.multiple&&m(r.value)?(t.openBlock(),t.createBlock(t.unref(n.ElIcon),{key:1,class:"check-icon"},{default:t.withCtx(function(){return[t.createVNode(t.unref(a.Check))]}),_:1})):t.createCommentVNode("v-if",!0)],42,E))]}),_:1},8,["items","item-size"])]}),_:1})):(t.openBlock(),t.createElementBlock("div",K,[t.renderSlot(r.$slots,"not-found",{},function(){return[t.createVNode(t.unref(n.ElEmpty),{"image-size":60,description:"无匹配数据"})]})]))]))],512),[[t.vShow,e.show]])]}),_:3})}}});P.__scopeId="data-v-3901f6ec",P.__file="packages/components/src/cascader/CascaderSelectMenu.vue";var A={class:"base-cascader-dropdown"},V=t.defineComponent(c(c({},{name:"XnCascader"}),{},{__name:"index",props:{modelValue:{type:null,required:!1,default:null},options:{type:Array,required:!1,default:function(){return[]}},placeholder:{type:String,required:!1,default:"请选择"},disabled:{type:Boolean,required:!1,default:!1},clearable:{type:Boolean,required:!1,default:!1},filterable:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:"default"},expandTrigger:{type:null,required:!1,default:"click"},separator:{type:String,required:!1,default:" / "},showPath:{type:Boolean,required:!1,default:!0},cascade:{type:Boolean,required:!1,default:!0},checkStrategy:{type:null,required:!1,default:"all"},remote:{type:Boolean,required:!1,default:!1},onLoad:{type:null,required:!1},filter:{type:null,required:!1},valueField:{type:String,required:!1,default:"value"},labelField:{type:String,required:!1,default:"label"},childrenField:{type:String,required:!1,default:"children"},disabledField:{type:String,required:!1,default:"disabled"},maxTagCount:{type:Number,required:!1,default:1},popperClass:{type:String,required:!1},getColumnStyle:{type:Function,required:!1},clearFilterAfterSelect:{type:Boolean,required:!1,default:!0},virtualScroll:{type:Boolean,required:!1,default:!0},optionHeight:{type:Number,required:!1,default:34},showCheckbox:{type:Boolean,required:!1,default:void 0},emitPath:{type:Boolean,required:!1,default:!1}},emits:["update:modelValue","change","focus","blur"],setup:function(e,l){var a=l.expose,r=l.emit,u=e,o=r,i=t.ref(null),c=t.ref(null),d=t.ref(null),s=t.ref(u.modelValue),v=t.ref(""),f=t.ref(!1),p=t.ref(null),m=t.ref(null),h=t.ref(new Set),y=t.computed(function(){return u.disabled});t.computed(function(){return h.value.size>0});var k=t.computed(function(){return w(u.options,{getKey:function(e){return e[u.valueField]},getChildren:function(e){return e[u.childrenField]},getDisabled:function(e){return e[u.disabledField]||!1}})}),b=t.computed(function(){var e;return u.multiple&&Array.isArray(s.value)?(e=u.emitPath?0===s.value.length?[]:Array.isArray(s.value[0])?s.value.map(function(e){return e[e.length-1]}):s.value:s.value,k.value.getCheckedKeys(e,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1})):{checkedKeys:[],indeterminateKeys:[]}}),S=t.computed(function(){return b.value.checkedKeys}),B=t.computed(function(){return b.value.indeterminateKeys}),_=t.computed(function(){var e,t=k.value.getPath(m.value),n=t.treeNodePath,l=t.treeNode;return null===l?e=[k.value.treeNodes]:(e=n.map(function(e){return e.siblings}),l.isLeaf||h.value.has(l.key)||!l.children||e.push(l.children)),e}),x=t.computed(function(){return k.value.getPath(m.value).keyPath}),E=t.computed(function(){return void 0!==u.showCheckbox?u.showCheckbox:!(!u.multiple||!u.cascade)||"child"!==u.checkStrategy}),q=t.computed(function(){return!(!u.filterable||!v.value)}),K=t.computed(function(){if(u.multiple){var e=k.value,t=e.getCheckedKeys,n=e.getNode;return t(S.value,{cascade:u.cascade,checkStrategy:u.checkStrategy,allowNotLoaded:!1}).checkedKeys.map(function(e){var t=n(e);return null===t?{label:String(e),value:e}:{label:u.showPath?N(t,u.separator,u.labelField):t.rawNode[u.labelField],value:t.key}})}return[]}),V=t.computed(function(){if(!u.multiple){var e=k.value.getNode;if(null===s.value)return null;var t=null;if(u.emitPath&&Array.isArray(s.value)){if(0===s.value.length)return null;var n=s.value[s.value.length-1];t=Array.isArray(n)?null:n}else Array.isArray(s.value)||(t=s.value);if(null==t)return null;var l=e(t);return null===l?{label:String(t),value:t}:{label:u.showPath?N(l,u.separator,u.labelField):l.rawNode[u.labelField],value:l.key}}return null}),F=t.computed({get:function(){var e;return u.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,n){s.value=e,o("update:modelValue",e),o("change",e,t,n)}function M(e){var t=k.value.getNode;return e.map(function(e){var n;return(null===(n=t(e))||void 0===n?void 0:n.rawNode)||null})}function j(e){var t=u.cascade,n=u.multiple,l=u.checkStrategy,a=u.emitPath,r=k.value,o=r.check,i=r.getNode,c=r.getPath;if(n){var d=o(e,b.value.checkedKeys,{cascade:t,checkStrategy:l,allowNotLoaded:!1}).checkedKeys;L(a?d.map(function(e){return c(e).keyPath}):d,M(d),d.map(function(e){var t;return C(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}else if("child"===l){var s=i(e);if(null==s||!s.isLeaf)return!1;var v=c(e);L(a?v.keyPath:e,s.rawNode,C(v.treeNodePath)),R()}else{var f=i(e),h=c(e);L(a?h.keyPath:e,(null==f?void 0:f.rawNode)||null,C(null==h?void 0:h.treeNodePath)),R()}return!0}function O(e){var t=u.cascade,n=u.multiple,l=u.checkStrategy,a=u.emitPath;if(n){var r=k.value,o=r.uncheck,i=r.getNode,c=r.getPath,d=o(e,b.value.checkedKeys,{cascade:t,checkStrategy:l,allowNotLoaded:!1}).checkedKeys;L(a?d.map(function(e){return c(e).keyPath}):d,d.map(function(e){var t;return(null===(t=i(e))||void 0===t?void 0:t.rawNode)||null}),d.map(function(e){var t;return C(null===(t=c(e))||void 0===t?void 0:t.treeNodePath)})),p.value=e,m.value=e}}function I(e){m.value=e}function $(e){p.value=e}function z(e){h.value.add(e)}function D(e){h.value.delete(e)}function T(){var e,t,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(f.value=!1,v.value="",n)?null===(e=i.value)||void 0===e||e.focus():null===(t=i.value)||void 0===t||t.blur()}function H(){u.clearFilterAfterSelect&&(v.value="")}function R(){v.value="",setTimeout(function(){if(i.value&&void 0!==i.value.query){var e;i.value.query="";var t=null===(e=i.value.$el)||void 0===e?void 0:e.querySelector("input");t&&V.value&&(t.value=V.value.label)}},0)}function U(){y.value||f.value||(f.value=!0)}function X(e){f.value=e,e||(v.value="")}function G(){u.multiple?L([],[],[]):L(null,null,null)}function J(e){var t=K.value.find(function(t){return t.label===e});t&&O(t.value)}function Q(e){v.value=e}function W(e){o("focus",e)}function Y(e){o("blur",e)}function Z(e){o("focus",e)}function ee(e){o("blur",e)}function te(e){le(e)}function ne(e){e.preventDefault()}function le(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 n=j(p.value);!u.multiple&&n&&T(!0)}break;case"ArrowUp":var l;if(e.preventDefault(),q.value)null===(l=d.value)||void 0===l||l.prev();else ae("prev");break;case"ArrowDown":var a;if(e.preventDefault(),q.value)null===(a=d.value)||void 0===a||a.next();else ae("next");break;case"ArrowLeft":e.preventDefault(),q.value||ae("parent");break;case"ArrowRight":e.preventDefault(),q.value||ae("child");break;case"Escape":T(!0)}}function ae(e){var t=p.value,n=k.value,l=n.getPrev,a=n.getNext,r=n.getChild,o=n.getParent,i=n.getFirstAvailableNode,c=n.getNode;switch(e){case"prev":if(null!==t){var d=l(t,{loop:!0});d&&$(d.key)}break;case"next":if(null===t){var s=i();s&&$(s.key)}else{var v=a(t,{loop:!0});v&&$(v.key)}break;case"child":if(null!==t){var f=c(t);if(null!=f&&f.shallowLoaded){var m=r(t);m&&(I(t),$(m.key))}else f&&!h.value.has(t)&&u.onLoad&&(z(t),I(t),u.onLoad(f.rawNode).then(function(){return D(t)}).catch(function(){return D(t)}))}break;case"parent":if(null!==t){var y=o(t);if(y){$(y.key);var b=o(y.key);I((null==b?void 0:b.key)||null)}}}}t.watch(function(){return u.modelValue},function(e){s.value=e}),t.watch(f,function(e){if(!e)return p.value=null,void(m.value=null);if(u.multiple)p.value=null,m.value=null;else{var t=null;if(u.emitPath&&Array.isArray(s.value)&&s.value.length>0){var n=s.value[s.value.length-1];t=Array.isArray(n)?null:n}else Array.isArray(s.value)||null===s.value||(t=s.value);if(null!==t){var l=k.value.getNode(t);if(l){var a=l.parent;a?(p.value=a.key,m.value=a.key):(p.value=t,m.value=t)}}else p.value=null,m.value=null}});var re=t.computed(function(){return{mergedValue:s.value,checkedKeys:S.value,indeterminateKeys:B.value,hoverKeyPath:x.value,keyboardKey:p.value,hoverKey:m.value,loadingKeySet:h.value,multiple:u.multiple,cascade:u.cascade,checkStrategy:u.checkStrategy,expandTrigger:u.expandTrigger,remote:u.remote,showCheckbox:E.value,labelField:u.labelField,valueField:u.valueField,childrenField:u.childrenField,disabledField:u.disabledField,onLoad:u.onLoad,updateHoverKey:I,updateKeyboardKey:$,addLoadingKey:z,deleteLoadingKey:D,doCheck:j,doUncheck:O,closeMenu:T,clearPattern:H}});return t.provide("cascaderContext",re),a({focus:function(){var e;null===(e=i.value)||void 0===e||e.focus()},blur:function(){var e;null===(e=i.value)||void 0===e||e.blur()},getCheckedData:function(){return E.value?{keys:S.value,options:M(S.value)}:{keys:[],options:[]}},getIndeterminateData:function(){return E.value?{keys:B.value,options:M(B.value)}:{keys:[],options:[]}}}),function(l,a){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["base-cascader",{"is-disabled":y.value}])},[t.createVNode(t.unref(n.ElSelect),{ref_key:"selectRef",ref:i,modelValue:F.value,"onUpdate:modelValue":a[0]||(a[0]=function(e){return F.value=e}),placeholder:e.placeholder,disabled:y.value,clearable:e.clearable,filterable:e.filterable,multiple:e.multiple,size:e.size,"collapse-tags":e.multiple,"collapse-tags-tooltip":e.multiple,"max-collapse-tags":e.maxTagCount,"filter-method":Q,"popper-class":"base-cascader-popper ".concat(e.popperClass||""),"automatic-dropdown":"",onVisibleChange:X,onClear:G,onRemoveTag:J,onFocus:W,onBlur:Y,onKeydown:le,onClick:U},{empty:t.withCtx(function(){return[t.createElementVNode("div",A,[q.value?(t.openBlock(),t.createBlock(P,{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},[l.$slots["not-found"]?{name:"not-found",fn:t.withCtx(function(){return[t.renderSlot(l.$slots,"not-found")]}),key:"0"}:void 0]),1032,["show","pattern","multiple","tm-nodes","filter","label-field","separator","value","virtual-scroll","option-height"])):(t.openBlock(),t.createBlock(g,{key:1,ref_key:"cascaderMenuRef",ref:c,show:f.value&&!q.value,"menu-model":_.value,"get-column-style":e.getColumnStyle,"on-focus":Z,"on-blur":ee,"on-keydown":te,"on-mousedown":ne,"virtual-scroll":e.virtualScroll,"option-height":e.optionHeight},t.createSlots({_:2},[l.$slots.label?{name:"label",fn:t.withCtx(function(e){var n=e.option,a=e.checked;return[t.renderSlot(l.$slots,"label",{option:n,checked:a})]}),key:"0"}:void 0,l.$slots.empty?{name:"empty",fn:t.withCtx(function(){return[t.renderSlot(l.$slots,"empty")]}),key:"1"}:void 0,l.$slots.action?{name:"action",fn:t.withCtx(function(){return[t.renderSlot(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)}}}));V.__scopeId="data-v-243e9ed1",V.__file="packages/components/src/cascader/index.vue";var F=V;F.install=function(e){V.name&&e.component(V.name,V)};var L={XnCascader:F},M={install:function(e){Object.values(L).forEach(function(t){t.name&&e.component(t.name,t)})}};e.XnCascader=F,e.components=L,e.default=M,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
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 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=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&&(I(t),j(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){$(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: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,[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({__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},I={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=I,Object.defineProperty(e,"__esModule",{value:!0})});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"private": false,
|
|
3
3
|
"name": "@xn-lib/component",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.20",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "./dist/index.umd.js",
|
|
7
7
|
"module": "./dist/index.mjs",
|
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"vueuc": "0.4.65",
|
|
45
|
-
"@xn-lib/base": "^0.0.
|
|
46
|
-
"@xn-lib/core": "^0.0.
|
|
45
|
+
"@xn-lib/base": "^0.0.20",
|
|
46
|
+
"@xn-lib/core": "^0.0.20"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
49
|
"element-plus": ">=2.4.0",
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import type { TreeNode } from './types';
|
|
2
|
-
interface Props {
|
|
3
|
-
show: boolean;
|
|
4
|
-
menuModel: TreeNode[][];
|
|
5
|
-
onFocus: (e: FocusEvent) => void;
|
|
6
|
-
onBlur: (e: FocusEvent) => void;
|
|
7
|
-
onKeydown: (e: KeyboardEvent) => void;
|
|
8
|
-
onMousedown: (e: MouseEvent) => void;
|
|
9
|
-
getColumnStyle?: (detail: {
|
|
10
|
-
level: number;
|
|
11
|
-
}) => string | Record<string, any>;
|
|
12
|
-
virtualScroll?: boolean;
|
|
13
|
-
optionHeight?: number;
|
|
14
|
-
}
|
|
15
|
-
declare var __VLS_19: {
|
|
16
|
-
option: import("./types").CascaderOption;
|
|
17
|
-
checked: any;
|
|
18
|
-
}, __VLS_34: {
|
|
19
|
-
option: import("./types").CascaderOption;
|
|
20
|
-
checked: any;
|
|
21
|
-
}, __VLS_36: {}, __VLS_44: {};
|
|
22
|
-
type __VLS_Slots = {} & {
|
|
23
|
-
label?: (props: typeof __VLS_19) => any;
|
|
24
|
-
} & {
|
|
25
|
-
label?: (props: typeof __VLS_34) => any;
|
|
26
|
-
} & {
|
|
27
|
-
empty?: (props: typeof __VLS_36) => any;
|
|
28
|
-
} & {
|
|
29
|
-
action?: (props: typeof __VLS_44) => any;
|
|
30
|
-
};
|
|
31
|
-
declare const __VLS_base: import("vue").DefineComponent<Props, {
|
|
32
|
-
scroll: (depth: number, index: number, elSize: number) => void;
|
|
33
|
-
showErrorMessage: (label: string) => void;
|
|
34
|
-
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
35
|
-
virtualScroll: boolean;
|
|
36
|
-
optionHeight: number;
|
|
37
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
38
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
39
|
-
declare const _default: typeof __VLS_export;
|
|
40
|
-
export default _default;
|
|
41
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
42
|
-
new (): {
|
|
43
|
-
$slots: S;
|
|
44
|
-
};
|
|
45
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { TreeNode } from './types';
|
|
2
|
-
interface Props {
|
|
3
|
-
tmNode: TreeNode;
|
|
4
|
-
}
|
|
5
|
-
declare var __VLS_10: {
|
|
6
|
-
option: import("./types").CascaderOption;
|
|
7
|
-
checked: any;
|
|
8
|
-
};
|
|
9
|
-
type __VLS_Slots = {} & {
|
|
10
|
-
label?: (props: typeof __VLS_10) => any;
|
|
11
|
-
};
|
|
12
|
-
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
-
declare const _default: typeof __VLS_export;
|
|
15
|
-
export default _default;
|
|
16
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
17
|
-
new (): {
|
|
18
|
-
$slots: S;
|
|
19
|
-
};
|
|
20
|
-
};
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import type { TreeNode, CascaderValue, Filter } from './types';
|
|
2
|
-
interface Props {
|
|
3
|
-
show: boolean;
|
|
4
|
-
pattern: string;
|
|
5
|
-
multiple: boolean;
|
|
6
|
-
tmNodes: TreeNode[];
|
|
7
|
-
filter?: Filter;
|
|
8
|
-
labelField: string;
|
|
9
|
-
separator: string;
|
|
10
|
-
value: CascaderValue | null;
|
|
11
|
-
virtualScroll?: boolean;
|
|
12
|
-
optionHeight?: number;
|
|
13
|
-
}
|
|
14
|
-
declare function prev(): void;
|
|
15
|
-
declare function next(): void;
|
|
16
|
-
declare function enter(): boolean;
|
|
17
|
-
declare var __VLS_33: {}, __VLS_74: {};
|
|
18
|
-
type __VLS_Slots = {} & {
|
|
19
|
-
'not-found'?: (props: typeof __VLS_33) => any;
|
|
20
|
-
} & {
|
|
21
|
-
'not-found'?: (props: typeof __VLS_74) => any;
|
|
22
|
-
};
|
|
23
|
-
declare const __VLS_base: import("vue").DefineComponent<Props, {
|
|
24
|
-
prev: typeof prev;
|
|
25
|
-
next: typeof next;
|
|
26
|
-
enter: typeof enter;
|
|
27
|
-
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
28
|
-
virtualScroll: boolean;
|
|
29
|
-
optionHeight: number;
|
|
30
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
31
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
32
|
-
declare const _default: typeof __VLS_export;
|
|
33
|
-
export default _default;
|
|
34
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
35
|
-
new (): {
|
|
36
|
-
$slots: S;
|
|
37
|
-
};
|
|
38
|
-
};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from 'vue';
|
|
2
|
-
import type { CascaderInst } from './types';
|
|
3
|
-
import CascaderComponent from './index.vue';
|
|
4
|
-
declare const Cascader: typeof CascaderComponent & Plugin;
|
|
5
|
-
export default Cascader;
|
|
6
|
-
export type { CascaderInst as XnCascaderInstance };
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import type { CascaderOption, CascaderValue, ExpandTrigger, CheckStrategy, Filter, OnLoad, CascaderInst } from './types';
|
|
2
|
-
interface Props {
|
|
3
|
-
modelValue?: CascaderValue | null;
|
|
4
|
-
options?: CascaderOption[];
|
|
5
|
-
placeholder?: string;
|
|
6
|
-
disabled?: boolean;
|
|
7
|
-
clearable?: boolean;
|
|
8
|
-
filterable?: boolean;
|
|
9
|
-
multiple?: boolean;
|
|
10
|
-
size?: 'large' | 'default' | 'small';
|
|
11
|
-
expandTrigger?: ExpandTrigger;
|
|
12
|
-
separator?: string;
|
|
13
|
-
showPath?: boolean;
|
|
14
|
-
cascade?: boolean;
|
|
15
|
-
checkStrategy?: CheckStrategy;
|
|
16
|
-
remote?: boolean;
|
|
17
|
-
onLoad?: OnLoad;
|
|
18
|
-
filter?: Filter;
|
|
19
|
-
valueField?: string;
|
|
20
|
-
labelField?: string;
|
|
21
|
-
childrenField?: string;
|
|
22
|
-
disabledField?: string;
|
|
23
|
-
maxTagCount?: number;
|
|
24
|
-
popperClass?: string;
|
|
25
|
-
getColumnStyle?: (detail: {
|
|
26
|
-
level: number;
|
|
27
|
-
}) => string | Record<string, any>;
|
|
28
|
-
clearFilterAfterSelect?: boolean;
|
|
29
|
-
virtualScroll?: boolean;
|
|
30
|
-
optionHeight?: number;
|
|
31
|
-
showCheckbox?: boolean;
|
|
32
|
-
emitPath?: boolean;
|
|
33
|
-
}
|
|
34
|
-
declare var __VLS_26: {}, __VLS_36: {
|
|
35
|
-
option: CascaderOption;
|
|
36
|
-
checked: any;
|
|
37
|
-
}, __VLS_39: {}, __VLS_42: {};
|
|
38
|
-
type __VLS_Slots = {} & {
|
|
39
|
-
'not-found'?: (props: typeof __VLS_26) => any;
|
|
40
|
-
} & {
|
|
41
|
-
label?: (props: typeof __VLS_36) => any;
|
|
42
|
-
} & {
|
|
43
|
-
empty?: (props: typeof __VLS_39) => any;
|
|
44
|
-
} & {
|
|
45
|
-
action?: (props: typeof __VLS_42) => any;
|
|
46
|
-
};
|
|
47
|
-
declare const __VLS_base: import("vue").DefineComponent<Props, CascaderInst, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
48
|
-
"update:modelValue": (value: CascaderValue | null) => any;
|
|
49
|
-
change: (value: CascaderValue | null, option: CascaderOption | (CascaderOption | null)[] | null, path: CascaderOption[] | (CascaderOption[] | null)[] | null) => any;
|
|
50
|
-
blur: (e: FocusEvent) => any;
|
|
51
|
-
focus: (e: FocusEvent) => any;
|
|
52
|
-
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
53
|
-
"onUpdate:modelValue"?: ((value: CascaderValue | null) => any) | undefined;
|
|
54
|
-
onChange?: ((value: CascaderValue | null, option: CascaderOption | (CascaderOption | null)[] | null, path: CascaderOption[] | (CascaderOption[] | null)[] | null) => any) | undefined;
|
|
55
|
-
onBlur?: ((e: FocusEvent) => any) | undefined;
|
|
56
|
-
onFocus?: ((e: FocusEvent) => any) | undefined;
|
|
57
|
-
}>, {
|
|
58
|
-
disabled: boolean;
|
|
59
|
-
showCheckbox: boolean;
|
|
60
|
-
modelValue: CascaderValue | null;
|
|
61
|
-
size: "large" | "default" | "small";
|
|
62
|
-
placeholder: string;
|
|
63
|
-
virtualScroll: boolean;
|
|
64
|
-
optionHeight: number;
|
|
65
|
-
multiple: boolean;
|
|
66
|
-
labelField: string;
|
|
67
|
-
separator: string;
|
|
68
|
-
options: CascaderOption[];
|
|
69
|
-
clearable: boolean;
|
|
70
|
-
filterable: boolean;
|
|
71
|
-
expandTrigger: ExpandTrigger;
|
|
72
|
-
showPath: boolean;
|
|
73
|
-
cascade: boolean;
|
|
74
|
-
checkStrategy: CheckStrategy;
|
|
75
|
-
remote: boolean;
|
|
76
|
-
valueField: string;
|
|
77
|
-
childrenField: string;
|
|
78
|
-
disabledField: string;
|
|
79
|
-
maxTagCount: number;
|
|
80
|
-
clearFilterAfterSelect: boolean;
|
|
81
|
-
emitPath: boolean;
|
|
82
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
83
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
84
|
-
declare const _default: typeof __VLS_export;
|
|
85
|
-
export default _default;
|
|
86
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
87
|
-
new (): {
|
|
88
|
-
$slots: S;
|
|
89
|
-
};
|
|
90
|
-
};
|