vxe-pc-ui 4.14.20 → 4.14.21

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.
Files changed (26) hide show
  1. package/es/tree/src/tree.js +24 -19
  2. package/es/ui/index.js +1 -1
  3. package/es/ui/src/log.js +1 -1
  4. package/lib/index.umd.js +35 -26
  5. package/lib/index.umd.min.js +1 -1
  6. package/lib/tree/src/tree.js +33 -24
  7. package/lib/tree/src/tree.min.js +1 -1
  8. package/lib/ui/index.js +1 -1
  9. package/lib/ui/index.min.js +1 -1
  10. package/lib/ui/src/log.js +1 -1
  11. package/lib/ui/src/log.min.js +1 -1
  12. package/package.json +1 -1
  13. package/packages/tree/src/tree.ts +25 -19
  14. package/types/components/tree.d.ts +4 -0
  15. /package/es/icon/{iconfont.1779671264855.ttf → iconfont.1779687105351.ttf} +0 -0
  16. /package/es/icon/{iconfont.1779671264855.woff → iconfont.1779687105351.woff} +0 -0
  17. /package/es/icon/{iconfont.1779671264855.woff2 → iconfont.1779687105351.woff2} +0 -0
  18. /package/es/{iconfont.1779671264855.ttf → iconfont.1779687105351.ttf} +0 -0
  19. /package/es/{iconfont.1779671264855.woff → iconfont.1779687105351.woff} +0 -0
  20. /package/es/{iconfont.1779671264855.woff2 → iconfont.1779687105351.woff2} +0 -0
  21. /package/lib/icon/style/{iconfont.1779671264855.ttf → iconfont.1779687105351.ttf} +0 -0
  22. /package/lib/icon/style/{iconfont.1779671264855.woff → iconfont.1779687105351.woff} +0 -0
  23. /package/lib/icon/style/{iconfont.1779671264855.woff2 → iconfont.1779687105351.woff2} +0 -0
  24. /package/lib/{iconfont.1779671264855.ttf → iconfont.1779687105351.ttf} +0 -0
  25. /package/lib/{iconfont.1779671264855.woff → iconfont.1779687105351.woff} +0 -0
  26. /package/lib/{iconfont.1779671264855.woff2 → iconfont.1779687105351.woff2} +0 -0
@@ -2632,28 +2632,38 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2632
2632
  }
2633
2633
  return (0, _ui.renderEmptyElement)($xeTree);
2634
2634
  };
2635
- const renderRadio = (node, nodeid, isChecked) => {
2635
+ const handleVisibleOrCheckMode = (mode, isExistChild, nLevel) => {
2636
+ if (mode) {
2637
+ if (mode === 'first') {
2638
+ return !nLevel;
2639
+ }
2640
+ if (mode === 'last') {
2641
+ return !isExistChild;
2642
+ }
2643
+ }
2644
+ return true;
2645
+ };
2646
+ const renderRadio = (node, nodeid, isExistChild, nLevel, isChecked) => {
2636
2647
  const {
2637
2648
  showRadio
2638
2649
  } = props;
2639
2650
  const radioOpts = computeRadioOpts.value;
2640
2651
  const {
2641
2652
  showIcon,
2653
+ checkMode,
2642
2654
  checkMethod,
2655
+ visibleMode,
2643
2656
  visibleMethod
2644
2657
  } = radioOpts;
2645
- const isVisible = !visibleMethod || visibleMethod({
2658
+ const isVisible = visibleMethod ? visibleMethod({
2646
2659
  $tree: $xeTree,
2647
2660
  node
2648
- });
2649
- let isDisabled = !!checkMethod;
2661
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
2650
2662
  if (showRadio && showIcon && isVisible) {
2651
- if (checkMethod) {
2652
- isDisabled = !checkMethod({
2653
- $tree: $xeTree,
2654
- node
2655
- });
2656
- }
2663
+ const isDisabled = checkMethod ? !checkMethod({
2664
+ $tree: $xeTree,
2665
+ node
2666
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
2657
2667
  return (0, _vue.h)('div', {
2658
2668
  class: ['vxe-tree--radio-option', {
2659
2669
  'is--checked': isChecked,
@@ -2670,28 +2680,27 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2670
2680
  }
2671
2681
  return (0, _ui.renderEmptyElement)($xeTree);
2672
2682
  };
2673
- const renderCheckbox = (node, nodeid, isChecked, isIndeterminate) => {
2683
+ const renderCheckbox = (node, nodeid, isExistChild, nLevel, isChecked, isIndeterminate) => {
2674
2684
  const {
2675
2685
  showCheckbox
2676
2686
  } = props;
2677
2687
  const checkboxOpts = computeCheckboxOpts.value;
2678
2688
  const {
2679
2689
  showIcon,
2690
+ checkMode,
2680
2691
  checkMethod,
2692
+ visibleMode,
2681
2693
  visibleMethod
2682
2694
  } = checkboxOpts;
2683
- const isVisible = !visibleMethod || visibleMethod({
2695
+ const isVisible = visibleMethod ? visibleMethod({
2684
2696
  $tree: $xeTree,
2685
2697
  node
2686
- });
2687
- let isDisabled = !!checkMethod;
2698
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
2688
2699
  if (showCheckbox && showIcon && isVisible) {
2689
- if (checkMethod) {
2690
- isDisabled = !checkMethod({
2691
- $tree: $xeTree,
2692
- node
2693
- });
2694
- }
2700
+ const isDisabled = checkMethod ? !checkMethod({
2701
+ $tree: $xeTree,
2702
+ node
2703
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
2695
2704
  return (0, _vue.h)('div', {
2696
2705
  class: ['vxe-tree--checkbox-option', {
2697
2706
  'is--checked': isChecked,
@@ -2737,12 +2746,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2737
2746
  const titleField = computeTitleField.value;
2738
2747
  const hasChildField = computeHasChildField.value;
2739
2748
  const childList = _xeUtils.default.get(node, childrenField);
2740
- const hasChild = childList && childList.length;
2749
+ const isExistChild = childList && childList.length > 0;
2741
2750
  const iconSlot = slots.icon;
2742
2751
  const titleSlot = slots.title;
2743
2752
  const extraSlot = slots.extra;
2744
2753
  const isExpand = updateExpandedFlag && treeExpandedMaps[nodeid];
2745
- const nodeItem = nodeMaps[nodeid];
2754
+ const nodeItem = nodeMaps[nodeid] || {};
2746
2755
  const nodeValue = _xeUtils.default.get(node, titleField);
2747
2756
  const nLevel = nodeItem.level;
2748
2757
  let isRadioChecked = false;
@@ -2809,14 +2818,14 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2809
2818
  }
2810
2819
  })]) : (0, _ui.renderEmptyElement)($xeTree), (0, _vue.h)('div', {
2811
2820
  class: 'vxe-tree--node-item-switcher'
2812
- }, showIcon && (lazy ? isLazyLoaded ? hasChild : hasLazyChilds : hasChild) ? [(0, _vue.h)('div', {
2821
+ }, showIcon && (lazy ? isLazyLoaded ? isExistChild : hasLazyChilds : isExistChild) ? [(0, _vue.h)('div', {
2813
2822
  class: 'vxe-tree--node-item-icon',
2814
2823
  onClick(evnt) {
2815
2824
  toggleExpandEvent(evnt, node);
2816
2825
  }
2817
2826
  }, iconSlot ? (0, _vn.getSlotVNs)(iconSlot(nParams)) : [(0, _vue.h)('i', {
2818
2827
  class: isLazyLoading ? iconLoaded || getIcon().TREE_NODE_LOADED : isExpand ? iconOpen || getIcon().TREE_NODE_OPEN : iconClose || getIcon().TREE_NODE_CLOSE
2819
- })])] : []), renderDragIcon(node, nodeid), renderRadio(node, nodeid, isRadioChecked), renderCheckbox(node, nodeid, isCheckboxChecked, isIndeterminate), (0, _vue.h)('div', {
2828
+ })])] : []), renderDragIcon(node, nodeid), renderRadio(node, nodeid, isExistChild, nLevel, isRadioChecked), renderCheckbox(node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate), (0, _vue.h)('div', {
2820
2829
  class: 'vxe-tree--node-item-inner'
2821
2830
  }, [(0, _vue.h)('div', {
2822
2831
  class: 'vxe-tree--node-item-title'
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_util=require("./util"),_log=require("../../ui/src/log"),_store=require("./store"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_anime=require("../../ui/src/anime"),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{menus,getConfig,getI18n,getIcon}=_ui.VxeUI;function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createInternalData(){return{treeFullData:[],afterTreeList:[],afterVisibleList:[],nodeMaps:{},selectCheckboxMaps:{},indeterminateRowMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},lastScrollTime:0}}function createReactData(){return{parentHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,currentNode:null,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,dragNode:null,dragTipText:""}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTree",props:{data:Array,autoResize:{type:Boolean,default:()=>getConfig().tree.autoResize},height:[String,Number],maxHeight:{type:[String,Number],default:()=>getConfig().tree.maxHeight},minHeight:{type:[String,Number],default:()=>getConfig().tree.minHeight},loading:Boolean,loadingConfig:Object,accordion:{type:Boolean,default:()=>getConfig().tree.accordion},childrenField:{type:String,default:()=>getConfig().tree.childrenField},valueField:{type:String,default:()=>getConfig().tree.valueField},keyField:{type:String,default:()=>getConfig().tree.keyField},parentField:{type:String,default:()=>getConfig().tree.parentField},titleField:{type:String,default:()=>getConfig().tree.titleField},hasChildField:{type:String,default:()=>getConfig().tree.hasChildField},mapChildrenField:{type:String,default:()=>getConfig().tree.mapChildrenField},transform:Boolean,isCurrent:Boolean,isHover:Boolean,expandAll:Boolean,expandNodeKeys:Array,showLine:{type:Boolean,default:()=>getConfig().tree.showLine},trigger:String,indent:{type:Number,default:()=>getConfig().tree.indent},showRadio:{type:Boolean,default:()=>getConfig().tree.showRadio},checkNodeKey:{type:[String,Number],default:()=>getConfig().tree.checkNodeKey},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>getConfig().tree.showCheckbox},checkNodeKeys:{type:Array,default:()=>getConfig().tree.checkNodeKeys},checkboxConfig:Object,nodeConfig:Object,lazy:Boolean,toggleMethod:Function,loadMethod:Function,drag:{type:Boolean,default:()=>getConfig().tree.drag},dragConfig:Object,menuConfig:Object,showIcon:{type:Boolean,default:!0},iconOpen:{type:String,default:()=>getConfig().tree.iconOpen},iconClose:{type:String,default:()=>getConfig().tree.iconClose},iconLoaded:{type:String,default:()=>getConfig().tree.iconLoaded},rootParentValue:{type:[String,Number],default:()=>getConfig().tree.rootParentValue},rootValues:{type:Array,default:()=>getConfig().tree.rootValues},filterValue:[String,Number],filterConfig:Object,size:{type:String,default:()=>getConfig().tree.size||getConfig().size},virtualYConfig:Object},emits:["update:modelValue","update:checkNodeKey","update:checkNodeKeys","node-click","node-dblclick","current-change","radio-change","checkbox-change","load-success","load-error","scroll","node-dragstart","node-dragover","node-dragend","node-expand","node-menu","menu-click"],setup(V,u){let{emit:a,slots:w}=u;var e=_xeUtils.default.uniqueId();let m=(0,_ui.useSize)(V).computeSize,O=(0,_vue.ref)(),C=(0,_vue.ref)(),y=(0,_vue.ref)(),p=(0,_vue.ref)(),N=(0,_vue.ref)(),f=(0,_vue.ref)(),E=(0,_vue.ref)(),g=(0,_store.getCrossTreeDragNodeInfo)(),A=createInternalData(),z=(0,_vue.reactive)(createReactData()),h={refElem:O},U=(0,_vue.computed)(()=>V.titleField||"title"),c=(0,_vue.computed)(()=>V.keyField||"id"),b=(0,_vue.computed)(()=>{var e=c.value;return V.valueField||e}),K=(0,_vue.computed)(()=>V.parentField||"parentId"),B=(0,_vue.computed)(()=>V.childrenField||"children"),$=(0,_vue.computed)(()=>V.mapChildrenField||"mapChildren"),D=(0,_vue.computed)(()=>V.hasChildField||"hasChild"),k=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.virtualYConfig,V.virtualYConfig)),M=(0,_vue.computed)(()=>{var e=d.value.isCurrent;return _xeUtils.default.isBoolean(e)?e:V.isCurrent}),T=(0,_vue.computed)(()=>{var e=d.value.isHover;return _xeUtils.default.isBoolean(e)?e:V.isHover}),x=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.radioConfig,V.radioConfig)),_=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.checkboxConfig,V.checkboxConfig)),d=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.nodeConfig,V.nodeConfig)),I=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.loadingConfig,V.loadingConfig)),P=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.dragConfig,V.dragConfig)),S=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.menuConfig,V.menuConfig)),L=(0,_vue.computed)(()=>{var e=V.indent,{customHeight:t,customMinHeight:r,customMaxHeight:a}=z,l=_.value.nodeStyle,o={};return t&&(o.height=(0,_dom.toCssUnit)(t)),r&&(o.minHeight=(0,_dom.toCssUnit)(r)),a&&(o.maxHeight=(0,_dom.toCssUnit)(a)),e&&(o["--vxe-ui-tree-node-indent"]=(0,_dom.toCssUnit)(e)),l&&({indeterminateColor:t,checkedColor:r}=l,t&&(o["--vxe-ui-tree-node-checkbox-indeterminate-color"]=t),r)&&(o["--vxe-ui-tree-node-checkbox-checked-color"]=r),o}),R=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.filterConfig,V.filterConfig)),H={computeKeyField:c,computeParentField:K,computeChildrenField:B,computeMapChildrenField:$,computeRadioOpts:x,computeCheckboxOpts:_,computeNodeOpts:d,computeDragOpts:P},q={xID:e,props:V,context:u,internalData:A,reactData:z,getRefMaps:()=>h,getComputeMaps:()=>H},Y=e=>{var t=b.value,e=_xeUtils.default.get(e,t);return(0,_util.enNodeValue)(e)};let F=e=>{var t=z.selectRadioKey;return t===e};let te=e=>{var t=z.updateCheckboxFlag,r=A.selectCheckboxMaps;return!(!t||!r[e])};let re=e=>{var t=z.updateCheckboxFlag,r=A.indeterminateRowMaps;return!(!t||!r[e])};let s=e=>{a("update:checkNodeKeys",e)},o=e=>{a("update:checkNodeKey",e)},ae=(e,r)=>{let a=A.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let t=[];e.forEach(e=>{e=(0,_util.enNodeValue)(e),e=a[e];e&&t.push(e.item)}),le(t,r)}return(0,_vue.nextTick)()},le=(e,r)=>{var t=V.transform;let a=A.selectCheckboxMaps;var l=$.value,o=B.value,d=_.value.checkStrictly,n=e=>{var t=Y(e);r?a[t]||(a[t]=e):a[t]&&delete a[t]};d?e.forEach(n):_xeUtils.default.eachTree(e,n,{children:t?l:o}),z.updateCheckboxFlag++,Q()},l=(e,t,r)=>{t?r[e]||(r[e]=!0):r[e]&&delete r[e]},j=(e,t,r)=>{a(e,(0,_ui.createEvent)(r,{$tree:q},t))},oe=()=>{var e=O.value;return e?e.parentElement:null},de=e=>{var t=z.parentHeight,e=V[e];let r=0;return r=e?"100%"===e||"auto"===e?t:(r=(0,_dom.isScale)(e)?Math.floor((_xeUtils.default.toInteger(e)||1)/100*t):_xeUtils.default.toNumber(e),Math.max(40,r)):r},ne=()=>{z.customHeight=de("height"),z.customMinHeight=de("minHeight"),z.customMaxHeight=de("maxHeight"),!z.scrollYLoad||z.customHeight||z.customMinHeight||(z.customHeight=300)},ie=()=>{var e=A.treeFullData;let n=b.value;var t=B.value;let i={};_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{let d=Y(e);d||(d=getNodeUniqueId(),_xeUtils.default.set(e,n,d)),i[d]={item:e,index:t,$index:-1,_index:-1,items:r,parent:l,nodes:o,level:o.length-1,treeIndex:t,lineCount:0,treeLoaded:!1}},{children:t}),A.nodeMaps=i},G=()=>{var e=V.transform;let{afterTreeList:t,nodeMaps:o}=A;var r=B.value,a=$.value;let d=0;_xeUtils.default.eachTree(t,(e,t,r)=>{var a=Y(e),l=o[a];l?(l.items=r,l.treeIndex=t,l._index=d):(l={item:e,index:t,$index:-1,_index:d,items:r,parent:parent,nodes:[],level:0,treeIndex:t,lineCount:0,treeLoaded:!1},o[a]=l),d++},{children:e?a:r})},se=()=>{var{transform:t,filterValue:r}=V,{treeFullData:a,lastFilterValue:e}=A;let l=U.value;var o=B.value,d=$.value;let{autoExpandAll:n,beforeFilterMethod:i,filterMethod:s,afterFilterMethod:u}=R.value,c=a,g=c,v="";if(r||0===r){v=""+r;r=s?e=>s({$tree:q,node:e,filterValue:v}):e=>-1<String(e[l]).toLowerCase().indexOf(v.toLowerCase());let e={$tree:q,filterValue:v};i&&i(e),c=t?g=_xeUtils.default.searchTree(a,r,{original:!0,isEvery:!0,children:o,mapChildren:d}):a.filter(r),A.lastFilterValue=v,(0,_vue.nextTick)(()=>{n?q.setAllExpandNode(!0).then(()=>{u&&u(e)}):u&&u(e)})}else{if(t&&(g=_xeUtils.default.searchTree(a,()=>!0,{original:!0,isEvery:!0,children:o,mapChildren:d}),c=g,e)){let e={$tree:q,filterValue:v};i&&i(e),(0,_vue.nextTick)(()=>{n?q.clearAllExpandNode().then(()=>{u&&u(e)}):u&&u(e)})}A.lastFilterValue=""}A.afterVisibleList=c,A.afterTreeList=g,G()},v=()=>{var e=V.transform;let{afterTreeList:t,treeExpandedMaps:i}=A;var r=$.value;let s={};if(e){let n=[];return _xeUtils.default.eachTree(t,(e,t,r,a,l)=>{var o=Y(e),d=Y(l);(!l||s[d]&&i[d])&&(s[o]=1,n.push(e))},{children:r}),ce(n),A.afterVisibleList=n}return A.afterVisibleList},X=e=>{var t=z.scrollYLoad;let{scrollYStore:r,nodeMaps:a}=A,l=A.afterVisibleList;e&&(se(),l=v());e=t?l.slice(r.startIndex,r.endIndex):l.slice(0);e.forEach((e,t)=>{e=Y(e),e=a[e];e&&(e.$index=t)}),z.treeList=e},ue=_xeUtils.default.debounce(()=>X(!0),350,{trailing:!0}),t=e=>{let{expandAll:t,expandNodeKeys:r,transform:a,rootParentValue:l,rootValues:o}=V,{initialized:d,scrollYStore:n}=A;var i=c.value,s=K.value,u=B.value,i=a?_xeUtils.default.toArrayTree(e,{key:i,parentKey:s,mapChildren:u,rootParentValue:l,rootValues:o}):e?e.slice(0):[],s=(A.treeFullData=i,Object.assign(n,{startIndex:0,endIndex:1,visibleSize:0}),ce(i));return ie(),X(!0),!s||V.height||V.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["[tree] height | max-height | virtual-y-config.enabled=false"]),ve().then(()=>{d||e&&e.length&&(A.initialized=!0,t?q.setAllExpandNode(!0):r&&r.length&&q.setExpandByNodeId(r,!0),ae(V.checkNodeKeys||[],!0)),ne();{let{lastScrollLeft:e,lastScrollTop:t}=A;xe().then(()=>{if(e||t)return A.lastScrollLeft=0,A.lastScrollTop=0,scrollTo(e,t)})}})},ce=e=>{var t=V.transform,r=k.value,e=e||A.treeFullData,t=!!t&&!!r.enabled&&-1<r.gt&&(0===r.gt||r.gt<e.length);return z.scrollYLoad=t},W=()=>{var e=z.scrollYLoad,{scrollYStore:t,afterVisibleList:r}=A;z.bodyHeight=e?r.length*t.rowHeight:0,z.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},ge=()=>{X(),W()},ve=()=>(0,_vue.nextTick)().then(()=>{var e=z.scrollYLoad,t=A.scrollYStore,r=N.value,a=k.value;let l=0,o;(o=r?o||r.children[0]:o)&&(l=o.offsetHeight),l=Math.max(20,l),t.rowHeight=l,(e?(r=p.value,e=Math.max(8,r?Math.ceil(r.clientHeight/l):0),r=Math.max(0,Math.min(2,_xeUtils.default.toNumber(a.oSize))),t.offsetSize=r,t.visibleSize=e,t.endIndex=Math.max(t.startIndex,e+r,t.endIndex),ge):W)()}),he=(e,t)=>{var r=p.value;return e&&!_xeUtils.default.isNumber(e)&&(t=e.top,e=e.left),r&&(_xeUtils.default.isNumber(e)&&(r.scrollLeft=e),_xeUtils.default.isNumber(t))&&(r.scrollTop=t),z.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},J=()=>{var e,t,r,a=A.scrollYStore,a=a.rowHeight,l=O.value;return l&&l.clientWidth&&l.clientHeight?(l=oe(),e=C.value,t=y.value,e=e?e.clientHeight:0,t=t?t.clientHeight:0,l&&(r=(0,_dom.getPaddingTopBottomSize)(l),z.parentHeight=Math.max(e+t+a,l.clientHeight-r-e-t)),ne(),ve().then(()=>{ne(),W()})):(0,_vue.nextTick)()},pe=()=>{var e=A.scrollYStore,{startIndex:t,endIndex:r,visibleSize:a,offsetSize:l,rowHeight:o}=e,d=p.value;d&&(d=d.scrollTop,d=Math.floor(d/o),o=Math.max(0,d-1-l),l=d+a+l,!(d<=t||r-a-1<=d)||t===o&&r===l||(e.startIndex=o,e.endIndex=l,ge()))},fe=e=>{var t=e.target,r=t.scrollTop,t=t.scrollLeft,a=t!==A.lastScrollLeft,l=r!==A.lastScrollTop;A.lastScrollTop=r,A.lastScrollLeft=t,z.scrollYLoad&&pe(),A.lastScrollTime=Date.now(),j("scroll",{scrollLeft:t,scrollTop:r,isX:a,isY:l},e)},xe=()=>{var e=p.value;return e&&(e.scrollTop=0,e.scrollLeft=0),A.lastScrollTop=0,(A.lastScrollLeft=0,_vue.nextTick)()},_e=(e,t)=>{var r=V.drag,a=A.nodeMaps,l=e.currentTarget,{trigger:o,isCrossDrag:d,isPeerDrag:n,disabledMethod:i}=P.value,s=Y(t);let u=r?"node"===o:!1;(0,_dom.getEventTargetNode)(e,l,"vxe-tree--node-item-switcher").flag||(r={node:t,$tree:q},o=a[s],!u)||!(d||n||o&&!o.level)||i&&i(r)||Re(e,{node:t})},me=(e,t)=>{var{showRadio:r,showCheckbox:a,trigger:l}=V,o=x.value,d=_.value;let n=!1,i=!1,s=!1,u=!1;M.value?(n=!0,Me(e,t)):z.currentNode&&(z.currentNode=null),"node"===l&&(u=!0,be(e,t)),r&&"node"===o.trigger&&(i=!0,Te(e,t)),a&&"node"===d.trigger&&(s=!0,ke(e,t)),j("node-click",{node:t,triggerCurrent:n,triggerRadio:i,triggerCheckbox:s,triggerExpand:u},e)},Ce=(e,t)=>{j("node-dblclick",{node:t},e)},ye=(a,l)=>{var e=V.menuConfig,t=M.value,r=S.value;(e?(0,_utils.isEnableConf)(r):r.enabled)&&({options:e,visibleMethod:r}=r,r&&!r({$tree:q,options:e,node:l})||(t?Me(a,l):z.currentNode&&(z.currentNode=null),_ui.VxeUI.contextMenu&&_ui.VxeUI.contextMenu.openByEvent(a,{options:e,events:{optionClick(e){var t=e.option,r=menus.get(t.code),r=r?r.treeMenuMethod:null,t={menu:t,node:l,$event:a,$tree:q,option:t};r&&r(t,a),j("menu-click",t,e.$event)}}}))),j("node-menu",{node:l},a)},Ne=o=>{var e=_.value;let r=V.loadMethod,d=e.checkStrictly;return new Promise(e=>{if(r){var t=A.nodeMaps;let a=Y(o),l=t[a];A.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(r({$tree:q,node:o})).then(r=>{var e=A.treeExpandLazyLoadedMaps;if(l.treeLoaded=!0,e[a]&&(e[a]=!1),r=_xeUtils.default.isArray(r)?r:[])return q.loadChildrenNode(o,r).then(e=>{var t=A.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),z.updateExpandedFlag++,!d&&q.isCheckedByCheckboxNodeId(a)&&le(e,!0),j("load-success",{node:o,data:r},new Event("load-success")),(0,_vue.nextTick)()});j("load-success",{node:o,data:r},new Event("load-success"))}).catch(e=>{var t=A.treeExpandLazyLoadedMaps;l.treeLoaded=!1,t[a]&&(t[a]=!1),j("load-error",{node:o,data:e},new Event("load-error"))}).finally(()=>(v(),X(),J()))}else e()})},Ee=(e,t)=>{let{lazy:a,accordion:r,toggleMethod:l}=V,{treeExpandLazyLoadedMaps:o,treeExpandedMaps:d}=A,n=A.nodeMaps,i=B.value,s=D.value,u=[],c=l?e.filter(e=>l({$tree:q,expanded:t,node:e})):e;r&&(c=c.length?[c[c.length-1]]:[],e=Y(c[0]),e=n[e])&&e.items.forEach(e=>{e=Y(e);d[e]&&delete d[e]});let g=[];return t?c.forEach(e=>{var t,r=Y(e);d[r]||(t=n[r],a&&e[s]&&!t.treeLoaded&&!o[r]?u.push(Ne(e)):e[i]&&e[i].length&&(d[r]=!0,g.push(e)))}):c.forEach(e=>{var t=Y(e);d[t]&&(delete d[t],g.push(e))}),z.updateExpandedFlag++,v(),X(),Promise.all(u).then(()=>J())},be=(e,t)=>{var r=V.lazy,{treeExpandedMaps:a,treeExpandLazyLoadedMaps:l}=A,o=Y(t),a=!a[o];e.stopPropagation(),r&&l[o]||Ee([t],a),j("node-expand",{node:t,expanded:a},e)},Q=()=>{var e=V.transform;let{selectCheckboxMaps:i,indeterminateRowMaps:s,afterTreeList:t}=A,o=B.value;var r=$.value;let{checkStrictly:a,checkMethod:u}=_.value;if(!a){let a={},l=[];_xeUtils.default.eachTree(t,e=>{var t=Y(e),r=e[o];r&&r.length&&!a[t]&&(a[t]=1,l.unshift([e,t,r]))},{children:e?r:o}),l.forEach(e=>{var t=e[0],r=e[1],e=e[2];let a=0,l=0,o=0;var d=e.length;e.forEach(u?e=>{var t=Y(e),r=i[t];u({$tree:q,node:e})?(r?a++:s[t]&&l++,o++):r?a++:s[t]&&l++}:e=>{e=Y(e);i[e]?a++:s[e]&&l++,o++});let n=!1;e=!(n=0<d?0<o?(0<a||0<l)&&a>=o:0<a&&a>=o||!!i[r]:i[r])&&(0<a||0<l);n?(i[r]=t,s[r]&&delete s[r]):(i[r]&&delete i[r],e?s[r]=t:s[r]&&delete s[r])}),z.updateCheckboxFlag++}},ke=(e,r)=>{e.preventDefault(),e.stopPropagation();var a=V.transform;let l=A.selectCheckboxMaps;var o=B.value,d=$.value,{checkStrictly:n,checkMethod:i}=_.value;let t=!!i;if(!(t=i?!i({$tree:q,node:r}):t)){i=Y(r);let t=!1;l[i]?delete l[i]:(t=!0,l[i]=r),n||_xeUtils.default.eachTree(_xeUtils.default.get(r,a?d:o),e=>{e=Y(e);t?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:a?d:o}),z.updateCheckboxFlag++,Q();i=_xeUtils.default.keys(l).map(_util.deNodeValue);s(i),j("checkbox-change",{node:r,value:i,checked:t},e)}},Me=(e,t)=>{e.preventDefault();var{currentMethod:r,trigger:a}=d.value,l=B.value,l=_xeUtils.default.get(t,l),l=l&&l.length;let o=!!r;if("child"===a){if(l)return}else if("parent"===a&&!l)return;(o=r?!r({node:t}):o)||(z.currentNode=t,j("current-change",{node:t,checked:!0},e))},Te=(e,t)=>{e.preventDefault(),e.stopPropagation();var r,a=x.value.checkMethod;let l=!!a;(l=a?!a({$tree:q,node:t}):l)||(a=Y(t),r=(0,_util.deNodeValue)(a),z.selectRadioKey=a,o(r),j("radio-change",{node:t,value:r,checked:!0},e))},Ie=()=>{var e=O.value;e&&e.clientWidth&&J()},Se={dispatchEvent:j,getNodeId:Y,getNodeById(e){var t=A.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},loadData(e){return t(e||[])},reloadData(e){return t(e||[])},clearCurrentNode(){return(z.currentNode=null,_vue.nextTick)()},getCurrentNodeId(){var e=z.currentNode;return e?(0,_util.deNodeValue)(Y(e)):null},getCurrentNode(){var e=z.currentNode,t=A.nodeMaps;if(e){t=t[Y(e)];if(t)return t.item}return null},setCurrentNodeId(e){var t=A.nodeMaps,t=t[(0,_util.enNodeValue)(e)];return z.currentNode=t?t.item:null,(0,_vue.nextTick)()},setCurrentNode(e){return z.currentNode=e,(0,_vue.nextTick)()},clearRadioNode(){return z.selectRadioKey=null,o(null),(0,_vue.nextTick)()},getRadioNodeId(){return z.selectRadioKey||null},getRadioNode(){var e=z.selectRadioKey,t=A.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},setRadioNodeId(e){return z.selectRadioKey=(0,_util.enNodeValue)(e),o(e),(0,_vue.nextTick)()},setRadioNode(e){return e?(e=Y(e),z.selectRadioKey=e,o((0,_util.deNodeValue)(e))):o(null),(0,_vue.nextTick)()},setCheckboxNode(e,t){return e&&(_xeUtils.default.isArray(e)||(e=[e]),le(e,t)),s(q.getCheckboxNodeIds()),(0,_vue.nextTick)()},setCheckboxByNodeId(e,t){return ae(e,t),s(q.getCheckboxNodeIds()),(0,_vue.nextTick)()},getCheckboxNodeIds(){var e=A.selectCheckboxMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getCheckboxNodes(){let{nodeMaps:r,selectCheckboxMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},clearCheckboxNode(){return A.indeterminateRowMaps={},A.selectCheckboxMaps={},z.updateCheckboxFlag++,s([]),Q(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))},setAllCheckboxNode(e){var t=V.transform;let r={};var a=B.value,l=$.value;let o=[],d=[];return e&&_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=Y(e);o.push(t),d.push(e),r[t]=!0},{children:t?l:a}),A.indeterminateRowMaps={},A.selectCheckboxMaps=r,z.updateCheckboxFlag++,Q(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:o,checkNodes:d}))},clearExpandNode(){return Se.clearAllExpandNode()},clearAllExpandNode(){let e=z.scrollYLoad;var{nodeMaps:t,scrollYStore:r}=A;return _xeUtils.default.each(t,e=>{e.treeLoaded=!1}),A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,r.startIndex=0,r.endIndex=1,v(),X(),J().then(()=>(e&&pe(),J()))},setExpandByNodeId(e,t){let r=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);l(e,t,r)}),z.updateExpandedFlag++),v(),X(),J()},getExpandNodeIds(){var e=A.treeExpandedMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getExpandNodes(){let{nodeMaps:r,treeExpandedMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},setExpandNode(e,t){let r=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);l(e,t,r)}),z.updateExpandedFlag++),v(),X(),J()},toggleExpandByNodeId(e){let t=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);l(e,!t[""+e],t)}),z.updateExpandedFlag++),v(),X(),J()},toggleExpandNode(e){let t=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);l(e,!t[e],t)}),z.updateExpandedFlag++),v(),X(),J()},setAllExpandNode(e){var t=V.transform;let r=z.scrollYLoad,{scrollYStore:a,treeExpandedMaps:l}=A,o=B.value;var d=$.value;return e?_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=_xeUtils.default.get(e,o);t&&t.length&&(t=Y(e),l[t]=!0)},{children:t?d:o}):A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,a.startIndex=0,a.endIndex=1,v(),X(),J().then(()=>(r&&pe(),J()))},reloadExpandNode(e){var t=V.lazy;return t?(Se.clearExpandLoaded(e),Ne(e)):J()},clearExpandLoaded(e){var t=V.lazy,r=A.nodeMaps;return t&&(t=r[Y(e)])&&(t.treeLoaded=!1),J()},loadChildrenNode(t,e){let{lazy:r,transform:a}=V,n=A.nodeMaps;if(!r)return Promise.resolve([]);let l=B.value,o=$.value,i=n[Y(t)],s=i?i.level:0,u=i?i.nodes:[];return(e=>{let r=b.value;return Promise.resolve(e.map(e=>{var t,e=Object.assign({},e);return Y(e)||(t=getNodeUniqueId(),_xeUtils.default.set(e,r,t)),e}))})(e).then(e=>(_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{var d=Y(e);n[d]={item:e,index:-1,$index:-1,_index:-1,items:r,parent:l||i.item,nodes:u.concat(o),level:s+o.length,treeIndex:-1,lineCount:0,treeLoaded:!1}},{children:l}),t[l]=e,a&&(t[o]=e),G(),e))},isExpandByNode:e=>{var t=z.updateExpandedFlag,r=A.treeExpandedMaps,e=Y(e);return!(!t||!r[e])},isCheckedByRadioNodeId:F,isCheckedByRadioNode:e=>F(Y(e)),isCheckedByCheckboxNodeId:te,isIndeterminateByCheckboxNode:e=>re(Y(e)),isCheckedByCheckboxNode:e=>te(Y(e)),getCheckboxIndeterminateNodes(){let{nodeMaps:r,indeterminateRowMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},recalculate:J,getFullData(){var e=A.treeFullData;return e.slice(0)},scrollTo:he,scrollToNode(e){return q.scrollToNodeId(Y(e))},scrollToNodeId(t){var e=V.transform;let{scrollYStore:r,afterTreeList:a}=A;var l=B.value,o=$.value;let d=p.value;if(t&&d)if(e){e=_xeUtils.default.findTree(a,e=>Y(e)===t,{children:e?o:l});if(e)return q.setExpandNode(e.nodes,!0).then(()=>{var e=_xeUtils.default.findIndexOf(A.afterVisibleList,e=>Y(e)===t);if(-1<e)return e=Math.max(0,(e-1)*r.rowHeight),he(d.scrollLeft,e)})}else{o=d.querySelector(`.vxe-tree--node-wrapper[nodeid="${t}"]`);if(o)return he(d.scrollLeft,o.offsetTop)}return J()},clearScroll:xe},Le=()=>{var e=O.value;if(e){let t="node--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}},we=e=>{var t=O.value;if(t){e=Y(e);_xeUtils.default.arrayEach(t.querySelectorAll(`.vxe-tree--node-wrapper[nodeid="${e}"]`),e=>{(0,_dom.addClass)(e,"node--drag-origin")})}},De=e=>{var t=z.dragNode,r=P.value.tooltipMethod;let a="";a=r?""+(r({$tree:q,node:t})||""):getI18n("vxe.tree.dragTip",[e.textContent||""]),z.dragTipText=a},n=()=>{var e=E.value,t=f.value;e&&(e.style.display=""),t&&(t.style.display="")},Z=()=>{g.node=null},Ue=()=>{var e=z.dragNode;e&&(n(),Le(),Z(),z.dragNode=null)},Re=(e,t)=>{e.stopPropagation();var r=t.node,{trigger:a,dragStartMethod:l}=P.value,o=e.currentTarget,a="node"===a?o:o.parentElement.parentElement;Le(),l&&!l(t)?(a.draggable=!1,z.dragNode=null,n()):(z.dragNode=r,a.draggable=!0,we(r),De(a),j("node-dragstart",t,e))},He=()=>{Ue()},Fe=(e,t,r,a)=>{var l=O.value;if(l){var o=A.prevDragToChild,d=l.getBoundingClientRect(),n=l.clientHeight;if(t){var i=f.value;if(i)if(r){var s=t.getBoundingClientRect();let e=t.clientHeight;t=Math.max(1,s.y-d.y);t+e>n&&(e=n-t),i.style.display="block",i.style.top=t+"px",i.style.height=e+"px",i.setAttribute("drag-pos",a),i.setAttribute("drag-to-child",o?"y":"n")}else i.style.display=""}s=E.value;s&&(s.style.display="block",s.style.top=Math.min(l.clientHeight-l.scrollTop-s.clientHeight,e.clientY-d.y)+"px",s.style.left=Math.min(l.clientWidth-l.scrollLeft-s.clientWidth-1,e.clientX-d.x)+"px",s.setAttribute("drag-status",r?o?"sub":"normal":"disabled"))}},ee=()=>{var e=O.value;n(),Le(),(0,_anime.clearRowAnimate)(e,[".vxe-tree--node-wrapper"]),A.prevDragToChild=!1,z.dragNode=null},Ve=(g,v,h,p,e)=>{let f=V.transform,{nodeMaps:x,treeFullData:_,afterVisibleList:m}=A;var C=P.value;let{animation:y,isCrossDrag:N,isPeerDrag:E,isSelfToChildDrag:b,dragEndMethod:t,dragToChildMethod:k}=C;C=t||(C?C.dragEndMethod:null);let M=c.value,T=K.value,I=B.value,S=$.value,L="bottom"===p?1:0,w=O.value,D={status:!1};if(w&&h&&v){if(h!==v){var U={oldNode:v,newNode:h,dragNode:v,dragPos:p,dragToChild:!!e,offsetIndex:L};let r=Y(v);var R=x[r]||{};let s=R._index,u=0,c=-1,a=(y&&(H=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${h}"]`),F=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${r}"]`),(H=H||F)&&(u=H.offsetHeight),F)&&(c=F.offsetTop),-1),l=-1,t={},o=!1,d=R;var H=Y(h);let n=x[H];if(f&&d&&n){var F=d.level,R=n.level;if(_xeUtils.default.eachTree([v],e=>{t[Y(e)]=e},{children:S}),F&&R)if(E&&!N){if(d.item[T]!==n.item[T])return ee(),Z(),D}else{if(!N)return ee(),Z(),D;if(t[H]&&(o=!0,!N||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),D}else if(F){if(!N)return ee(),Z(),D}else if(R){if(!N)return ee(),Z(),D;if(t[H]&&(o=!0,!N||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),D}}let i=b&&k?k(U):e;return Promise.resolve(!C||C(U)).then(e=>{var t;return e?(f?d&&n&&(e=_xeUtils.default.toTreeArray(A.afterTreeList,{updated:!1,key:M,parentKey:T,children:S}),t=q.findNodeIndexOf(e,v),e.splice(t,1),t=q.findNodeIndexOf(e,h)+L,e.splice(t,0,v),o&&N&&b&&_xeUtils.default.each(v[I],e=>{e[T]=v[T]}),v[T]=i?h[M]:h[T],A.treeFullData=_xeUtils.default.toArrayTree(e,{key:M,parentKey:T,children:I,mapChildren:S})):(a=q.findNodeIndexOf(m,v),t=q.findNodeIndexOf(_,v),m.splice(a,1),_.splice(t,1),e=q.findNodeIndexOf(m,h),t=q.findNodeIndexOf(_,h),l=e+L,e=t+L,m.splice(l,0,v),_.splice(e,0,v)),ie(),X(f),f||G(),Q(),z.scrollYLoad&&W(),g&&j("node-dragend",{oldNode:v,newNode:h,dragNode:v,dragPos:p,dragToChild:i,offsetIndex:L,_index:{newIndex:l,oldIndex:a}},g),(0,_vue.nextTick)().then(()=>{if(y){var a=z.treeList,l=A.nodeMaps,o=l[r],d=o._index,n=a[0],l=l[Y(n)],n=w;if(l){var l=l._index,i=l+a.length;let e=-1,t=-1,r=1;s<l?(e=0,t=d-l):s>i?(i=o.$index,e=i+1,t=a.length,r=-1):d>s?(e=s-l,t=e+d-s):(e=d-l,t=e+s-d+1,r=-1);o=a.slice(e,t);if(o.length){let t=[];o.forEach(e=>{e=Y(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});i=n.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(i,r*u)}}l=[`.vxe-tree--node-wrapper[nodeid="${r}"]`],d=n.querySelectorAll(l.join(",")),a=d[0];-1<c&&a&&(0,_anime.moveRowAnimateToTb)(d,c-a.offsetTop)}J()}).then(()=>({status:!0}))):D}).catch(()=>D).then(e=>(ee(),Z(),e))}ee(),Z()}return Promise.resolve(D)},Oe=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},Ae=e=>{var t=V.lazy,r=z.dragNode,{nodeMaps:a,prevDragNode:l,prevDragPos:o,prevDragToChild:d}=A,n=D.value;t&&d&&(t=a[Y(l)],l[n])&&(!t||!t.treeLoaded)||Ve(e,r,l,o,d)},ze=e=>{var t,r,{lazy:a,transform:l}=V,o=z.dragNode,d=A.nodeMaps,n=P.value,i=K.value,s=D.value,{isCrossDrag:n,isPeerDrag:u,isToChildDrag:c}=n,g=(o||n||e.preventDefault(),(0,_dom.hasControlKey)(e)),v=e.currentTarget,h=v.getAttribute("nodeid")||"",d=d[h];d&&(e.preventDefault(),t=d.item,r=e.clientY-v.getBoundingClientRect().y<v.clientHeight/2?"top":"bottom",A.prevDragToChild=!!(l&&n&&c&&g),A.prevDragNode=t,A.prevDragPos=r,o&&Y(o)===h||g&&a&&t[s]&&d&&!d.treeLoaded||!n&&l&&(u?o[i]!==t[i]:d.level)?Fe(e,v,!1,r):(Fe(e,v,!0,r),j("node-dragover",{oldRNode:o,targetNode:t,dragPos:r},e)))};e={handleData:X,cacheNodeMap:ie,updateAfterDataIndex:G,updateCheckboxStatus:Q,updateYSpace:W,findNodeIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>q.eqNode(e,t)):-1},eqNode(e,t){return!(!e||!t||e!==t&&Y(e)!==Y(t))},handleCrossTreeNodeDragCancelEvent(){ee(),Z()},handleCrossTreeNodeDragFinishEvent(){},handleCrossTreeNodeDragInsertEvent(){},handleCrossTreeNodeDragoverEmptyEvent(){},hideCrossTreeNodeDropClearStatus(){n()}};Object.assign(q,Se,e);let Ke=(e,t)=>{var{drag:r,transform:a}=V,l=A.nodeMaps,{showIcon:o,isPeerDrag:d,isCrossDrag:n,visibleMethod:i}=P.value;let s={node:e,$tree:q};if(r&&o&&a&&(!i||i(s))){e=l[t];if(e&&(d||n||!e.level)){var{icon:r,trigger:o,disabledMethod:a}=P.value;let t=a&&a(s);i={};return"node"!==o&&(i.onMousedown=e=>{t||Re(e,s)},i.onMouseup=He),(0,_vue.h)("div",Object.assign({class:["vxe-tree--drag-handle",{"is--disabled":t}]},i),[(0,_vue.h)("i",{class:r||getIcon().TREE_DRAG})])}}return(0,_ui.renderEmptyElement)(q)},Be=(t,e,r)=>{var a=V.showRadio,{showIcon:l,checkMethod:o,visibleMethod:d}=x.value,d=!d||d({$tree:q,node:t});let n=!!o;return a&&l&&d?(o&&(n=!o({$tree:q,node:t})),(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":r,"is--disabled":n}],onClick:e=>{n||Te(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",r?getIcon().RADIO_CHECKED:getIcon().RADIO_UNCHECKED]})])):(0,_ui.renderEmptyElement)(q)},$e=(t,e,r,a)=>{var l=V.showCheckbox,{showIcon:o,checkMethod:d,visibleMethod:n}=_.value,n=!n||n({$tree:q,node:t});let i=!!d;return l&&o&&n?(d&&(i=!d({$tree:q,node:t})),(0,_vue.h)("div",{class:["vxe-tree--checkbox-option",{"is--checked":r,"is--indeterminate":a,"is--disabled":i}],onClick:e=>{i||ke(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",a?getIcon().CHECKBOX_INDETERMINATE:r?getIcon().CHECKBOX_CHECKED:getIcon().CHECKBOX_UNCHECKED]})])):(0,_ui.renderEmptyElement)(q)},Pe=(t,e)=>{var{lazy:r,drag:a,transform:l,showRadio:o,showCheckbox:d,showLine:n,iconOpen:i,iconClose:s,iconLoaded:u,showIcon:c}=V,{currentNode:g,selectRadioKey:v,updateExpandedFlag:h}=z,{afterTreeList:p,nodeMaps:f,treeExpandedMaps:x,treeExpandLazyLoadedMaps:_}=A,m=B.value,C=U.value,y=D.value,m=_xeUtils.default.get(t,m),m=m&&m.length,N=w.icon,E=w.title,b=w.extra,h=h&&x[e],x=f[e],f=_xeUtils.default.get(t,C),C=x.level;let k=!1,M=(o&&(k=e===String(v)),!1),T=!1,I=(d&&(M=te(e),T=re(e)),!1),S=!1,L=!1;r&&(S=!!_[e],I=t[y],L=!!x.treeLoaded);o=x.items[x.treeIndex-1],v={node:t,isExpand:h},d={onMousedown(e){_e(e,t)},onMouseup:He,onClick(e){me(e,t)},onDblclick(e){Ce(e,t)},onContextmenu(e){ye(e,t)}};return a&&l&&(d.onDragstart=Oe,d.onDragend=Ae,d.onDragover=ze),(0,_vue.h)("div",Object.assign({key:e,class:["vxe-tree--node-wrapper","node--level-"+C],nodeid:e},d),[(0,_vue.h)("div",{class:["vxe-tree--node-item",{"is--current":g&&e===Y(g),"is-radio--checked":k,"is-checkbox--checked":M,"is-checkbox--indeterminate":T}]},[n?(0,_vue.h)("div",{class:"vxe-tree--node-line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--node-line",style:{height:`${Y(p[0])===e?1:(0,_util.calcTreeLine)(q,t,o)}px`}})]):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{class:"vxe-tree--node-item-switcher"},c&&(!r||L?m:I)?[(0,_vue.h)("div",{class:"vxe-tree--node-item-icon",onClick(e){be(e,t)}},N?(0,_vn.getSlotVNs)(N(v)):[(0,_vue.h)("i",{class:S?u||getIcon().TREE_NODE_LOADED:h?i||getIcon().TREE_NODE_OPEN:s||getIcon().TREE_NODE_CLOSE})])]:[]),Ke(t,e),Be(t,e,k),$e(t,e,M,T),(0,_vue.h)("div",{class:"vxe-tree--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-tree--node-item-title"},E?(0,_vn.getSlotVNs)(E(v)):""+f),b?(0,_vue.h)("div",{class:"vxe-tree--node-item-extra"},(0,_vn.getSlotVNs)(b(v))):(0,_ui.renderEmptyElement)(q)])])])},qe=e=>{var t=V.transform;let r=A.treeExpandedMaps,a=B.value;if(!e.length)return[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder"},getI18n("vxe.tree.searchEmpty"))];let l=[];return e.forEach(t?e=>{var t=Y(e);l.push(Pe(e,t))}:e=>{var t=Y(e),e=(l.push(Pe(e,t)),_xeUtils.default.get(e,a));e&&e.length&&r[t]&&l.push(...qe(e))}),l};let Ye=(0,_vue.ref)(0),je=((0,_vue.watch)(()=>V.data?V.data.length:0,()=>{Ye.value++}),(0,_vue.watch)(()=>V.data,()=>{Ye.value++}),(0,_vue.watch)(Ye,()=>{t(V.data||[])}),(0,_vue.watch)(()=>V.checkNodeKey,e=>{z.selectRadioKey=(0,_util.enNodeValue)(e)}),(0,_vue.ref)(0)),r=((0,_vue.watch)(()=>V.checkNodeKeys?V.checkNodeKeys.length:0,()=>{je.value++}),(0,_vue.watch)(()=>V.checkNodeKeys,()=>{je.value++}),(0,_vue.watch)(je,()=>{var e;e=V.checkNodeKeys||[],A.selectCheckboxMaps={},ae(e,!0)}),(0,_vue.watch)(()=>V.filterValue,()=>{ue(new Event("filter"))}),(0,_vue.ref)(0)),i=((0,_vue.watch)(()=>V.height,()=>{r.value++}),(0,_vue.watch)(()=>V.minHeight,()=>{r.value++}),(0,_vue.watch)(()=>V.maxHeight,()=>{r.value++}),(0,_vue.watch)(r,()=>{J()}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>V.rootParentValue,()=>{i.value++}),(0,_vue.watch)(()=>V.rootValues?V.rootValues.length:0,()=>{i.value++}),(0,_vue.watch)(()=>V.rootValues,()=>{i.value++}),(0,_vue.watch)(i,()=>{t(V.data||[])}),(0,_vue.onMounted)(()=>{var{transform:e,drag:t,menuConfig:r}=V,a=P.value,t=(t&&!e&&(0,_log.errLog)("vxe.error.notSupportProp",["drag","transform=false","transform=true"]),a.isCrossTreeDrag&&(0,_log.errLog)("vxe.error.notProp",["drag-config.isCrossTreeDrag"]),_ui.VxeUI.getComponent("VxeContextMenu"));r&&!t&&(0,_log.errLog)("vxe.error.reqComp",["vxe-context-menu"]),V.autoResize&&(e=O.value,a=oe(),r=_ui.globalResize.create(()=>{V.autoResize&&J()}),e&&r.observe(e),a&&r.observe(a),A.resizeObserver=r),_ui.globalEvents.on(q,"resize",Ie)}),(0,_vue.onBeforeUnmount)(()=>{var e=A.resizeObserver;e&&e.disconnect(),_ui.globalEvents.off(q,"resize"),_xeUtils.default.assign(z,createReactData()),_xeUtils.default.assign(A,createInternalData())}),z.selectRadioKey=(0,_util.enNodeValue)(V.checkNodeKey),t(V.data||[]),q.renderVN=()=>{var{loading:e,trigger:t,showLine:r}=V,{bodyHeight:a,topSpaceHeight:l,treeList:o}=z,d=m.value,n=x.value,i=_.value,s=I.value,u=T.value,c=L.value;let g=w.loading;var v=w.header,h=w.footer;return(0,_vue.h)("div",{ref:O,class:["vxe-tree",{["size--"+d]:d,"show--line":r,"checkbox--highlight":i.highlight,"radio--highlight":n.highlight,"node--hover":u,"node--trigger":"node"===t,"is--loading":e}]},[v?(0,_vue.h)("div",{ref:C,class:"vxe-tree--header-wrapper"},v({$tree:q})):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{ref:p,class:"vxe-tree--node-list-wrapper",style:c,onScroll:fe},[(0,_vue.h)("div",{class:"vxe-tree--y-space",style:{height:a?a+"px":""}}),(0,_vue.h)("div",{ref:N,class:"vxe-tree--node-list-body",style:{transform:`translateY(${l}px)`}},qe(o))]),h?(0,_vue.h)("div",{ref:y,class:"vxe-tree--footer-wrapper"},h({$tree:q})):(0,_ui.renderEmptyElement)(q),(()=>{var e=V.drag,{dragNode:t,dragTipText:r}=z,a=P.value;return e?(0,_vue.h)("div",{class:"vxe-tree--drag-wrapper"},[(0,_vue.h)("div",{ref:f,class:["vxe-tree--drag-node-line",{"is--guides":a.showGuidesStatus}]}),t&&a.showDragTip?(0,_vue.h)("div",{ref:E,class:"vxe-tree--drag-sort-tip"},[(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-status"},[(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-normal-status",getIcon().TREE_DRAG_STATUS_NODE]}),(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-sub-status",getIcon().TREE_DRAG_STATUS_SUB_NODE]}),(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-disabled-status",getIcon().TREE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-content"},r)])]):(0,_ui.renderEmptyElement)(q)]):(0,_ui.renderEmptyElement)(q)})(),(0,_vue.h)(_loading.default,{class:"vxe-tree--loading",modelValue:e,icon:s.icon,text:s.text},g?{default:()=>g({$tree:q})}:{})])},(0,_vue.provide)("$xeTree",q),q},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_util=require("./util"),_log=require("../../ui/src/log"),_store=require("./store"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_anime=require("../../ui/src/anime"),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{menus,getConfig,getI18n,getIcon}=_ui.VxeUI;function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createInternalData(){return{treeFullData:[],afterTreeList:[],afterVisibleList:[],nodeMaps:{},selectCheckboxMaps:{},indeterminateRowMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},lastScrollTime:0}}function createReactData(){return{parentHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,currentNode:null,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,dragNode:null,dragTipText:""}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTree",props:{data:Array,autoResize:{type:Boolean,default:()=>getConfig().tree.autoResize},height:[String,Number],maxHeight:{type:[String,Number],default:()=>getConfig().tree.maxHeight},minHeight:{type:[String,Number],default:()=>getConfig().tree.minHeight},loading:Boolean,loadingConfig:Object,accordion:{type:Boolean,default:()=>getConfig().tree.accordion},childrenField:{type:String,default:()=>getConfig().tree.childrenField},valueField:{type:String,default:()=>getConfig().tree.valueField},keyField:{type:String,default:()=>getConfig().tree.keyField},parentField:{type:String,default:()=>getConfig().tree.parentField},titleField:{type:String,default:()=>getConfig().tree.titleField},hasChildField:{type:String,default:()=>getConfig().tree.hasChildField},mapChildrenField:{type:String,default:()=>getConfig().tree.mapChildrenField},transform:Boolean,isCurrent:Boolean,isHover:Boolean,expandAll:Boolean,expandNodeKeys:Array,showLine:{type:Boolean,default:()=>getConfig().tree.showLine},trigger:String,indent:{type:Number,default:()=>getConfig().tree.indent},showRadio:{type:Boolean,default:()=>getConfig().tree.showRadio},checkNodeKey:{type:[String,Number],default:()=>getConfig().tree.checkNodeKey},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>getConfig().tree.showCheckbox},checkNodeKeys:{type:Array,default:()=>getConfig().tree.checkNodeKeys},checkboxConfig:Object,nodeConfig:Object,lazy:Boolean,toggleMethod:Function,loadMethod:Function,drag:{type:Boolean,default:()=>getConfig().tree.drag},dragConfig:Object,menuConfig:Object,showIcon:{type:Boolean,default:!0},iconOpen:{type:String,default:()=>getConfig().tree.iconOpen},iconClose:{type:String,default:()=>getConfig().tree.iconClose},iconLoaded:{type:String,default:()=>getConfig().tree.iconLoaded},rootParentValue:{type:[String,Number],default:()=>getConfig().tree.rootParentValue},rootValues:{type:Array,default:()=>getConfig().tree.rootValues},filterValue:[String,Number],filterConfig:Object,size:{type:String,default:()=>getConfig().tree.size||getConfig().size},virtualYConfig:Object},emits:["update:modelValue","update:checkNodeKey","update:checkNodeKeys","node-click","node-dblclick","current-change","radio-change","checkbox-change","load-success","load-error","scroll","node-dragstart","node-dragover","node-dragend","node-expand","node-menu","menu-click"],setup(V,u){let{emit:a,slots:w}=u;var e=_xeUtils.default.uniqueId();let _=(0,_ui.useSize)(V).computeSize,O=(0,_vue.ref)(),m=(0,_vue.ref)(),C=(0,_vue.ref)(),p=(0,_vue.ref)(),y=(0,_vue.ref)(),N=(0,_vue.ref)(),E=(0,_vue.ref)(),h=(0,_store.getCrossTreeDragNodeInfo)(),A=createInternalData(),z=(0,_vue.reactive)(createReactData()),b={refElem:O},U=(0,_vue.computed)(()=>V.titleField||"title"),c=(0,_vue.computed)(()=>V.keyField||"id"),k=(0,_vue.computed)(()=>{var e=c.value;return V.valueField||e}),K=(0,_vue.computed)(()=>V.parentField||"parentId"),B=(0,_vue.computed)(()=>V.childrenField||"children"),$=(0,_vue.computed)(()=>V.mapChildrenField||"mapChildren"),D=(0,_vue.computed)(()=>V.hasChildField||"hasChild"),M=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.virtualYConfig,V.virtualYConfig)),T=(0,_vue.computed)(()=>{var e=d.value.isCurrent;return _xeUtils.default.isBoolean(e)?e:V.isCurrent}),I=(0,_vue.computed)(()=>{var e=d.value.isHover;return _xeUtils.default.isBoolean(e)?e:V.isHover}),f=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.radioConfig,V.radioConfig)),x=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.checkboxConfig,V.checkboxConfig)),d=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.nodeConfig,V.nodeConfig)),S=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.loadingConfig,V.loadingConfig)),P=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.dragConfig,V.dragConfig)),L=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.menuConfig,V.menuConfig)),R=(0,_vue.computed)(()=>{var e=V.indent,{customHeight:t,customMinHeight:r,customMaxHeight:a}=z,l=x.value.nodeStyle,o={};return t&&(o.height=(0,_dom.toCssUnit)(t)),r&&(o.minHeight=(0,_dom.toCssUnit)(r)),a&&(o.maxHeight=(0,_dom.toCssUnit)(a)),e&&(o["--vxe-ui-tree-node-indent"]=(0,_dom.toCssUnit)(e)),l&&({indeterminateColor:t,checkedColor:r}=l,t&&(o["--vxe-ui-tree-node-checkbox-indeterminate-color"]=t),r)&&(o["--vxe-ui-tree-node-checkbox-checked-color"]=r),o}),H=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.filterConfig,V.filterConfig)),F={computeKeyField:c,computeParentField:K,computeChildrenField:B,computeMapChildrenField:$,computeRadioOpts:f,computeCheckboxOpts:x,computeNodeOpts:d,computeDragOpts:P},q={xID:e,props:V,context:u,internalData:A,reactData:z,getRefMaps:()=>b,getComputeMaps:()=>F},Y=e=>{var t=k.value,e=_xeUtils.default.get(e,t);return(0,_util.enNodeValue)(e)};let te=e=>{var t=z.selectRadioKey;return t===e};let re=e=>{var t=z.updateCheckboxFlag,r=A.selectCheckboxMaps;return!(!t||!r[e])};let ae=e=>{var t=z.updateCheckboxFlag,r=A.indeterminateRowMaps;return!(!t||!r[e])};let s=e=>{a("update:checkNodeKeys",e)},o=e=>{a("update:checkNodeKey",e)},le=(e,r)=>{let a=A.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let t=[];e.forEach(e=>{e=(0,_util.enNodeValue)(e),e=a[e];e&&t.push(e.item)}),oe(t,r)}return(0,_vue.nextTick)()},oe=(e,r)=>{var t=V.transform;let a=A.selectCheckboxMaps;var l=$.value,o=B.value,d=x.value.checkStrictly,n=e=>{var t=Y(e);r?a[t]||(a[t]=e):a[t]&&delete a[t]};d?e.forEach(n):_xeUtils.default.eachTree(e,n,{children:t?l:o}),z.updateCheckboxFlag++,Q()},l=(e,t,r)=>{t?r[e]||(r[e]=!0):r[e]&&delete r[e]},j=(e,t,r)=>{a(e,(0,_ui.createEvent)(r,{$tree:q},t))},de=()=>{var e=O.value;return e?e.parentElement:null},ne=e=>{var t=z.parentHeight,e=V[e];let r=0;return r=e?"100%"===e||"auto"===e?t:(r=(0,_dom.isScale)(e)?Math.floor((_xeUtils.default.toInteger(e)||1)/100*t):_xeUtils.default.toNumber(e),Math.max(40,r)):r},ie=()=>{z.customHeight=ne("height"),z.customMinHeight=ne("minHeight"),z.customMaxHeight=ne("maxHeight"),!z.scrollYLoad||z.customHeight||z.customMinHeight||(z.customHeight=300)},se=()=>{var e=A.treeFullData;let n=k.value;var t=B.value;let i={};_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{let d=Y(e);d||(d=getNodeUniqueId(),_xeUtils.default.set(e,n,d)),i[d]={item:e,index:t,$index:-1,_index:-1,items:r,parent:l,nodes:o,level:o.length-1,treeIndex:t,lineCount:0,treeLoaded:!1}},{children:t}),A.nodeMaps=i},G=()=>{var e=V.transform;let{afterTreeList:t,nodeMaps:o}=A;var r=B.value,a=$.value;let d=0;_xeUtils.default.eachTree(t,(e,t,r)=>{var a=Y(e),l=o[a];l?(l.items=r,l.treeIndex=t,l._index=d):(l={item:e,index:t,$index:-1,_index:d,items:r,parent:parent,nodes:[],level:0,treeIndex:t,lineCount:0,treeLoaded:!1},o[a]=l),d++},{children:e?a:r})},ue=()=>{var{transform:t,filterValue:r}=V,{treeFullData:a,lastFilterValue:e}=A;let l=U.value;var o=B.value,d=$.value;let{autoExpandAll:n,beforeFilterMethod:i,filterMethod:s,afterFilterMethod:u}=H.value,c=a,v=c,g="";if(r||0===r){g=""+r;r=s?e=>s({$tree:q,node:e,filterValue:g}):e=>-1<String(e[l]).toLowerCase().indexOf(g.toLowerCase());let e={$tree:q,filterValue:g};i&&i(e),c=t?v=_xeUtils.default.searchTree(a,r,{original:!0,isEvery:!0,children:o,mapChildren:d}):a.filter(r),A.lastFilterValue=g,(0,_vue.nextTick)(()=>{n?q.setAllExpandNode(!0).then(()=>{u&&u(e)}):u&&u(e)})}else{if(t&&(v=_xeUtils.default.searchTree(a,()=>!0,{original:!0,isEvery:!0,children:o,mapChildren:d}),c=v,e)){let e={$tree:q,filterValue:g};i&&i(e),(0,_vue.nextTick)(()=>{n?q.clearAllExpandNode().then(()=>{u&&u(e)}):u&&u(e)})}A.lastFilterValue=""}A.afterVisibleList=c,A.afterTreeList=v,G()},g=()=>{var e=V.transform;let{afterTreeList:t,treeExpandedMaps:i}=A;var r=$.value;let s={};if(e){let n=[];return _xeUtils.default.eachTree(t,(e,t,r,a,l)=>{var o=Y(e),d=Y(l);(!l||s[d]&&i[d])&&(s[o]=1,n.push(e))},{children:r}),ve(n),A.afterVisibleList=n}return A.afterVisibleList},X=e=>{var t=z.scrollYLoad;let{scrollYStore:r,nodeMaps:a}=A,l=A.afterVisibleList;e&&(ue(),l=g());e=t?l.slice(r.startIndex,r.endIndex):l.slice(0);e.forEach((e,t)=>{e=Y(e),e=a[e];e&&(e.$index=t)}),z.treeList=e},ce=_xeUtils.default.debounce(()=>X(!0),350,{trailing:!0}),t=e=>{let{expandAll:t,expandNodeKeys:r,transform:a,rootParentValue:l,rootValues:o}=V,{initialized:d,scrollYStore:n}=A;var i=c.value,s=K.value,u=B.value,i=a?_xeUtils.default.toArrayTree(e,{key:i,parentKey:s,mapChildren:u,rootParentValue:l,rootValues:o}):e?e.slice(0):[],s=(A.treeFullData=i,Object.assign(n,{startIndex:0,endIndex:1,visibleSize:0}),ve(i));return se(),X(!0),!s||V.height||V.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["[tree] height | max-height | virtual-y-config.enabled=false"]),he().then(()=>{d||e&&e.length&&(A.initialized=!0,t?q.setAllExpandNode(!0):r&&r.length&&q.setExpandByNodeId(r,!0),le(V.checkNodeKeys||[],!0)),ie();{let{lastScrollLeft:e,lastScrollTop:t}=A;_e().then(()=>{if(e||t)return A.lastScrollLeft=0,A.lastScrollTop=0,scrollTo(e,t)})}})},ve=e=>{var t=V.transform,r=M.value,e=e||A.treeFullData,t=!!t&&!!r.enabled&&-1<r.gt&&(0===r.gt||r.gt<e.length);return z.scrollYLoad=t},W=()=>{var e=z.scrollYLoad,{scrollYStore:t,afterVisibleList:r}=A;z.bodyHeight=e?r.length*t.rowHeight:0,z.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},ge=()=>{X(),W()},he=()=>(0,_vue.nextTick)().then(()=>{var e=z.scrollYLoad,t=A.scrollYStore,r=y.value,a=M.value;let l=0,o;(o=r?o||r.children[0]:o)&&(l=o.offsetHeight),l=Math.max(20,l),t.rowHeight=l,(e?(r=p.value,e=Math.max(8,r?Math.ceil(r.clientHeight/l):0),r=Math.max(0,Math.min(2,_xeUtils.default.toNumber(a.oSize))),t.offsetSize=r,t.visibleSize=e,t.endIndex=Math.max(t.startIndex,e+r,t.endIndex),ge):W)()}),pe=(e,t)=>{var r=p.value;return e&&!_xeUtils.default.isNumber(e)&&(t=e.top,e=e.left),r&&(_xeUtils.default.isNumber(e)&&(r.scrollLeft=e),_xeUtils.default.isNumber(t))&&(r.scrollTop=t),z.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},J=()=>{var e,t,r,a=A.scrollYStore,a=a.rowHeight,l=O.value;return l&&l.clientWidth&&l.clientHeight?(l=de(),e=m.value,t=C.value,e=e?e.clientHeight:0,t=t?t.clientHeight:0,l&&(r=(0,_dom.getPaddingTopBottomSize)(l),z.parentHeight=Math.max(e+t+a,l.clientHeight-r-e-t)),ie(),he().then(()=>{ie(),W()})):(0,_vue.nextTick)()},fe=()=>{var e=A.scrollYStore,{startIndex:t,endIndex:r,visibleSize:a,offsetSize:l,rowHeight:o}=e,d=p.value;d&&(d=d.scrollTop,d=Math.floor(d/o),o=Math.max(0,d-1-l),l=d+a+l,!(d<=t||r-a-1<=d)||t===o&&r===l||(e.startIndex=o,e.endIndex=l,ge()))},xe=e=>{var t=e.target,r=t.scrollTop,t=t.scrollLeft,a=t!==A.lastScrollLeft,l=r!==A.lastScrollTop;A.lastScrollTop=r,A.lastScrollLeft=t,z.scrollYLoad&&fe(),A.lastScrollTime=Date.now(),j("scroll",{scrollLeft:t,scrollTop:r,isX:a,isY:l},e)},_e=()=>{var e=p.value;return e&&(e.scrollTop=0,e.scrollLeft=0),A.lastScrollTop=0,(A.lastScrollLeft=0,_vue.nextTick)()},me=(e,t)=>{var r=V.drag,a=A.nodeMaps,l=e.currentTarget,{trigger:o,isCrossDrag:d,isPeerDrag:n,disabledMethod:i}=P.value,s=Y(t);let u=r?"node"===o:!1;(0,_dom.getEventTargetNode)(e,l,"vxe-tree--node-item-switcher").flag||(r={node:t,$tree:q},o=a[s],!u)||!(d||n||o&&!o.level)||i&&i(r)||He(e,{node:t})},Ce=(e,t)=>{var{showRadio:r,showCheckbox:a,trigger:l}=V,o=f.value,d=x.value;let n=!1,i=!1,s=!1,u=!1;T.value?(n=!0,Te(e,t)):z.currentNode&&(z.currentNode=null),"node"===l&&(u=!0,ke(e,t)),r&&"node"===o.trigger&&(i=!0,Ie(e,t)),a&&"node"===d.trigger&&(s=!0,Me(e,t)),j("node-click",{node:t,triggerCurrent:n,triggerRadio:i,triggerCheckbox:s,triggerExpand:u},e)},ye=(e,t)=>{j("node-dblclick",{node:t},e)},Ne=(a,l)=>{var e=V.menuConfig,t=T.value,r=L.value;(e?(0,_utils.isEnableConf)(r):r.enabled)&&({options:e,visibleMethod:r}=r,r&&!r({$tree:q,options:e,node:l})||(t?Te(a,l):z.currentNode&&(z.currentNode=null),_ui.VxeUI.contextMenu&&_ui.VxeUI.contextMenu.openByEvent(a,{options:e,events:{optionClick(e){var t=e.option,r=menus.get(t.code),r=r?r.treeMenuMethod:null,t={menu:t,node:l,$event:a,$tree:q,option:t};r&&r(t,a),j("menu-click",t,e.$event)}}}))),j("node-menu",{node:l},a)},Ee=o=>{var e=x.value;let r=V.loadMethod,d=e.checkStrictly;return new Promise(e=>{if(r){var t=A.nodeMaps;let a=Y(o),l=t[a];A.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(r({$tree:q,node:o})).then(r=>{var e=A.treeExpandLazyLoadedMaps;if(l.treeLoaded=!0,e[a]&&(e[a]=!1),r=_xeUtils.default.isArray(r)?r:[])return q.loadChildrenNode(o,r).then(e=>{var t=A.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),z.updateExpandedFlag++,!d&&q.isCheckedByCheckboxNodeId(a)&&oe(e,!0),j("load-success",{node:o,data:r},new Event("load-success")),(0,_vue.nextTick)()});j("load-success",{node:o,data:r},new Event("load-success"))}).catch(e=>{var t=A.treeExpandLazyLoadedMaps;l.treeLoaded=!1,t[a]&&(t[a]=!1),j("load-error",{node:o,data:e},new Event("load-error"))}).finally(()=>(g(),X(),J()))}else e()})},be=(e,t)=>{let{lazy:a,accordion:r,toggleMethod:l}=V,{treeExpandLazyLoadedMaps:o,treeExpandedMaps:d}=A,n=A.nodeMaps,i=B.value,s=D.value,u=[],c=l?e.filter(e=>l({$tree:q,expanded:t,node:e})):e;r&&(c=c.length?[c[c.length-1]]:[],e=Y(c[0]),e=n[e])&&e.items.forEach(e=>{e=Y(e);d[e]&&delete d[e]});let v=[];return t?c.forEach(e=>{var t,r=Y(e);d[r]||(t=n[r],a&&e[s]&&!t.treeLoaded&&!o[r]?u.push(Ee(e)):e[i]&&e[i].length&&(d[r]=!0,v.push(e)))}):c.forEach(e=>{var t=Y(e);d[t]&&(delete d[t],v.push(e))}),z.updateExpandedFlag++,g(),X(),Promise.all(u).then(()=>J())},ke=(e,t)=>{var r=V.lazy,{treeExpandedMaps:a,treeExpandLazyLoadedMaps:l}=A,o=Y(t),a=!a[o];e.stopPropagation(),r&&l[o]||be([t],a),j("node-expand",{node:t,expanded:a},e)},Q=()=>{var e=V.transform;let{selectCheckboxMaps:i,indeterminateRowMaps:s,afterTreeList:t}=A,o=B.value;var r=$.value;let{checkStrictly:a,checkMethod:u}=x.value;if(!a){let a={},l=[];_xeUtils.default.eachTree(t,e=>{var t=Y(e),r=e[o];r&&r.length&&!a[t]&&(a[t]=1,l.unshift([e,t,r]))},{children:e?r:o}),l.forEach(e=>{var t=e[0],r=e[1],e=e[2];let a=0,l=0,o=0;var d=e.length;e.forEach(u?e=>{var t=Y(e),r=i[t];u({$tree:q,node:e})?(r?a++:s[t]&&l++,o++):r?a++:s[t]&&l++}:e=>{e=Y(e);i[e]?a++:s[e]&&l++,o++});let n=!1;e=!(n=0<d?0<o?(0<a||0<l)&&a>=o:0<a&&a>=o||!!i[r]:i[r])&&(0<a||0<l);n?(i[r]=t,s[r]&&delete s[r]):(i[r]&&delete i[r],e?s[r]=t:s[r]&&delete s[r])}),z.updateCheckboxFlag++}},Me=(e,r)=>{e.preventDefault(),e.stopPropagation();var a=V.transform;let l=A.selectCheckboxMaps;var o=B.value,d=$.value,{checkStrictly:n,checkMethod:i}=x.value;let t=!!i;if(!(t=i?!i({$tree:q,node:r}):t)){i=Y(r);let t=!1;l[i]?delete l[i]:(t=!0,l[i]=r),n||_xeUtils.default.eachTree(_xeUtils.default.get(r,a?d:o),e=>{e=Y(e);t?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:a?d:o}),z.updateCheckboxFlag++,Q();i=_xeUtils.default.keys(l).map(_util.deNodeValue);s(i),j("checkbox-change",{node:r,value:i,checked:t},e)}},Te=(e,t)=>{e.preventDefault();var{currentMethod:r,trigger:a}=d.value,l=B.value,l=_xeUtils.default.get(t,l),l=l&&l.length;let o=!!r;if("child"===a){if(l)return}else if("parent"===a&&!l)return;(o=r?!r({node:t}):o)||(z.currentNode=t,j("current-change",{node:t,checked:!0},e))},Ie=(e,t)=>{e.preventDefault(),e.stopPropagation();var r,a=f.value.checkMethod;let l=!!a;(l=a?!a({$tree:q,node:t}):l)||(a=Y(t),r=(0,_util.deNodeValue)(a),z.selectRadioKey=a,o(r),j("radio-change",{node:t,value:r,checked:!0},e))},Se=()=>{var e=O.value;e&&e.clientWidth&&J()},Le={dispatchEvent:j,getNodeId:Y,getNodeById(e){var t=A.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},loadData(e){return t(e||[])},reloadData(e){return t(e||[])},clearCurrentNode(){return(z.currentNode=null,_vue.nextTick)()},getCurrentNodeId(){var e=z.currentNode;return e?(0,_util.deNodeValue)(Y(e)):null},getCurrentNode(){var e=z.currentNode,t=A.nodeMaps;if(e){t=t[Y(e)];if(t)return t.item}return null},setCurrentNodeId(e){var t=A.nodeMaps,t=t[(0,_util.enNodeValue)(e)];return z.currentNode=t?t.item:null,(0,_vue.nextTick)()},setCurrentNode(e){return z.currentNode=e,(0,_vue.nextTick)()},clearRadioNode(){return z.selectRadioKey=null,o(null),(0,_vue.nextTick)()},getRadioNodeId(){return z.selectRadioKey||null},getRadioNode(){var e=z.selectRadioKey,t=A.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},setRadioNodeId(e){return z.selectRadioKey=(0,_util.enNodeValue)(e),o(e),(0,_vue.nextTick)()},setRadioNode(e){return e?(e=Y(e),z.selectRadioKey=e,o((0,_util.deNodeValue)(e))):o(null),(0,_vue.nextTick)()},setCheckboxNode(e,t){return e&&(_xeUtils.default.isArray(e)||(e=[e]),oe(e,t)),s(q.getCheckboxNodeIds()),(0,_vue.nextTick)()},setCheckboxByNodeId(e,t){return le(e,t),s(q.getCheckboxNodeIds()),(0,_vue.nextTick)()},getCheckboxNodeIds(){var e=A.selectCheckboxMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getCheckboxNodes(){let{nodeMaps:r,selectCheckboxMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},clearCheckboxNode(){return A.indeterminateRowMaps={},A.selectCheckboxMaps={},z.updateCheckboxFlag++,s([]),Q(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))},setAllCheckboxNode(e){var t=V.transform;let r={};var a=B.value,l=$.value;let o=[],d=[];return e&&_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=Y(e);o.push(t),d.push(e),r[t]=!0},{children:t?l:a}),A.indeterminateRowMaps={},A.selectCheckboxMaps=r,z.updateCheckboxFlag++,Q(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:o,checkNodes:d}))},clearExpandNode(){return Le.clearAllExpandNode()},clearAllExpandNode(){let e=z.scrollYLoad;var{nodeMaps:t,scrollYStore:r}=A;return _xeUtils.default.each(t,e=>{e.treeLoaded=!1}),A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,r.startIndex=0,r.endIndex=1,g(),X(),J().then(()=>(e&&fe(),J()))},setExpandByNodeId(e,t){let r=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);l(e,t,r)}),z.updateExpandedFlag++),g(),X(),J()},getExpandNodeIds(){var e=A.treeExpandedMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getExpandNodes(){let{nodeMaps:r,treeExpandedMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},setExpandNode(e,t){let r=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);l(e,t,r)}),z.updateExpandedFlag++),g(),X(),J()},toggleExpandByNodeId(e){let t=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);l(e,!t[""+e],t)}),z.updateExpandedFlag++),g(),X(),J()},toggleExpandNode(e){let t=A.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);l(e,!t[e],t)}),z.updateExpandedFlag++),g(),X(),J()},setAllExpandNode(e){var t=V.transform;let r=z.scrollYLoad,{scrollYStore:a,treeExpandedMaps:l}=A,o=B.value;var d=$.value;return e?_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=_xeUtils.default.get(e,o);t&&t.length&&(t=Y(e),l[t]=!0)},{children:t?d:o}):A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,a.startIndex=0,a.endIndex=1,g(),X(),J().then(()=>(r&&fe(),J()))},reloadExpandNode(e){var t=V.lazy;return t?(Le.clearExpandLoaded(e),Ee(e)):J()},clearExpandLoaded(e){var t=V.lazy,r=A.nodeMaps;return t&&(t=r[Y(e)])&&(t.treeLoaded=!1),J()},loadChildrenNode(t,e){let{lazy:r,transform:a}=V,n=A.nodeMaps;if(!r)return Promise.resolve([]);let l=B.value,o=$.value,i=n[Y(t)],s=i?i.level:0,u=i?i.nodes:[];return(e=>{let r=k.value;return Promise.resolve(e.map(e=>{var t,e=Object.assign({},e);return Y(e)||(t=getNodeUniqueId(),_xeUtils.default.set(e,r,t)),e}))})(e).then(e=>(_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{var d=Y(e);n[d]={item:e,index:-1,$index:-1,_index:-1,items:r,parent:l||i.item,nodes:u.concat(o),level:s+o.length,treeIndex:-1,lineCount:0,treeLoaded:!1}},{children:l}),t[l]=e,a&&(t[o]=e),G(),e))},isExpandByNode:e=>{var t=z.updateExpandedFlag,r=A.treeExpandedMaps,e=Y(e);return!(!t||!r[e])},isCheckedByRadioNodeId:te,isCheckedByRadioNode:e=>te(Y(e)),isCheckedByCheckboxNodeId:re,isIndeterminateByCheckboxNode:e=>ae(Y(e)),isCheckedByCheckboxNode:e=>re(Y(e)),getCheckboxIndeterminateNodes(){let{nodeMaps:r,indeterminateRowMaps:e}=A,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},recalculate:J,getFullData(){var e=A.treeFullData;return e.slice(0)},scrollTo:pe,scrollToNode(e){return q.scrollToNodeId(Y(e))},scrollToNodeId(t){var e=V.transform;let{scrollYStore:r,afterTreeList:a}=A;var l=B.value,o=$.value;let d=p.value;if(t&&d)if(e){e=_xeUtils.default.findTree(a,e=>Y(e)===t,{children:e?o:l});if(e)return q.setExpandNode(e.nodes,!0).then(()=>{var e=_xeUtils.default.findIndexOf(A.afterVisibleList,e=>Y(e)===t);if(-1<e)return e=Math.max(0,(e-1)*r.rowHeight),pe(d.scrollLeft,e)})}else{o=d.querySelector(`.vxe-tree--node-wrapper[nodeid="${t}"]`);if(o)return pe(d.scrollLeft,o.offsetTop)}return J()},clearScroll:_e},we=()=>{var e=O.value;if(e){let t="node--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}},De=e=>{var t=O.value;if(t){e=Y(e);_xeUtils.default.arrayEach(t.querySelectorAll(`.vxe-tree--node-wrapper[nodeid="${e}"]`),e=>{(0,_dom.addClass)(e,"node--drag-origin")})}},Ue=e=>{var t=z.dragNode,r=P.value.tooltipMethod;let a="";a=r?""+(r({$tree:q,node:t})||""):getI18n("vxe.tree.dragTip",[e.textContent||""]),z.dragTipText=a},n=()=>{var e=E.value,t=N.value;e&&(e.style.display=""),t&&(t.style.display="")},Z=()=>{h.node=null},Re=()=>{var e=z.dragNode;e&&(n(),we(),Z(),z.dragNode=null)},He=(e,t)=>{e.stopPropagation();var r=t.node,{trigger:a,dragStartMethod:l}=P.value,o=e.currentTarget,a="node"===a?o:o.parentElement.parentElement;we(),l&&!l(t)?(a.draggable=!1,z.dragNode=null,n()):(z.dragNode=r,a.draggable=!0,De(r),Ue(a),j("node-dragstart",t,e))},Fe=()=>{Re()},Ve=(e,t,r,a)=>{var l=O.value;if(l){var o=A.prevDragToChild,d=l.getBoundingClientRect(),n=l.clientHeight;if(t){var i=N.value;if(i)if(r){var s=t.getBoundingClientRect();let e=t.clientHeight;t=Math.max(1,s.y-d.y);t+e>n&&(e=n-t),i.style.display="block",i.style.top=t+"px",i.style.height=e+"px",i.setAttribute("drag-pos",a),i.setAttribute("drag-to-child",o?"y":"n")}else i.style.display=""}s=E.value;s&&(s.style.display="block",s.style.top=Math.min(l.clientHeight-l.scrollTop-s.clientHeight,e.clientY-d.y)+"px",s.style.left=Math.min(l.clientWidth-l.scrollLeft-s.clientWidth-1,e.clientX-d.x)+"px",s.setAttribute("drag-status",r?o?"sub":"normal":"disabled"))}},ee=()=>{var e=O.value;n(),we(),(0,_anime.clearRowAnimate)(e,[".vxe-tree--node-wrapper"]),A.prevDragToChild=!1,z.dragNode=null},Oe=(v,g,h,p,e)=>{let f=V.transform,{nodeMaps:x,treeFullData:_,afterVisibleList:m}=A;var C=P.value;let{animation:y,isCrossDrag:N,isPeerDrag:E,isSelfToChildDrag:b,dragEndMethod:t,dragToChildMethod:k}=C;C=t||(C?C.dragEndMethod:null);let M=c.value,T=K.value,I=B.value,S=$.value,L="bottom"===p?1:0,w=O.value,D={status:!1};if(w&&h&&g){if(h!==g){var U={oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:!!e,offsetIndex:L};let r=Y(g);var R=x[r]||{};let s=R._index,u=0,c=-1,a=(y&&(H=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${h}"]`),F=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${r}"]`),(H=H||F)&&(u=H.offsetHeight),F)&&(c=F.offsetTop),-1),l=-1,t={},o=!1,d=R;var H=Y(h);let n=x[H];if(f&&d&&n){var F=d.level,R=n.level;if(_xeUtils.default.eachTree([g],e=>{t[Y(e)]=e},{children:S}),F&&R)if(E&&!N){if(d.item[T]!==n.item[T])return ee(),Z(),D}else{if(!N)return ee(),Z(),D;if(t[H]&&(o=!0,!N||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),D}else if(F){if(!N)return ee(),Z(),D}else if(R){if(!N)return ee(),Z(),D;if(t[H]&&(o=!0,!N||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),D}}let i=b&&k?k(U):e;return Promise.resolve(!C||C(U)).then(e=>{var t;return e?(f?d&&n&&(e=_xeUtils.default.toTreeArray(A.afterTreeList,{updated:!1,key:M,parentKey:T,children:S}),t=q.findNodeIndexOf(e,g),e.splice(t,1),t=q.findNodeIndexOf(e,h)+L,e.splice(t,0,g),o&&N&&b&&_xeUtils.default.each(g[I],e=>{e[T]=g[T]}),g[T]=i?h[M]:h[T],A.treeFullData=_xeUtils.default.toArrayTree(e,{key:M,parentKey:T,children:I,mapChildren:S})):(a=q.findNodeIndexOf(m,g),t=q.findNodeIndexOf(_,g),m.splice(a,1),_.splice(t,1),e=q.findNodeIndexOf(m,h),t=q.findNodeIndexOf(_,h),l=e+L,e=t+L,m.splice(l,0,g),_.splice(e,0,g)),se(),X(f),f||G(),Q(),z.scrollYLoad&&W(),v&&j("node-dragend",{oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:i,offsetIndex:L,_index:{newIndex:l,oldIndex:a}},v),(0,_vue.nextTick)().then(()=>{if(y){var a=z.treeList,l=A.nodeMaps,o=l[r],d=o._index,n=a[0],l=l[Y(n)],n=w;if(l){var l=l._index,i=l+a.length;let e=-1,t=-1,r=1;s<l?(e=0,t=d-l):s>i?(i=o.$index,e=i+1,t=a.length,r=-1):d>s?(e=s-l,t=e+d-s):(e=d-l,t=e+s-d+1,r=-1);o=a.slice(e,t);if(o.length){let t=[];o.forEach(e=>{e=Y(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});i=n.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(i,r*u)}}l=[`.vxe-tree--node-wrapper[nodeid="${r}"]`],d=n.querySelectorAll(l.join(",")),a=d[0];-1<c&&a&&(0,_anime.moveRowAnimateToTb)(d,c-a.offsetTop)}J()}).then(()=>({status:!0}))):D}).catch(()=>D).then(e=>(ee(),Z(),e))}ee(),Z()}return Promise.resolve(D)},Ae=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},ze=e=>{var t=V.lazy,r=z.dragNode,{nodeMaps:a,prevDragNode:l,prevDragPos:o,prevDragToChild:d}=A,n=D.value;t&&d&&(t=a[Y(l)],l[n])&&(!t||!t.treeLoaded)||Oe(e,r,l,o,d)},Ke=e=>{var t,r,{lazy:a,transform:l}=V,o=z.dragNode,d=A.nodeMaps,n=P.value,i=K.value,s=D.value,{isCrossDrag:n,isPeerDrag:u,isToChildDrag:c}=n,v=(o||n||e.preventDefault(),(0,_dom.hasControlKey)(e)),g=e.currentTarget,h=g.getAttribute("nodeid")||"",d=d[h];d&&(e.preventDefault(),t=d.item,r=e.clientY-g.getBoundingClientRect().y<g.clientHeight/2?"top":"bottom",A.prevDragToChild=!!(l&&n&&c&&v),A.prevDragNode=t,A.prevDragPos=r,o&&Y(o)===h||v&&a&&t[s]&&d&&!d.treeLoaded||!n&&l&&(u?o[i]!==t[i]:d.level)?Ve(e,g,!1,r):(Ve(e,g,!0,r),j("node-dragover",{oldRNode:o,targetNode:t,dragPos:r},e)))};e={handleData:X,cacheNodeMap:se,updateAfterDataIndex:G,updateCheckboxStatus:Q,updateYSpace:W,findNodeIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>q.eqNode(e,t)):-1},eqNode(e,t){return!(!e||!t||e!==t&&Y(e)!==Y(t))},handleCrossTreeNodeDragCancelEvent(){ee(),Z()},handleCrossTreeNodeDragFinishEvent(){},handleCrossTreeNodeDragInsertEvent(){},handleCrossTreeNodeDragoverEmptyEvent(){},hideCrossTreeNodeDropClearStatus(){n()}};Object.assign(q,Le,e);let Be=(e,t)=>{var{drag:r,transform:a}=V,l=A.nodeMaps,{showIcon:o,isPeerDrag:d,isCrossDrag:n,visibleMethod:i}=P.value;let s={node:e,$tree:q};if(r&&o&&a&&(!i||i(s))){e=l[t];if(e&&(d||n||!e.level)){var{icon:r,trigger:o,disabledMethod:a}=P.value;let t=a&&a(s);i={};return"node"!==o&&(i.onMousedown=e=>{t||He(e,s)},i.onMouseup=Fe),(0,_vue.h)("div",Object.assign({class:["vxe-tree--drag-handle",{"is--disabled":t}]},i),[(0,_vue.h)("i",{class:r||getIcon().TREE_DRAG})])}}return(0,_ui.renderEmptyElement)(q)},v=(e,t,r)=>{if(e){if("first"===e)return!r;if("last"===e)return!t}return!0},$e=(r,e,a,l,o)=>{var t=V.showRadio,{showIcon:d,checkMode:n,checkMethod:i,visibleMode:s,visibleMethod:u}=f.value,u=u?u({$tree:q,node:r}):v(s,a,l);if(t&&d&&u){let t=i?!i({$tree:q,node:r}):!v(n,a,l);return(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":o,"is--disabled":t}],onClick:e=>{t||Ie(e,r)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",o?getIcon().RADIO_CHECKED:getIcon().RADIO_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(q)},Pe=(r,e,a,l,o,d)=>{var t=V.showCheckbox,{showIcon:n,checkMode:i,checkMethod:s,visibleMode:u,visibleMethod:c}=x.value,c=c?c({$tree:q,node:r}):v(u,a,l);if(t&&n&&c){let t=s?!s({$tree:q,node:r}):!v(i,a,l);return(0,_vue.h)("div",{class:["vxe-tree--checkbox-option",{"is--checked":o,"is--indeterminate":d,"is--disabled":t}],onClick:e=>{t||Me(e,r)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",d?getIcon().CHECKBOX_INDETERMINATE:o?getIcon().CHECKBOX_CHECKED:getIcon().CHECKBOX_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(q)},qe=(t,e)=>{var{lazy:r,drag:a,transform:l,showRadio:o,showCheckbox:d,showLine:n,iconOpen:i,iconClose:s,iconLoaded:u,showIcon:c}=V,{currentNode:v,selectRadioKey:g,updateExpandedFlag:h}=z,{afterTreeList:p,nodeMaps:f,treeExpandedMaps:x,treeExpandLazyLoadedMaps:_}=A,m=B.value,C=U.value,y=D.value,m=_xeUtils.default.get(t,m),m=m&&0<m.length,N=w.icon,E=w.title,b=w.extra,h=h&&x[e],x=f[e]||{},f=_xeUtils.default.get(t,C),C=x.level;let k=!1,M=(o&&(k=e===String(g)),!1),T=!1,I=(d&&(M=re(e),T=ae(e)),!1),S=!1,L=!1;r&&(S=!!_[e],I=t[y],L=!!x.treeLoaded);o=x.items[x.treeIndex-1],g={node:t,isExpand:h},d={onMousedown(e){me(e,t)},onMouseup:Fe,onClick(e){Ce(e,t)},onDblclick(e){ye(e,t)},onContextmenu(e){Ne(e,t)}};return a&&l&&(d.onDragstart=Ae,d.onDragend=ze,d.onDragover=Ke),(0,_vue.h)("div",Object.assign({key:e,class:["vxe-tree--node-wrapper","node--level-"+C],nodeid:e},d),[(0,_vue.h)("div",{class:["vxe-tree--node-item",{"is--current":v&&e===Y(v),"is-radio--checked":k,"is-checkbox--checked":M,"is-checkbox--indeterminate":T}]},[n?(0,_vue.h)("div",{class:"vxe-tree--node-line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--node-line",style:{height:`${Y(p[0])===e?1:(0,_util.calcTreeLine)(q,t,o)}px`}})]):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{class:"vxe-tree--node-item-switcher"},c&&(!r||L?m:I)?[(0,_vue.h)("div",{class:"vxe-tree--node-item-icon",onClick(e){ke(e,t)}},N?(0,_vn.getSlotVNs)(N(g)):[(0,_vue.h)("i",{class:S?u||getIcon().TREE_NODE_LOADED:h?i||getIcon().TREE_NODE_OPEN:s||getIcon().TREE_NODE_CLOSE})])]:[]),Be(t,e),$e(t,e,m,C,k),Pe(t,e,m,C,M,T),(0,_vue.h)("div",{class:"vxe-tree--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-tree--node-item-title"},E?(0,_vn.getSlotVNs)(E(g)):""+f),b?(0,_vue.h)("div",{class:"vxe-tree--node-item-extra"},(0,_vn.getSlotVNs)(b(g))):(0,_ui.renderEmptyElement)(q)])])])},Ye=e=>{var t=V.transform;let r=A.treeExpandedMaps,a=B.value;if(!e.length)return[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder"},getI18n("vxe.tree.searchEmpty"))];let l=[];return e.forEach(t?e=>{var t=Y(e);l.push(qe(e,t))}:e=>{var t=Y(e),e=(l.push(qe(e,t)),_xeUtils.default.get(e,a));e&&e.length&&r[t]&&l.push(...Ye(e))}),l};let je=(0,_vue.ref)(0),Ge=((0,_vue.watch)(()=>V.data?V.data.length:0,()=>{je.value++}),(0,_vue.watch)(()=>V.data,()=>{je.value++}),(0,_vue.watch)(je,()=>{t(V.data||[])}),(0,_vue.watch)(()=>V.checkNodeKey,e=>{z.selectRadioKey=(0,_util.enNodeValue)(e)}),(0,_vue.ref)(0)),r=((0,_vue.watch)(()=>V.checkNodeKeys?V.checkNodeKeys.length:0,()=>{Ge.value++}),(0,_vue.watch)(()=>V.checkNodeKeys,()=>{Ge.value++}),(0,_vue.watch)(Ge,()=>{var e;e=V.checkNodeKeys||[],A.selectCheckboxMaps={},le(e,!0)}),(0,_vue.watch)(()=>V.filterValue,()=>{ce(new Event("filter"))}),(0,_vue.ref)(0)),i=((0,_vue.watch)(()=>V.height,()=>{r.value++}),(0,_vue.watch)(()=>V.minHeight,()=>{r.value++}),(0,_vue.watch)(()=>V.maxHeight,()=>{r.value++}),(0,_vue.watch)(r,()=>{J()}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>V.rootParentValue,()=>{i.value++}),(0,_vue.watch)(()=>V.rootValues?V.rootValues.length:0,()=>{i.value++}),(0,_vue.watch)(()=>V.rootValues,()=>{i.value++}),(0,_vue.watch)(i,()=>{t(V.data||[])}),(0,_vue.onMounted)(()=>{var{transform:e,drag:t,menuConfig:r}=V,a=P.value,t=(t&&!e&&(0,_log.errLog)("vxe.error.notSupportProp",["drag","transform=false","transform=true"]),a.isCrossTreeDrag&&(0,_log.errLog)("vxe.error.notProp",["drag-config.isCrossTreeDrag"]),_ui.VxeUI.getComponent("VxeContextMenu"));r&&!t&&(0,_log.errLog)("vxe.error.reqComp",["vxe-context-menu"]),V.autoResize&&(e=O.value,a=de(),r=_ui.globalResize.create(()=>{V.autoResize&&J()}),e&&r.observe(e),a&&r.observe(a),A.resizeObserver=r),_ui.globalEvents.on(q,"resize",Se)}),(0,_vue.onBeforeUnmount)(()=>{var e=A.resizeObserver;e&&e.disconnect(),_ui.globalEvents.off(q,"resize"),_xeUtils.default.assign(z,createReactData()),_xeUtils.default.assign(A,createInternalData())}),z.selectRadioKey=(0,_util.enNodeValue)(V.checkNodeKey),t(V.data||[]),q.renderVN=()=>{var{loading:e,trigger:t,showLine:r}=V,{bodyHeight:a,topSpaceHeight:l,treeList:o}=z,d=_.value,n=f.value,i=x.value,s=S.value,u=I.value,c=R.value;let v=w.loading;var g=w.header,h=w.footer;return(0,_vue.h)("div",{ref:O,class:["vxe-tree",{["size--"+d]:d,"show--line":r,"checkbox--highlight":i.highlight,"radio--highlight":n.highlight,"node--hover":u,"node--trigger":"node"===t,"is--loading":e}]},[g?(0,_vue.h)("div",{ref:m,class:"vxe-tree--header-wrapper"},g({$tree:q})):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{ref:p,class:"vxe-tree--node-list-wrapper",style:c,onScroll:xe},[(0,_vue.h)("div",{class:"vxe-tree--y-space",style:{height:a?a+"px":""}}),(0,_vue.h)("div",{ref:y,class:"vxe-tree--node-list-body",style:{transform:`translateY(${l}px)`}},Ye(o))]),h?(0,_vue.h)("div",{ref:C,class:"vxe-tree--footer-wrapper"},h({$tree:q})):(0,_ui.renderEmptyElement)(q),(()=>{var e=V.drag,{dragNode:t,dragTipText:r}=z,a=P.value;return e?(0,_vue.h)("div",{class:"vxe-tree--drag-wrapper"},[(0,_vue.h)("div",{ref:N,class:["vxe-tree--drag-node-line",{"is--guides":a.showGuidesStatus}]}),t&&a.showDragTip?(0,_vue.h)("div",{ref:E,class:"vxe-tree--drag-sort-tip"},[(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-status"},[(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-normal-status",getIcon().TREE_DRAG_STATUS_NODE]}),(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-sub-status",getIcon().TREE_DRAG_STATUS_SUB_NODE]}),(0,_vue.h)("span",{class:["vxe-tree--drag-sort-tip-disabled-status",getIcon().TREE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-tree--drag-sort-tip-content"},r)])]):(0,_ui.renderEmptyElement)(q)]):(0,_ui.renderEmptyElement)(q)})(),(0,_vue.h)(_loading.default,{class:"vxe-tree--loading",modelValue:e,icon:s.icon,text:s.text},v?{default:()=>v({$tree:q})}:{})])},(0,_vue.provide)("$xeTree",q),q},render(){return this.renderVN()}});
package/lib/ui/index.js CHANGED
@@ -26,7 +26,7 @@ Object.keys(_core).forEach(function (key) {
26
26
  });
27
27
  var _dynamics = require("../dynamics");
28
28
  var _log = require("./src/log");
29
- const version = exports.version = "4.14.20";
29
+ const version = exports.version = "4.14.21";
30
30
  _core.VxeUI.uiVersion = version;
31
31
  _core.VxeUI.dynamicApp = _dynamics.dynamicApp;
32
32
  function config(options) {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");let version=exports.version="4.14.20";function config(e){return(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},backtop:{showIcon:!0,showContent:!0,showTop:!0,showBottom:!0,shadow:!0,threshold:20},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0},showDropdownIcon:!0},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},cascader:{autoClose:!0},checkbox:{},checkboxButton:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},contextMenu:{autoLocate:!0},countdown:{},colorPicker:{type:"rgb",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePanel:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1},datePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,autoClose:!0,showClearButton:null,showConfirmButton:null},dateRangePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,separator:" ~ ",autoClose:!0,showClearButton:null,showConfirmButton:null},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showErrorMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{draggable:null,showPreview:!0,showPrintButton:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0,maskClosable:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{backtopConfig:{}},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{virtualYConfig:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},menu:{},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controlConfig:{enabled:!0,layout:"right",showButton:!0,isWheel:!0,isArrow:!0}},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{pageStyle:{}},passwordInput:{controls:!0},printPageBreak:{},pulldown:{},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},segmented:{},select:{multiCharOverflow:8,radioConfig:{showIcon:!0,trigger:"option"},checkboxConfig:{showIcon:!0,trigger:"option"},remoteConfig:{enabled:!0,autoLoad:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},splitter:{resize:!0,itemConfig:{minWidth:40,minHeight:40},resizeConfig:{showTip:!0}},splitterPanel:{},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},virtualXConfig:{enabled:!0,gt:0},virtualYConfig:{enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{copyConfig:{showMessage:!0}},textarea:{resize:"none"},timeline:{},timelineItem:{},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0},dragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},treeSelect:{autoClose:null,virtualYConfig:{enabled:!0,gt:0,oSize:2},treeConfig:{maxHeight:300,radioConfig:{},checkboxConfig:{},filterConfig:{autoExpandAll:!0}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0,showLimitSize:!0,showLimitCount:!0,autoSubmit:!0,maxSimultaneousUploads:5,previewImageConfig:{}},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{},gantt:{}});let iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",SELECT_ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",INPUT_PLUS_NUM:iconPrefix+"caret-up",INPUT_MINUS_NUM:iconPrefix+"caret-down",NUMBER_INPUT_MINUS_NUM:iconPrefix+"minus",NUMBER_INPUT_PLUS_NUM:iconPrefix+"add",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_VALID_ERROR_ICON:iconPrefix+"warning-circle-fill",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_UPLOAD:iconPrefix+"upload",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_DRAG:iconPrefix+"drag-handle",TREE_DRAG_STATUS_NODE:iconPrefix+"sort",TREE_DRAG_STATUS_SUB_NODE:iconPrefix+"add-sub",TREE_DRAG_DISABLED:iconPrefix+"no-drop",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_TOP:iconPrefix+"arrow-up",TABS_TAB_BUTTON_BOTTOM:iconPrefix+"arrow-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",TAG_CLOSE:iconPrefix+"close",TAG_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_PICKER_COLOR_COPY:iconPrefix+"copy",COLOR_PICKER_EYE_DROPPER:iconPrefix+"dropper",COLOR_PICKER_TPTY_OPEN:iconPrefix+"arrow-down rotate180",COLOR_PICKER_TPTY_CLOSE:iconPrefix+"arrow-down",SPLIT_TOP_ACTION:iconPrefix+"arrow-up",SPLIT_BOTTOM_ACTION:iconPrefix+"arrow-down",SPLIT_LEFT_ACTION:iconPrefix+"arrow-left",SPLIT_RIGHT_ACTION:iconPrefix+"arrow-right",BACKTOP_TOP:iconPrefix+"top",CONTEXT_MENU_OPTION_LOADING:iconPrefix+"spinner roll",CONTEXT_MENU_CHILDREN:iconPrefix+"arrow-right"});var _default=exports.default=_core.VxeUI;
1
+ Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");let version=exports.version="4.14.21";function config(e){return(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},backtop:{showIcon:!0,showContent:!0,showTop:!0,showBottom:!0,shadow:!0,threshold:20},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0},showDropdownIcon:!0},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},cascader:{autoClose:!0},checkbox:{},checkboxButton:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},contextMenu:{autoLocate:!0},countdown:{},colorPicker:{type:"rgb",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePanel:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1},datePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,autoClose:!0,showClearButton:null,showConfirmButton:null},dateRangePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,separator:" ~ ",autoClose:!0,showClearButton:null,showConfirmButton:null},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showErrorMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{draggable:null,showPreview:!0,showPrintButton:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0,maskClosable:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{backtopConfig:{}},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{virtualYConfig:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},menu:{},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controlConfig:{enabled:!0,layout:"right",showButton:!0,isWheel:!0,isArrow:!0}},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{pageStyle:{}},passwordInput:{controls:!0},printPageBreak:{},pulldown:{},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},segmented:{},select:{multiCharOverflow:8,radioConfig:{showIcon:!0,trigger:"option"},checkboxConfig:{showIcon:!0,trigger:"option"},remoteConfig:{enabled:!0,autoLoad:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},splitter:{resize:!0,itemConfig:{minWidth:40,minHeight:40},resizeConfig:{showTip:!0}},splitterPanel:{},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},virtualXConfig:{enabled:!0,gt:0},virtualYConfig:{enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{copyConfig:{showMessage:!0}},textarea:{resize:"none"},timeline:{},timelineItem:{},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0},dragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},treeSelect:{autoClose:null,virtualYConfig:{enabled:!0,gt:0,oSize:2},treeConfig:{maxHeight:300,radioConfig:{},checkboxConfig:{},filterConfig:{autoExpandAll:!0}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0,showLimitSize:!0,showLimitCount:!0,autoSubmit:!0,maxSimultaneousUploads:5,previewImageConfig:{}},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{},gantt:{}});let iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",SELECT_ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",INPUT_PLUS_NUM:iconPrefix+"caret-up",INPUT_MINUS_NUM:iconPrefix+"caret-down",NUMBER_INPUT_MINUS_NUM:iconPrefix+"minus",NUMBER_INPUT_PLUS_NUM:iconPrefix+"add",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_VALID_ERROR_ICON:iconPrefix+"warning-circle-fill",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_UPLOAD:iconPrefix+"upload",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_DRAG:iconPrefix+"drag-handle",TREE_DRAG_STATUS_NODE:iconPrefix+"sort",TREE_DRAG_STATUS_SUB_NODE:iconPrefix+"add-sub",TREE_DRAG_DISABLED:iconPrefix+"no-drop",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_TOP:iconPrefix+"arrow-up",TABS_TAB_BUTTON_BOTTOM:iconPrefix+"arrow-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",TAG_CLOSE:iconPrefix+"close",TAG_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_PICKER_COLOR_COPY:iconPrefix+"copy",COLOR_PICKER_EYE_DROPPER:iconPrefix+"dropper",COLOR_PICKER_TPTY_OPEN:iconPrefix+"arrow-down rotate180",COLOR_PICKER_TPTY_CLOSE:iconPrefix+"arrow-down",SPLIT_TOP_ACTION:iconPrefix+"arrow-up",SPLIT_BOTTOM_ACTION:iconPrefix+"arrow-down",SPLIT_LEFT_ACTION:iconPrefix+"arrow-left",SPLIT_RIGHT_ACTION:iconPrefix+"arrow-right",BACKTOP_TOP:iconPrefix+"top",CONTEXT_MENU_OPTION_LOADING:iconPrefix+"spinner roll",CONTEXT_MENU_CHILDREN:iconPrefix+"arrow-right"});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -5,6 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.warnLog = exports.errLog = void 0;
7
7
  var _core = require("@vxe-ui/core");
8
- const version = `ui v${"4.14.20"}`;
8
+ const version = `ui v${"4.14.21"}`;
9
9
  const warnLog = exports.warnLog = _core.log.create('warn', version);
10
10
  const errLog = exports.errLog = _core.log.create('error', version);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let version="ui v4.14.20",warnLog=exports.warnLog=_core.log.create("warn",version),errLog=exports.errLog=_core.log.create("error",version);
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let version="ui v4.14.21",warnLog=exports.warnLog=_core.log.create("warn",version),errLog=exports.errLog=_core.log.create("error",version);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-pc-ui",
3
- "version": "4.14.20",
3
+ "version": "4.14.21",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -2377,16 +2377,25 @@ export default defineVxeComponent({
2377
2377
  return renderEmptyElement($xeTree)
2378
2378
  }
2379
2379
 
2380
- const renderRadio = (node: any, nodeid: string, isChecked: boolean) => {
2380
+ const handleVisibleOrCheckMode = (mode: '' | 'all' | 'first' | 'last' | null | undefined, isExistChild: boolean, nLevel: number) => {
2381
+ if (mode) {
2382
+ if (mode === 'first') {
2383
+ return !nLevel
2384
+ }
2385
+ if (mode === 'last') {
2386
+ return !isExistChild
2387
+ }
2388
+ }
2389
+ return true
2390
+ }
2391
+
2392
+ const renderRadio = (node: any, nodeid: string, isExistChild: boolean, nLevel: number, isChecked: boolean) => {
2381
2393
  const { showRadio } = props
2382
2394
  const radioOpts = computeRadioOpts.value
2383
- const { showIcon, checkMethod, visibleMethod } = radioOpts
2384
- const isVisible = !visibleMethod || visibleMethod({ $tree: $xeTree, node })
2385
- let isDisabled = !!checkMethod
2395
+ const { showIcon, checkMode, checkMethod, visibleMode, visibleMethod } = radioOpts
2396
+ const isVisible = visibleMethod ? visibleMethod({ $tree: $xeTree, node }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel)
2386
2397
  if (showRadio && showIcon && isVisible) {
2387
- if (checkMethod) {
2388
- isDisabled = !checkMethod({ $tree: $xeTree, node })
2389
- }
2398
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel)
2390
2399
  return h('div', {
2391
2400
  class: ['vxe-tree--radio-option', {
2392
2401
  'is--checked': isChecked,
@@ -2406,16 +2415,13 @@ export default defineVxeComponent({
2406
2415
  return renderEmptyElement($xeTree)
2407
2416
  }
2408
2417
 
2409
- const renderCheckbox = (node: any, nodeid: string, isChecked: boolean, isIndeterminate: boolean) => {
2418
+ const renderCheckbox = (node: any, nodeid: string, isExistChild: boolean, nLevel: number, isChecked: boolean, isIndeterminate: boolean) => {
2410
2419
  const { showCheckbox } = props
2411
2420
  const checkboxOpts = computeCheckboxOpts.value
2412
- const { showIcon, checkMethod, visibleMethod } = checkboxOpts
2413
- const isVisible = !visibleMethod || visibleMethod({ $tree: $xeTree, node })
2414
- let isDisabled = !!checkMethod
2421
+ const { showIcon, checkMode, checkMethod, visibleMode, visibleMethod } = checkboxOpts
2422
+ const isVisible = visibleMethod ? visibleMethod({ $tree: $xeTree, node }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel)
2415
2423
  if (showCheckbox && showIcon && isVisible) {
2416
- if (checkMethod) {
2417
- isDisabled = !checkMethod({ $tree: $xeTree, node })
2418
- }
2424
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel)
2419
2425
  return h('div', {
2420
2426
  class: ['vxe-tree--checkbox-option', {
2421
2427
  'is--checked': isChecked,
@@ -2444,12 +2450,12 @@ export default defineVxeComponent({
2444
2450
  const titleField = computeTitleField.value
2445
2451
  const hasChildField = computeHasChildField.value
2446
2452
  const childList: any[] = XEUtils.get(node, childrenField)
2447
- const hasChild = childList && childList.length
2453
+ const isExistChild = childList && childList.length > 0
2448
2454
  const iconSlot = slots.icon
2449
2455
  const titleSlot = slots.title
2450
2456
  const extraSlot = slots.extra
2451
2457
  const isExpand = updateExpandedFlag && treeExpandedMaps[nodeid]
2452
- const nodeItem = nodeMaps[nodeid]
2458
+ const nodeItem = nodeMaps[nodeid] || {}
2453
2459
  const nodeValue = XEUtils.get(node, titleField)
2454
2460
  const nLevel = nodeItem.level
2455
2461
 
@@ -2534,7 +2540,7 @@ export default defineVxeComponent({
2534
2540
  : renderEmptyElement($xeTree),
2535
2541
  h('div', {
2536
2542
  class: 'vxe-tree--node-item-switcher'
2537
- }, showIcon && (lazy ? (isLazyLoaded ? hasChild : hasLazyChilds) : hasChild)
2543
+ }, showIcon && (lazy ? (isLazyLoaded ? isExistChild : hasLazyChilds) : isExistChild)
2538
2544
  ? [
2539
2545
  h('div', {
2540
2546
  class: 'vxe-tree--node-item-icon',
@@ -2551,8 +2557,8 @@ export default defineVxeComponent({
2551
2557
  ]
2552
2558
  : []),
2553
2559
  renderDragIcon(node, nodeid),
2554
- renderRadio(node, nodeid, isRadioChecked),
2555
- renderCheckbox(node, nodeid, isCheckboxChecked, isIndeterminate),
2560
+ renderRadio(node, nodeid, isExistChild, nLevel, isRadioChecked),
2561
+ renderCheckbox(node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate),
2556
2562
  h('div', {
2557
2563
  class: 'vxe-tree--node-item-inner'
2558
2564
  }, [
@@ -71,10 +71,12 @@ export namespace VxeTreePropTypes {
71
71
  export type CheckNodeKey = string | number | null
72
72
  export interface RadioConfig<D = any> {
73
73
  strict?: boolean
74
+ visibleMode?: 'all' | 'first' | 'last' | '' | null
74
75
  visibleMethod?: (params: {
75
76
  $tree: VxeTreeConstructor
76
77
  node: D
77
78
  }) => boolean
79
+ checkMode?: 'all' | 'first' | 'last' | '' | null
78
80
  checkMethod?: (params: {
79
81
  $tree: VxeTreeConstructor
80
82
  node: D
@@ -89,10 +91,12 @@ export namespace VxeTreePropTypes {
89
91
  showHeader?: boolean
90
92
  checkStrictly?: boolean
91
93
  highlight?: boolean
94
+ visibleMode?: 'all' | 'first' | 'last' | '' | null
92
95
  visibleMethod?: (params: {
93
96
  $tree: VxeTreeConstructor
94
97
  node: D
95
98
  }) => boolean
99
+ checkMode?: 'all' | 'first' | 'last' | '' | null
96
100
  checkMethod?: (params: {
97
101
  $tree: VxeTreeConstructor
98
102
  node: D