vxe-pc-ui
Version:
A vue based PC component library
1 lines • 34.4 kB
JavaScript
;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}}const{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},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(O,i){const{emit:a,slots:D}=i;var e=_xeUtils.default.uniqueId();const m=(0,_ui.useSize)(O)["computeSize"],V=(0,_vue.ref)(),C=(0,_vue.ref)(),y=(0,_vue.ref)(),p=(0,_vue.ref)(),N=(0,_vue.ref)(),f=(0,_vue.ref)(),x=(0,_vue.ref)(),c=(0,_store.getCrossTreeDragNodeInfo)(),A=createInternalData(),z=(0,_vue.reactive)(createReactData()),g={refElem:V},H=(0,_vue.computed)(()=>O.titleField||"title"),u=(0,_vue.computed)(()=>O.keyField||"id"),v=(0,_vue.computed)(()=>{var e=u.value;return O.valueField||e}),K=(0,_vue.computed)(()=>O.parentField||"parentId"),B=(0,_vue.computed)(()=>O.childrenField||"children"),$=(0,_vue.computed)(()=>O.mapChildrenField||"mapChildren"),w=(0,_vue.computed)(()=>O.hasChildField||"hasChild"),h=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.virtualYConfig,O.virtualYConfig)),F=(0,_vue.computed)(()=>{var e=l.value["isCurrent"];return _xeUtils.default.isBoolean(e)?e:O.isCurrent}),E=(0,_vue.computed)(()=>{var e=l.value["isHover"];return _xeUtils.default.isBoolean(e)?e:O.isHover}),U=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.radioConfig,O.radioConfig)),R=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.checkboxConfig,O.checkboxConfig)),l=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.nodeConfig,O.nodeConfig)),b=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.loadingConfig,O.loadingConfig)),q=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.dragConfig,O.dragConfig)),te=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.menuConfig,O.menuConfig)),k=(0,_vue.computed)(()=>{var{customHeight:e,customMinHeight:t,customMaxHeight:r}=z,a={};return e&&(a.height=(0,_dom.toCssUnit)(e)),t&&(a.minHeight=(0,_dom.toCssUnit)(t)),r&&(a.maxHeight=(0,_dom.toCssUnit)(r)),a}),M=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.filterConfig,O.filterConfig)),T={computeKeyField:u,computeParentField:K,computeChildrenField:B,computeMapChildrenField:$,computeRadioOpts:U,computeCheckboxOpts:R,computeNodeOpts:l,computeDragOpts:q},P={xID:e,props:O,context:i,internalData:A,reactData:z,getRefMaps:()=>g,getComputeMaps:()=>T},Y=e=>{var t=v.value,e=_xeUtils.default.get(e,t);return(0,_util.enNodeValue)(e)};const I=e=>{var t=z["selectRadioKey"];return t===e};const re=e=>{var t=z["updateCheckboxFlag"],r=A["selectCheckboxMaps"];return!(!t||!r[e])};const ae=e=>{var t=z["updateCheckboxFlag"],r=A["indeterminateRowMaps"];return!(!t||!r[e])};const s=e=>{a("update:checkNodeKeys",e)},n=e=>{a("update:checkNodeKey",e)},L=(e,t)=>{const r=A["nodeMaps"];if(e){_xeUtils.default.isArray(e)||(e=[e]);const a=[];e.forEach(e=>{e=(0,_util.enNodeValue)(e),e=r[e];e&&a.push(e.item)}),S(a,t)}return(0,_vue.nextTick)()},S=(e,r)=>{var t=O["transform"];const a=A["selectCheckboxMaps"];var o=$.value,n=B.value,l=R.value["checkStrictly"],d=e=>{var t=Y(e);r?a[t]||(a[t]=e):a[t]&&delete a[t]};l?e.forEach(d):_xeUtils.default.eachTree(e,d,{children:t?o:n}),z.updateCheckboxFlag++,Q()},o=(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:P},t))},oe=()=>{var e=V.value;return e?e.parentElement:null},ne=e=>{var t=z["parentHeight"],e=O[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},le=()=>{z.customHeight=ne("height"),z.customMinHeight=ne("minHeight"),z.customMaxHeight=ne("maxHeight"),!z.scrollYLoad||z.customHeight||z.customMinHeight||(z.customHeight=300)},de=()=>{var e=A["treeFullData"];const d=v.value;var t=B.value;const i={};_xeUtils.default.eachTree(e,(e,t,r,a,o,n)=>{let l=Y(e);l||(l=getNodeUniqueId(),_xeUtils.default.set(e,d,l)),i[l]={item:e,index:t,$index:-1,_index:-1,items:r,parent:o,nodes:n,level:n.length-1,treeIndex:t,lineCount:0,treeLoaded:!1}},{children:t}),A.nodeMaps=i},G=()=>{var e=O["transform"];const{afterTreeList:t,nodeMaps:n}=A;var r=B.value,a=$.value;let l=0;_xeUtils.default.eachTree(t,(e,t,r)=>{var a=Y(e),o=n[a];o?(o.items=r,o.treeIndex=t,o._index=l):(o={item:e,index:t,$index:-1,_index:l,items:r,parent:parent,nodes:[],level:0,treeIndex:t,lineCount:0,treeLoaded:!1},n[a]=o),l++},{children:e?a:r})},_=()=>{var e=O["transform"];const{afterTreeList:t,treeExpandedMaps:d}=A;var r=$.value;const i={};if(e){const s=[];return _xeUtils.default.eachTree(t,(e,t,r,a,o)=>{var n=Y(e),l=Y(o);(!o||i[l]&&d[l])&&(i[n]=1,s.push(e))},{children:r}),se(s),A.afterVisibleList=s}return A.afterVisibleList},X=a=>{var e=z["scrollYLoad"];const{scrollYStore:t,nodeMaps:r}=A;let o=A.afterVisibleList;if(a){{var{transform:a,filterValue:n}=O,{treeFullData:l,lastFilterValue:d}=A;const u=H.value;var i=B.value,s=$.value;const{autoExpandAll:c,beforeFilterMethod:g,filterMethod:v,afterFilterMethod:h}=M.value;let e=l,t=e,r="";if(n||0===n){r=""+n;n=v?e=>v({$tree:P,node:e,filterValue:r}):e=>-1<String(e[u]).toLowerCase().indexOf(r.toLowerCase());const p={$tree:P,filterValue:r};g&&g(p),e=a?t=_xeUtils.default.searchTree(l,n,{original:!0,isEvery:!0,children:i,mapChildren:s}):l.filter(n),A.lastFilterValue=r,(0,_vue.nextTick)(()=>{c?P.setAllExpandNode(!0).then(()=>{h&&h(p)}):h&&h(p)})}else{if(a&&(t=_xeUtils.default.searchTree(l,()=>!0,{original:!0,isEvery:!0,children:i,mapChildren:s}),e=t,d)){const f={$tree:P,filterValue:r};g&&g(f),(0,_vue.nextTick)(()=>{c?P.clearAllExpandNode().then(()=>{h&&h(f)}):h&&h(f)})}A.lastFilterValue=""}A.afterVisibleList=e,A.afterTreeList=t,G()}o=_()}n=e?o.slice(t.startIndex,t.endIndex):o.slice(0);n.forEach((e,t)=>{e=Y(e),e=r[e];e&&(e.$index=t)}),z.treeList=n},ie=_xeUtils.default.debounce(()=>X(!0),350,{trailing:!0}),t=r=>{const{expandAll:a,expandNodeKeys:o,transform:e}=O,{initialized:n,scrollYStore:t}=A;var l=u.value,d=K.value,i=B.value,l=e?_xeUtils.default.toArrayTree(r,{key:l,parentKey:d,mapChildren:i}):r?r.slice(0):[],d=(A.treeFullData=l,Object.assign(t,{startIndex:0,endIndex:1,visibleSize:0}),se(l));return de(),X(!0),!d||O.height||O.maxHeight||(0,_log.errLog)("vxe.error.reqProp",["[tree] height | max-height | virtual-y-config.enabled=false"]),ce().then(()=>{n||r&&r.length&&(A.initialized=!0,a?P.setAllExpandNode(!0):o&&o.length&&P.setExpandByNodeId(o,!0),L(O.checkNodeKeys||[],!0)),le();{const{lastScrollLeft:e,lastScrollTop:t}=A;pe().then(()=>{if(e||t)return A.lastScrollLeft=0,A.lastScrollTop=0,scrollTo(e,t)})}})},se=e=>{var t=O["transform"],r=h.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},ue=()=>{X(),W()},ce=()=>(0,_vue.nextTick)().then(()=>{var e=z["scrollYLoad"],t=A["scrollYStore"],r=N.value,a=h.value;let o=0,n;(n=r?n||r.children[0]:n)&&(o=n.offsetHeight),o=Math.max(20,o),t.rowHeight=o,(e?(r=p.value,e=Math.max(8,r?Math.ceil(r.clientHeight/o):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),ue):W)()}),ge=(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"],o=V.value;return o&&o.clientWidth&&o.clientHeight?(o=oe(),e=C.value,t=y.value,e=e?e.clientHeight:0,t=t?t.clientHeight:0,o&&(r=(0,_dom.getPaddingTopBottomSize)(o),z.parentHeight=Math.max(e+t+a,o.clientHeight-r-e-t)),le(),ce().then(()=>{le(),W()})):(0,_vue.nextTick)()},ve=()=>{var e=A["scrollYStore"],{startIndex:t,endIndex:r,visibleSize:a,offsetSize:o,rowHeight:n}=e,l=p.value;l&&(l=l.scrollTop,l=Math.floor(l/n),n=Math.max(0,l-1-o),o=l+a+o,!(l<=t||r-a-1<=l)||t===n&&r===o||(e.startIndex=n,e.endIndex=o,ue()))},he=e=>{var t=e.target,r=t.scrollTop,t=t.scrollLeft,a=t!==A.lastScrollLeft,o=r!==A.lastScrollTop;A.lastScrollTop=r,A.lastScrollLeft=t,z.scrollYLoad&&ve(),A.lastScrollTime=Date.now(),j("scroll",{scrollLeft:t,scrollTop:r,isX:a,isY:o},e)},pe=()=>{var e=p.value;return e&&(e.scrollTop=0,e.scrollLeft=0),A.lastScrollTop=0,(A.lastScrollLeft=0,_vue.nextTick)()},fe=n=>{var e=R.value;const r=O["loadMethod"],l=e["checkStrictly"];return new Promise(e=>{if(r){var t=A["nodeMaps"];const a=Y(n),o=t[a];A.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(r({$tree:P,node:n})).then(r=>{var e=A["treeExpandLazyLoadedMaps"];if(o.treeLoaded=!0,e[a]&&(e[a]=!1),r=_xeUtils.default.isArray(r)?r:[])return P.loadChildrenNode(n,r).then(e=>{var t=A["treeExpandedMaps"];return e.length&&!t[a]&&(t[a]=!0),z.updateExpandedFlag++,!l&&P.isCheckedByCheckboxNodeId(a)&&S(e,!0),j("load-success",{node:n,data:r},new Event("load-success")),(0,_vue.nextTick)()});j("load-success",{node:n,data:r},new Event("load-success"))}).catch(e=>{var t=A["treeExpandLazyLoadedMaps"];o.treeLoaded=!1,t[a]&&(t[a]=!1),j("load-error",{node:n,data:e},new Event("load-error"))}).finally(()=>(_(),X(),J()))}else e()})},xe=(e,t)=>{const{lazy:a,accordion:r,toggleMethod:o}=O,{treeExpandLazyLoadedMaps:n,treeExpandedMaps:l}=A,d=A["nodeMaps"],i=B.value,s=w.value,u=[];let c=o?e.filter(e=>o({$tree:P,expanded:t,node:e})):e;r&&(c=c.length?[c[c.length-1]]:[],e=Y(c[0]),e=d[e])&&e.items.forEach(e=>{e=Y(e);l[e]&&delete l[e]});const g=[];return t?c.forEach(e=>{var t,r=Y(e);l[r]||(t=d[r],a&&e[s]&&!t.treeLoaded&&!n[r]?u.push(fe(e)):e[i]&&e[i].length&&(l[r]=!0,g.push(e)))}):c.forEach(e=>{var t=Y(e);l[t]&&(delete l[t],g.push(e))}),z.updateExpandedFlag++,_(),X(),Promise.all(u).then(()=>J())},_e=(e,t)=>{var r=O["lazy"],{treeExpandedMaps:a,treeExpandLazyLoadedMaps:o}=A,n=Y(t),a=!a[n];e.stopPropagation(),r&&o[n]||xe([t],a),j("node-expand",{node:t,expanded:a},e)},Q=()=>{var e=O["transform"];const{selectCheckboxMaps:i,indeterminateRowMaps:s,afterTreeList:t}=A,a=B.value;var r=$.value;const{checkStrictly:o,checkMethod:u}=R.value;if(!o){const n={},l=[];_xeUtils.default.eachTree(t,e=>{var t=Y(e),r=e[a];r&&r.length&&!n[t]&&(n[t]=1,l.unshift([e,t,r]))},{children:e?r:a}),l.forEach(e=>{var t=e[0],r=e[1],e=e[2];let a=0,o=0,n=0;var l=e.length;e.forEach(u?e=>{var t=Y(e),r=i[t];u({$tree:P,node:e})?(r?a++:s[t]&&o++,n++):r?a++:s[t]&&o++}:e=>{e=Y(e);i[e]?a++:s[e]&&o++,n++});let d=!1;e=!(d=0<l?0<n?(0<a||0<o)&&a>=n:0<a&&a>=n||!!i[r]:i[r])&&(0<a||0<o);d?(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=O["transform"];const o=A["selectCheckboxMaps"];var n=B.value,l=$.value,{checkStrictly:d,checkMethod:i}=R.value;let t=!!i;if(!(t=i?!i({$tree:P,node:r}):t)){i=Y(r);let t=!1;o[i]?delete o[i]:(t=!0,o[i]=r),d||_xeUtils.default.eachTree(_xeUtils.default.get(r,a?l:n),e=>{e=Y(e);t?o[e]||(o[e]=!0):o[e]&&delete o[e]},{children:a?l:n}),z.updateCheckboxFlag++,Q();i=_xeUtils.default.keys(o).map(_util.deNodeValue);s(i),j("checkbox-change",{node:r,value:i,checked:t},e)}},Ce=(e,t)=>{e.preventDefault();var{currentMethod:r,trigger:a}=l.value,o=B.value,o=_xeUtils.default.get(t,o),o=o&&o.length;let n=!!r;if("child"===a){if(o)return}else if("parent"===a&&!o)return;(n=r?!r({node:t}):n)||(z.currentNode=t,j("current-change",{node:t,checked:!0},e))},ye=(e,t)=>{e.preventDefault(),e.stopPropagation();var r,a=U.value["checkMethod"];let o=!!a;(o=a?!a({$tree:P,node:t}):o)||(a=Y(t),r=(0,_util.deNodeValue)(a),z.selectRadioKey=a,n(r),j("radio-change",{node:t,value:r,checked:!0},e))},Ne=()=>{var e=V.value;e&&e.clientWidth&&J()},Ee={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,n(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),n(e),(0,_vue.nextTick)()},setRadioNode(e){return e?(e=Y(e),z.selectRadioKey=e,n((0,_util.deNodeValue)(e))):n(null),(0,_vue.nextTick)()},setCheckboxNode(e,t){return e&&(_xeUtils.default.isArray(e)||(e=[e]),S(e,t)),s(P.getCheckboxNodeIds()),(0,_vue.nextTick)()},setCheckboxByNodeId(e,t){return L(e,t),s(P.getCheckboxNodeIds()),(0,_vue.nextTick)()},getCheckboxNodeIds(){var e=A["selectCheckboxMaps"];const r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getCheckboxNodes(){const{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=O["transform"];const r={};var a=B.value,o=$.value;const n=[],l=[];return e&&_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=Y(e);n.push(t),l.push(e),r[t]=!0},{children:t?o:a}),A.indeterminateRowMaps={},A.selectCheckboxMaps=r,z.updateCheckboxFlag++,Q(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:n,checkNodes:l}))},clearExpandNode(){return Ee.clearAllExpandNode()},clearAllExpandNode(){var{nodeMaps:e,scrollYStore:t}=A;return _xeUtils.default.each(e,e=>{e.treeLoaded=!1}),A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,t.startIndex=0,t.endIndex=1,_(),X(),J()},setExpandByNodeId(e,t){const r=A["treeExpandedMaps"];return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);o(e,t,r)}),z.updateExpandedFlag++),_(),X(),J()},getExpandNodeIds(){var e=A["treeExpandedMaps"];const r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_util.deNodeValue)(t))}),r},getExpandNodes(){const{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){const r=A["treeExpandedMaps"];return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);o(e,t,r)}),z.updateExpandedFlag++),_(),X(),J()},toggleExpandByNodeId(e){const t=A["treeExpandedMaps"];return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_util.enNodeValue)(e);o(e,!t[""+e],t)}),z.updateExpandedFlag++),_(),X(),J()},toggleExpandNode(e){const t=A["treeExpandedMaps"];return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Y(e);o(e,!t[e],t)}),z.updateExpandedFlag++),_(),X(),J()},setAllExpandNode(e){var t=O["transform"];const r=z["scrollYLoad"],{scrollYStore:a,treeExpandedMaps:o}=A,n=B.value;var l=$.value;return e?_xeUtils.default.eachTree(A.afterTreeList,e=>{var t=_xeUtils.default.get(e,n);t&&t.length&&(t=Y(e),o[t]=!0)},{children:t?l:n}):A.treeExpandedMaps={},z.updateExpandedFlag++,z.topSpaceHeight=0,a.startIndex=0,a.endIndex=1,_(),X(),J().then(()=>(r&&ve(),J()))},reloadExpandNode(e){var t=O["lazy"];return t?(Ee.clearExpandLoaded(e),fe(e)):J()},clearExpandLoaded(e){var t=O["lazy"],r=A["nodeMaps"];return t&&(t=r[Y(e)])&&(t.treeLoaded=!1),J()},loadChildrenNode(t,e){const{lazy:r,transform:a}=O,d=A["nodeMaps"];if(!r)return Promise.resolve([]);const o=B.value,n=$.value,i=d[Y(t)],s=i?i.level:0,u=i?i.nodes:[];return(e=>{const r=v.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,o,n)=>{var l=Y(e);d[l]={item:e,index:-1,$index:-1,_index:-1,items:r,parent:o||i.item,nodes:u.concat(n),level:s+n.length,treeIndex:-1,lineCount:0,treeLoaded:!1}},{children:o}),t[o]=e,a&&(t[n]=e),G(),e))},isExpandByNode:e=>{var t=z["updateExpandedFlag"],r=A["treeExpandedMaps"],e=Y(e);return!(!t||!r[e])},isCheckedByRadioNodeId:I,isCheckedByRadioNode:e=>I(Y(e)),isCheckedByCheckboxNodeId:re,isIndeterminateByCheckboxNode:e=>ae(Y(e)),isCheckedByCheckboxNode:e=>re(Y(e)),getCheckboxIndeterminateNodes(){const{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:ge,scrollToNode(e){return P.scrollToNodeId(Y(e))},scrollToNodeId(t){var e=O["transform"];const{scrollYStore:r,afterTreeList:a}=A;var o=B.value,n=$.value;const l=p.value;if(t&&l)if(e){e=_xeUtils.default.findTree(a,e=>Y(e)===t,{children:e?n:o});if(e)return P.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),ge(l.scrollLeft,e)})}else{n=l.querySelector(`.vxe-tree--node-wrapper[nodeid="${t}"]`);if(n)return ge(l.scrollLeft,n.offsetTop)}return J()},clearScroll:pe},be=()=>{var e=V.value;if(e){const t="node--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}},ke=e=>{var t=V.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")})}},Me=e=>{var t=z["dragNode"],r=q.value["tooltipMethod"];let a="";a=r?""+(r({$tree:P,node:t})||""):getI18n("vxe.tree.dragTip",[e.textContent||""]),z.dragTipText=a},d=()=>{var e=x.value,t=f.value;e&&(e.style.display=""),t&&(t.style.display="")},Z=()=>{c.node=null},Te=(e,t)=>{e.stopPropagation();var r=t["node"],{trigger:a,dragStartMethod:o}=q.value,n=e.currentTarget,a="node"===a?n:n.parentElement.parentElement;be(),o&&!o(t)?(a.draggable=!1,z.dragNode=null,d()):(z.dragNode=r,a.draggable=!0,ke(r),Me(a),j("node-dragstart",t,e))},Ie=()=>{z.dragNode&&(d(),be(),Z(),z.dragNode=null)},Le=(e,t,r,a)=>{var o=V.value;if(o){var n=A["prevDragToChild"],l=o.getBoundingClientRect(),d=o.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-l.y);t+e>d&&(e=d-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",n?"y":"n")}else i.style.display=""}s=x.value;s&&(s.style.display="block",s.style.top=Math.min(o.clientHeight-o.scrollTop-s.clientHeight,e.clientY-l.y)+"px",s.style.left=Math.min(o.clientWidth-o.scrollLeft-s.clientWidth-1,e.clientX-l.x)+"px",s.setAttribute("drag-status",r?n?"sub":"normal":"disabled"))}},ee=()=>{var e=V.value;d(),be(),(0,_anime.clearRowAnimate)(e,[".vxe-tree--node-wrapper"]),A.prevDragToChild=!1,z.dragNode=null},Se=(l,d,i,s,e)=>{const c=O["transform"],{nodeMaps:t,treeFullData:g,afterVisibleList:v}=A;var h=q.value;const{animation:p,isCrossDrag:f,isPeerDrag:x,isSelfToChildDrag:_,dragEndMethod:r,dragToChildMethod:m}=h;h=r||(h?h.dragEndMethod:null);const C=u.value,y=K.value,N=B.value,E=$.value,b="bottom"===s?1:0,k=V.value,M={status:!1};if(k&&i&&d){if(i!==d){var T={oldNode:d,newNode:i,dragNode:d,dragPos:s,dragToChild:!!e,offsetIndex:b};const D=Y(d);var I=t[D]||{};const w=I._index;let u=0,r=-1,a=(p&&(L=k.querySelector(`.vxe-tree--node-wrapper[nodeid="${i}"]`),S=k.querySelector(`.vxe-tree--node-wrapper[nodeid="${D}"]`),(L=L||S)&&(u=L.offsetHeight),S)&&(r=S.offsetTop),-1),o=-1;const U={};let n=!1;const R=I;var L=Y(i);const H=t[L];if(c&&R&&H){var S=R["level"],I=H["level"];if(_xeUtils.default.eachTree([d],e=>{U[Y(e)]=e},{children:E}),S&&I)if(x&&!f){if(R.item[y]!==H.item[y])return ee(),Z(),M}else{if(!f)return ee(),Z(),M;if(U[L]&&(n=!0,!f||!_))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),M}else if(S){if(!f)return ee(),Z(),M}else if(I){if(!f)return ee(),Z(),M;if(U[L]&&(n=!0,!f||!_))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),ee(),Z(),M}}const F=_&&m?m(T):e;return Promise.resolve(!h||h(T)).then(e=>{var t;return e?(c?R&&H&&(e=_xeUtils.default.toTreeArray(A.afterTreeList,{key:C,parentKey:y,children:E}),t=P.findNodeIndexOf(e,d),e.splice(t,1),t=P.findNodeIndexOf(e,i)+b,e.splice(t,0,d),n&&f&&_&&_xeUtils.default.each(d[N],e=>{e[y]=d[y]}),d[y]=F?i[C]:i[y],A.treeFullData=_xeUtils.default.toArrayTree(e,{key:C,parentKey:y,children:N,mapChildren:E})):(a=P.findNodeIndexOf(v,d),t=P.findNodeIndexOf(g,d),v.splice(a,1),g.splice(t,1),e=P.findNodeIndexOf(v,i),t=P.findNodeIndexOf(g,i),o=e+b,e=t+b,v.splice(o,0,d),g.splice(e,0,d)),de(),X(c),c||G(),Q(),z.scrollYLoad&&W(),l&&j("node-dragend",{oldNode:d,newNode:i,dragNode:d,dragPos:s,dragToChild:F,offsetIndex:b,_index:{newIndex:o,oldIndex:a}},l),(0,_vue.nextTick)().then(()=>{if(p){var a=z["treeList"],o=A["nodeMaps"],n=o[D],l=n._index,d=a[0],o=o[Y(d)],d=k;if(o){var o=o._index,i=o+a.length;let e=-1,t=-1,r=1;w<o?(e=0,t=l-o):w>i?(i=n.$index,e=i+1,t=a.length,r=-1):l>w?(e=w-o,t=e+l-w):(e=l-o,t=e+w-l+1,r=-1);n=a.slice(e,t);if(n.length){const s=[];n.forEach(e=>{e=Y(e);s.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});i=d.querySelectorAll(s.join(","));(0,_anime.moveRowAnimateToTb)(i,r*u)}}o=[`.vxe-tree--node-wrapper[nodeid="${D}"]`],l=d.querySelectorAll(o.join(",")),a=l[0];-1<r&&a&&(0,_anime.moveRowAnimateToTb)(l,r-a.offsetTop)}J()}).then(()=>({status:!0}))):M}).catch(()=>M).then(e=>(ee(),Z(),e))}ee(),Z()}return Promise.resolve(M)},De=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},we=e=>{var t=O["lazy"],r=z["dragNode"],{nodeMaps:a,prevDragNode:o,prevDragPos:n,prevDragToChild:l}=A,d=w.value;t&&l&&(t=a[Y(o)],o[d])&&(!t||!t.treeLoaded)||Se(e,r,o,n,l)},Ue=e=>{var t,r,{lazy:a,transform:o}=O,n=z["dragNode"],l=A["nodeMaps"],d=q.value,i=K.value,s=w.value,{isCrossDrag:d,isPeerDrag:u,isToChildDrag:c}=d,g=(n||d||e.preventDefault(),(0,_dom.hasControlKey)(e)),v=e.currentTarget,h=v.getAttribute("nodeid")||"",l=l[h];l&&(e.preventDefault(),t=l.item,r=e.clientY-v.getBoundingClientRect().y<v.clientHeight/2?"top":"bottom",A.prevDragToChild=!!(o&&d&&c&&g),A.prevDragNode=t,A.prevDragPos=r,n&&Y(n)===h||g&&a&&t[s]&&l&&!l.treeLoaded||!d&&o&&(u?n[i]!==t[i]:l.level)?Le(e,v,!1,r):(Le(e,v,!0,r),j("node-dragover",{oldRNode:n,targetNode:t,dragPos:r},e)))};e={handleData:X,cacheNodeMap:de,updateAfterDataIndex:G,updateCheckboxStatus:Q,updateYSpace:W,findNodeIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>P.eqNode(e,t)):-1},eqNode(e,t){return!(!e||!t||e!==t&&Y(e)!==Y(t))},handleCrossTreeNodeDragCancelEvent(){ee(),Z()},handleCrossTreeNodeDragFinishEvent(){},handleCrossTreeNodeDragInsertEvent(){},handleCrossTreeNodeDragoverEmptyEvent(){},hideCrossTreeNodeDropClearStatus(){d()}};Object.assign(P,Ee,e);const Re=(c,e)=>{var{lazy:t,drag:r,transform:a,showRadio:o,showCheckbox:n,showLine:l,indent:d,iconOpen:i,iconClose:s,iconLoaded:u,showIcon:g}=O,{currentNode:v,selectRadioKey:h,updateExpandedFlag:p}=z,{afterTreeList:f,nodeMaps:x,treeExpandedMaps:_,treeExpandLazyLoadedMaps:m}=A,C=B.value,y=H.value,N=w.value,C=_xeUtils.default.get(c,C),C=C&&C.length,E=D.icon,b=D.title,k=D.extra,p=p&&_[e],_=x[e],x=_xeUtils.default.get(c,y),y=_.level;let M=!1,T=(o&&(M=e===String(h)),!1),I=(n&&(T=re(e)),!1),L=!1,S=!1;t&&(L=!!m[e],I=c[N],S=!!_.treeLoaded);o=_.items[_.treeIndex-1],h={node:c,isExpand:p},n={onMousedown(t){{var r=c,a=O["drag"],o=A["nodeMaps"],n=t.currentTarget,{trigger:l,isCrossDrag:d,isPeerDrag:i,disabledMethod:s}=q.value,u=Y(r);let e=a?"node"===l:!1;(0,_dom.getEventTargetNode)(t,n,"vxe-tree--node-item-switcher").flag||(a={node:r,$tree:P},l=o[u],!e)||!(d||i||l&&!l.level)||s&&s(a)||Te(t,{node:r})}},onMouseup:Ie,onClick(o){{var n=c,{showRadio:l,showCheckbox:d,trigger:i}=O,s=U.value,u=R.value;let e=!1,t=!1,r=!1,a=!1;F.value?(e=!0,Ce(o,n)):z.currentNode&&(z.currentNode=null),"node"===i&&(a=!0,_e(o,n)),l&&"node"===s.trigger&&(t=!0,ye(o,n)),d&&"node"===u.trigger&&(r=!0,me(o,n)),j("node-click",{node:n,triggerCurrent:e,triggerRadio:t,triggerCheckbox:r,triggerExpand:a},o)}},onDblclick(e){var t;e=e,t=c,j("node-dblclick",{node:t},e)},onContextmenu(e){var a,o,t,r;a=e,o=c,e=O.menuConfig,t=F.value,r=te.value,(e?(0,_utils.isEnableConf)(r):r.enabled)&&({options:e,visibleMethod:r}=r,r&&!r({$tree:P,options:e,node:o})||(t?Ce(a,o):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:o,$event:a,$tree:P,option:t};r&&r(t,a),j("menu-click",t,e.$event)}}}))),j("node-menu",{node:o},a)}};return r&&a&&(n.onDragstart=De,n.onDragend=we,n.onDragover=Ue),(0,_vue.h)("div",Object.assign({key:e,class:["vxe-tree--node-wrapper","node--level-"+y],nodeid:e},n),[(0,_vue.h)("div",{class:["vxe-tree--node-item",{"is--current":v&&e===Y(v),"is-radio--checked":M,"is-checkbox--checked":T}],style:{paddingLeft:y*(d||1)+"px"}},[l?(0,_vue.h)("div",{class:"vxe-tree--node-line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--node-line",style:{height:`${Y(f[0])===e?1:(0,_util.calcTreeLine)(P,c,o)}px`}})]):(0,_ui.renderEmptyElement)(P),(0,_vue.h)("div",{class:"vxe-tree--node-item-switcher"},g&&(!t||S?C:I)?[(0,_vue.h)("div",{class:"vxe-tree--node-item-icon",onClick(e){_e(e,c)}},E?(0,_vn.getSlotVNs)(E(h)):[(0,_vue.h)("i",{class:L?u||getIcon().TREE_NODE_LOADED:p?i||getIcon().TREE_NODE_OPEN:s||getIcon().TREE_NODE_CLOSE})])]:[]),((e,t)=>{var{drag:r,transform:a}=O,o=A["nodeMaps"],{showIcon:n,isPeerDrag:l,isCrossDrag:d,visibleMethod:i}=q.value;const s={node:e,$tree:P};if(r&&n&&a&&(!i||i(s))){e=o[t];if(e&&(l||d||!e.level)){var{icon:r,trigger:n,disabledMethod:a}=q.value;const u=a&&a(s);i={};return"node"!==n&&(i.onMousedown=e=>{u||Te(e,s)},i.onMouseup=Ie),(0,_vue.h)("div",Object.assign({class:["vxe-tree--drag-handle",{"is--disabled":u}]},i),[(0,_vue.h)("i",{class:r||getIcon().TREE_DRAG})])}}return(0,_ui.renderEmptyElement)(P)})(c,e),((t,e)=>{var r=O["showRadio"],{showIcon:a,checkMethod:o,visibleMethod:n}=U.value,n=!n||n({$tree:P,node:t});let l=!!o;return r&&a&&n?(o&&(l=!o({$tree:P,node:t})),(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":e,"is--disabled":l}],onClick:e=>{l||ye(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",e?getIcon().RADIO_CHECKED:getIcon().RADIO_UNCHECKED]})])):(0,_ui.renderEmptyElement)(P)})(c,M),((t,e,r)=>{var a=O["showCheckbox"],{showIcon:o,checkMethod:n,visibleMethod:l}=R.value,e=ae(e),l=!l||l({$tree:P,node:t});let d=!!n;return a&&o&&l?(n&&(d=!n({$tree:P,node:t})),(0,_vue.h)("div",{class:["vxe-tree--checkbox-option",{"is--checked":r,"is--indeterminate":e,"is--disabled":d}],onClick:e=>{d||me(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",e?getIcon().CHECKBOX_INDETERMINATE:r?getIcon().CHECKBOX_CHECKED:getIcon().CHECKBOX_UNCHECKED]})])):(0,_ui.renderEmptyElement)(P)})(c,e,T),(0,_vue.h)("div",{class:"vxe-tree--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-tree--node-item-title"},b?(0,_vn.getSlotVNs)(b(h)):""+x),k?(0,_vue.h)("div",{class:"vxe-tree--node-item-extra"},(0,_vn.getSlotVNs)(k(h))):(0,_ui.renderEmptyElement)(P)])])])},He=e=>{var t=O["transform"];const r=A["treeExpandedMaps"],a=B.value;if(!e.length)return[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder"},getI18n("vxe.tree.searchEmpty"))];const o=[];return e.forEach(t?e=>{var t=Y(e);o.push(Re(e,t))}:e=>{var t=Y(e),e=(o.push(Re(e,t)),_xeUtils.default.get(e,a));e&&e.length&&r[t]&&o.push(...He(e))}),o};const Fe=(0,_vue.ref)(0),Oe=((0,_vue.watch)(()=>O.data?O.data.length:0,()=>{Fe.value++}),(0,_vue.watch)(()=>O.data,()=>{Fe.value++}),(0,_vue.watch)(Fe,()=>{t(O.data||[])}),(0,_vue.watch)(()=>O.checkNodeKey,e=>{z.selectRadioKey=(0,_util.enNodeValue)(e)}),(0,_vue.ref)(0)),r=((0,_vue.watch)(()=>O.checkNodeKeys?O.checkNodeKeys.length:0,()=>{Oe.value++}),(0,_vue.watch)(()=>O.checkNodeKeys,()=>{Oe.value++}),(0,_vue.watch)(Oe,()=>{var e;e=O.checkNodeKeys||[],A.selectCheckboxMaps={},L(e,!0)}),(0,_vue.watch)(()=>O.filterValue,()=>{ie(new Event("filter"))}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>O.height,()=>{r.value++}),(0,_vue.watch)(()=>O.minHeight,()=>{r.value++}),(0,_vue.watch)(()=>O.maxHeight,()=>{r.value++}),(0,_vue.watch)(r,()=>{J()}),(0,_vue.onMounted)(()=>{var{transform:e,drag:t,menuConfig:r}=O,a=q.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"]),O.autoResize&&(e=V.value,a=oe(),r=_ui.globalResize.create(()=>{O.autoResize&&J()}),e&&r.observe(e),a&&r.observe(a),A.resizeObserver=r),_ui.globalEvents.on(P,"resize",Ne)}),(0,_vue.onBeforeUnmount)(()=>{var e=A["resizeObserver"];e&&e.disconnect(),_ui.globalEvents.off(P,"resize"),_xeUtils.default.assign(z,createReactData()),_xeUtils.default.assign(A,createInternalData())}),z.selectRadioKey=(0,_util.enNodeValue)(O.checkNodeKey),t(O.data||[]),P.renderVN=()=>{var{loading:e,trigger:t,showLine:r}=O,{bodyHeight:a,topSpaceHeight:o,treeList:n}=z,l=m.value,d=U.value,i=R.value,s=b.value,u=E.value,c=k.value;const g=D.loading;var v=D.header,h=D.footer;return(0,_vue.h)("div",{ref:V,class:["vxe-tree",{["size--"+l]:l,"show--line":r,"checkbox--highlight":i.highlight,"radio--highlight":d.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:P})):(0,_ui.renderEmptyElement)(P),(0,_vue.h)("div",{ref:p,class:"vxe-tree--node-list-wrapper",style:c,onScroll:he},[(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(${o}px)`}},He(n))]),h?(0,_vue.h)("div",{ref:y,class:"vxe-tree--footer-wrapper"},h({$tree:P})):(0,_ui.renderEmptyElement)(P),(()=>{var e=O["drag"],{dragNode:t,dragTipText:r}=z,a=q.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:x,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)(P)]):(0,_ui.renderEmptyElement)(P)})(),(0,_vue.h)(_loading.default,{class:"vxe-tree--loading",modelValue:e,icon:s.icon,text:s.text},g?{default:()=>g({$tree:P})}:{})])},(0,_vue.provide)("$xeTree",P),P},render(){return this.renderVN()}});