vxe-pc-ui 4.19.6 → 4.19.8

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 (112) hide show
  1. package/dist/all.esm.js +2206 -2111
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/card/src/card.js +35 -12
  5. package/es/card/style.css +42 -44
  6. package/es/card/style.min.css +1 -1
  7. package/es/icon/style.css +1 -1
  8. package/es/list/src/list.js +6 -2
  9. package/es/row/src/col.js +39 -18
  10. package/es/row/src/row.js +34 -16
  11. package/es/row/style.css +101 -24
  12. package/es/row/style.min.css +1 -1
  13. package/es/scrollbar/src/scrollbar.js +11 -1
  14. package/es/scrollbar/style.css +5 -5
  15. package/es/scrollbar/style.min.css +1 -1
  16. package/es/space/style.css +1 -0
  17. package/es/space/style.min.css +1 -1
  18. package/es/style.css +1 -1
  19. package/es/style.min.css +1 -1
  20. package/es/tabs/src/tabs.js +27 -8
  21. package/es/tabs/style.css +4 -2
  22. package/es/tabs/style.min.css +1 -1
  23. package/es/tree/src/tree.js +6 -2
  24. package/es/ui/index.js +1 -1
  25. package/es/ui/src/log.js +1 -1
  26. package/es/vxe-card/style.css +42 -44
  27. package/es/vxe-card/style.min.css +1 -1
  28. package/es/vxe-row/style.css +101 -24
  29. package/es/vxe-row/style.min.css +1 -1
  30. package/es/vxe-scrollbar/style.css +5 -5
  31. package/es/vxe-scrollbar/style.min.css +1 -1
  32. package/es/vxe-space/style.css +1 -0
  33. package/es/vxe-space/style.min.css +1 -1
  34. package/es/vxe-tabs/style.css +4 -2
  35. package/es/vxe-tabs/style.min.css +1 -1
  36. package/lib/card/src/card.js +42 -6
  37. package/lib/card/src/card.min.js +1 -1
  38. package/lib/card/style/style.css +42 -44
  39. package/lib/card/style/style.min.css +1 -1
  40. package/lib/icon/style/style.css +1 -1
  41. package/lib/icon/style/style.min.css +1 -1
  42. package/lib/index.umd.js +2600 -2463
  43. package/lib/index.umd.min.js +1 -1
  44. package/lib/list/src/list.js +5 -1
  45. package/lib/list/src/list.min.js +1 -1
  46. package/lib/row/src/col.js +43 -17
  47. package/lib/row/src/col.min.js +1 -1
  48. package/lib/row/src/row.js +38 -14
  49. package/lib/row/src/row.min.js +1 -1
  50. package/lib/row/style/style.css +101 -24
  51. package/lib/row/style/style.min.css +1 -1
  52. package/lib/scrollbar/src/scrollbar.js +11 -0
  53. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  54. package/lib/scrollbar/style/style.css +5 -5
  55. package/lib/scrollbar/style/style.min.css +1 -1
  56. package/lib/space/style/style.css +1 -0
  57. package/lib/space/style/style.min.css +1 -1
  58. package/lib/style.css +1 -1
  59. package/lib/style.min.css +1 -1
  60. package/lib/tabs/src/tabs.js +40 -8
  61. package/lib/tabs/src/tabs.min.js +1 -1
  62. package/lib/tabs/style/style.css +4 -2
  63. package/lib/tabs/style/style.min.css +1 -1
  64. package/lib/tree/src/tree.js +5 -1
  65. package/lib/tree/src/tree.min.js +1 -1
  66. package/lib/ui/index.js +1 -1
  67. package/lib/ui/index.min.js +1 -1
  68. package/lib/ui/src/log.js +1 -1
  69. package/lib/ui/src/log.min.js +1 -1
  70. package/lib/vxe-card/style/style.css +42 -44
  71. package/lib/vxe-card/style/style.min.css +1 -1
  72. package/lib/vxe-row/style/style.css +101 -24
  73. package/lib/vxe-row/style/style.min.css +1 -1
  74. package/lib/vxe-scrollbar/style/style.css +5 -5
  75. package/lib/vxe-scrollbar/style/style.min.css +1 -1
  76. package/lib/vxe-space/style/style.css +1 -0
  77. package/lib/vxe-space/style/style.min.css +1 -1
  78. package/lib/vxe-tabs/style/style.css +4 -2
  79. package/lib/vxe-tabs/style/style.min.css +1 -1
  80. package/package.json +1 -1
  81. package/packages/card/src/card.ts +55 -12
  82. package/packages/list/src/list.ts +6 -2
  83. package/packages/row/src/col.ts +41 -18
  84. package/packages/row/src/row.ts +36 -17
  85. package/packages/scrollbar/src/scrollbar.ts +13 -1
  86. package/packages/tabs/src/tabs.ts +34 -8
  87. package/packages/tree/src/tree.ts +6 -2
  88. package/styles/components/card.scss +44 -58
  89. package/styles/components/row.scss +21 -3
  90. package/styles/components/scrollbar.scss +15 -11
  91. package/styles/components/space.scss +1 -0
  92. package/styles/components/tabs.scss +2 -1
  93. package/types/components/card.d.ts +11 -0
  94. package/types/components/grid.d.ts +37 -0
  95. package/types/components/layout-aside.d.ts +6 -0
  96. package/types/components/layout-body.d.ts +6 -0
  97. package/types/components/menu.d.ts +6 -0
  98. package/types/components/row.d.ts +2 -0
  99. package/types/components/table.d.ts +1 -2
  100. package/types/components/tabs.d.ts +11 -0
  101. /package/es/icon/{iconfont.1791769645781.ttf → iconfont.1791862962954.ttf} +0 -0
  102. /package/es/icon/{iconfont.1791769645781.woff → iconfont.1791862962954.woff} +0 -0
  103. /package/es/icon/{iconfont.1791769645781.woff2 → iconfont.1791862962954.woff2} +0 -0
  104. /package/es/{iconfont.1791769645781.ttf → iconfont.1791862962954.ttf} +0 -0
  105. /package/es/{iconfont.1791769645781.woff → iconfont.1791862962954.woff} +0 -0
  106. /package/es/{iconfont.1791769645781.woff2 → iconfont.1791862962954.woff2} +0 -0
  107. /package/lib/icon/style/{iconfont.1791769645781.ttf → iconfont.1791862962954.ttf} +0 -0
  108. /package/lib/icon/style/{iconfont.1791769645781.woff → iconfont.1791862962954.woff} +0 -0
  109. /package/lib/icon/style/{iconfont.1791769645781.woff2 → iconfont.1791862962954.woff2} +0 -0
  110. /package/lib/{iconfont.1791769645781.ttf → iconfont.1791862962954.ttf} +0 -0
  111. /package/lib/{iconfont.1791769645781.woff → iconfont.1791862962954.woff} +0 -0
  112. /package/lib/{iconfont.1791769645781.woff2 → iconfont.1791862962954.woff2} +0 -0
@@ -13,6 +13,7 @@ var _utils = require("../../ui/src/utils");
13
13
  var _log = require("../../ui/src/log");
14
14
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
15
15
  var _loading = _interopRequireDefault(require("../../loading"));
16
+ var _scrollbar = _interopRequireDefault(require("../../scrollbar"));
16
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
18
  const {
18
19
  warnLog,
@@ -57,6 +58,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
57
58
  type: String,
58
59
  default: () => (0, _ui.getConfig)().tabs.size || (0, _ui.getConfig)().size
59
60
  },
61
+ useScrollbar: {
62
+ type: Boolean,
63
+ default: () => (0, _ui.getConfig)().tabs.useScrollbar
64
+ },
65
+ scrollbarConfig: Object,
60
66
  // 已废弃
61
67
  beforeCloseMethod: Function
62
68
  },
@@ -162,6 +168,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
162
168
  const computeParentTabsResizeFlag = (0, _vue.computed)(() => {
163
169
  return $xeParentTabs ? $xeParentTabs.reactData.resizeFlag : null;
164
170
  });
171
+ const computeScrollbarOpts = (0, _vue.computed)(() => {
172
+ return Object.assign({}, (0, _ui.getConfig)().tabs.scrollbarConfig, props.scrollbarConfig);
173
+ });
165
174
  const computeMaps = {};
166
175
  const $xeTabs = {
167
176
  xID,
@@ -825,6 +834,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
825
834
  })) : (0, _ui.renderEmptyElement)($xeTabs)]);
826
835
  };
827
836
  const renderTabPane = item => {
837
+ const {
838
+ useScrollbar
839
+ } = props;
828
840
  const {
829
841
  initNames,
830
842
  activeName
@@ -834,14 +846,34 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
834
846
  slots
835
847
  } = item;
836
848
  const defaultSlot = slots ? slots.default : null;
837
- return name && initNames.includes(name) ? (0, _vue.h)('div', {
838
- key: `${name}`,
839
- class: ['vxe-tabs-pane--item', {
840
- 'is--visible': activeName === name
841
- }]
842
- }, defaultSlot ? callSlot(defaultSlot, {
843
- name
844
- }) : []) : (0, _ui.renderEmptyElement)($xeTabs);
849
+ const scrollbarOpts = computeScrollbarOpts.value;
850
+ const {
851
+ viewClassName,
852
+ viewInnerClassName
853
+ } = scrollbarOpts;
854
+ if (name && initNames.includes(name)) {
855
+ return useScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign(Object.assign({
856
+ key: `${name}`,
857
+ class: ['vxe-tabs-pane--scrollbar-item', {
858
+ 'is--visible': activeName === name
859
+ }]
860
+ }, scrollbarOpts), {
861
+ viewClassName: 'vxe-tabs-pane--scrollbar-item-view' + (viewClassName ? ' ' + viewClassName : ''),
862
+ viewInnerClassName: 'vxe-tabs-pane--scrollbar-item-inner' + (viewClassName ? ' ' + viewInnerClassName : '')
863
+ }), {
864
+ default: () => defaultSlot ? callSlot(defaultSlot, {
865
+ name
866
+ }) : []
867
+ }) : (0, _vue.h)('div', {
868
+ key: `${name}`,
869
+ class: ['vxe-tabs-pane--item', {
870
+ 'is--visible': activeName === name
871
+ }]
872
+ }, defaultSlot ? callSlot(defaultSlot, {
873
+ name
874
+ }) : []);
875
+ }
876
+ return (0, _ui.renderEmptyElement)($xeTabs);
845
877
  };
846
878
  const renderTabContent = tabList => {
847
879
  const {
@@ -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"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tabs"),scrollbarOffsetSize=20;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTabs",props:{modelValue:[String,Number,Boolean],options:Array,width:[String,Number],height:[String,Number],destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.destroyOnClose},titleWidth:[String,Number],titleAlign:[String,Number],type:{type:String,default:()=>(0,_ui.getConfig)().tabs.type},position:{type:String,default:()=>(0,_ui.getConfig)().tabs.position},showClose:Boolean,showBody:{type:Boolean,default:!0},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.padding},trigger:String,beforeChangeMethod:Function,closeConfig:Object,refreshConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().tabs.size||(0,_ui.getConfig)().size},beforeCloseMethod:Function},emits:["update:modelValue","change","tab-change","tab-change-fail","tab-close","tab-close-fail","tab-click","tab-load"],setup(d,e){let{slots:w,emit:i}=e;var E=_xeUtils.default.uniqueId();let t=(0,_vue.inject)("$xeTabs",null),h=(0,_ui.useSize)(d).computeSize,c=(0,_vue.ref)(),S=(0,_vue.ref)(),u=(0,_vue.ref)(),v=(0,_vue.ref)(),O=(0,_vue.reactive)({staticTabs:[],activeName:null,initNames:[],lintLeft:0,lintTop:0,lintWidth:0,lintHeight:0,scrollbarWidth:0,scrollbarHeight:0,isTabOver:!1,resizeFlag:1,cacheTabMaps:{}}),m={slTimeout:void 0},M={refElem:c},B=(0,_vue.computed)(()=>{var e=d.type;return e||"default"}),L=(0,_vue.computed)(()=>{var e=d.position;return e||"top"}),z=(0,_vue.computed)(()=>{var e=L.value;return"left"===e||"right"===e}),q=(0,_vue.computed)(()=>{var{lintLeft:e,lintTop:t,lintWidth:a,lintHeight:i}=O;return z.value?{top:t+"px",height:i+"px"}:{left:e+"px",width:a+"px"}}),U=(0,_vue.computed)(()=>{var{width:e,height:t}=d,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),t&&(a.height="auto"===t?"100%":(0,_dom.toCssUnit)(t)),a}),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.closeConfig,d.closeConfig)),H=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.refreshConfig,d.refreshConfig)),_=(0,_vue.computed)(()=>{var e=d.options;return(e||[]).filter(e=>a(e))}),b=(0,_vue.computed)(()=>{var e=O.staticTabs;return e.filter(e=>a(e))});var I=(0,_vue.computed)(()=>t?t.reactData.resizeFlag:null);let V={},A={xID:E,props:d,context:e,reactData:O,getRefMaps:()=>M,getComputeMaps:()=>V},a=e=>{e=e.permissionCode;return!(e&&!_ui.permission.checkVisible(e))},k=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=w[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],F=()=>{var e,t,a,i,l,r=z.value,s=S.value,n=u.value,o=v.value;s&&({scrollLeft:s,scrollTop:e,clientWidth:t,clientHeight:a,scrollWidth:i,scrollHeight:l}=s,n&&(0<(r?e:s)?(0,_dom.addClass):(0,_dom.removeClass))(n,"scrolling--middle"),o)&&((r?a<l-Math.ceil(e):t<i-Math.ceil(s))?(0,_dom.addClass):(0,_dom.removeClass))(o,"scrolling--middle")},p=()=>{var e=()=>{let t=O.activeName;var e,a,i,l,r,s=B.value,n=_.value,o=b.value,u=S.value,v=z.value;let c=0,d=0,h=0,m=0,p=0,f=0,g=!1;u&&(o=_xeUtils.default.findIndexOf(o.length?o:n,e=>e.name===t),{children:n,offsetWidth:u,scrollWidth:e,offsetHeight:i,scrollHeight:l,clientWidth:a,clientHeight:r}=u,p=u-a,f=i-r,v?(g=l!==r,-1<o&&(u=n[o])&&(i=u.clientHeight,v=u.clientWidth,m="card"===s?(c=v,d=i,u.offsetTop):"border-card"===s?(c=v,d=i,u.offsetTop-1):(d=Math.max(4,Math.floor(.6*i)),u.offsetTop+Math.floor((i-d)/2)))):(g=e!==a,-1<o&&(l=n[o])&&(r=l.clientWidth,h="card"===s?(c=r+1,l.offsetLeft):"border-card"===s?(c=r,l.offsetLeft-1):(c=Math.max(4,Math.floor(.6*r)),l.offsetLeft+Math.floor((r-c)/2))))),O.scrollbarWidth=p,O.scrollbarHeight=f,O.lintLeft=h,O.lintTop=m,O.lintWidth=c,O.lintHeight=d,O.isTabOver=g,F()};e(),(0,_vue.nextTick)(e)},f=(e,t,a)=>{i(e,(0,_ui.createEvent)(a,{$tabs:A},t))},n=e=>{i("update:modelValue",e)},o=(e,t)=>{var a=O.initNames;return!(!e||a.includes(e)||(f("tab-load",{name:e},t),a.push(e),0))},l=e=>{let i=null,l={};if(e&&e.length){let a=!1;i=d.modelValue,e.forEach(e=>{var{name:e,preload:t}=e||{};e&&(l[""+e]={loading:!1},i===e&&(a=!0),t)&&o(e,null)}),a||(i=e[0].name,o(i,null),n(i))}O.activeName=i,O.cacheTabMaps=l},R=(t,a)=>{var e=d.trigger,i=d.beforeChangeMethod||(0,_ui.getConfig)().tabs.beforeChangeMethod;let l=O.activeName,r=a.name,s=r;f("tab-click",{name:r},t),"manual"!==e&&r!==l&&Promise.resolve(!i||i({$tabs:A,name:r,oldName:l,newName:r,option:a})).then(e=>{e?(O.activeName=r,n(s),o(r,t),f("change",{value:s,name:r,oldName:l,newName:r,option:a},t),f("tab-change",{value:s,name:r,oldName:l,newName:r,option:a},t)):f("tab-change-fail",{value:s,name:r,oldName:l,newName:r,option:a},t)}).catch(()=>{f("tab-change-fail",{value:s,name:r,oldName:l,newName:r,option:a},t)})},P=(e,t)=>{e.stopPropagation();var{activeName:e,cacheTabMaps:a}=O,i=t.name,l=H.value.queryMethod;let r=i?a[""+i]:null;r&&(l?r.loading||(r.loading=!0,Promise.resolve(l({$tabs:A,value:e,name:i,option:t})).finally(()=>{r.loading=!1})):errLog("vxe.error.notFunc",["refresh-config.queryMethod"]))},$=(t,e,a,i)=>{t.stopPropagation();var l=O.activeName,r=W.value.beforeMethod||d.beforeCloseMethod||(0,_ui.getConfig)().tabs.beforeCloseMethod;let s=e.name,n=l,o=n;l===s&&(l=a<i.length-1?i[a+1]:i[a-1],o=l?l.name:null),Promise.resolve(!r||r({$tabs:A,value:n,name:s,nextName:o,option:e})).then(e=>{e?f("tab-close",{value:n,name:s,nextName:o},t):f("tab-close-fail",{value:n,name:s,nextName:o},t)}).catch(()=>{f("tab-close-fail",{value:n,name:s,nextName:o},t)})},j=(n,e)=>{var t=m.slTimeout;let o=z.value,u=o?0:e,v=o?e:0,c=6,d=35,h=(t&&(clearTimeout(t),m.slTimeout=void 0),()=>{var e,t,a,i,l,r,s=S.value;0<c&&(c--,s)&&({clientWidth:e,clientHeight:t,scrollWidth:a,scrollHeight:i,scrollLeft:l,scrollTop:r}=s,o?(v=Math.floor(v/2),0<n?t+r<i&&(s.scrollTop+=v,d-=4,m.slTimeout=setTimeout(h,d)):0<r&&(s.scrollTop-=v,d-=4,m.slTimeout=setTimeout(h,d))):(u=Math.floor(u/2),0<n?e+l<a&&(s.scrollLeft+=u,d-=4,m.slTimeout=setTimeout(h,d)):0<l&&(s.scrollLeft-=u,d-=4,m.slTimeout=setTimeout(h,d))),p())});h()},r=e=>{var t,a=z.value,i=S.value;i&&({clientWidth:i,clientHeight:t}=i,a=Math.floor(.75*(a?t:i)),j(e,a))},D=()=>{r(-1)},G=()=>{r(1)},s=n=>{let o=_.value,u=b.value,v=z.value;return(0,_vue.nextTick)().then(()=>{var e,t,a,i,l,r,s=S.value;s&&(-1<(i=_xeUtils.default.findIndexOf(u.length?u:o,e=>e.name===n))&&({scrollLeft:e,scrollTop:r,clientWidth:t,clientHeight:l,children:a}=s,a=a[i])&&(v?(0<(l=(i=a.offsetTop)+a.clientHeight-(r+l))&&(s.scrollTop+=l),i<r&&(s.scrollTop=i)):(0<(r=(l=a.offsetLeft)+a.clientWidth-(e+t))&&(s.scrollLeft+=r),l<e&&(s.scrollLeft=l))),p())})},g=t=>{let a=O.activeName;var i=_.value,l=b.value,l=l.length?l:i,i=_xeUtils.default.findIndexOf(l,e=>e.name===a);if(-1<i){let e=null;t?i<l.length-1&&(e=l[i+1]):0<i&&(e=l[i-1]),e&&(l=t=e.name,O.activeName=t,n(l),o(t,null))}return(0,_vue.nextTick)()},x={dispatchEvent:f,scrollToTab:s,prev(){return g(!1)},next(){return g(!0)},prevTab(){return warnLog("vxe.error.delFunc",["prevTab","prev"]),x.prev()},nextTab(){return warnLog("vxe.error.delFunc",["nextTab","next"]),x.next()}};Object.assign(A,x,{});let T=h=>{let{titleWidth:m,titleAlign:p,showClose:f,closeConfig:g,refreshConfig:_}=d,{activeName:b,scrollbarWidth:e,scrollbarHeight:t,isTabOver:a,cacheTabMaps:x}=O,T=B.value,y=L.value;var i=z.value,l=q.value,r=w.tabPrefix||w["tab-prefix"]||w.prefix,s=w.tabSuffix||w["tab-suffix"]||w.suffix||w.extra;let C=W.value,N=C.visibleMethod,E=H.value,M=E.visibleMethod;return(0,_vue.h)("div",{key:"th",class:["vxe-tabs-header","type--"+T,"pos--"+y]},[r?(0,_vue.h)("div",{class:["vxe-tabs-header--prefix","type--"+T,"pos--"+y]},k(r,{name:b})):(0,_ui.renderEmptyElement)(A),a?(0,_vue.h)("div",{ref:u,class:["vxe-tabs-header--bar vxe-tabs-header--prev-bar","type--"+T,"pos--"+y],onClick:D},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_TOP:(0,_ui.getIcon)().TABS_TAB_BUTTON_LEFT})]):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-header--wrapper","type--"+T,"pos--"+y]},[(0,_vue.h)("div",{ref:S,class:"vxe-tabs-header--item-wrapper",style:i?{marginRight:`-${e+scrollbarOffsetSize}px`,paddingRight:scrollbarOffsetSize+"px"}:{marginBottom:`-${t+scrollbarOffsetSize}px`,paddingBottom:scrollbarOffsetSize+"px"},onScroll:F},h.map((t,a)=>{var{title:e,titleWidth:i,titleAlign:l,icon:r,name:s}=t,n=t.slots||{},o=n.title||n.tab,u=n.titlePrefix||n["title-prefix"],n=n.titleSuffix||n["title-suffix"],i=i||m,l=l||p,v={$tabs:A,value:b,name:s,option:t},c=b===s,d=s?x[""+s]:null,d=!!d&&d.loading;return(0,_vue.h)("div",{key:""+s,class:["vxe-tabs-header--item","type--"+T,"pos--"+y,l?"align--"+l:"",{"is--active":c}],style:i?{width:(0,_dom.toCssUnit)(i)}:void 0,onClick(e){R(e,t)}},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-inner"},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-content"},[r?(0,_vue.h)("span",{class:"vxe-tabs-header--item-icon"},[(0,_vue.h)("i",{class:r})]):(0,_ui.renderEmptyElement)(A),u?(0,_vue.h)("span",{class:"vxe-tabs-header--item-prefix"},k(u,{name:s,title:e})):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("span",{class:"vxe-tabs-header--item-name"},o?k(o,{name:s,title:e}):""+e),n?(0,_vue.h)("span",{class:"vxe-tabs-header--item-suffix"},k(n,{name:s,title:e})):(0,_ui.renderEmptyElement)(A)]),!(0,_utils.isEnableConf)(_)&&!E.enabled||M&&!M(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--refresh-btn",{"is--active":c,"is--loading":d,"is--disabled":d}],onClick(e){P(e,t)}},[(0,_vue.h)("i",{class:d?(0,_ui.getIcon)().TABS_TAB_REFRESH_LOADING:(0,_ui.getIcon)().TABS_TAB_REFRESH})]),!(f||(0,_utils.isEnableConf)(g)||C.enabled)||N&&!N(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--close-btn",{"is--active":c}],onClick(e){$(e,t,a,h)}},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().TABS_TAB_CLOSE})])])])}).concat([(0,_vue.h)("span",{key:"line",class:["vxe-tabs-header--active-line","type--"+T,"pos--"+y],style:l})]))]),a?(0,_vue.h)("div",{ref:v,class:["vxe-tabs-header--bar vxe-tabs-header--next-bar","type--"+T,"pos--"+y],onClick:G},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_BOTTOM:(0,_ui.getIcon)().TABS_TAB_BUTTON_RIGHT})]):(0,_ui.renderEmptyElement)(A),s?(0,_vue.h)("div",{class:["vxe-tabs-header--suffix","type--"+T,"pos--"+y]},k(s,{name:b})):(0,_ui.renderEmptyElement)(A)])},y=e=>{var{initNames:t,activeName:a}=O,{name:e,slots:i}=e,i=i?i.default:null;return e&&t.includes(e)?(0,_vue.h)("div",{key:""+e,class:["vxe-tabs-pane--item",{"is--visible":a===e}]},i?k(i,{name:e}):[]):(0,_ui.renderEmptyElement)(A)},J=e=>{var t=d.destroyOnClose;let a=O.activeName;return t?[(t=e.find(e=>e.name===a))?y(t):(0,_ui.renderEmptyElement)(A)]:e.map(e=>y(e))},K=e=>{var{height:t,padding:a,showBody:i}=d,{activeName:l,cacheTabMaps:r}=O,s=h.value,n=B.value,o=L.value,u=H.value.showLoading,v=w.header,c=w.footer;return i?(r=!!(r=l?r[""+l]:null)&&r.loading,l={name:l},(0,_vue.h)("div",{key:"tb",class:["vxe-tabs-pane--wrapper","type--"+n,"pos--"+o,{"is--content":i}]},[v?(0,_vue.h)("div",{class:"vxe-tabs-pane--header"},k(v,l)):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-pane--body","type--"+n,"pos--"+o,{["size--"+s]:s,"is--padding":a,"is--height":t}]},J(e)),c?(0,_vue.h)("div",{class:"vxe-tabs-pane--footer"},k(c,l)):(0,_ui.renderEmptyElement)(A),u&&r?(0,_ui.renderEmptyElement)(A):(0,_vue.h)(_loading.default,{class:"vxe-tabs--loading",modelValue:r})])):(0,_ui.renderEmptyElement)(A)};(0,_vue.watch)(()=>d.position,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>d.modelValue,e=>{o(e,null),O.activeName=e}),(0,_vue.watch)(()=>O.activeName,e=>{s(e)});let C=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>d.options?d.options.length:-1,()=>{C.value++}),(0,_vue.watch)(()=>d.options,()=>{C.value++}),(0,_vue.watch)(C,()=>{l(d.options),O.resizeFlag++}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>O.staticTabs?O.staticTabs.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>O.staticTabs,()=>{N.value++}),(0,_vue.watch)(N,()=>{l(O.staticTabs),O.resizeFlag++}),(0,_vue.watch)(I,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>O.resizeFlag,()=>{(0,_vue.nextTick)(()=>{p()})}),(0,_vue.onMounted)(()=>{p(),_ui.globalEvents.on(A,"resize",p)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(A,"resize")}),(0,_vue.provide)("$xeTabs",A),o(d.modelValue,null),l(O.staticTabs.length?O.staticTabs:d.options),A.renderVN=()=>{var{height:e,padding:t,trigger:a}=d,i=O.activeName,l=h.value,r=_.value,s=b.value,n=B.value,o=L.value,u=U.value,v=w.default,s=v?s:r,r=[(0,_vue.h)("div",{key:"ts",class:"vxe-tabs-slots"},v?v({name:i}):[])];return"right"===o||"bottom"===o?r.push(K(s),T(s)):r.push(T(s),K(s)),(0,_vue.h)("div",{ref:c,class:["vxe-tabs","pos--"+o,"vxe-tabs--"+n,"trigger--"+("manual"===a?"trigger":"default"),{["size--"+l]:l,"is--padding":t,"is--height":e}],style:u},r)},A},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"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_loading=_interopRequireDefault(require("../../loading")),_scrollbar=_interopRequireDefault(require("../../scrollbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tabs"),scrollbarOffsetSize=20;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTabs",props:{modelValue:[String,Number,Boolean],options:Array,width:[String,Number],height:[String,Number],destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.destroyOnClose},titleWidth:[String,Number],titleAlign:[String,Number],type:{type:String,default:()=>(0,_ui.getConfig)().tabs.type},position:{type:String,default:()=>(0,_ui.getConfig)().tabs.position},showClose:Boolean,showBody:{type:Boolean,default:!0},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.padding},trigger:String,beforeChangeMethod:Function,closeConfig:Object,refreshConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().tabs.size||(0,_ui.getConfig)().size},useScrollbar:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.useScrollbar},scrollbarConfig:Object,beforeCloseMethod:Function},emits:["update:modelValue","change","tab-change","tab-change-fail","tab-close","tab-close-fail","tab-click","tab-load"],setup(d,e){let{slots:S,emit:l}=e;var E=_xeUtils.default.uniqueId();let t=(0,_vue.inject)("$xeTabs",null),h=(0,_ui.useSize)(d).computeSize,c=(0,_vue.ref)(),M=(0,_vue.ref)(),u=(0,_vue.ref)(),v=(0,_vue.ref)(),O=(0,_vue.reactive)({staticTabs:[],activeName:null,initNames:[],lintLeft:0,lintTop:0,lintWidth:0,lintHeight:0,scrollbarWidth:0,scrollbarHeight:0,isTabOver:!1,resizeFlag:1,cacheTabMaps:{}}),m={slTimeout:void 0},w={refElem:c},B=(0,_vue.computed)(()=>{var e=d.type;return e||"default"}),L=(0,_vue.computed)(()=>{var e=d.position;return e||"top"}),z=(0,_vue.computed)(()=>{var e=L.value;return"left"===e||"right"===e}),F=(0,_vue.computed)(()=>{var{lintLeft:e,lintTop:t,lintWidth:a,lintHeight:l}=O;return z.value?{top:t+"px",height:l+"px"}:{left:e+"px",width:a+"px"}}),I=(0,_vue.computed)(()=>{var{width:e,height:t}=d,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),t&&(a.height="auto"===t?"100%":(0,_dom.toCssUnit)(t)),a}),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.closeConfig,d.closeConfig)),H=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.refreshConfig,d.refreshConfig)),_=(0,_vue.computed)(()=>{var e=d.options;return(e||[]).filter(e=>a(e))}),b=(0,_vue.computed)(()=>{var e=O.staticTabs;return e.filter(e=>a(e))});var U=(0,_vue.computed)(()=>t?t.reactData.resizeFlag:null);let V=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.scrollbarConfig,d.scrollbarConfig)),R={},k={xID:E,props:d,context:e,reactData:O,getRefMaps:()=>w,getComputeMaps:()=>R},a=e=>{e=e.permissionCode;return!(e&&!_ui.permission.checkVisible(e))},A=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=S[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],q=()=>{var e,t,a,l,i,s=z.value,r=M.value,n=u.value,o=v.value;r&&({scrollLeft:r,scrollTop:e,clientWidth:t,clientHeight:a,scrollWidth:l,scrollHeight:i}=r,n&&(0<(s?e:r)?(0,_dom.addClass):(0,_dom.removeClass))(n,"scrolling--middle"),o)&&((s?a<i-Math.ceil(e):t<l-Math.ceil(r))?(0,_dom.addClass):(0,_dom.removeClass))(o,"scrolling--middle")},p=()=>{var e=()=>{let t=O.activeName;var e,a,l,i,s,r=B.value,n=_.value,o=b.value,u=M.value,v=z.value;let c=0,d=0,h=0,m=0,p=0,f=0,g=!1;u&&(o=_xeUtils.default.findIndexOf(o.length?o:n,e=>e.name===t),{children:n,offsetWidth:u,scrollWidth:e,offsetHeight:l,scrollHeight:i,clientWidth:a,clientHeight:s}=u,p=u-a,f=l-s,v?(g=i!==s,-1<o&&(u=n[o])&&(l=u.clientHeight,v=u.clientWidth,m="card"===r?(c=v,d=l,u.offsetTop):"border-card"===r?(c=v,d=l,u.offsetTop-1):(d=Math.max(4,Math.floor(.6*l)),u.offsetTop+Math.floor((l-d)/2)))):(g=e!==a,-1<o&&(i=n[o])&&(s=i.clientWidth,h="card"===r?(c=s+1,i.offsetLeft):"border-card"===r?(c=s,i.offsetLeft-1):(c=Math.max(4,Math.floor(.6*s)),i.offsetLeft+Math.floor((s-c)/2))))),O.scrollbarWidth=p,O.scrollbarHeight=f,O.lintLeft=h,O.lintTop=m,O.lintWidth=c,O.lintHeight=d,O.isTabOver=g,q()};e(),(0,_vue.nextTick)(e)},f=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$tabs:k},t))},n=e=>{l("update:modelValue",e)},o=(e,t)=>{var a=O.initNames;return!(!e||a.includes(e)||(f("tab-load",{name:e},t),a.push(e),0))},i=e=>{let l=null,i={};if(e&&e.length){let a=!1;l=d.modelValue,e.forEach(e=>{var{name:e,preload:t}=e||{};e&&(i[""+e]={loading:!1},l===e&&(a=!0),t)&&o(e,null)}),a||(l=e[0].name,o(l,null),n(l))}O.activeName=l,O.cacheTabMaps=i},j=(t,a)=>{var e=d.trigger,l=d.beforeChangeMethod||(0,_ui.getConfig)().tabs.beforeChangeMethod;let i=O.activeName,s=a.name,r=s;f("tab-click",{name:s},t),"manual"!==e&&s!==i&&Promise.resolve(!l||l({$tabs:k,name:s,oldName:i,newName:s,option:a})).then(e=>{e?(O.activeName=s,n(r),o(s,t),f("change",{value:r,name:s,oldName:i,newName:s,option:a},t),f("tab-change",{value:r,name:s,oldName:i,newName:s,option:a},t)):f("tab-change-fail",{value:r,name:s,oldName:i,newName:s,option:a},t)}).catch(()=>{f("tab-change-fail",{value:r,name:s,oldName:i,newName:s,option:a},t)})},P=(e,t)=>{e.stopPropagation();var{activeName:e,cacheTabMaps:a}=O,l=t.name,i=H.value.queryMethod;let s=l?a[""+l]:null;s&&(i?s.loading||(s.loading=!0,Promise.resolve(i({$tabs:k,value:e,name:l,option:t})).finally(()=>{s.loading=!1})):errLog("vxe.error.notFunc",["refresh-config.queryMethod"]))},$=(t,e,a,l)=>{t.stopPropagation();var i=O.activeName,s=W.value.beforeMethod||d.beforeCloseMethod||(0,_ui.getConfig)().tabs.beforeCloseMethod;let r=e.name,n=i,o=n;i===r&&(i=a<l.length-1?l[a+1]:l[a-1],o=i?i.name:null),Promise.resolve(!s||s({$tabs:k,value:n,name:r,nextName:o,option:e})).then(e=>{e?f("tab-close",{value:n,name:r,nextName:o},t):f("tab-close-fail",{value:n,name:r,nextName:o},t)}).catch(()=>{f("tab-close-fail",{value:n,name:r,nextName:o},t)})},D=(n,e)=>{var t=m.slTimeout;let o=z.value,u=o?0:e,v=o?e:0,c=6,d=35,h=(t&&(clearTimeout(t),m.slTimeout=void 0),()=>{var e,t,a,l,i,s,r=M.value;0<c&&(c--,r)&&({clientWidth:e,clientHeight:t,scrollWidth:a,scrollHeight:l,scrollLeft:i,scrollTop:s}=r,o?(v=Math.floor(v/2),0<n?t+s<l&&(r.scrollTop+=v,d-=4,m.slTimeout=setTimeout(h,d)):0<s&&(r.scrollTop-=v,d-=4,m.slTimeout=setTimeout(h,d))):(u=Math.floor(u/2),0<n?e+i<a&&(r.scrollLeft+=u,d-=4,m.slTimeout=setTimeout(h,d)):0<i&&(r.scrollLeft-=u,d-=4,m.slTimeout=setTimeout(h,d))),p())});h()},s=e=>{var t,a=z.value,l=M.value;l&&({clientWidth:l,clientHeight:t}=l,a=Math.floor(.75*(a?t:l)),D(e,a))},G=()=>{s(-1)},J=()=>{s(1)},r=n=>{let o=_.value,u=b.value,v=z.value;return(0,_vue.nextTick)().then(()=>{var e,t,a,l,i,s,r=M.value;r&&(-1<(l=_xeUtils.default.findIndexOf(u.length?u:o,e=>e.name===n))&&({scrollLeft:e,scrollTop:s,clientWidth:t,clientHeight:i,children:a}=r,a=a[l])&&(v?(0<(i=(l=a.offsetTop)+a.clientHeight-(s+i))&&(r.scrollTop+=i),l<s&&(r.scrollTop=l)):(0<(s=(i=a.offsetLeft)+a.clientWidth-(e+t))&&(r.scrollLeft+=s),i<e&&(r.scrollLeft=i))),p())})},g=t=>{let a=O.activeName;var l=_.value,i=b.value,i=i.length?i:l,l=_xeUtils.default.findIndexOf(i,e=>e.name===a);if(-1<l){let e=null;t?l<i.length-1&&(e=i[l+1]):0<l&&(e=i[l-1]),e&&(i=t=e.name,O.activeName=t,n(i),o(t,null))}return(0,_vue.nextTick)()},x={dispatchEvent:f,scrollToTab:r,prev(){return g(!1)},next(){return g(!0)},prevTab(){return warnLog("vxe.error.delFunc",["prevTab","prev"]),x.prev()},nextTab(){return warnLog("vxe.error.delFunc",["nextTab","next"]),x.next()}};Object.assign(k,x,{});let T=h=>{let{titleWidth:m,titleAlign:p,showClose:f,closeConfig:g,refreshConfig:_}=d,{activeName:b,scrollbarWidth:e,scrollbarHeight:t,isTabOver:a,cacheTabMaps:x}=O,T=B.value,y=L.value;var l=z.value,i=F.value,s=S.tabPrefix||S["tab-prefix"]||S.prefix,r=S.tabSuffix||S["tab-suffix"]||S.suffix||S.extra;let C=W.value,N=C.visibleMethod,E=H.value,w=E.visibleMethod;return(0,_vue.h)("div",{key:"th",class:["vxe-tabs-header","type--"+T,"pos--"+y]},[s?(0,_vue.h)("div",{class:["vxe-tabs-header--prefix","type--"+T,"pos--"+y]},A(s,{name:b})):(0,_ui.renderEmptyElement)(k),a?(0,_vue.h)("div",{ref:u,class:["vxe-tabs-header--bar vxe-tabs-header--prev-bar","type--"+T,"pos--"+y],onClick:G},[(0,_vue.h)("span",{class:l?(0,_ui.getIcon)().TABS_TAB_BUTTON_TOP:(0,_ui.getIcon)().TABS_TAB_BUTTON_LEFT})]):(0,_ui.renderEmptyElement)(k),(0,_vue.h)("div",{class:["vxe-tabs-header--wrapper","type--"+T,"pos--"+y]},[(0,_vue.h)("div",{ref:M,class:"vxe-tabs-header--item-wrapper",style:l?{marginRight:`-${e+scrollbarOffsetSize}px`,paddingRight:scrollbarOffsetSize+"px"}:{marginBottom:`-${t+scrollbarOffsetSize}px`,paddingBottom:scrollbarOffsetSize+"px"},onScroll:q},h.map((t,a)=>{var{title:e,titleWidth:l,titleAlign:i,icon:s,name:r}=t,n=t.slots||{},o=n.title||n.tab,u=n.titlePrefix||n["title-prefix"],n=n.titleSuffix||n["title-suffix"],l=l||m,i=i||p,v={$tabs:k,value:b,name:r,option:t},c=b===r,d=r?x[""+r]:null,d=!!d&&d.loading;return(0,_vue.h)("div",{key:""+r,class:["vxe-tabs-header--item","type--"+T,"pos--"+y,i?"align--"+i:"",{"is--active":c}],style:l?{width:(0,_dom.toCssUnit)(l)}:void 0,onClick(e){j(e,t)}},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-inner"},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-content"},[s?(0,_vue.h)("span",{class:"vxe-tabs-header--item-icon"},[(0,_vue.h)("i",{class:s})]):(0,_ui.renderEmptyElement)(k),u?(0,_vue.h)("span",{class:"vxe-tabs-header--item-prefix"},A(u,{name:r,title:e})):(0,_ui.renderEmptyElement)(k),(0,_vue.h)("span",{class:"vxe-tabs-header--item-name"},o?A(o,{name:r,title:e}):""+e),n?(0,_vue.h)("span",{class:"vxe-tabs-header--item-suffix"},A(n,{name:r,title:e})):(0,_ui.renderEmptyElement)(k)]),!(0,_utils.isEnableConf)(_)&&!E.enabled||w&&!w(v)?(0,_ui.renderEmptyElement)(k):(0,_vue.h)("div",{class:["vxe-tabs-header--refresh-btn",{"is--active":c,"is--loading":d,"is--disabled":d}],onClick(e){P(e,t)}},[(0,_vue.h)("i",{class:d?(0,_ui.getIcon)().TABS_TAB_REFRESH_LOADING:(0,_ui.getIcon)().TABS_TAB_REFRESH})]),!(f||(0,_utils.isEnableConf)(g)||C.enabled)||N&&!N(v)?(0,_ui.renderEmptyElement)(k):(0,_vue.h)("div",{class:["vxe-tabs-header--close-btn",{"is--active":c}],onClick(e){$(e,t,a,h)}},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().TABS_TAB_CLOSE})])])])}).concat([(0,_vue.h)("span",{key:"line",class:["vxe-tabs-header--active-line","type--"+T,"pos--"+y],style:i})]))]),a?(0,_vue.h)("div",{ref:v,class:["vxe-tabs-header--bar vxe-tabs-header--next-bar","type--"+T,"pos--"+y],onClick:J},[(0,_vue.h)("span",{class:l?(0,_ui.getIcon)().TABS_TAB_BUTTON_BOTTOM:(0,_ui.getIcon)().TABS_TAB_BUTTON_RIGHT})]):(0,_ui.renderEmptyElement)(k),r?(0,_vue.h)("div",{class:["vxe-tabs-header--suffix","type--"+T,"pos--"+y]},A(r,{name:b})):(0,_ui.renderEmptyElement)(k)])},y=e=>{var t=d.useScrollbar,{initNames:a,activeName:l}=O;let{name:i,slots:s}=e,r=s?s.default:null;var e=V.value,{viewClassName:n,viewInnerClassName:o}=e;return i&&a.includes(i)?t?(0,_vue.h)(_scrollbar.default,Object.assign(Object.assign({key:""+i,class:["vxe-tabs-pane--scrollbar-item",{"is--visible":l===i}]},e),{viewClassName:"vxe-tabs-pane--scrollbar-item-view"+(n?" "+n:""),viewInnerClassName:"vxe-tabs-pane--scrollbar-item-inner"+(n?" "+o:"")}),{default:()=>r?A(r,{name:i}):[]}):(0,_vue.h)("div",{key:""+i,class:["vxe-tabs-pane--item",{"is--visible":l===i}]},r?A(r,{name:i}):[]):(0,_ui.renderEmptyElement)(k)},K=e=>{var t=d.destroyOnClose;let a=O.activeName;return t?[(t=e.find(e=>e.name===a))?y(t):(0,_ui.renderEmptyElement)(k)]:e.map(e=>y(e))},Q=e=>{var{height:t,padding:a,showBody:l}=d,{activeName:i,cacheTabMaps:s}=O,r=h.value,n=B.value,o=L.value,u=H.value.showLoading,v=S.header,c=S.footer;return l?(s=!!(s=i?s[""+i]:null)&&s.loading,i={name:i},(0,_vue.h)("div",{key:"tb",class:["vxe-tabs-pane--wrapper","type--"+n,"pos--"+o,{"is--content":l}]},[v?(0,_vue.h)("div",{class:"vxe-tabs-pane--header"},A(v,i)):(0,_ui.renderEmptyElement)(k),(0,_vue.h)("div",{class:["vxe-tabs-pane--body","type--"+n,"pos--"+o,{["size--"+r]:r,"is--padding":a,"is--height":t}]},K(e)),c?(0,_vue.h)("div",{class:"vxe-tabs-pane--footer"},A(c,i)):(0,_ui.renderEmptyElement)(k),u&&s?(0,_ui.renderEmptyElement)(k):(0,_vue.h)(_loading.default,{class:"vxe-tabs--loading",modelValue:s})])):(0,_ui.renderEmptyElement)(k)};(0,_vue.watch)(()=>d.position,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>d.modelValue,e=>{o(e,null),O.activeName=e}),(0,_vue.watch)(()=>O.activeName,e=>{r(e)});let C=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>d.options?d.options.length:-1,()=>{C.value++}),(0,_vue.watch)(()=>d.options,()=>{C.value++}),(0,_vue.watch)(C,()=>{i(d.options),O.resizeFlag++}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>O.staticTabs?O.staticTabs.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>O.staticTabs,()=>{N.value++}),(0,_vue.watch)(N,()=>{i(O.staticTabs),O.resizeFlag++}),(0,_vue.watch)(U,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>O.resizeFlag,()=>{(0,_vue.nextTick)(()=>{p()})}),(0,_vue.onMounted)(()=>{p(),_ui.globalEvents.on(k,"resize",p)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(k,"resize")}),(0,_vue.provide)("$xeTabs",k),o(d.modelValue,null),i(O.staticTabs.length?O.staticTabs:d.options),k.renderVN=()=>{var{height:e,padding:t,trigger:a}=d,l=O.activeName,i=h.value,s=_.value,r=b.value,n=B.value,o=L.value,u=I.value,v=S.default,r=v?r:s,s=[(0,_vue.h)("div",{key:"ts",class:"vxe-tabs-slots"},v?v({name:l}):[])];return"right"===o||"bottom"===o?s.push(Q(r),T(r)):s.push(T(r),Q(r)),(0,_vue.h)("div",{ref:c,class:["vxe-tabs","pos--"+o,"vxe-tabs--"+n,"trigger--"+("manual"===a?"trigger":"default"),{["size--"+i]:i,"is--padding":t,"is--height":e}],style:u},s)},k},render(){return this.renderVN()}});
@@ -416,13 +416,15 @@
416
416
  overflow: auto;
417
417
  }
418
418
 
419
- .vxe-tabs-pane--item {
419
+ .vxe-tabs-pane--item,
420
+ .vxe-tabs-pane--scrollbar-item {
420
421
  display: none;
421
422
  height: 100%;
422
423
  overflow: auto;
423
424
  outline: 0;
424
425
  }
425
- .vxe-tabs-pane--item.is--visible {
426
+ .vxe-tabs-pane--item.is--visible,
427
+ .vxe-tabs-pane--scrollbar-item.is--visible {
426
428
  display: block;
427
429
  }
428
430
 
@@ -1 +1 @@
1
- .vxe-tabs{display:flex;color:var(--vxe-ui-font-color);font-family:var(--vxe-ui-font-family)}.vxe-tabs.pos--bottom,.vxe-tabs.pos--top{flex-direction:column}.vxe-tabs.pos--left,.vxe-tabs.pos--right{flex-direction:row}.vxe-tabs.trigger--default .vxe-tabs-header--item{cursor:pointer}.vxe-tabs.trigger--default .vxe-tabs-header--item:hover .vxe-tabs-header--item-name{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--bar{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.vxe-tabs-header--bar::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:3}.vxe-tabs-header--bar:focus{color:var(--vxe-ui-font-darken-color)}.vxe-tabs-header--bar:hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-tabs-header--bar:active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-tabs-header--bar.type--border-card,.vxe-tabs-header--bar.type--card,.vxe-tabs-header--bar.type--default,.vxe-tabs-header--bar.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--bar.type--round-card{background-color:rgba(0,0,0,.02)}.vxe-tabs-header--bar.pos--bottom,.vxe-tabs-header--bar.pos--top{width:1.6em}.vxe-tabs-header--bar.pos--bottom::after,.vxe-tabs-header--bar.pos--top::after{top:0;width:1px;height:100%}.vxe-tabs-header--bar.pos--left,.vxe-tabs-header--bar.pos--right{width:100%;height:1.6em}.vxe-tabs-header--bar.pos--left::after,.vxe-tabs-header--bar.pos--right::after{left:0;width:100%;height:1px}.vxe-tabs-header--prev-bar.type--default.pos--bottom,.vxe-tabs-header--prev-bar.type--default.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--default.pos--left,.vxe-tabs-header--prev-bar.type--default.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--top{border-bottom:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--bottom{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--top{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--border-card.pos--bottom{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--bottom{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--left{border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.pos--bottom::after,.vxe-tabs-header--prev-bar.pos--top::after{right:0}.vxe-tabs-header--prev-bar.pos--left::after,.vxe-tabs-header--prev-bar.pos--right::after{bottom:0}.vxe-tabs-header--prev-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--prev-bar.scrolling--middle.pos--top{box-shadow:4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prev-bar.scrolling--middle.pos--left,.vxe-tabs-header--prev-bar.scrolling--middle.pos--right{box-shadow:0 4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.type--default.pos--bottom,.vxe-tabs-header--next-bar.type--default.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--default.pos--left,.vxe-tabs-header--next-bar.type--default.pos--right{border-top:0}.vxe-tabs-header--next-bar.type--card.pos--top{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--bottom{border-bottom:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--left{border-top:0;border-right:0}.vxe-tabs-header--next-bar.type--card.pos--right{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--border-card.pos--top{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--border-card.pos--left{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--right{border-right:0;border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--round-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--round-card.pos--left{border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--right{border-top:0}.vxe-tabs-header--next-bar.pos--bottom::after,.vxe-tabs-header--next-bar.pos--top::after{left:0}.vxe-tabs-header--next-bar.pos--left::after,.vxe-tabs-header--next-bar.pos--right::after{top:0}.vxe-tabs-header--next-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--next-bar.scrolling--middle.pos--top{box-shadow:-4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.scrolling--middle.pos--left,.vxe-tabs-header--next-bar.scrolling--middle.pos--right{box-shadow:0 -4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prefix,.vxe-tabs-header--suffix{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0}.vxe-tabs-header--prefix.type--border-card.pos--top,.vxe-tabs-header--prefix.type--default.pos--top,.vxe-tabs-header--prefix.type--round-card.pos--top,.vxe-tabs-header--suffix.type--border-card.pos--top,.vxe-tabs-header--suffix.type--default.pos--top,.vxe-tabs-header--suffix.type--round-card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--bottom,.vxe-tabs-header--prefix.type--default.pos--bottom,.vxe-tabs-header--prefix.type--round-card.pos--bottom,.vxe-tabs-header--suffix.type--border-card.pos--bottom,.vxe-tabs-header--suffix.type--default.pos--bottom,.vxe-tabs-header--suffix.type--round-card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--left,.vxe-tabs-header--prefix.type--default.pos--left,.vxe-tabs-header--prefix.type--round-card.pos--left,.vxe-tabs-header--suffix.type--border-card.pos--left,.vxe-tabs-header--suffix.type--default.pos--left,.vxe-tabs-header--suffix.type--round-card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--right,.vxe-tabs-header--prefix.type--default.pos--right,.vxe-tabs-header--prefix.type--round-card.pos--right,.vxe-tabs-header--suffix.type--border-card.pos--right,.vxe-tabs-header--suffix.type--default.pos--right,.vxe-tabs-header--suffix.type--round-card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item-wrapper{position:relative;display:flex;outline:0}.vxe-tabs-header--item{position:relative;flex-shrink:0;padding:0 .5em}.vxe-tabs-header--item.is--active .vxe-tabs-header--item-content{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--item.align--left{text-align:left}.vxe-tabs-header--item.align--center{text-align:center}.vxe-tabs-header--item.align--right{text-align:right}.vxe-tabs-header--item.type--card.pos--top{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom,.vxe-tabs-header--item.type--card.pos--top{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom:first-child,.vxe-tabs-header--item.type--card.pos--top:first-child{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--right{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left,.vxe-tabs-header--item.type--card.pos--right{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left:first-child,.vxe-tabs-header--item.type--card.pos--right:first-child{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--border-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card{z-index:2;border:1px solid var(--vxe-ui-input-border-color);background-color:rgba(0,0,0,.02);transition:color .3s ease-in-out}.vxe-tabs-header--item.type--round-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card.pos--top{border-bottom:0;border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--item.type--round-card.pos--bottom{border-top:0;border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--bottom,.vxe-tabs-header--item.type--round-card.pos--top{margin:0 2px}.vxe-tabs-header--item.type--round-card.pos--bottom:first-child,.vxe-tabs-header--item.type--round-card.pos--top:first-child{margin-left:0}.vxe-tabs-header--item.type--round-card.pos--bottom:last-child,.vxe-tabs-header--item.type--round-card.pos--top:last-child{margin-right:0}.vxe-tabs-header--item.type--round-card.pos--left{border-right:0;border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--right{border-left:0;border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-tabs-header--item.type--round-card.pos--left,.vxe-tabs-header--item.type--round-card.pos--right{margin:2px 0}.vxe-tabs-header--item.type--round-card.pos--left:first-child,.vxe-tabs-header--item.type--round-card.pos--right:first-child{margin-top:0}.vxe-tabs-header--item.type--round-card.pos--left:last-child,.vxe-tabs-header--item.type--round-card.pos--right:last-child{margin-bottom:0}.vxe-tabs-header--item-inner{display:flex;flex-direction:row;align-items:center}.vxe-tabs-header--item-content{flex-grow:1;max-width:30em;padding:0 .3em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-tabs-header--item-content>span{padding:0 .3em}.vxe-tabs-header--close-btn,.vxe-tabs-header--refresh-btn{font-size:.8em;border-radius:50%;width:1.5em;height:1.5em;line-height:1.5em;text-align:center}.vxe-tabs-header--close-btn:hover,.vxe-tabs-header--refresh-btn:hover{color:var(--vxe-ui-font-color);background:var(--vxe-ui-tabs-close-hover-background-color)}.vxe-tabs-header--close-btn:active,.vxe-tabs-header--refresh-btn:active{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--close-btn>i,.vxe-tabs-header--refresh-btn>i{font-size:1em;vertical-align:middle}.vxe-tabs-header--refresh-btn{visibility:hidden}.vxe-tabs-header--refresh-btn.is--active,.vxe-tabs-header--refresh-btn.is--loading{visibility:visible}.vxe-tabs-header--refresh-btn.is--disabled{cursor:no-drop;color:var(--vxe-ui-font-disabled-color)}.vxe-tabs-header--item-inner{transition:color .1s ease-in-out}.vxe-tabs-pane--wrapper{display:none;position:relative;flex-direction:column;flex-grow:1;overflow:hidden}.vxe-tabs-pane--wrapper.is--content{display:flex}.vxe-tabs-pane--wrapper.type--border-card,.vxe-tabs-pane--wrapper.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-pane--wrapper.type--border-card.pos--top,.vxe-tabs-pane--wrapper.type--round-card.pos--top{border-top:0}.vxe-tabs-pane--wrapper.type--border-card.pos--bottom,.vxe-tabs-pane--wrapper.type--round-card.pos--bottom{border-bottom:0}.vxe-tabs-pane--wrapper.type--border-card.pos--left,.vxe-tabs-pane--wrapper.type--round-card.pos--left{border-left:0}.vxe-tabs-pane--wrapper.type--border-card.pos--right,.vxe-tabs-pane--wrapper.type--round-card.pos--right{border-right:0}.vxe-tabs-pane--body{flex-grow:1;overflow:hidden}.vxe-tabs-pane--body.is--padding{padding:var(--vxe-ui-layout-padding-default)}.vxe-tabs-pane--footer,.vxe-tabs-pane--header{flex-shrink:0;overflow:auto}.vxe-tabs-pane--item{display:none;height:100%;overflow:auto;outline:0}.vxe-tabs-pane--item.is--visible{display:block}.vxe-tabs-header{display:flex}.vxe-tabs-header.pos--bottom,.vxe-tabs-header.pos--top{flex-direction:row}.vxe-tabs-header.pos--left,.vxe-tabs-header.pos--right{flex-direction:column}.vxe-tabs-header.type--card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card{background-color:var(--vxe-ui-tabs-card-header-background-color);border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card.pos--top{border-bottom:0}.vxe-tabs-header.type--border-card.pos--bottom{border-top:0}.vxe-tabs-header.type--border-card.pos--left{border-right:0}.vxe-tabs-header.type--border-card.pos--right{border-left:0}.vxe-tabs-header--wrapper{position:relative;flex-grow:1;overflow:hidden}.vxe-tabs-header--wrapper.type--border-card,.vxe-tabs-header--wrapper.type--default,.vxe-tabs-header--wrapper.type--round-card{position:relative}.vxe-tabs-header--wrapper.type--border-card::after,.vxe-tabs-header--wrapper.type--default::after,.vxe-tabs-header--wrapper.type--round-card::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:0}.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{bottom:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after{top:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{left:0;width:100%;height:1px}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after{right:0}.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{left:0}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{top:0;width:1px;height:100%}.vxe-tabs-header--wrapper.type--border-card.pos--top{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom{border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--wrapper.type--border-card>.vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.type--round-card>.vxe-tabs-header--item-wrapper{z-index:2}.vxe-tabs-header--wrapper.pos--bottom .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--top .vxe-tabs-header--item-wrapper{flex-direction:row;width:100%;overflow-y:hidden;overflow-x:auto}.vxe-tabs-header--wrapper.pos--left .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--right .vxe-tabs-header--item-wrapper{flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden}.vxe-tabs-header--active-line{display:none}.vxe-tabs-header--active-line.type--default{display:block;position:absolute;background-color:var(--vxe-ui-font-primary-color);z-index:2;transition:all .3s ease-in-out}.vxe-tabs-header--active-line.type--default.pos--top{bottom:20px}.vxe-tabs-header--active-line.type--default.pos--bottom{top:0}.vxe-tabs-header--active-line.type--default.pos--bottom,.vxe-tabs-header--active-line.type--default.pos--top{left:0;height:2px;width:4px}.vxe-tabs-header--active-line.type--default.pos--left{right:20px}.vxe-tabs-header--active-line.type--default.pos--right{left:0}.vxe-tabs-header--active-line.type--default.pos--left,.vxe-tabs-header--active-line.type--default.pos--right{top:0;height:4px;width:2px}.vxe-tabs-header--active-line.type--card{display:block;position:absolute;top:0;left:0;border:1px solid var(--vxe-ui-font-primary-color);pointer-events:none;z-index:1;box-shadow:0 0 8px rgba(0,0,0,.1)}.vxe-tabs-header--active-line.type--card.pos--bottom,.vxe-tabs-header--active-line.type--card.pos--top{width:4px;transition:color,left .3s ease-in-out}.vxe-tabs-header--active-line.type--card.pos--left,.vxe-tabs-header--active-line.type--card.pos--right{width:calc(100% - 20px);transition:color,top .3s ease-in-out}.vxe-tabs-header--active-line.type--border-card{display:block;position:absolute;top:0;left:0;pointer-events:none;z-index:1}.vxe-tabs-header--active-line.type--border-card.pos--bottom,.vxe-tabs-header--active-line.type--border-card.pos--top{width:4px;border-left:1px solid var(--vxe-ui-input-border-color);border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--active-line.type--border-card.pos--left,.vxe-tabs-header--active-line.type--border-card.pos--right{width:100%;border-top:1px solid var(--vxe-ui-input-border-color);border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs--border-card,.vxe-tabs--card,.vxe-tabs--default,.vxe-tabs--round-card{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0;background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs--default .vxe-tabs-header--item-inner{border-bottom:2px solid transparent}.vxe-tabs-slots{display:none}.vxe-tabs{font-size:var(--vxe-ui-font-size-default)}.vxe-tabs .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-default) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-default) + 1px)}.vxe-tabs .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-default) - 1px)}.vxe-tabs .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs .vxe-tabs-header--prefix.pos--top,.vxe-tabs .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-tabs.size--medium .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-medium) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-medium) + 1px)}.vxe-tabs.size--medium .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--medium .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-medium) - 1px)}.vxe-tabs.size--medium .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--medium .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-tabs.size--small .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-small) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-small) + 1px)}.vxe-tabs.size--small .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--small .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-small) - 1px)}.vxe-tabs.size--small .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--small .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--mini{font-size:var(--vxe-ui-font-size-mini)}.vxe-tabs.size--mini .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-mini) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-mini) + 1px)}.vxe-tabs.size--mini .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--mini .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-mini) - 1px)}.vxe-tabs.size--mini .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--mini .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-mini)}
1
+ .vxe-tabs{display:flex;color:var(--vxe-ui-font-color);font-family:var(--vxe-ui-font-family)}.vxe-tabs.pos--bottom,.vxe-tabs.pos--top{flex-direction:column}.vxe-tabs.pos--left,.vxe-tabs.pos--right{flex-direction:row}.vxe-tabs.trigger--default .vxe-tabs-header--item{cursor:pointer}.vxe-tabs.trigger--default .vxe-tabs-header--item:hover .vxe-tabs-header--item-name{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--bar{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.vxe-tabs-header--bar::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:3}.vxe-tabs-header--bar:focus{color:var(--vxe-ui-font-darken-color)}.vxe-tabs-header--bar:hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-tabs-header--bar:active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-tabs-header--bar.type--border-card,.vxe-tabs-header--bar.type--card,.vxe-tabs-header--bar.type--default,.vxe-tabs-header--bar.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--bar.type--round-card{background-color:rgba(0,0,0,.02)}.vxe-tabs-header--bar.pos--bottom,.vxe-tabs-header--bar.pos--top{width:1.6em}.vxe-tabs-header--bar.pos--bottom::after,.vxe-tabs-header--bar.pos--top::after{top:0;width:1px;height:100%}.vxe-tabs-header--bar.pos--left,.vxe-tabs-header--bar.pos--right{width:100%;height:1.6em}.vxe-tabs-header--bar.pos--left::after,.vxe-tabs-header--bar.pos--right::after{left:0;width:100%;height:1px}.vxe-tabs-header--prev-bar.type--default.pos--bottom,.vxe-tabs-header--prev-bar.type--default.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--default.pos--left,.vxe-tabs-header--prev-bar.type--default.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--top{border-bottom:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--bottom{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--top{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--border-card.pos--bottom{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--bottom{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--left{border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.pos--bottom::after,.vxe-tabs-header--prev-bar.pos--top::after{right:0}.vxe-tabs-header--prev-bar.pos--left::after,.vxe-tabs-header--prev-bar.pos--right::after{bottom:0}.vxe-tabs-header--prev-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--prev-bar.scrolling--middle.pos--top{box-shadow:4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prev-bar.scrolling--middle.pos--left,.vxe-tabs-header--prev-bar.scrolling--middle.pos--right{box-shadow:0 4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.type--default.pos--bottom,.vxe-tabs-header--next-bar.type--default.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--default.pos--left,.vxe-tabs-header--next-bar.type--default.pos--right{border-top:0}.vxe-tabs-header--next-bar.type--card.pos--top{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--bottom{border-bottom:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--left{border-top:0;border-right:0}.vxe-tabs-header--next-bar.type--card.pos--right{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--border-card.pos--top{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--border-card.pos--left{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--right{border-right:0;border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--round-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--round-card.pos--left{border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--right{border-top:0}.vxe-tabs-header--next-bar.pos--bottom::after,.vxe-tabs-header--next-bar.pos--top::after{left:0}.vxe-tabs-header--next-bar.pos--left::after,.vxe-tabs-header--next-bar.pos--right::after{top:0}.vxe-tabs-header--next-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--next-bar.scrolling--middle.pos--top{box-shadow:-4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.scrolling--middle.pos--left,.vxe-tabs-header--next-bar.scrolling--middle.pos--right{box-shadow:0 -4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prefix,.vxe-tabs-header--suffix{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0}.vxe-tabs-header--prefix.type--border-card.pos--top,.vxe-tabs-header--prefix.type--default.pos--top,.vxe-tabs-header--prefix.type--round-card.pos--top,.vxe-tabs-header--suffix.type--border-card.pos--top,.vxe-tabs-header--suffix.type--default.pos--top,.vxe-tabs-header--suffix.type--round-card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--bottom,.vxe-tabs-header--prefix.type--default.pos--bottom,.vxe-tabs-header--prefix.type--round-card.pos--bottom,.vxe-tabs-header--suffix.type--border-card.pos--bottom,.vxe-tabs-header--suffix.type--default.pos--bottom,.vxe-tabs-header--suffix.type--round-card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--left,.vxe-tabs-header--prefix.type--default.pos--left,.vxe-tabs-header--prefix.type--round-card.pos--left,.vxe-tabs-header--suffix.type--border-card.pos--left,.vxe-tabs-header--suffix.type--default.pos--left,.vxe-tabs-header--suffix.type--round-card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--right,.vxe-tabs-header--prefix.type--default.pos--right,.vxe-tabs-header--prefix.type--round-card.pos--right,.vxe-tabs-header--suffix.type--border-card.pos--right,.vxe-tabs-header--suffix.type--default.pos--right,.vxe-tabs-header--suffix.type--round-card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item-wrapper{position:relative;display:flex;outline:0}.vxe-tabs-header--item{position:relative;flex-shrink:0;padding:0 .5em}.vxe-tabs-header--item.is--active .vxe-tabs-header--item-content{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--item.align--left{text-align:left}.vxe-tabs-header--item.align--center{text-align:center}.vxe-tabs-header--item.align--right{text-align:right}.vxe-tabs-header--item.type--card.pos--top{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom,.vxe-tabs-header--item.type--card.pos--top{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom:first-child,.vxe-tabs-header--item.type--card.pos--top:first-child{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--right{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left,.vxe-tabs-header--item.type--card.pos--right{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left:first-child,.vxe-tabs-header--item.type--card.pos--right:first-child{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--border-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card{z-index:2;border:1px solid var(--vxe-ui-input-border-color);background-color:rgba(0,0,0,.02);transition:color .3s ease-in-out}.vxe-tabs-header--item.type--round-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card.pos--top{border-bottom:0;border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--item.type--round-card.pos--bottom{border-top:0;border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--bottom,.vxe-tabs-header--item.type--round-card.pos--top{margin:0 2px}.vxe-tabs-header--item.type--round-card.pos--bottom:first-child,.vxe-tabs-header--item.type--round-card.pos--top:first-child{margin-left:0}.vxe-tabs-header--item.type--round-card.pos--bottom:last-child,.vxe-tabs-header--item.type--round-card.pos--top:last-child{margin-right:0}.vxe-tabs-header--item.type--round-card.pos--left{border-right:0;border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--right{border-left:0;border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-tabs-header--item.type--round-card.pos--left,.vxe-tabs-header--item.type--round-card.pos--right{margin:2px 0}.vxe-tabs-header--item.type--round-card.pos--left:first-child,.vxe-tabs-header--item.type--round-card.pos--right:first-child{margin-top:0}.vxe-tabs-header--item.type--round-card.pos--left:last-child,.vxe-tabs-header--item.type--round-card.pos--right:last-child{margin-bottom:0}.vxe-tabs-header--item-inner{display:flex;flex-direction:row;align-items:center}.vxe-tabs-header--item-content{flex-grow:1;max-width:30em;padding:0 .3em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-tabs-header--item-content>span{padding:0 .3em}.vxe-tabs-header--close-btn,.vxe-tabs-header--refresh-btn{font-size:.8em;border-radius:50%;width:1.5em;height:1.5em;line-height:1.5em;text-align:center}.vxe-tabs-header--close-btn:hover,.vxe-tabs-header--refresh-btn:hover{color:var(--vxe-ui-font-color);background:var(--vxe-ui-tabs-close-hover-background-color)}.vxe-tabs-header--close-btn:active,.vxe-tabs-header--refresh-btn:active{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--close-btn>i,.vxe-tabs-header--refresh-btn>i{font-size:1em;vertical-align:middle}.vxe-tabs-header--refresh-btn{visibility:hidden}.vxe-tabs-header--refresh-btn.is--active,.vxe-tabs-header--refresh-btn.is--loading{visibility:visible}.vxe-tabs-header--refresh-btn.is--disabled{cursor:no-drop;color:var(--vxe-ui-font-disabled-color)}.vxe-tabs-header--item-inner{transition:color .1s ease-in-out}.vxe-tabs-pane--wrapper{display:none;position:relative;flex-direction:column;flex-grow:1;overflow:hidden}.vxe-tabs-pane--wrapper.is--content{display:flex}.vxe-tabs-pane--wrapper.type--border-card,.vxe-tabs-pane--wrapper.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-pane--wrapper.type--border-card.pos--top,.vxe-tabs-pane--wrapper.type--round-card.pos--top{border-top:0}.vxe-tabs-pane--wrapper.type--border-card.pos--bottom,.vxe-tabs-pane--wrapper.type--round-card.pos--bottom{border-bottom:0}.vxe-tabs-pane--wrapper.type--border-card.pos--left,.vxe-tabs-pane--wrapper.type--round-card.pos--left{border-left:0}.vxe-tabs-pane--wrapper.type--border-card.pos--right,.vxe-tabs-pane--wrapper.type--round-card.pos--right{border-right:0}.vxe-tabs-pane--body{flex-grow:1;overflow:hidden}.vxe-tabs-pane--body.is--padding{padding:var(--vxe-ui-layout-padding-default)}.vxe-tabs-pane--footer,.vxe-tabs-pane--header{flex-shrink:0;overflow:auto}.vxe-tabs-pane--item,.vxe-tabs-pane--scrollbar-item{display:none;height:100%;overflow:auto;outline:0}.vxe-tabs-pane--item.is--visible,.vxe-tabs-pane--scrollbar-item.is--visible{display:block}.vxe-tabs-header{display:flex}.vxe-tabs-header.pos--bottom,.vxe-tabs-header.pos--top{flex-direction:row}.vxe-tabs-header.pos--left,.vxe-tabs-header.pos--right{flex-direction:column}.vxe-tabs-header.type--card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card{background-color:var(--vxe-ui-tabs-card-header-background-color);border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card.pos--top{border-bottom:0}.vxe-tabs-header.type--border-card.pos--bottom{border-top:0}.vxe-tabs-header.type--border-card.pos--left{border-right:0}.vxe-tabs-header.type--border-card.pos--right{border-left:0}.vxe-tabs-header--wrapper{position:relative;flex-grow:1;overflow:hidden}.vxe-tabs-header--wrapper.type--border-card,.vxe-tabs-header--wrapper.type--default,.vxe-tabs-header--wrapper.type--round-card{position:relative}.vxe-tabs-header--wrapper.type--border-card::after,.vxe-tabs-header--wrapper.type--default::after,.vxe-tabs-header--wrapper.type--round-card::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:0}.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{bottom:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after{top:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{left:0;width:100%;height:1px}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after{right:0}.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{left:0}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{top:0;width:1px;height:100%}.vxe-tabs-header--wrapper.type--border-card.pos--top{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom{border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--wrapper.type--border-card>.vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.type--round-card>.vxe-tabs-header--item-wrapper{z-index:2}.vxe-tabs-header--wrapper.pos--bottom .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--top .vxe-tabs-header--item-wrapper{flex-direction:row;width:100%;overflow-y:hidden;overflow-x:auto}.vxe-tabs-header--wrapper.pos--left .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--right .vxe-tabs-header--item-wrapper{flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden}.vxe-tabs-header--active-line{display:none}.vxe-tabs-header--active-line.type--default{display:block;position:absolute;background-color:var(--vxe-ui-font-primary-color);z-index:2;transition:all .3s ease-in-out}.vxe-tabs-header--active-line.type--default.pos--top{bottom:20px}.vxe-tabs-header--active-line.type--default.pos--bottom{top:0}.vxe-tabs-header--active-line.type--default.pos--bottom,.vxe-tabs-header--active-line.type--default.pos--top{left:0;height:2px;width:4px}.vxe-tabs-header--active-line.type--default.pos--left{right:20px}.vxe-tabs-header--active-line.type--default.pos--right{left:0}.vxe-tabs-header--active-line.type--default.pos--left,.vxe-tabs-header--active-line.type--default.pos--right{top:0;height:4px;width:2px}.vxe-tabs-header--active-line.type--card{display:block;position:absolute;top:0;left:0;border:1px solid var(--vxe-ui-font-primary-color);pointer-events:none;z-index:1;box-shadow:0 0 8px rgba(0,0,0,.1)}.vxe-tabs-header--active-line.type--card.pos--bottom,.vxe-tabs-header--active-line.type--card.pos--top{width:4px;transition:color,left .3s ease-in-out}.vxe-tabs-header--active-line.type--card.pos--left,.vxe-tabs-header--active-line.type--card.pos--right{width:calc(100% - 20px);transition:color,top .3s ease-in-out}.vxe-tabs-header--active-line.type--border-card{display:block;position:absolute;top:0;left:0;pointer-events:none;z-index:1}.vxe-tabs-header--active-line.type--border-card.pos--bottom,.vxe-tabs-header--active-line.type--border-card.pos--top{width:4px;border-left:1px solid var(--vxe-ui-input-border-color);border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--active-line.type--border-card.pos--left,.vxe-tabs-header--active-line.type--border-card.pos--right{width:100%;border-top:1px solid var(--vxe-ui-input-border-color);border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs--border-card,.vxe-tabs--card,.vxe-tabs--default,.vxe-tabs--round-card{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0;background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs--default .vxe-tabs-header--item-inner{border-bottom:2px solid transparent}.vxe-tabs-slots{display:none}.vxe-tabs{font-size:var(--vxe-ui-font-size-default)}.vxe-tabs .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-default) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-default) + 1px)}.vxe-tabs .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-default) - 1px)}.vxe-tabs .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs .vxe-tabs-header--prefix.pos--top,.vxe-tabs .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-tabs.size--medium .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-medium) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-medium) + 1px)}.vxe-tabs.size--medium .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--medium .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--medium .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-medium) - 1px)}.vxe-tabs.size--medium .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--medium .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--medium .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-medium)}.vxe-tabs.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-tabs.size--small .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-small) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-small) + 1px)}.vxe-tabs.size--small .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--small .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--small .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-small) - 1px)}.vxe-tabs.size--small .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--small .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--small .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-small)}.vxe-tabs.size--mini{font-size:var(--vxe-ui-font-size-mini)}.vxe-tabs.size--mini .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-mini) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-mini) + 1px)}.vxe-tabs.size--mini .vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-mini)}.vxe-tabs.size--mini .vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs.size--mini .vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-mini) - 1px)}.vxe-tabs.size--mini .vxe-tabs-header--prefix.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--prefix.pos--top,.vxe-tabs.size--mini .vxe-tabs-header--suffix.pos--bottom,.vxe-tabs.size--mini .vxe-tabs-header--suffix.pos--top{height:var(--vxe-ui-tabs-header-height-mini)}
@@ -964,11 +964,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
964
964
  } = scrollYStore;
965
965
  const el = refElem.value;
966
966
  if (el && el.clientWidth && el.clientHeight) {
967
- const parentEl = getParentElem();
967
+ let parentEl = getParentElem();
968
968
  const headerWrapperEl = refHeaderWrapperElem.value;
969
969
  const footerWrapperEl = refFooterWrapperElem.value;
970
970
  const headHeight = headerWrapperEl ? headerWrapperEl.clientHeight : 0;
971
971
  const footHeight = footerWrapperEl ? footerWrapperEl.clientHeight : 0;
972
+ // 如果是虚拟滚动条
973
+ if (parentEl && (0, _dom.hasClass)(parentEl, 'vxe-scrollbar--view-inner')) {
974
+ parentEl = parentEl.parentElement;
975
+ }
972
976
  if (parentEl) {
973
977
  const parentPaddingSize = (0, _dom.getPaddingTopBottomSize)(parentEl);
974
978
  reactData.parentHeight = Math.max(headHeight + footHeight + rowHeight, parentEl.clientHeight - parentPaddingSize - headHeight - footHeight);
@@ -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")),_tooltip=_interopRequireDefault(require("../../tooltip"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tree"),{menus,getConfig,getI18n,getIcon}=_ui.VxeUI;function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createInternalData(){return{treeFullData:[],afterTreeList:[],afterVisibleList:[],nodeMaps:{},selectCheckboxMaps:{},indeterminateNodeMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},removeNodeMaps:{},insertNodeMaps:{},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,insertNodeFlag:1,removeNodeFlag:1,dragNode:null,dragTipText:"",isCrossDragNode:!1,tooltipStore:{visible:!1,node:null}}}let crossTreeDragNodeObj=null;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},emptyText:{type:[String,Number],default:()=>getConfig().tree.emptyText},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:[String,Number],radioConfig:Object,showCheckbox:{type:Boolean,default:()=>getConfig().tree.showCheckbox},checkNodeKeys:Array,checkboxConfig:Object,nodeConfig:Object,lazy:Boolean,visibleMethod:Function,toggleMethod:Function,loadMethod:Function,showOverflow:{type:Boolean,default:()=>getConfig().tree.showOverflow},tooltipConfig:Object,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-remove-dragend","node-insert-dragend","node-expand","node-menu","menu-click"],setup(R,r){let{emit:l,slots:H}=r;var o=_xeUtils.default.uniqueId();let T=(0,_ui.useSize)(R).computeSize,V=(0,_vue.ref)(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),M=(0,_vue.ref)(),D=(0,_vue.ref)(),N=(0,_vue.ref)(),_=(0,_store.getCrossTreeDragNodeInfo)(),$=createInternalData(),P=(0,_vue.reactive)(createReactData()),i={refElem:V},ie=(0,_vue.computed)(()=>R.titleField||"title"),q=(0,_vue.computed)(()=>R.keyField||"id"),c=(0,_vue.computed)(()=>{var e=q.value;return R.valueField||e}),j=(0,_vue.computed)(()=>R.parentField||"parentId"),B=(0,_vue.computed)(()=>R.childrenField||"children"),z=(0,_vue.computed)(()=>R.mapChildrenField||"mapChildren"),K=(0,_vue.computed)(()=>R.hasChildField||"hasChild"),u=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.virtualYConfig,R.virtualYConfig)),v=(0,_vue.computed)(()=>{var e=d.value.isCurrent;return _xeUtils.default.isBoolean(e)?e:R.isCurrent}),k=(0,_vue.computed)(()=>{var e=d.value.isHover;return _xeUtils.default.isBoolean(e)?e:R.isHover}),Y=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.radioConfig,R.radioConfig)),W=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.checkboxConfig,R.checkboxConfig)),d=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.nodeConfig,R.nodeConfig)),I=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.loadingConfig,R.loadingConfig)),X=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.dragConfig,R.dragConfig)),G=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.tooltipConfig,R.tooltipConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.menuConfig,R.menuConfig)),S=(0,_vue.computed)(()=>{var e=R.indent,{customHeight:t,customMinHeight:r,customMaxHeight:a}=P,l=W.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}),f=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.filterConfig,R.filterConfig)),x={computeKeyField:q,computeParentField:j,computeChildrenField:B,computeMapChildrenField:z,computeRadioOpts:Y,computeCheckboxOpts:W,computeNodeOpts:d,computeDragOpts:X},J={xID:o,props:R,context:r,internalData:$,reactData:P,getRefMaps:()=>i,getComputeMaps:()=>x},Q=e=>{var t;return e?(t=c.value,e=_xeUtils.default.get(e,t),(0,_utils.enModelValue)(e)):""};let m=e=>{var t=P.selectRadioKey;return t===e};let se=e=>{var t=P.updateCheckboxFlag,r=$.selectCheckboxMaps;return!(!t||!r[e])};let ue=e=>{var t=P.updateCheckboxFlag,r=$.indeterminateNodeMaps;return!(!t||!r[e])};let g=e=>{l("update:checkNodeKeys",e)},n=e=>{l("update:checkNodeKey",e)},w=(e,r)=>{let a=$.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let t=[];e.forEach(e=>{e=(0,_utils.enModelValue)(e),e=a[e];e&&t.push(e.item)}),L(t,r)}return(0,_vue.nextTick)()},L=(e,r)=>{var t=R.transform;let a=$.selectCheckboxMaps;var l=z.value,o=B.value,d=W.value.checkStrictly,n=e=>{var t=Q(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}),P.updateCheckboxFlag++,oe()},a=(e,t,r)=>{t?r[e]||(r[e]=!0):r[e]&&delete r[e]},Z=(e,t,r)=>{l(e,(0,_ui.createEvent)(r,{$tree:J},t))},U=()=>{var e=V.value;return e?e.parentElement:null},O=e=>{var t=P.parentHeight,e=R[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},A=()=>{P.customHeight=O("height"),P.customMinHeight=O("minHeight"),P.customMaxHeight=O("maxHeight"),!P.scrollYLoad||P.customHeight||P.customMinHeight||(P.customHeight=300)},ee=()=>{var e=$.treeFullData;let n=c.value;var t=B.value;let i={};_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{let d=Q(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}),$.nodeMaps=i},te=()=>{var e=R.transform;let{afterTreeList:t,nodeMaps:i}=$;var r=B.value,a=z.value;let s=0;_xeUtils.default.eachTree(t,(e,t,r,a,l,o)=>{var d=Q(e),n=i[d];n?(n.items=r,n.treeIndex=t,n._index=s):(n={item:e,index:t,$index:-1,_index:s,items:r,parent:l,nodes:o,level:o.length-1,treeIndex:t,lineCount:0,treeLoaded:!1},i[d]=n),s++},{children:e?a:r})},F=()=>{var{transform:t,filterValue:r}=R,{treeFullData:a,lastFilterValue:e}=$;let l=ie.value;var o=B.value,d=z.value;let{autoExpandAll:n,beforeFilterMethod:i,filterMethod:s,afterFilterMethod:u}=f.value,c=a,v=c,g="";if(r||0===r){g=""+r;r=s?e=>s({$tree:J,node:e,filterValue:g}):e=>-1<String(e[l]).toLowerCase().indexOf(g.toLowerCase());let e={$tree:J,filterValue:g};i&&i(e),c=t?v=_xeUtils.default.searchTree(a,r,{original:!0,isEvery:!0,children:o,mapChildren:d}):a.filter(r),$.lastFilterValue=g,(0,_vue.nextTick)(()=>{n?J.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:J,filterValue:g};i&&i(e),(0,_vue.nextTick)(()=>{n?J.clearAllExpandNode().then(()=>{u&&u(e)}):u&&u(e)})}$.lastFilterValue=""}$.afterVisibleList=c,$.afterTreeList=v,te()},h=()=>{var e=R.transform;let{afterTreeList:t,treeExpandedMaps:i}=$;var r=z.value;let s={};if(e){let n=[];return _xeUtils.default.eachTree(t,(e,t,r,a,l)=>{var o=Q(e),d=Q(l);(!l||s[d]&&i[d])&&(s[o]=1,n.push(e))},{children:r}),ve(n),$.afterVisibleList=n}return $.afterVisibleList},re=e=>{var t=P.scrollYLoad;let{scrollYStore:r,nodeMaps:a}=$,l=$.afterVisibleList;e&&(F(),l=h());e=t?l.slice(r.startIndex,r.endIndex):l.slice(0);e.forEach((e,t)=>{e=Q(e),e=a[e];e&&(e.$index=t)}),P.treeList=e},ce=_xeUtils.default.debounce(()=>re(!0),350,{trailing:!0}),t=e=>{let{expandAll:t,expandNodeKeys:r,transform:a,rootParentValue:l,rootValues:o}=R,{initialized:d,scrollYStore:n}=$;var i=q.value,s=j.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=($.treeFullData=i,$.insertNodeMaps={},P.insertNodeFlag++,$.removeNodeMaps={},P.removeNodeFlag++,Object.assign(n,{startIndex:0,endIndex:1,visibleSize:0}),ve(i));return ee(),re(!0),!s||R.height||R.maxHeight||errLog("vxe.error.reqProp",["height | max-height | virtual-y-config.enabled=false"]),he().then(()=>{d||e&&e.length&&($.initialized=!0,t?J.setAllExpandNode(!0):r&&r.length&&J.setExpandByNodeId(r,!0),w(R.checkNodeKeys||[],!0)),A();{let{lastScrollLeft:e,lastScrollTop:t}=$;me().then(()=>{if(e||t)return $.lastScrollLeft=0,$.lastScrollTop=0,scrollTo(e,t)})}})},ve=e=>{var t=R.transform,r=u.value,e=e||$.treeFullData,t=!!t&&!!r.enabled&&-1<r.gt&&(0===r.gt||r.gt<e.length);return P.scrollYLoad=t},ae=()=>{var e=P.scrollYLoad,{scrollYStore:t,afterVisibleList:r}=$;P.bodyHeight=e?r.length*t.rowHeight:0,P.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},ge=()=>{re(),ae()},he=()=>(0,_vue.nextTick)().then(()=>{var e=P.scrollYLoad,t=$.scrollYStore,r=E.value,a=u.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=C.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):ae)()}),pe=(e,t)=>{var r=C.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),P.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},le=()=>{var e,t,r,a=$.scrollYStore,a=a.rowHeight,l=V.value;return l&&l.clientWidth&&l.clientHeight?(l=U(),e=y.value,t=b.value,e=e?e.clientHeight:0,t=t?t.clientHeight:0,l&&(r=(0,_dom.getPaddingTopBottomSize)(l),P.parentHeight=Math.max(e+t+a,l.clientHeight-r-e-t)),A(),he().then(()=>{A(),ae()})):(0,_vue.nextTick)()},fe=()=>{var e=$.scrollYStore,{startIndex:t,endIndex:r,visibleSize:a,offsetSize:l,rowHeight:o}=e,d=C.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!==$.lastScrollLeft,l=r!==$.lastScrollTop;$.lastScrollTop=r,$.lastScrollLeft=t,P.scrollYLoad&&fe(),$.lastScrollTime=Date.now(),Z("scroll",{scrollLeft:t,scrollTop:r,isX:a,isY:l},e)},me=()=>{var e=C.value;return e&&(e.scrollTop=0,e.scrollLeft=0),$.lastScrollTop=0,($.lastScrollLeft=0,_vue.nextTick)()},_e=(e,t)=>{var r=R.drag,a=$.nodeMaps,l=e.currentTarget,{trigger:o,isCrossDrag:d,isPeerDrag:n,disabledMethod:i}=X.value,s=Q(t);let u=r?"node"===o:!1;(0,_dom.getEventTargetNode)(e,l,"vxe-tree--node-item-switcher").flag||(r={node:t,$tree:J},o=a[s],!u)||!(d||n||o&&!o.level)||i&&i(r)||qe(e,{node:t})},Ce=(e,t)=>{var{showRadio:r,showCheckbox:a,trigger:l}=R,o=Y.value,d=W.value;let n=!1,i=!1,s=!1,u=!1;v.value?(n=!0,Se(e,t)):P.currentNode&&(P.currentNode=null),"node"===l&&(u=!0,ke(e,t)),r&&"node"===o.trigger&&(i=!0,we(e,t)),a&&"node"===d.trigger&&(s=!0,Ie(e,t)),Z("node-click",{node:t,triggerCurrent:n,triggerRadio:i,triggerCheckbox:s,triggerExpand:u},e)},Ne=(e,t)=>{Z("node-dblclick",{node:t},e)},Te=(a,l)=>{var o=N.value;if(o){var d=P.tooltipStore,n=$.tipTimeout,i=a.currentTarget,{showAll:s,contentMethod:u}=G.value,n=(n&&(clearTimeout(n),$.tipTimeout=void 0),i.querySelector(".vxe-tree--node-item-title")),i=i.querySelector(".vxe-tree--node-item-wrapper");if(i){var c=_xeUtils.default.toString(i.textContent).trim(),v=i.scrollWidth>i.clientWidth;let e=!1,t=null,r="";u&&(t=u({node:l,$event:a,$tree:J})),s?_xeUtils.default.eqNull(t)?(e=!0,r=c):""!==t&&!1!==t&&(e=!0,r=""+t):r=_xeUtils.default.eqNull(t)?(e=v,c):""!==t&&!1!==t?(e=!0,""+t):c,e&&r&&(u=(0,_utils.getText)(r),d.visible=!0,d.node=l,o.open)&&o.open((v?i:n)||i,u)}}},ye=()=>{let e=N.value;var t=G.value;e&&e.setActived&&e.setActived(!1),t.enterable?$.tipTimeout=setTimeout(()=>{(e=N.value)&&e.isActived&&!e.isActived()&&be(),$.tipTimeout=void 0},t.leaveDelay):be()},be=()=>{var e=P.tooltipStore;return e.visible&&(e.visible=!1,e.node=null,e=N.value)&&e.close(),(0,_vue.nextTick)()},Ee=(a,l)=>{var e=R.menuConfig,t=v.value,r=p.value;(e?(0,_utils.isEnableConf)(r):r.enabled)&&({options:e,visibleMethod:r}=r,r&&!r({$tree:J,options:e,node:l})||(t?Se(a,l):P.currentNode&&(P.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:J,option:t};r&&r(t,a),Z("menu-click",t,e.$event)}}}))),Z("node-menu",{node:l},a)},Me=o=>{var e=W.value;let r=R.loadMethod,d=e.checkStrictly;return new Promise(e=>{var t=$.nodeMaps;let a=Q(o),l=t[a];r?($.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(r({$tree:J,node:o})).then(r=>{var e=$.treeExpandLazyLoadedMaps;if(l&&(l.treeLoaded=!0),e[a]&&(e[a]=!1),r=_xeUtils.default.isArray(r)?r:[])return J.loadChildrenNode(o,r).then(e=>{var t=$.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),P.updateExpandedFlag++,!d&&J.isCheckedByCheckboxNodeId(a)&&L(e,!0),Z("load-success",{node:o,data:r},new Event("load-success")),(0,_vue.nextTick)()});Z("load-success",{node:o,data:r},new Event("load-success"))}).catch(e=>{var t=$.treeExpandLazyLoadedMaps;l&&(l.treeLoaded=!1),t[a]&&(t[a]=!1),Z("load-error",{node:o,data:e},new Event("load-error"))}).finally(()=>(h(),re(),le()))):(l&&(l.treeLoaded=!0),e())})},De=(e,t)=>{let{lazy:a,accordion:r,toggleMethod:l}=R,{treeExpandLazyLoadedMaps:o,treeExpandedMaps:d}=$,n=$.nodeMaps,i=B.value,s=K.value,u=[],c=l?e.filter(e=>l({$tree:J,expanded:t,node:e})):e;r&&(c=c.length?[c[c.length-1]]:[],e=Q(c[0]),e=n[e])&&e.items.forEach(e=>{e=Q(e);d[e]&&delete d[e]});let v=[];return t?c.forEach(e=>{var t,r=Q(e);d[r]||(t=n[r],a&&e[s]&&!t.treeLoaded&&!o[r]?u.push(Me(e)):e[i]&&e[i].length&&(d[r]=!0,v.push(e)))}):c.forEach(e=>{var t=Q(e);d[t]&&(delete d[t],v.push(e))}),P.updateExpandedFlag++,h(),re(),Promise.all(u).then(()=>le())},ke=(e,t)=>{var r=R.lazy,{treeExpandedMaps:a,treeExpandLazyLoadedMaps:l}=$,o=Q(t),a=!a[o];e.stopPropagation(),r&&l[o]||De([t],a),Z("node-expand",{node:t,expanded:a},e)},oe=()=>{var e=R.transform;let{selectCheckboxMaps:i,indeterminateNodeMaps:s,afterTreeList:t}=$,o=B.value;var r=z.value;let{checkStrictly:a,checkMethod:u}=W.value;if(!a){let a={},l=[];_xeUtils.default.eachTree(t,e=>{var t=Q(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=Q(e),r=i[t];u({$tree:J,node:e})?(r?a++:s[t]&&l++,o++):r?a++:s[t]&&l++}:e=>{e=Q(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])}),P.updateCheckboxFlag++}},Ie=(e,r)=>{e.preventDefault(),e.stopPropagation();var a=R.transform;let{selectCheckboxMaps:l,nodeMaps:t}=$;var o=B.value,d=z.value,{checkStrictly:n,checkMode:i,checkMethod:s}=W.value,u=Q(r),c=_xeUtils.default.get(r,o),c=c&&0<c.length,v=(t[u]||{}).level,s=s?!s({$tree:J,node:r}):!ne(i,c,v);if(!s){let t=!1;l[u]?delete l[u]:(t=!0,l[u]=r),n||_xeUtils.default.eachTree(_xeUtils.default.get(r,a?d:o),e=>{e=Q(e);t?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:a?d:o}),P.updateCheckboxFlag++,oe();i=_xeUtils.default.keys(l).map(_utils.deModelValue);g(i),Z("checkbox-change",{node:r,value:i,checked:t},e)}},Se=(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)||(P.currentNode=t,Z("current-change",{node:t,checked:!0},e))},we=(e,t)=>{e.preventDefault(),e.stopPropagation();var r=$.nodeMaps,a=Y.value,l=B.value,{checkMode:a,checkMethod:o}=a,d=Q(t),l=_xeUtils.default.get(t,l),l=l&&0<l.length,r=(r[d]||{}).level;(o?o({$tree:J,node:t}):ne(a,l,r))&&(o=(0,_utils.deModelValue)(d),P.selectRadioKey=d,n(o),Z("radio-change",{node:t,value:o,checked:!0},e))},Le=()=>{var e=V.value;e&&e.clientWidth&&le()},Ue=(e,t)=>{let{treeFullData:d,nodeMaps:n}=$,i=q.value,s=j.value,u=B.value,c=z.value,v=t?"push":"unshift";e.forEach(r=>{let t=r[s];var e=Q(r),a=t?_xeUtils.default.findTree(d,e=>t===e[i],{children:c}):null,l=(0,_util.getItemCacheObj)(r);if(a){var a=a.item,o=n[Q(a)],o=o?o.level:0;let e=a[u],t=a[c];_xeUtils.default.isArray(e)||(e=a[u]=[]),_xeUtils.default.isArray(t)||(t=a[c]=[]),l.parent=a,l.items=e,l.level=o,e[v](r),t[v](r)}else t&&warnLog("vxe.error.unableInsert"),d[v](r);n[e]=l})},s=(t,r,n)=>{var i=R.transform;let{treeFullData:e,nodeMaps:s,removeNodeMaps:a,insertNodeMaps:l}=$,u=q.value,c=j.value,v=B.value,g=z.value;if(!i)return errLog("vxe.error.reqSupportProp",["insert() | insertAt() | insertNextAt()","transform"]),Promise.resolve({node:null,nodes:[]});_xeUtils.default.isArray(t)||(t=[t]);let h=r;if((_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(i=s[r])&&(h=i.item),!t.length)return Promise.resolve({node:null,nodes:[]});let o=t.map(e=>_xeUtils.default.assign({[g]:[],[v]:[]},e));r=_xeUtils.default.toArrayTree(o,{key:u,parentKey:c,children:v});if(_xeUtils.default.eqNull(h))Ue(o,!1);else if(-1===h)Ue(o,!0);else{let d=_xeUtils.default.findTree(e,e=>h[u]===e[u],{children:g});if(d){let a=d.parent,l=a?a[g]:e;i=s[Q(a)];let o=i?i.level:0;if(r.forEach((e,t)=>{a?e[c]!==a[u]&&(errLog("vxe.error.errProp",[c+"="+e[c],c+"="+a[u]]),e[c]=a[u]):null!==e[c]&&(_xeUtils.default.eqNull(e[c])||errLog("vxe.error.errProp",[c+"="+e[c],"null"]),e[c]=null);let r=d.index+t;n&&(r+=1),l.splice(r,0,e)}),_xeUtils.default.eachTree(r,e=>{var t=Q(e),r=(0,_util.getItemCacheObj)(e);r.level=o,e[v]&&(e[g]=e[v]),s[t]=r},{children:v}),a){t=_xeUtils.default.findTree(e,e=>h[u]===e[u],{children:v});if(t){i=t.items;let e=t.index;n&&(e+=1),i.splice(e,0,...r)}}}else warnLog("vxe.error.unableInsert"),Ue(o,!0)}return _xeUtils.default.eachTree(r,e=>{var t=Q(e);a[t]?(delete a[t],l[t]&&delete l[t]):l[t]=e},{children:g}),P.removeNodeFlag++,P.insertNodeFlag++,ee(),re(!0),te(),oe(),P.scrollYLoad&&ae(),(0,_vue.nextTick)().then(()=>({node:o.length?o[o.length-1]:null,nodes:o}))},Oe=(e,t,r,a)=>{var l=R.transform,o=$.nodeMaps;let d=q.value,n=j.value;if(!l)return errLog("vxe.error.reqSupportProp",["insertChild() | insertChildAt() | insertChildNextAt()","transform"]),Promise.resolve({node:null,nodes:[]});_xeUtils.default.isArray(e)||(e=[e]);let i=t;return(_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t))&&(l=o[t])&&(i=l.item),s(e.map(e=>Object.assign({},e,{[n]:i[d]})),r,a)},Ae={dispatchEvent:Z,getNodeId:Q,getNodeById(e){var t=$.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(P.currentNode=null,_vue.nextTick)()},getCurrentNodeId(){var e=P.currentNode;return e?(0,_utils.deModelValue)(Q(e)):null},getCurrentNode(){var e=P.currentNode,t=$.nodeMaps;if(e){t=t[Q(e)];if(t)return t.item}return null},setCurrentNodeId(e){var t=$.nodeMaps,t=t[(0,_utils.enModelValue)(e)];return P.currentNode=t?t.item:null,(0,_vue.nextTick)()},setCurrentNode(e){return P.currentNode=e,(0,_vue.nextTick)()},clearRadioNode(){return P.selectRadioKey=null,n(null),(0,_vue.nextTick)()},getRadioNodeId(){return P.selectRadioKey||null},getRadioNode(){var e=P.selectRadioKey,t=$.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},setRadioNodeId(e){return P.selectRadioKey=(0,_utils.enModelValue)(e),n(e),(0,_vue.nextTick)()},setRadioNode(e){return e?(e=Q(e),P.selectRadioKey=e,n((0,_utils.deModelValue)(e))):n(null),(0,_vue.nextTick)()},setCheckboxNode(e,t){return e&&(_xeUtils.default.isArray(e)||(e=[e]),L(e,t)),g(J.getCheckboxNodeIds()),(0,_vue.nextTick)()},setCheckboxByNodeId(e,t){return w(e,t),g(J.getCheckboxNodeIds()),(0,_vue.nextTick)()},getCheckboxNodeIds(){var e=$.selectCheckboxMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_utils.deModelValue)(t))}),r},getCheckboxNodes(){return J.getCheckboxRecords()},getCheckboxRecords(){let{nodeMaps:r,selectCheckboxMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},clearCheckboxNode(){return $.indeterminateNodeMaps={},$.selectCheckboxMaps={},P.updateCheckboxFlag++,g([]),oe(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))},setAllCheckboxNode(e){var t=R.transform,{afterTreeList:r,afterVisibleList:a}=$;let l={};var o=B.value,d=z.value;let n=[],i=[];return e&&_xeUtils.default.eachTree(t?r:a,e=>{var t=Q(e);n.push(t),i.push(e),l[t]=!0},{children:t?d:o}),$.indeterminateNodeMaps={},$.selectCheckboxMaps=l,P.updateCheckboxFlag++,oe(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:n,checkNodes:i}))},clearExpandNode(){return Ae.clearAllExpandNode()},clearAllExpandNode(){let e=P.scrollYLoad;var{nodeMaps:t,scrollYStore:r}=$;return _xeUtils.default.each(t,e=>{e.treeLoaded=!1}),$.treeExpandedMaps={},P.updateExpandedFlag++,P.topSpaceHeight=0,r.startIndex=0,r.endIndex=1,h(),re(),le().then(()=>(e&&fe(),le()))},setExpandByNodeId(e,t){let r=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_utils.enModelValue)(e);a(e,t,r)}),P.updateExpandedFlag++),h(),re(),le()},getExpandNodeIds(){var e=$.treeExpandedMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_utils.deModelValue)(t))}),r},getExpandNodes(){let{nodeMaps:r,treeExpandedMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},setExpandNode(e,t){let r=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Q(e);a(e,t,r)}),P.updateExpandedFlag++),h(),re(),le()},toggleExpandByNodeId(e){let t=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_utils.enModelValue)(e);a(e,!t[""+e],t)}),P.updateExpandedFlag++),h(),re(),le()},toggleExpandNode(e){let t=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Q(e);a(e,!t[e],t)}),P.updateExpandedFlag++),h(),re(),le()},setAllExpandNode(e){var t=R.transform;let r=P.scrollYLoad,{scrollYStore:a,treeExpandedMaps:l}=$,o=B.value;var d=z.value;return e?_xeUtils.default.eachTree($.afterTreeList,e=>{var t=_xeUtils.default.get(e,o);t&&t.length&&(t=Q(e),l[t]=!0)},{children:t?d:o}):$.treeExpandedMaps={},P.updateExpandedFlag++,P.topSpaceHeight=0,a.startIndex=0,a.endIndex=1,h(),re(),le().then(()=>(r&&fe(),le()))},reloadExpandNode(e){var t=R.lazy;return t?(Ae.clearExpandLoaded(e),Me(e)):le()},clearExpandLoaded(e){var t=R.lazy,r=$.nodeMaps;return t&&(t=r[Q(e)])&&(t.treeLoaded=!1),le()},loadChildrenNode(t,e){let{lazy:r,transform:a}=R,n=$.nodeMaps;if(!r)return Promise.resolve([]);let l=B.value,o=z.value,i=n[Q(t)],s=i?i.level:0,u=i?i.nodes:[];return(e=>{let r=c.value;return Promise.resolve(e.map(e=>{var t,e=Object.assign({},e);return Q(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=Q(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),te(),e))},isExpandByNode:e=>{var t=P.updateExpandedFlag,r=$.treeExpandedMaps,e=Q(e);return!(!t||!r[e])},isCheckedByRadioNodeId:m,isCheckedByRadioNode:e=>m(Q(e)),isCheckedByCheckboxNodeId:se,isIndeterminateByCheckboxNode:e=>ue(Q(e)),isCheckedByCheckboxNode:e=>se(Q(e)),getCheckboxIndeterminateNodes(){let{nodeMaps:r,indeterminateNodeMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},recalculate:le,getFullData(){var e=$.treeFullData;return e.slice(0)},scrollTo:pe,scrollToNode(e){return J.scrollToNodeId(Q(e))},scrollToNodeId(t){var e=R.transform;let{scrollYStore:r,afterTreeList:a}=$;var l=B.value,o=z.value;let d=C.value;if(t&&d)if(e){e=_xeUtils.default.findTree(a,e=>Q(e)===t,{children:e?o:l});if(e)return J.setExpandNode(e.nodes,!0).then(()=>{var e=_xeUtils.default.findIndexOf($.afterVisibleList,e=>Q(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 le()},clearScroll:me,insert(e){return s(e,null)},insertAt(e,t){return s(e,t)},insertNextAt(e,t){return s(e,t,!0)},insertChild(e,t){return Oe(e,t,null)},insertChildAt(e,t,r){return Oe(e,t,r)},insertChildNextAt(e,t,r){return Oe(e,t,r,!0)},getInsertRecords(){var e=$.insertNodeMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},isInsertByNode(e){e=Q(e);return!!P.insertNodeFlag&&!!$.insertNodeMaps[e]},remove(e){var t=R.transform;let{treeFullData:r,insertNodeMaps:a,removeNodeMaps:l}=$,o=B.value,d=z.value;if(!t)return errLog("vxe.error.reqSupportProp",["remove()","transform"]),Promise.resolve({node:null,nodes:[]});let n=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=r,e.length?(e.forEach(e=>{var t;J.isInsertByNode(e)||(t=Q(e),l[t]=e)}),r===e?(e=n=r.slice(0),$.treeFullData=[]):e.forEach(e=>{let t=Q(e);var e=_xeUtils.default.findTree(r,e=>t===Q(e),{children:d}),e=(e&&(e=e.items.splice(e.index,1),n.push(e[0])),_xeUtils.default.findTree(r,e=>t===Q(e),{children:o}));e&&(e=e.items.splice(e.index,1),n.push(e[0]))}),e.forEach(e=>{e=Q(e);a[e]&&delete a[e]}),P.removeNodeFlag++,P.insertNodeFlag++,ee(),re(!0),te(),oe(),P.scrollYLoad&&ae(),(0,_vue.nextTick)().then(()=>le()).then(()=>({node:n.length?n[n.length-1]:null,nodes:n}))):Promise.resolve({node:null,nodes:[]})},getRemoveRecords(){var e=$.removeNodeMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},isRemoveByNode(e){e=Q(e);return!!P.removeNodeFlag&&!!$.removeNodeMaps[e]},closeTooltip:be,getRecordset(){return{insertRecords:J.getInsertRecords(),removeRecords:J.getRemoveRecords()}}},de=()=>{ze(),$e(),le()},Fe=()=>{var e=V.value;if(e){let t="node--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}},He=e=>{var t=V.value;if(t){e=Q(e);_xeUtils.default.arrayEach(t.querySelectorAll(`.vxe-tree--node-wrapper[nodeid="${e}"]`),e=>{(0,_dom.addClass)(e,"node--drag-origin")})}},Re=e=>{var t=P.dragNode,r=X.value.tooltipMethod;let a="";a=r?""+(r({$tree:J,node:t})||""):getI18n("vxe.tree.dragTip",[e.textContent||""]),P.dragTipText=a},Ve=()=>{var e=D.value,t=M.value;e&&(e.style.display=""),t&&(t.style.display="")},$e=()=>{crossTreeDragNodeObj=null,_.node=null},Pe=()=>{var e=P.dragNode;e&&(Ve(),Fe(),$e(),P.dragNode=null)},qe=(e,t)=>{e.stopPropagation();var r=t.node,{isCrossTreeDrag:a,trigger:l,dragStartMethod:o}=X.value,d=e.currentTarget,l="node"===l?d:d.parentElement.parentElement;Fe(),o&&!o(t)?(l.draggable=!1,P.dragNode=null,$e(),Ve()):(a&&(_.node=r,crossTreeDragNodeObj={$oldTree:J,$newTree:null}),P.dragNode=r,P.isCrossDragNode=!1,l.draggable=!0,He(r),Re(l),Z("node-dragstart",t,e))},je=()=>{Pe()},Be=(e,t,r,a)=>{var l=V.value;if(l){var o=$.prevDragToChild,d=l.getBoundingClientRect(),n=l.clientHeight;if(t){var i=M.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=D.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"))}},ze=()=>{var e=V.value;Ve(),Fe(),(0,_anime.clearRowAnimate)(e,[".vxe-tree--node-wrapper"]),$.prevDragToChild=!1,P.dragNode=null},Ke=(v,g,h,p,e)=>{let f=R.transform,{nodeMaps:x,treeFullData:m,afterVisibleList:_}=$;var C=X.value;let{animation:N,isCrossDrag:T,isPeerDrag:y,isSelfToChildDrag:b,dragEndMethod:t,dragToChildMethod:E}=C;C=t||(C?C.dragEndMethod:null);let M=q.value,D=j.value,k=B.value,I=z.value,S="bottom"===p?1:0,w=V.value,L={status:!1};if(w&&h&&g&&h!==g){var U={oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:!!e,offsetIndex:S};let r=Q(g);var O=x[r]||{};let s=O._index;var A=Q(h);let u=0,c=-1,a=(N&&(F=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${A}"]`),H=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${r}"]`),(F=F||H)&&(u=F.offsetHeight),H)&&(c=H.offsetTop),-1),l=-1,t={},o=!1,d=O,n=x[A];if(f&&d&&n){var F=d.level,H=n.level;if(_xeUtils.default.eachTree([g],e=>{t[Q(e)]=e},{children:I}),F&&H)if(y&&!T){if(d.item[D]!==n.item[D])return de(),L}else{if(!T)return de(),L;if(t[A]&&(o=!0,!T||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),de(),L}else if(F){if(!T)return de(),L}else if(H){if(!T)return de(),L;if(t[A]&&(o=!0,!T||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),de(),L}}let i=b&&E?E(U):e;return Promise.resolve(!C||C(U)).then(e=>{var t;return e?(f?d&&n&&(e=_xeUtils.default.toTreeArray($.afterTreeList,{updated:!1,key:M,parentKey:D,children:I}),t=J.findNodeIndexOf(e,g),e.splice(t,1),t=J.findNodeIndexOf(e,h)+S,e.splice(t,0,g),o&&T&&b&&_xeUtils.default.each(g[k],e=>{e[D]=g[D]}),g[D]=i?h[M]:h[D],$.treeFullData=_xeUtils.default.toArrayTree(e,{key:M,parentKey:D,children:k,mapChildren:I})):(a=J.findNodeIndexOf(_,g),t=J.findNodeIndexOf(m,g),_.splice(a,1),m.splice(t,1),e=J.findNodeIndexOf(_,h),t=J.findNodeIndexOf(m,h),l=e+S,e=t+S,_.splice(l,0,g),m.splice(e,0,g)),ee(),re(f),f||te(),oe(),P.scrollYLoad&&ae(),v&&Z("node-dragend",{oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:i,offsetIndex:S,_index:{newIndex:l,oldIndex:a}},v),(0,_vue.nextTick)().then(()=>{if(N){var a=P.treeList,l=$.nodeMaps,o=l[r],d=o._index,n=a[0],l=l[Q(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=Q(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)}le()}).then(()=>({status:!0}))):L}).catch(()=>L).then(e=>(de(),e))}return de(),Promise.resolve(L)},Ye=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},We=e=>{var t=R.lazy,r=P.dragNode,{nodeMaps:a,prevDragNode:l,prevDragPos:o,prevDragToChild:d}=$,n=K.value,{isCrossDrag:i,isCrossTreeDrag:s}=X.value;if(s&&crossTreeDragNodeObj){s=crossTreeDragNodeObj.$newTree;if(s&&s.xID!==J.xID)return void(i&&s.handleCrossTreeNodeDragInsertEvent(e))}t&&d&&(i=a[Q(l)],l[n])&&(!i||!i.treeLoaded)||Ke(e,r,l,o,d)},Xe=e=>{var{lazy:t,transform:r}=R,a=P.dragNode,l=$.nodeMaps,o=X.value,d=j.value,n=K.value,{isCrossTreeDrag:o,isCrossDrag:i,isPeerDrag:s,isToChildDrag:u}=o,c=(a||i||e.preventDefault(),(0,_dom.hasControlKey)(e)),v=e.currentTarget,g=v.getAttribute("nodeid")||"",l=l[g];if(l){e.preventDefault();var h=l.item,p=e.clientY-v.getBoundingClientRect().y<v.clientHeight/2?"top":"bottom";if($.prevDragToChild=!!(r&&i&&u&&c),$.prevDragNode=h,$.prevDragPos=p,o&&i&&crossTreeDragNodeObj){var{$oldTree:u,$newTree:o}=crossTreeDragNodeObj;if(u){var f=u.reactData;if(u.xID===J.xID)o&&o.hideCrossTreeNodeDropClearStatus(),P.isCrossDragNode=!1,f.isCrossDragNode=!1,crossTreeDragNodeObj.$newTree=null;else if(i)return o&&o.xID!==J.xID&&o.hideCrossTreeNodeDropClearStatus(),u.hideCrossTreeNodeDropClearStatus(),f.isCrossDragNode=!0,P.dragTipText=f.dragTipText,crossTreeDragNodeObj.$newTree=J,void Be(e,v,!0,p)}}a&&Q(a)===g||c&&t&&h[n]&&l&&!l.treeLoaded||!i&&r&&(s?a[d]!==h[d]:l.level)?Be(e,v,!1,p):(Be(e,v,!0,p),Z("node-dragover",{oldRNode:a,targetNode:h,dragPos:p},e))}};o={handleData:re,cacheNodeMap:ee,updateAfterDataIndex:te,updateCheckboxStatus:oe,updateYSpace:ae,findNodeIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>J.eqNode(e,t)):-1},eqNode(e,t){return!(!e||!t||e!==t&&Q(e)!==Q(t))},handleCrossTreeNodeDragCancelEvent(){ze(),$e()},handleCrossTreeNodeDragFinishEvent(t){var l=P.treeList,o=$.nodeMaps;let{animation:d,isCrossTreeDrag:e}=X.value;var n=z.value;let i=V.value;if(i&&e&&crossTreeDragNodeObj&&_){var s=_.node;if(s){var u=Q(s),o=o[u];let r=0,e=-1,a=(o&&(d&&(u=i.querySelector(`.vxe-tree--node-wrapper[nodeid="${u}"]`))&&(r=u.offsetHeight),e=o.$index),-1<e&&e<l.length-1?l.slice(e+1):[]);u=_xeUtils.default.toTreeArray([s],{updated:!0,children:n});J.remove(u).then(()=>{if(d&&r&&a.length){var e=i;let t=[];a.forEach(e=>{e=Q(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});e=e.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(e,r)}}),Z("node-remove-dragend",{node:s},t),de()}}},handleCrossTreeNodeDragoverEmptyEvent(e){var t,r=P.treeList,a=X.value.isCrossTreeDrag;a&&crossTreeDragNodeObj&&!r.length&&({$oldTree:a,$newTree:r}=crossTreeDragNodeObj,a)&&(t=a).xID!==J.xID&&(r&&r.xID!==J.xID&&r.hideCrossTreeNodeDropClearStatus(),e.preventDefault(),a.hideCrossTreeNodeDropClearStatus(),crossTreeDragNodeObj.$newTree=J,$.prevDragNode=null,P.dragTipText=t.dragTipText,Be(e,e.currentTarget,!0,""))},handleCrossTreeNodeDragInsertEvent(s){let{prevDragNode:u,prevDragPos:c,prevDragToChild:e}=$;let{animation:v,isSelfToChildDrag:t,isCrossTreeDrag:r,dragEndMethod:g,dragToChildMethod:h}=X.value,p=j.value,f=z.value,x=B.value;if(r&&crossTreeDragNodeObj&&_){let d=_.node,n=crossTreeDragNodeObj.$oldTree,i=V.value;if(i&&(n&&d)){let o=d,r=-1;u&&(r="bottom"===c?1:0);var m={oldNode:o,newNode:u,dragNode:o,dragPos:c,dragToChild:!!e,offsetIndex:r};let a=t&&h?h(m):e,l={status:!1};Promise.resolve(!g||g(m)).then(e=>{if(!e)return n&&n.xID!==J.xID&&n.handleCrossTreeNodeDragCancelEvent(s),de(),l;let t=Promise.resolve();e=_xeUtils.default.toTreeArray([o],{updated:!0,children:f});n.handleCrossTreeNodeDragFinishEvent(s),u?o[p]=u[p]:o[p]=null,e.forEach(e=>{e[x]=void 0,e[f]=void 0}),t=u?"bottom"===c?J.insertNextAt(e,u):J.insertAt(e,u):J.insert(e),J.dispatchEvent("node-insert-dragend",{oldNode:d,newNode:u,dragNode:o,dragPos:c,dragToChild:a,offsetIndex:r},s),ze(),t.then(()=>{var e=P.treeList,r=$.nodeMaps,a=Q(o),r=r[a];let l=0,t=-1;r&&(v&&(a=i.querySelector(`.vxe-tree--node-wrapper[nodeid="${a}"]`))&&(l=a.offsetHeight),t=r.$index);a=-1<t?e.slice(t):[];if(v&&l&&a.length){r=i;let t=[];a.forEach(e=>{e=Q(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});e=r.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(e,-l)}})})}}},hideCrossTreeNodeDropClearStatus(){Ve()}};Object.assign(J,Ae,o);let Ge=(e,t)=>{var{drag:r,transform:a}=R,l=$.nodeMaps,{showIcon:o,isPeerDrag:d,isCrossDrag:n,visibleMethod:i}=X.value;let s={node:e,$tree:J};if(r&&o&&a&&(!i||i(s))){e=l[t];if(e&&(d||n||!e.level)){var{icon:r,trigger:o,disabledMethod:a}=X.value;let t=a&&a(s);i={};return"node"!==o&&(i.onMousedown=e=>{t||qe(e,s)},i.onMouseup=je),(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)(J)},ne=(e,t,r)=>{if(e){if("first"===e)return!r;if("last"===e)return!t}return!0},Je=(t,e,r,a,l,o)=>{var d=R.showRadio,{showIcon:n,visibleMode:i,visibleMethod:s}=Y.value,s=s?s({$tree:J,node:t}):ne(i,r,a);return d&&n&&s?(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":o,"is--disabled":l}],onClick:e=>{l||we(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",o?getIcon().RADIO_CHECKED:l?getIcon().RADIO_DISABLED_UNCHECKED:getIcon().RADIO_UNCHECKED]})]):(0,_ui.renderEmptyElement)(J)},Qe=(t,e,r,a,l,o,d)=>{var n=R.showCheckbox,{showIcon:i,visibleMode:s,visibleMethod:u}=W.value,u=u?u({$tree:J,node:t}):ne(s,r,a);return n&&i&&u?(0,_vue.h)("div",{class:["vxe-tree--checkbox-option",{"is--checked":o,"is--indeterminate":d,"is--disabled":l}],onClick:e=>{l||Ie(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",d?getIcon().CHECKBOX_INDETERMINATE:o?getIcon().CHECKBOX_CHECKED:l?getIcon().CHECKBOX_DISABLED_UNCHECKED:getIcon().CHECKBOX_UNCHECKED]})]):(0,_ui.renderEmptyElement)(J)},Ze=(t,e)=>{var{lazy:r,drag:a,transform:l,showRadio:o,showCheckbox:d,showLine:n,visibleMethod:i,iconOpen:s,iconClose:u,iconLoaded:c,showIcon:v}=R,{currentNode:g,selectRadioKey:h,updateExpandedFlag:p}=P,{afterTreeList:f,nodeMaps:x,treeExpandedMaps:m,treeExpandLazyLoadedMaps:_}=$,C=G.value.mode,N=Y.value,T=W.value,y=B.value,b=ie.value,F=K.value,y=_xeUtils.default.get(t,y),y=y&&0<y.length,E=H.icon,M=H.title,D=H.extra,p=p&&m[e],m=x[e]||{},x=(0,_utils.getText)(_xeUtils.default.get(t,b)),b=m.level;let k=!1,I=!1,S=(o&&(k=e===String(h),I=N.checkMethod?!N.checkMethod({$tree:J,node:t}):!ne(N.checkMode,y,b)),!1),w=!1,L=!1,U=(d&&(S=se(e),w=ue(e),L=T.checkMethod?!T.checkMethod({$tree:J,node:t}):!ne(T.checkMode,y,b)),!1),O=!1,A=!1;r&&(O=!!_[e],U=t[F],A=!!m.treeLoaded);o=m.items[m.treeIndex-1],h={node:t,isExpand:p,$tree:J},N={onMousedown(e){_e(e,t)},onMouseup:je,onClick(e){Ce(e,t)},onDblclick(e){Ne(e,t)},onContextmenu(e){Ee(e,t)}};return"tooltip"===C&&(N.onMouseenter=e=>{Te(e,t)},N.onMouseleave=ye),a&&l&&(N.onDragstart=Ye,N.onDragend=We,N.onDragover=Xe),(0,_vue.h)("div",Object.assign({key:e,class:["vxe-tree--node-wrapper","node--level-"+b],nodeid:e,title:"title"===C?x:""},N),[(0,_vue.h)("div",{class:["vxe-tree--node-item",{"is--current":g&&e===Q(g),"is-radio--disabled":I,"is-radio--checked":k,"is-checkbox--disabled":L,"is-checkbox--checked":S,"is-checkbox--indeterminate":w}]},[n?(0,_vue.h)("div",{class:"vxe-tree--node-line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--node-line",style:{height:`${Q(f[0])===e?1:(0,_util.calcTreeLine)(J,t,o)}px`}})]):(0,_ui.renderEmptyElement)(J),(0,_vue.h)("div",{class:"vxe-tree--node-item-switcher"},v&&(!r||A?y:U)&&(!i||i(h))?[(0,_vue.h)("div",{class:"vxe-tree--node-item-icon",onClick(e){ke(e,t)}},E?(0,_vn.getSlotVNs)(E(h)):[(0,_vue.h)("i",{class:O?c||getIcon().TREE_NODE_LOADED:p?s||getIcon().TREE_NODE_OPEN:u||getIcon().TREE_NODE_CLOSE})])]:[]),Je(t,e,y,b,I,k),Qe(t,e,y,b,L,S,w),Ge(t,e),(0,_vue.h)("div",{class:"vxe-tree--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-tree--node-item-wrapper"},[(0,_vue.h)("span",{class:"vxe-tree--node-item-title"},M?(0,_vn.getSlotVNs)(M(h)):x)]),D?(0,_vue.h)("div",{class:"vxe-tree--node-item-extra"},(0,_vn.getSlotVNs)(D(h))):(0,_ui.renderEmptyElement)(J)])])])},et=e=>{var{loading:t,transform:r,emptyText:a}=R;let l=$.treeExpandedMaps,o=B.value;var d=H.empty;if(!t&&!e.length)return[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder"},d?d({}):[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder-content"},(0,_utils.getText)(a||getI18n("vxe.tree.searchEmpty")))])];let n=[];return e.forEach(r?e=>{var t=Q(e);n.push(Ze(e,t))}:e=>{var t=Q(e),e=(n.push(Ze(e,t)),_xeUtils.default.get(e,o));e&&e.length&&l[t]&&n.push(...et(e))}),n};let e=(0,_vue.ref)(0),tt=((0,_vue.watch)(()=>R.data?R.data.length:0,()=>{e.value++}),(0,_vue.watch)(()=>R.data,()=>{e.value++}),(0,_vue.watch)(()=>R.rootParentValue,()=>{e.value++}),(0,_vue.watch)(()=>R.rootValues?R.rootValues.length:0,()=>{e.value++}),(0,_vue.watch)(()=>R.rootValues,()=>{e.value++}),(0,_vue.watch)(e,()=>{t(R.data||[])}),(0,_vue.watch)(()=>R.checkNodeKey,e=>{P.selectRadioKey=(0,_utils.enModelValue)(e)}),(0,_vue.ref)(0)),rt=((0,_vue.watch)(()=>R.checkNodeKeys?R.checkNodeKeys.length:0,()=>{tt.value++}),(0,_vue.watch)(()=>R.checkNodeKeys,()=>{tt.value++}),(0,_vue.watch)(tt,()=>{var e;e=R.checkNodeKeys||[],$.selectCheckboxMaps={},w(e,!0)}),(0,_vue.watch)(()=>R.filterValue,()=>{ce(new Event("filter"))}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>R.height,()=>{rt.value++}),(0,_vue.watch)(()=>R.minHeight,()=>{rt.value++}),(0,_vue.watch)(()=>R.maxHeight,()=>{rt.value++}),(0,_vue.watch)(rt,()=>{le()}),(0,_vue.onMounted)(()=>{var{transform:e,drag:t,menuConfig:r,showOverflow:a,lazy:l,loadMethod:o}=R,d=X.value,a=(a||errLog("vxe.error.errProp",["show-overflow=false","show-overflow=true"]),t&&!e&&errLog("vxe.error.notSupportProp",["drag","transform=false","transform=true"]),d.isCrossTreeDrag&&!d.isCrossDrag&&errLog("vxe.error.reqSupportProp",["drag-config.isCrossTreeDrag","drag-config.isCrossDrag"]),l&&!o&&warnLog("vxe.error.reqSupportProp",["lazy","load-method"]),_ui.VxeUI.getComponent("VxeContextMenu"));r&&!a&&errLog("vxe.error.reqComp",["vxe-context-menu"]),R.autoResize&&(t=V.value,e=U(),d=_ui.globalResize.create(()=>{R.autoResize&&le()}),t&&d.observe(t),e&&d.observe(e),$.resizeObserver=d),le(),_ui.globalEvents.on(J,"resize",Le)}),(0,_vue.onBeforeUnmount)(()=>{var e=$.resizeObserver;e&&e.disconnect(),_ui.globalEvents.off(J,"resize"),_xeUtils.default.assign(P,createReactData()),_xeUtils.default.assign($,createInternalData())}),P.selectRadioKey=(0,_utils.enModelValue)(R.checkNodeKey),t(R.data||[]),J.renderVN=()=>{var{loading:e,trigger:t,showLine:r}=R;let{bodyHeight:a,topSpaceHeight:l,treeList:o,tooltipStore:d}=P;var n=T.value,i=Y.value,s=W.value,u=I.value,c=k.value,v=S.value,g=X.value,h=G.value;let p=H.loading;var f=H.header,x=H.footer;let m=H.tooltip;var _={};return g.isCrossTreeDrag&&!o.length&&(_.onDragover=J.handleCrossTreeNodeDragoverEmptyEvent),(0,_vue.h)("div",Object.assign({ref:V,class:["vxe-tree",{["size--"+n]:n,"show--line":r,"checkbox--highlight":s.highlight,"radio--highlight":i.highlight,"node--hover":c,"node--trigger":"node"===t,"is--loading":e}]},_),[f?(0,_vue.h)("div",{ref:y,class:"vxe-tree--header-wrapper"},f({$tree:J})):(0,_ui.renderEmptyElement)(J),(0,_vue.h)("div",{ref:C,class:"vxe-tree--node-list-wrapper",style:v,onScroll:xe},[(0,_vue.h)("div",{class:"vxe-tree--y-space",style:{height:a?a+"px":""}}),(0,_vue.h)("div",{ref:E,class:"vxe-tree--node-list-body",style:{transform:`translateY(${l}px)`}},et(o))]),x?(0,_vue.h)("div",{ref:b,class:"vxe-tree--footer-wrapper"},x({$tree:J})):(0,_ui.renderEmptyElement)(J),(()=>{var e=R.drag,{dragNode:t,dragTipText:r}=P,a=X.value;return e?(0,_vue.h)("div",{class:"vxe-tree--drag-wrapper"},[(0,_vue.h)("div",{ref:M,class:["vxe-tree--drag-node-line",{"is--guides":a.showGuidesStatus}]}),t&&a.showDragTip?(0,_vue.h)("div",{ref:D,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)(J)]):(0,_ui.renderEmptyElement)(J)})(),"tooltip"===h.mode?(0,_vue.h)(_tooltip.default,{ref:N,theme:h.theme,enterable:h.enterable,enterDelay:h.enterDelay,leaveDelay:h.leaveDelay,useHtml:h.useHtml,width:h.width,height:h.height,minWidth:h.minWidth,minHeight:h.minHeight,maxWidth:h.maxWidth,maxHeight:h.maxHeight,placement:h.placement,defaultPlacement:h.defaultPlacement,popupClassName:h.popupClassName},m?{content:()=>{var e=d.node;return m({node:e,$tree:J})}}:void 0):(0,_ui.renderEmptyElement)(J),(0,_vue.h)(_loading.default,{class:"vxe-tree--loading",modelValue:e,icon:u.icon,text:u.text},p?{default:()=>p({$tree:J})}:void 0)])},(0,_vue.provide)("$xeTree",J),J},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")),_tooltip=_interopRequireDefault(require("../../tooltip"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tree"),{menus,getConfig,getI18n,getIcon}=_ui.VxeUI;function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createInternalData(){return{treeFullData:[],afterTreeList:[],afterVisibleList:[],nodeMaps:{},selectCheckboxMaps:{},indeterminateNodeMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},removeNodeMaps:{},insertNodeMaps:{},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,insertNodeFlag:1,removeNodeFlag:1,dragNode:null,dragTipText:"",isCrossDragNode:!1,tooltipStore:{visible:!1,node:null}}}let crossTreeDragNodeObj=null;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},emptyText:{type:[String,Number],default:()=>getConfig().tree.emptyText},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:[String,Number],radioConfig:Object,showCheckbox:{type:Boolean,default:()=>getConfig().tree.showCheckbox},checkNodeKeys:Array,checkboxConfig:Object,nodeConfig:Object,lazy:Boolean,visibleMethod:Function,toggleMethod:Function,loadMethod:Function,showOverflow:{type:Boolean,default:()=>getConfig().tree.showOverflow},tooltipConfig:Object,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-remove-dragend","node-insert-dragend","node-expand","node-menu","menu-click"],setup(R,r){let{emit:l,slots:H}=r;var o=_xeUtils.default.uniqueId();let T=(0,_ui.useSize)(R).computeSize,V=(0,_vue.ref)(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),M=(0,_vue.ref)(),D=(0,_vue.ref)(),N=(0,_vue.ref)(),_=(0,_store.getCrossTreeDragNodeInfo)(),$=createInternalData(),P=(0,_vue.reactive)(createReactData()),i={refElem:V},ie=(0,_vue.computed)(()=>R.titleField||"title"),q=(0,_vue.computed)(()=>R.keyField||"id"),c=(0,_vue.computed)(()=>{var e=q.value;return R.valueField||e}),j=(0,_vue.computed)(()=>R.parentField||"parentId"),B=(0,_vue.computed)(()=>R.childrenField||"children"),z=(0,_vue.computed)(()=>R.mapChildrenField||"mapChildren"),K=(0,_vue.computed)(()=>R.hasChildField||"hasChild"),u=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.virtualYConfig,R.virtualYConfig)),v=(0,_vue.computed)(()=>{var e=d.value.isCurrent;return _xeUtils.default.isBoolean(e)?e:R.isCurrent}),k=(0,_vue.computed)(()=>{var e=d.value.isHover;return _xeUtils.default.isBoolean(e)?e:R.isHover}),Y=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.radioConfig,R.radioConfig)),W=(0,_vue.computed)(()=>Object.assign({showIcon:!0},getConfig().tree.checkboxConfig,R.checkboxConfig)),d=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.nodeConfig,R.nodeConfig)),I=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.loadingConfig,R.loadingConfig)),X=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.dragConfig,R.dragConfig)),G=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.tooltipConfig,R.tooltipConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.menuConfig,R.menuConfig)),S=(0,_vue.computed)(()=>{var e=R.indent,{customHeight:t,customMinHeight:r,customMaxHeight:a}=P,l=W.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}),f=(0,_vue.computed)(()=>Object.assign({},getConfig().tree.filterConfig,R.filterConfig)),x={computeKeyField:q,computeParentField:j,computeChildrenField:B,computeMapChildrenField:z,computeRadioOpts:Y,computeCheckboxOpts:W,computeNodeOpts:d,computeDragOpts:X},J={xID:o,props:R,context:r,internalData:$,reactData:P,getRefMaps:()=>i,getComputeMaps:()=>x},Q=e=>{var t;return e?(t=c.value,e=_xeUtils.default.get(e,t),(0,_utils.enModelValue)(e)):""};let m=e=>{var t=P.selectRadioKey;return t===e};let se=e=>{var t=P.updateCheckboxFlag,r=$.selectCheckboxMaps;return!(!t||!r[e])};let ue=e=>{var t=P.updateCheckboxFlag,r=$.indeterminateNodeMaps;return!(!t||!r[e])};let g=e=>{l("update:checkNodeKeys",e)},n=e=>{l("update:checkNodeKey",e)},w=(e,r)=>{let a=$.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let t=[];e.forEach(e=>{e=(0,_utils.enModelValue)(e),e=a[e];e&&t.push(e.item)}),L(t,r)}return(0,_vue.nextTick)()},L=(e,r)=>{var t=R.transform;let a=$.selectCheckboxMaps;var l=z.value,o=B.value,d=W.value.checkStrictly,n=e=>{var t=Q(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}),P.updateCheckboxFlag++,oe()},a=(e,t,r)=>{t?r[e]||(r[e]=!0):r[e]&&delete r[e]},Z=(e,t,r)=>{l(e,(0,_ui.createEvent)(r,{$tree:J},t))},U=()=>{var e=V.value;return e?e.parentElement:null},O=e=>{var t=P.parentHeight,e=R[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},A=()=>{P.customHeight=O("height"),P.customMinHeight=O("minHeight"),P.customMaxHeight=O("maxHeight"),!P.scrollYLoad||P.customHeight||P.customMinHeight||(P.customHeight=300)},ee=()=>{var e=$.treeFullData;let n=c.value;var t=B.value;let i={};_xeUtils.default.eachTree(e,(e,t,r,a,l,o)=>{let d=Q(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}),$.nodeMaps=i},te=()=>{var e=R.transform;let{afterTreeList:t,nodeMaps:i}=$;var r=B.value,a=z.value;let s=0;_xeUtils.default.eachTree(t,(e,t,r,a,l,o)=>{var d=Q(e),n=i[d];n?(n.items=r,n.treeIndex=t,n._index=s):(n={item:e,index:t,$index:-1,_index:s,items:r,parent:l,nodes:o,level:o.length-1,treeIndex:t,lineCount:0,treeLoaded:!1},i[d]=n),s++},{children:e?a:r})},F=()=>{var{transform:t,filterValue:r}=R,{treeFullData:a,lastFilterValue:e}=$;let l=ie.value;var o=B.value,d=z.value;let{autoExpandAll:n,beforeFilterMethod:i,filterMethod:s,afterFilterMethod:u}=f.value,c=a,v=c,g="";if(r||0===r){g=""+r;r=s?e=>s({$tree:J,node:e,filterValue:g}):e=>-1<String(e[l]).toLowerCase().indexOf(g.toLowerCase());let e={$tree:J,filterValue:g};i&&i(e),c=t?v=_xeUtils.default.searchTree(a,r,{original:!0,isEvery:!0,children:o,mapChildren:d}):a.filter(r),$.lastFilterValue=g,(0,_vue.nextTick)(()=>{n?J.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:J,filterValue:g};i&&i(e),(0,_vue.nextTick)(()=>{n?J.clearAllExpandNode().then(()=>{u&&u(e)}):u&&u(e)})}$.lastFilterValue=""}$.afterVisibleList=c,$.afterTreeList=v,te()},h=()=>{var e=R.transform;let{afterTreeList:t,treeExpandedMaps:i}=$;var r=z.value;let s={};if(e){let n=[];return _xeUtils.default.eachTree(t,(e,t,r,a,l)=>{var o=Q(e),d=Q(l);(!l||s[d]&&i[d])&&(s[o]=1,n.push(e))},{children:r}),ve(n),$.afterVisibleList=n}return $.afterVisibleList},re=e=>{var t=P.scrollYLoad;let{scrollYStore:r,nodeMaps:a}=$,l=$.afterVisibleList;e&&(F(),l=h());e=t?l.slice(r.startIndex,r.endIndex):l.slice(0);e.forEach((e,t)=>{e=Q(e),e=a[e];e&&(e.$index=t)}),P.treeList=e},ce=_xeUtils.default.debounce(()=>re(!0),350,{trailing:!0}),t=e=>{let{expandAll:t,expandNodeKeys:r,transform:a,rootParentValue:l,rootValues:o}=R,{initialized:d,scrollYStore:n}=$;var i=q.value,s=j.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=($.treeFullData=i,$.insertNodeMaps={},P.insertNodeFlag++,$.removeNodeMaps={},P.removeNodeFlag++,Object.assign(n,{startIndex:0,endIndex:1,visibleSize:0}),ve(i));return ee(),re(!0),!s||R.height||R.maxHeight||errLog("vxe.error.reqProp",["height | max-height | virtual-y-config.enabled=false"]),he().then(()=>{d||e&&e.length&&($.initialized=!0,t?J.setAllExpandNode(!0):r&&r.length&&J.setExpandByNodeId(r,!0),w(R.checkNodeKeys||[],!0)),A();{let{lastScrollLeft:e,lastScrollTop:t}=$;me().then(()=>{if(e||t)return $.lastScrollLeft=0,$.lastScrollTop=0,scrollTo(e,t)})}})},ve=e=>{var t=R.transform,r=u.value,e=e||$.treeFullData,t=!!t&&!!r.enabled&&-1<r.gt&&(0===r.gt||r.gt<e.length);return P.scrollYLoad=t},ae=()=>{var e=P.scrollYLoad,{scrollYStore:t,afterVisibleList:r}=$;P.bodyHeight=e?r.length*t.rowHeight:0,P.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},ge=()=>{re(),ae()},he=()=>(0,_vue.nextTick)().then(()=>{var e=P.scrollYLoad,t=$.scrollYStore,r=E.value,a=u.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=C.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):ae)()}),pe=(e,t)=>{var r=C.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),P.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},le=()=>{var t=$.scrollYStore,t=t.rowHeight,r=V.value;if(r&&r.clientWidth&&r.clientHeight){let e=U();var a,r=y.value,l=b.value,r=r?r.clientHeight:0,l=l?l.clientHeight:0;return(e=e&&(0,_dom.hasClass)(e,"vxe-scrollbar--view-inner")?e.parentElement:e)&&(a=(0,_dom.getPaddingTopBottomSize)(e),P.parentHeight=Math.max(r+l+t,e.clientHeight-a-r-l)),A(),he().then(()=>{A(),ae()})}return(0,_vue.nextTick)()},fe=()=>{var e=$.scrollYStore,{startIndex:t,endIndex:r,visibleSize:a,offsetSize:l,rowHeight:o}=e,d=C.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!==$.lastScrollLeft,l=r!==$.lastScrollTop;$.lastScrollTop=r,$.lastScrollLeft=t,P.scrollYLoad&&fe(),$.lastScrollTime=Date.now(),Z("scroll",{scrollLeft:t,scrollTop:r,isX:a,isY:l},e)},me=()=>{var e=C.value;return e&&(e.scrollTop=0,e.scrollLeft=0),$.lastScrollTop=0,($.lastScrollLeft=0,_vue.nextTick)()},_e=(e,t)=>{var r=R.drag,a=$.nodeMaps,l=e.currentTarget,{trigger:o,isCrossDrag:d,isPeerDrag:n,disabledMethod:i}=X.value,s=Q(t);let u=r?"node"===o:!1;(0,_dom.getEventTargetNode)(e,l,"vxe-tree--node-item-switcher").flag||(r={node:t,$tree:J},o=a[s],!u)||!(d||n||o&&!o.level)||i&&i(r)||qe(e,{node:t})},Ce=(e,t)=>{var{showRadio:r,showCheckbox:a,trigger:l}=R,o=Y.value,d=W.value;let n=!1,i=!1,s=!1,u=!1;v.value?(n=!0,Se(e,t)):P.currentNode&&(P.currentNode=null),"node"===l&&(u=!0,ke(e,t)),r&&"node"===o.trigger&&(i=!0,we(e,t)),a&&"node"===d.trigger&&(s=!0,Ie(e,t)),Z("node-click",{node:t,triggerCurrent:n,triggerRadio:i,triggerCheckbox:s,triggerExpand:u},e)},Ne=(e,t)=>{Z("node-dblclick",{node:t},e)},Te=(a,l)=>{var o=N.value;if(o){var d=P.tooltipStore,n=$.tipTimeout,i=a.currentTarget,{showAll:s,contentMethod:u}=G.value,n=(n&&(clearTimeout(n),$.tipTimeout=void 0),i.querySelector(".vxe-tree--node-item-title")),i=i.querySelector(".vxe-tree--node-item-wrapper");if(i){var c=_xeUtils.default.toString(i.textContent).trim(),v=i.scrollWidth>i.clientWidth;let e=!1,t=null,r="";u&&(t=u({node:l,$event:a,$tree:J})),s?_xeUtils.default.eqNull(t)?(e=!0,r=c):""!==t&&!1!==t&&(e=!0,r=""+t):r=_xeUtils.default.eqNull(t)?(e=v,c):""!==t&&!1!==t?(e=!0,""+t):c,e&&r&&(u=(0,_utils.getText)(r),d.visible=!0,d.node=l,o.open)&&o.open((v?i:n)||i,u)}}},ye=()=>{let e=N.value;var t=G.value;e&&e.setActived&&e.setActived(!1),t.enterable?$.tipTimeout=setTimeout(()=>{(e=N.value)&&e.isActived&&!e.isActived()&&be(),$.tipTimeout=void 0},t.leaveDelay):be()},be=()=>{var e=P.tooltipStore;return e.visible&&(e.visible=!1,e.node=null,e=N.value)&&e.close(),(0,_vue.nextTick)()},Ee=(a,l)=>{var e=R.menuConfig,t=v.value,r=p.value;(e?(0,_utils.isEnableConf)(r):r.enabled)&&({options:e,visibleMethod:r}=r,r&&!r({$tree:J,options:e,node:l})||(t?Se(a,l):P.currentNode&&(P.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:J,option:t};r&&r(t,a),Z("menu-click",t,e.$event)}}}))),Z("node-menu",{node:l},a)},Me=o=>{var e=W.value;let r=R.loadMethod,d=e.checkStrictly;return new Promise(e=>{var t=$.nodeMaps;let a=Q(o),l=t[a];r?($.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(r({$tree:J,node:o})).then(r=>{var e=$.treeExpandLazyLoadedMaps;if(l&&(l.treeLoaded=!0),e[a]&&(e[a]=!1),r=_xeUtils.default.isArray(r)?r:[])return J.loadChildrenNode(o,r).then(e=>{var t=$.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),P.updateExpandedFlag++,!d&&J.isCheckedByCheckboxNodeId(a)&&L(e,!0),Z("load-success",{node:o,data:r},new Event("load-success")),(0,_vue.nextTick)()});Z("load-success",{node:o,data:r},new Event("load-success"))}).catch(e=>{var t=$.treeExpandLazyLoadedMaps;l&&(l.treeLoaded=!1),t[a]&&(t[a]=!1),Z("load-error",{node:o,data:e},new Event("load-error"))}).finally(()=>(h(),re(),le()))):(l&&(l.treeLoaded=!0),e())})},De=(e,t)=>{let{lazy:a,accordion:r,toggleMethod:l}=R,{treeExpandLazyLoadedMaps:o,treeExpandedMaps:d}=$,n=$.nodeMaps,i=B.value,s=K.value,u=[],c=l?e.filter(e=>l({$tree:J,expanded:t,node:e})):e;r&&(c=c.length?[c[c.length-1]]:[],e=Q(c[0]),e=n[e])&&e.items.forEach(e=>{e=Q(e);d[e]&&delete d[e]});let v=[];return t?c.forEach(e=>{var t,r=Q(e);d[r]||(t=n[r],a&&e[s]&&!t.treeLoaded&&!o[r]?u.push(Me(e)):e[i]&&e[i].length&&(d[r]=!0,v.push(e)))}):c.forEach(e=>{var t=Q(e);d[t]&&(delete d[t],v.push(e))}),P.updateExpandedFlag++,h(),re(),Promise.all(u).then(()=>le())},ke=(e,t)=>{var r=R.lazy,{treeExpandedMaps:a,treeExpandLazyLoadedMaps:l}=$,o=Q(t),a=!a[o];e.stopPropagation(),r&&l[o]||De([t],a),Z("node-expand",{node:t,expanded:a},e)},oe=()=>{var e=R.transform;let{selectCheckboxMaps:i,indeterminateNodeMaps:s,afterTreeList:t}=$,o=B.value;var r=z.value;let{checkStrictly:a,checkMethod:u}=W.value;if(!a){let a={},l=[];_xeUtils.default.eachTree(t,e=>{var t=Q(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=Q(e),r=i[t];u({$tree:J,node:e})?(r?a++:s[t]&&l++,o++):r?a++:s[t]&&l++}:e=>{e=Q(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])}),P.updateCheckboxFlag++}},Ie=(e,r)=>{e.preventDefault(),e.stopPropagation();var a=R.transform;let{selectCheckboxMaps:l,nodeMaps:t}=$;var o=B.value,d=z.value,{checkStrictly:n,checkMode:i,checkMethod:s}=W.value,u=Q(r),c=_xeUtils.default.get(r,o),c=c&&0<c.length,v=(t[u]||{}).level,s=s?!s({$tree:J,node:r}):!ne(i,c,v);if(!s){let t=!1;l[u]?delete l[u]:(t=!0,l[u]=r),n||_xeUtils.default.eachTree(_xeUtils.default.get(r,a?d:o),e=>{e=Q(e);t?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:a?d:o}),P.updateCheckboxFlag++,oe();i=_xeUtils.default.keys(l).map(_utils.deModelValue);g(i),Z("checkbox-change",{node:r,value:i,checked:t},e)}},Se=(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)||(P.currentNode=t,Z("current-change",{node:t,checked:!0},e))},we=(e,t)=>{e.preventDefault(),e.stopPropagation();var r=$.nodeMaps,a=Y.value,l=B.value,{checkMode:a,checkMethod:o}=a,d=Q(t),l=_xeUtils.default.get(t,l),l=l&&0<l.length,r=(r[d]||{}).level;(o?o({$tree:J,node:t}):ne(a,l,r))&&(o=(0,_utils.deModelValue)(d),P.selectRadioKey=d,n(o),Z("radio-change",{node:t,value:o,checked:!0},e))},Le=()=>{var e=V.value;e&&e.clientWidth&&le()},Ue=(e,t)=>{let{treeFullData:d,nodeMaps:n}=$,i=q.value,s=j.value,u=B.value,c=z.value,v=t?"push":"unshift";e.forEach(r=>{let t=r[s];var e=Q(r),a=t?_xeUtils.default.findTree(d,e=>t===e[i],{children:c}):null,l=(0,_util.getItemCacheObj)(r);if(a){var a=a.item,o=n[Q(a)],o=o?o.level:0;let e=a[u],t=a[c];_xeUtils.default.isArray(e)||(e=a[u]=[]),_xeUtils.default.isArray(t)||(t=a[c]=[]),l.parent=a,l.items=e,l.level=o,e[v](r),t[v](r)}else t&&warnLog("vxe.error.unableInsert"),d[v](r);n[e]=l})},s=(t,r,n)=>{var i=R.transform;let{treeFullData:e,nodeMaps:s,removeNodeMaps:a,insertNodeMaps:l}=$,u=q.value,c=j.value,v=B.value,g=z.value;if(!i)return errLog("vxe.error.reqSupportProp",["insert() | insertAt() | insertNextAt()","transform"]),Promise.resolve({node:null,nodes:[]});_xeUtils.default.isArray(t)||(t=[t]);let h=r;if((_xeUtils.default.isString(r)||_xeUtils.default.isNumber(r))&&(i=s[r])&&(h=i.item),!t.length)return Promise.resolve({node:null,nodes:[]});let o=t.map(e=>_xeUtils.default.assign({[g]:[],[v]:[]},e));r=_xeUtils.default.toArrayTree(o,{key:u,parentKey:c,children:v});if(_xeUtils.default.eqNull(h))Ue(o,!1);else if(-1===h)Ue(o,!0);else{let d=_xeUtils.default.findTree(e,e=>h[u]===e[u],{children:g});if(d){let a=d.parent,l=a?a[g]:e;i=s[Q(a)];let o=i?i.level:0;if(r.forEach((e,t)=>{a?e[c]!==a[u]&&(errLog("vxe.error.errProp",[c+"="+e[c],c+"="+a[u]]),e[c]=a[u]):null!==e[c]&&(_xeUtils.default.eqNull(e[c])||errLog("vxe.error.errProp",[c+"="+e[c],"null"]),e[c]=null);let r=d.index+t;n&&(r+=1),l.splice(r,0,e)}),_xeUtils.default.eachTree(r,e=>{var t=Q(e),r=(0,_util.getItemCacheObj)(e);r.level=o,e[v]&&(e[g]=e[v]),s[t]=r},{children:v}),a){t=_xeUtils.default.findTree(e,e=>h[u]===e[u],{children:v});if(t){i=t.items;let e=t.index;n&&(e+=1),i.splice(e,0,...r)}}}else warnLog("vxe.error.unableInsert"),Ue(o,!0)}return _xeUtils.default.eachTree(r,e=>{var t=Q(e);a[t]?(delete a[t],l[t]&&delete l[t]):l[t]=e},{children:g}),P.removeNodeFlag++,P.insertNodeFlag++,ee(),re(!0),te(),oe(),P.scrollYLoad&&ae(),(0,_vue.nextTick)().then(()=>({node:o.length?o[o.length-1]:null,nodes:o}))},Oe=(e,t,r,a)=>{var l=R.transform,o=$.nodeMaps;let d=q.value,n=j.value;if(!l)return errLog("vxe.error.reqSupportProp",["insertChild() | insertChildAt() | insertChildNextAt()","transform"]),Promise.resolve({node:null,nodes:[]});_xeUtils.default.isArray(e)||(e=[e]);let i=t;return(_xeUtils.default.isString(t)||_xeUtils.default.isNumber(t))&&(l=o[t])&&(i=l.item),s(e.map(e=>Object.assign({},e,{[n]:i[d]})),r,a)},Ae={dispatchEvent:Z,getNodeId:Q,getNodeById(e){var t=$.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(P.currentNode=null,_vue.nextTick)()},getCurrentNodeId(){var e=P.currentNode;return e?(0,_utils.deModelValue)(Q(e)):null},getCurrentNode(){var e=P.currentNode,t=$.nodeMaps;if(e){t=t[Q(e)];if(t)return t.item}return null},setCurrentNodeId(e){var t=$.nodeMaps,t=t[(0,_utils.enModelValue)(e)];return P.currentNode=t?t.item:null,(0,_vue.nextTick)()},setCurrentNode(e){return P.currentNode=e,(0,_vue.nextTick)()},clearRadioNode(){return P.selectRadioKey=null,n(null),(0,_vue.nextTick)()},getRadioNodeId(){return P.selectRadioKey||null},getRadioNode(){var e=P.selectRadioKey,t=$.nodeMaps;if(e){t=t[e];if(t)return t.item}return null},setRadioNodeId(e){return P.selectRadioKey=(0,_utils.enModelValue)(e),n(e),(0,_vue.nextTick)()},setRadioNode(e){return e?(e=Q(e),P.selectRadioKey=e,n((0,_utils.deModelValue)(e))):n(null),(0,_vue.nextTick)()},setCheckboxNode(e,t){return e&&(_xeUtils.default.isArray(e)||(e=[e]),L(e,t)),g(J.getCheckboxNodeIds()),(0,_vue.nextTick)()},setCheckboxByNodeId(e,t){return w(e,t),g(J.getCheckboxNodeIds()),(0,_vue.nextTick)()},getCheckboxNodeIds(){var e=$.selectCheckboxMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_utils.deModelValue)(t))}),r},getCheckboxNodes(){return J.getCheckboxRecords()},getCheckboxRecords(){let{nodeMaps:r,selectCheckboxMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},clearCheckboxNode(){return $.indeterminateNodeMaps={},$.selectCheckboxMaps={},P.updateCheckboxFlag++,g([]),oe(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))},setAllCheckboxNode(e){var t=R.transform,{afterTreeList:r,afterVisibleList:a}=$;let l={};var o=B.value,d=z.value;let n=[],i=[];return e&&_xeUtils.default.eachTree(t?r:a,e=>{var t=Q(e);n.push(t),i.push(e),l[t]=!0},{children:t?d:o}),$.indeterminateNodeMaps={},$.selectCheckboxMaps=l,P.updateCheckboxFlag++,oe(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:n,checkNodes:i}))},clearExpandNode(){return Ae.clearAllExpandNode()},clearAllExpandNode(){let e=P.scrollYLoad;var{nodeMaps:t,scrollYStore:r}=$;return _xeUtils.default.each(t,e=>{e.treeLoaded=!1}),$.treeExpandedMaps={},P.updateExpandedFlag++,P.topSpaceHeight=0,r.startIndex=0,r.endIndex=1,h(),re(),le().then(()=>(e&&fe(),le()))},setExpandByNodeId(e,t){let r=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_utils.enModelValue)(e);a(e,t,r)}),P.updateExpandedFlag++),h(),re(),le()},getExpandNodeIds(){var e=$.treeExpandedMaps;let r=[];return _xeUtils.default.each(e,(e,t)=>{r.push((0,_utils.deModelValue)(t))}),r},getExpandNodes(){let{nodeMaps:r,treeExpandedMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},setExpandNode(e,t){let r=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Q(e);a(e,t,r)}),P.updateExpandedFlag++),h(),re(),le()},toggleExpandByNodeId(e){let t=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=(0,_utils.enModelValue)(e);a(e,!t[""+e],t)}),P.updateExpandedFlag++),h(),re(),le()},toggleExpandNode(e){let t=$.treeExpandedMaps;return e&&((e=_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=Q(e);a(e,!t[e],t)}),P.updateExpandedFlag++),h(),re(),le()},setAllExpandNode(e){var t=R.transform;let r=P.scrollYLoad,{scrollYStore:a,treeExpandedMaps:l}=$,o=B.value;var d=z.value;return e?_xeUtils.default.eachTree($.afterTreeList,e=>{var t=_xeUtils.default.get(e,o);t&&t.length&&(t=Q(e),l[t]=!0)},{children:t?d:o}):$.treeExpandedMaps={},P.updateExpandedFlag++,P.topSpaceHeight=0,a.startIndex=0,a.endIndex=1,h(),re(),le().then(()=>(r&&fe(),le()))},reloadExpandNode(e){var t=R.lazy;return t?(Ae.clearExpandLoaded(e),Me(e)):le()},clearExpandLoaded(e){var t=R.lazy,r=$.nodeMaps;return t&&(t=r[Q(e)])&&(t.treeLoaded=!1),le()},loadChildrenNode(t,e){let{lazy:r,transform:a}=R,n=$.nodeMaps;if(!r)return Promise.resolve([]);let l=B.value,o=z.value,i=n[Q(t)],s=i?i.level:0,u=i?i.nodes:[];return(e=>{let r=c.value;return Promise.resolve(e.map(e=>{var t,e=Object.assign({},e);return Q(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=Q(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),te(),e))},isExpandByNode:e=>{var t=P.updateExpandedFlag,r=$.treeExpandedMaps,e=Q(e);return!(!t||!r[e])},isCheckedByRadioNodeId:m,isCheckedByRadioNode:e=>m(Q(e)),isCheckedByCheckboxNodeId:se,isIndeterminateByCheckboxNode:e=>ue(Q(e)),isCheckedByCheckboxNode:e=>se(Q(e)),getCheckboxIndeterminateNodes(){let{nodeMaps:r,indeterminateNodeMaps:e}=$,a=[];return _xeUtils.default.each(e,(e,t)=>{t=r[t];t&&a.push(t.item)}),a},recalculate:le,getFullData(){var e=$.treeFullData;return e.slice(0)},scrollTo:pe,scrollToNode(e){return J.scrollToNodeId(Q(e))},scrollToNodeId(t){var e=R.transform;let{scrollYStore:r,afterTreeList:a}=$;var l=B.value,o=z.value;let d=C.value;if(t&&d)if(e){e=_xeUtils.default.findTree(a,e=>Q(e)===t,{children:e?o:l});if(e)return J.setExpandNode(e.nodes,!0).then(()=>{var e=_xeUtils.default.findIndexOf($.afterVisibleList,e=>Q(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 le()},clearScroll:me,insert(e){return s(e,null)},insertAt(e,t){return s(e,t)},insertNextAt(e,t){return s(e,t,!0)},insertChild(e,t){return Oe(e,t,null)},insertChildAt(e,t,r){return Oe(e,t,r)},insertChildNextAt(e,t,r){return Oe(e,t,r,!0)},getInsertRecords(){var e=$.insertNodeMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},isInsertByNode(e){e=Q(e);return!!P.insertNodeFlag&&!!$.insertNodeMaps[e]},remove(e){var t=R.transform;let{treeFullData:r,insertNodeMaps:a,removeNodeMaps:l}=$,o=B.value,d=z.value;if(!t)return errLog("vxe.error.reqSupportProp",["remove()","transform"]),Promise.resolve({node:null,nodes:[]});let n=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=r,e.length?(e.forEach(e=>{var t;J.isInsertByNode(e)||(t=Q(e),l[t]=e)}),r===e?(e=n=r.slice(0),$.treeFullData=[]):e.forEach(e=>{let t=Q(e);var e=_xeUtils.default.findTree(r,e=>t===Q(e),{children:d}),e=(e&&(e=e.items.splice(e.index,1),n.push(e[0])),_xeUtils.default.findTree(r,e=>t===Q(e),{children:o}));e&&(e=e.items.splice(e.index,1),n.push(e[0]))}),e.forEach(e=>{e=Q(e);a[e]&&delete a[e]}),P.removeNodeFlag++,P.insertNodeFlag++,ee(),re(!0),te(),oe(),P.scrollYLoad&&ae(),(0,_vue.nextTick)().then(()=>le()).then(()=>({node:n.length?n[n.length-1]:null,nodes:n}))):Promise.resolve({node:null,nodes:[]})},getRemoveRecords(){var e=$.removeNodeMaps;let t=[];return _xeUtils.default.each(e,e=>{t.push(e)}),t},isRemoveByNode(e){e=Q(e);return!!P.removeNodeFlag&&!!$.removeNodeMaps[e]},closeTooltip:be,getRecordset(){return{insertRecords:J.getInsertRecords(),removeRecords:J.getRemoveRecords()}}},de=()=>{ze(),$e(),le()},Fe=()=>{var e=V.value;if(e){let t="node--drag-origin";_xeUtils.default.arrayEach(e.querySelectorAll("."+t),e=>{(e.draggable=!1,_dom.removeClass)(e,t)})}},He=e=>{var t=V.value;if(t){e=Q(e);_xeUtils.default.arrayEach(t.querySelectorAll(`.vxe-tree--node-wrapper[nodeid="${e}"]`),e=>{(0,_dom.addClass)(e,"node--drag-origin")})}},Re=e=>{var t=P.dragNode,r=X.value.tooltipMethod;let a="";a=r?""+(r({$tree:J,node:t})||""):getI18n("vxe.tree.dragTip",[e.textContent||""]),P.dragTipText=a},Ve=()=>{var e=D.value,t=M.value;e&&(e.style.display=""),t&&(t.style.display="")},$e=()=>{crossTreeDragNodeObj=null,_.node=null},Pe=()=>{var e=P.dragNode;e&&(Ve(),Fe(),$e(),P.dragNode=null)},qe=(e,t)=>{e.stopPropagation();var r=t.node,{isCrossTreeDrag:a,trigger:l,dragStartMethod:o}=X.value,d=e.currentTarget,l="node"===l?d:d.parentElement.parentElement;Fe(),o&&!o(t)?(l.draggable=!1,P.dragNode=null,$e(),Ve()):(a&&(_.node=r,crossTreeDragNodeObj={$oldTree:J,$newTree:null}),P.dragNode=r,P.isCrossDragNode=!1,l.draggable=!0,He(r),Re(l),Z("node-dragstart",t,e))},je=()=>{Pe()},Be=(e,t,r,a)=>{var l=V.value;if(l){var o=$.prevDragToChild,d=l.getBoundingClientRect(),n=l.clientHeight;if(t){var i=M.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=D.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"))}},ze=()=>{var e=V.value;Ve(),Fe(),(0,_anime.clearRowAnimate)(e,[".vxe-tree--node-wrapper"]),$.prevDragToChild=!1,P.dragNode=null},Ke=(v,g,h,p,e)=>{let f=R.transform,{nodeMaps:x,treeFullData:m,afterVisibleList:_}=$;var C=X.value;let{animation:N,isCrossDrag:T,isPeerDrag:y,isSelfToChildDrag:b,dragEndMethod:t,dragToChildMethod:E}=C;C=t||(C?C.dragEndMethod:null);let M=q.value,D=j.value,k=B.value,I=z.value,S="bottom"===p?1:0,w=V.value,L={status:!1};if(w&&h&&g&&h!==g){var U={oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:!!e,offsetIndex:S};let r=Q(g);var O=x[r]||{};let s=O._index;var A=Q(h);let u=0,c=-1,a=(N&&(F=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${A}"]`),H=w.querySelector(`.vxe-tree--node-wrapper[nodeid="${r}"]`),(F=F||H)&&(u=F.offsetHeight),H)&&(c=H.offsetTop),-1),l=-1,t={},o=!1,d=O,n=x[A];if(f&&d&&n){var F=d.level,H=n.level;if(_xeUtils.default.eachTree([g],e=>{t[Q(e)]=e},{children:I}),F&&H)if(y&&!T){if(d.item[D]!==n.item[D])return de(),L}else{if(!T)return de(),L;if(t[A]&&(o=!0,!T||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),de(),L}else if(F){if(!T)return de(),L}else if(H){if(!T)return de(),L;if(t[A]&&(o=!0,!T||!b))return _ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}),de(),L}}let i=b&&E?E(U):e;return Promise.resolve(!C||C(U)).then(e=>{var t;return e?(f?d&&n&&(e=_xeUtils.default.toTreeArray($.afterTreeList,{updated:!1,key:M,parentKey:D,children:I}),t=J.findNodeIndexOf(e,g),e.splice(t,1),t=J.findNodeIndexOf(e,h)+S,e.splice(t,0,g),o&&T&&b&&_xeUtils.default.each(g[k],e=>{e[D]=g[D]}),g[D]=i?h[M]:h[D],$.treeFullData=_xeUtils.default.toArrayTree(e,{key:M,parentKey:D,children:k,mapChildren:I})):(a=J.findNodeIndexOf(_,g),t=J.findNodeIndexOf(m,g),_.splice(a,1),m.splice(t,1),e=J.findNodeIndexOf(_,h),t=J.findNodeIndexOf(m,h),l=e+S,e=t+S,_.splice(l,0,g),m.splice(e,0,g)),ee(),re(f),f||te(),oe(),P.scrollYLoad&&ae(),v&&Z("node-dragend",{oldNode:g,newNode:h,dragNode:g,dragPos:p,dragToChild:i,offsetIndex:S,_index:{newIndex:l,oldIndex:a}},v),(0,_vue.nextTick)().then(()=>{if(N){var a=P.treeList,l=$.nodeMaps,o=l[r],d=o._index,n=a[0],l=l[Q(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=Q(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)}le()}).then(()=>({status:!0}))):L}).catch(()=>L).then(e=>(de(),e))}return de(),Promise.resolve(L)},Ye=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},We=e=>{var t=R.lazy,r=P.dragNode,{nodeMaps:a,prevDragNode:l,prevDragPos:o,prevDragToChild:d}=$,n=K.value,{isCrossDrag:i,isCrossTreeDrag:s}=X.value;if(s&&crossTreeDragNodeObj){s=crossTreeDragNodeObj.$newTree;if(s&&s.xID!==J.xID)return void(i&&s.handleCrossTreeNodeDragInsertEvent(e))}t&&d&&(i=a[Q(l)],l[n])&&(!i||!i.treeLoaded)||Ke(e,r,l,o,d)},Xe=e=>{var{lazy:t,transform:r}=R,a=P.dragNode,l=$.nodeMaps,o=X.value,d=j.value,n=K.value,{isCrossTreeDrag:o,isCrossDrag:i,isPeerDrag:s,isToChildDrag:u}=o,c=(a||i||e.preventDefault(),(0,_dom.hasControlKey)(e)),v=e.currentTarget,g=v.getAttribute("nodeid")||"",l=l[g];if(l){e.preventDefault();var h=l.item,p=e.clientY-v.getBoundingClientRect().y<v.clientHeight/2?"top":"bottom";if($.prevDragToChild=!!(r&&i&&u&&c),$.prevDragNode=h,$.prevDragPos=p,o&&i&&crossTreeDragNodeObj){var{$oldTree:u,$newTree:o}=crossTreeDragNodeObj;if(u){var f=u.reactData;if(u.xID===J.xID)o&&o.hideCrossTreeNodeDropClearStatus(),P.isCrossDragNode=!1,f.isCrossDragNode=!1,crossTreeDragNodeObj.$newTree=null;else if(i)return o&&o.xID!==J.xID&&o.hideCrossTreeNodeDropClearStatus(),u.hideCrossTreeNodeDropClearStatus(),f.isCrossDragNode=!0,P.dragTipText=f.dragTipText,crossTreeDragNodeObj.$newTree=J,void Be(e,v,!0,p)}}a&&Q(a)===g||c&&t&&h[n]&&l&&!l.treeLoaded||!i&&r&&(s?a[d]!==h[d]:l.level)?Be(e,v,!1,p):(Be(e,v,!0,p),Z("node-dragover",{oldRNode:a,targetNode:h,dragPos:p},e))}};o={handleData:re,cacheNodeMap:ee,updateAfterDataIndex:te,updateCheckboxStatus:oe,updateYSpace:ae,findNodeIndexOf(e,t){return t?_xeUtils.default.findIndexOf(e,e=>J.eqNode(e,t)):-1},eqNode(e,t){return!(!e||!t||e!==t&&Q(e)!==Q(t))},handleCrossTreeNodeDragCancelEvent(){ze(),$e()},handleCrossTreeNodeDragFinishEvent(t){var l=P.treeList,o=$.nodeMaps;let{animation:d,isCrossTreeDrag:e}=X.value;var n=z.value;let i=V.value;if(i&&e&&crossTreeDragNodeObj&&_){var s=_.node;if(s){var u=Q(s),o=o[u];let r=0,e=-1,a=(o&&(d&&(u=i.querySelector(`.vxe-tree--node-wrapper[nodeid="${u}"]`))&&(r=u.offsetHeight),e=o.$index),-1<e&&e<l.length-1?l.slice(e+1):[]);u=_xeUtils.default.toTreeArray([s],{updated:!0,children:n});J.remove(u).then(()=>{if(d&&r&&a.length){var e=i;let t=[];a.forEach(e=>{e=Q(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});e=e.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(e,r)}}),Z("node-remove-dragend",{node:s},t),de()}}},handleCrossTreeNodeDragoverEmptyEvent(e){var t,r=P.treeList,a=X.value.isCrossTreeDrag;a&&crossTreeDragNodeObj&&!r.length&&({$oldTree:a,$newTree:r}=crossTreeDragNodeObj,a)&&(t=a).xID!==J.xID&&(r&&r.xID!==J.xID&&r.hideCrossTreeNodeDropClearStatus(),e.preventDefault(),a.hideCrossTreeNodeDropClearStatus(),crossTreeDragNodeObj.$newTree=J,$.prevDragNode=null,P.dragTipText=t.dragTipText,Be(e,e.currentTarget,!0,""))},handleCrossTreeNodeDragInsertEvent(s){let{prevDragNode:u,prevDragPos:c,prevDragToChild:e}=$;let{animation:v,isSelfToChildDrag:t,isCrossTreeDrag:r,dragEndMethod:g,dragToChildMethod:h}=X.value,p=j.value,f=z.value,x=B.value;if(r&&crossTreeDragNodeObj&&_){let d=_.node,n=crossTreeDragNodeObj.$oldTree,i=V.value;if(i&&(n&&d)){let o=d,r=-1;u&&(r="bottom"===c?1:0);var m={oldNode:o,newNode:u,dragNode:o,dragPos:c,dragToChild:!!e,offsetIndex:r};let a=t&&h?h(m):e,l={status:!1};Promise.resolve(!g||g(m)).then(e=>{if(!e)return n&&n.xID!==J.xID&&n.handleCrossTreeNodeDragCancelEvent(s),de(),l;let t=Promise.resolve();e=_xeUtils.default.toTreeArray([o],{updated:!0,children:f});n.handleCrossTreeNodeDragFinishEvent(s),u?o[p]=u[p]:o[p]=null,e.forEach(e=>{e[x]=void 0,e[f]=void 0}),t=u?"bottom"===c?J.insertNextAt(e,u):J.insertAt(e,u):J.insert(e),J.dispatchEvent("node-insert-dragend",{oldNode:d,newNode:u,dragNode:o,dragPos:c,dragToChild:a,offsetIndex:r},s),ze(),t.then(()=>{var e=P.treeList,r=$.nodeMaps,a=Q(o),r=r[a];let l=0,t=-1;r&&(v&&(a=i.querySelector(`.vxe-tree--node-wrapper[nodeid="${a}"]`))&&(l=a.offsetHeight),t=r.$index);a=-1<t?e.slice(t):[];if(v&&l&&a.length){r=i;let t=[];a.forEach(e=>{e=Q(e);t.push(`.vxe-tree--node-wrapper[nodeid="${e}"]`)});e=r.querySelectorAll(t.join(","));(0,_anime.moveRowAnimateToTb)(e,-l)}})})}}},hideCrossTreeNodeDropClearStatus(){Ve()}};Object.assign(J,Ae,o);let Ge=(e,t)=>{var{drag:r,transform:a}=R,l=$.nodeMaps,{showIcon:o,isPeerDrag:d,isCrossDrag:n,visibleMethod:i}=X.value;let s={node:e,$tree:J};if(r&&o&&a&&(!i||i(s))){e=l[t];if(e&&(d||n||!e.level)){var{icon:r,trigger:o,disabledMethod:a}=X.value;let t=a&&a(s);i={};return"node"!==o&&(i.onMousedown=e=>{t||qe(e,s)},i.onMouseup=je),(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)(J)},ne=(e,t,r)=>{if(e){if("first"===e)return!r;if("last"===e)return!t}return!0},Je=(t,e,r,a,l,o)=>{var d=R.showRadio,{showIcon:n,visibleMode:i,visibleMethod:s}=Y.value,s=s?s({$tree:J,node:t}):ne(i,r,a);return d&&n&&s?(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":o,"is--disabled":l}],onClick:e=>{l||we(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",o?getIcon().RADIO_CHECKED:l?getIcon().RADIO_DISABLED_UNCHECKED:getIcon().RADIO_UNCHECKED]})]):(0,_ui.renderEmptyElement)(J)},Qe=(t,e,r,a,l,o,d)=>{var n=R.showCheckbox,{showIcon:i,visibleMode:s,visibleMethod:u}=W.value,u=u?u({$tree:J,node:t}):ne(s,r,a);return n&&i&&u?(0,_vue.h)("div",{class:["vxe-tree--checkbox-option",{"is--checked":o,"is--indeterminate":d,"is--disabled":l}],onClick:e=>{l||Ie(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",d?getIcon().CHECKBOX_INDETERMINATE:o?getIcon().CHECKBOX_CHECKED:l?getIcon().CHECKBOX_DISABLED_UNCHECKED:getIcon().CHECKBOX_UNCHECKED]})]):(0,_ui.renderEmptyElement)(J)},Ze=(t,e)=>{var{lazy:r,drag:a,transform:l,showRadio:o,showCheckbox:d,showLine:n,visibleMethod:i,iconOpen:s,iconClose:u,iconLoaded:c,showIcon:v}=R,{currentNode:g,selectRadioKey:h,updateExpandedFlag:p}=P,{afterTreeList:f,nodeMaps:x,treeExpandedMaps:m,treeExpandLazyLoadedMaps:_}=$,C=G.value.mode,N=Y.value,T=W.value,y=B.value,b=ie.value,F=K.value,y=_xeUtils.default.get(t,y),y=y&&0<y.length,E=H.icon,M=H.title,D=H.extra,p=p&&m[e],m=x[e]||{},x=(0,_utils.getText)(_xeUtils.default.get(t,b)),b=m.level;let k=!1,I=!1,S=(o&&(k=e===String(h),I=N.checkMethod?!N.checkMethod({$tree:J,node:t}):!ne(N.checkMode,y,b)),!1),w=!1,L=!1,U=(d&&(S=se(e),w=ue(e),L=T.checkMethod?!T.checkMethod({$tree:J,node:t}):!ne(T.checkMode,y,b)),!1),O=!1,A=!1;r&&(O=!!_[e],U=t[F],A=!!m.treeLoaded);o=m.items[m.treeIndex-1],h={node:t,isExpand:p,$tree:J},N={onMousedown(e){_e(e,t)},onMouseup:je,onClick(e){Ce(e,t)},onDblclick(e){Ne(e,t)},onContextmenu(e){Ee(e,t)}};return"tooltip"===C&&(N.onMouseenter=e=>{Te(e,t)},N.onMouseleave=ye),a&&l&&(N.onDragstart=Ye,N.onDragend=We,N.onDragover=Xe),(0,_vue.h)("div",Object.assign({key:e,class:["vxe-tree--node-wrapper","node--level-"+b],nodeid:e,title:"title"===C?x:""},N),[(0,_vue.h)("div",{class:["vxe-tree--node-item",{"is--current":g&&e===Q(g),"is-radio--disabled":I,"is-radio--checked":k,"is-checkbox--disabled":L,"is-checkbox--checked":S,"is-checkbox--indeterminate":w}]},[n?(0,_vue.h)("div",{class:"vxe-tree--node-line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--node-line",style:{height:`${Q(f[0])===e?1:(0,_util.calcTreeLine)(J,t,o)}px`}})]):(0,_ui.renderEmptyElement)(J),(0,_vue.h)("div",{class:"vxe-tree--node-item-switcher"},v&&(!r||A?y:U)&&(!i||i(h))?[(0,_vue.h)("div",{class:"vxe-tree--node-item-icon",onClick(e){ke(e,t)}},E?(0,_vn.getSlotVNs)(E(h)):[(0,_vue.h)("i",{class:O?c||getIcon().TREE_NODE_LOADED:p?s||getIcon().TREE_NODE_OPEN:u||getIcon().TREE_NODE_CLOSE})])]:[]),Je(t,e,y,b,I,k),Qe(t,e,y,b,L,S,w),Ge(t,e),(0,_vue.h)("div",{class:"vxe-tree--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-tree--node-item-wrapper"},[(0,_vue.h)("span",{class:"vxe-tree--node-item-title"},M?(0,_vn.getSlotVNs)(M(h)):x)]),D?(0,_vue.h)("div",{class:"vxe-tree--node-item-extra"},(0,_vn.getSlotVNs)(D(h))):(0,_ui.renderEmptyElement)(J)])])])},et=e=>{var{loading:t,transform:r,emptyText:a}=R;let l=$.treeExpandedMaps,o=B.value;var d=H.empty;if(!t&&!e.length)return[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder"},d?d({}):[(0,_vue.h)("div",{class:"vxe-tree--empty-placeholder-content"},(0,_utils.getText)(a||getI18n("vxe.tree.searchEmpty")))])];let n=[];return e.forEach(r?e=>{var t=Q(e);n.push(Ze(e,t))}:e=>{var t=Q(e),e=(n.push(Ze(e,t)),_xeUtils.default.get(e,o));e&&e.length&&l[t]&&n.push(...et(e))}),n};let e=(0,_vue.ref)(0),tt=((0,_vue.watch)(()=>R.data?R.data.length:0,()=>{e.value++}),(0,_vue.watch)(()=>R.data,()=>{e.value++}),(0,_vue.watch)(()=>R.rootParentValue,()=>{e.value++}),(0,_vue.watch)(()=>R.rootValues?R.rootValues.length:0,()=>{e.value++}),(0,_vue.watch)(()=>R.rootValues,()=>{e.value++}),(0,_vue.watch)(e,()=>{t(R.data||[])}),(0,_vue.watch)(()=>R.checkNodeKey,e=>{P.selectRadioKey=(0,_utils.enModelValue)(e)}),(0,_vue.ref)(0)),rt=((0,_vue.watch)(()=>R.checkNodeKeys?R.checkNodeKeys.length:0,()=>{tt.value++}),(0,_vue.watch)(()=>R.checkNodeKeys,()=>{tt.value++}),(0,_vue.watch)(tt,()=>{var e;e=R.checkNodeKeys||[],$.selectCheckboxMaps={},w(e,!0)}),(0,_vue.watch)(()=>R.filterValue,()=>{ce(new Event("filter"))}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>R.height,()=>{rt.value++}),(0,_vue.watch)(()=>R.minHeight,()=>{rt.value++}),(0,_vue.watch)(()=>R.maxHeight,()=>{rt.value++}),(0,_vue.watch)(rt,()=>{le()}),(0,_vue.onMounted)(()=>{var{transform:e,drag:t,menuConfig:r,showOverflow:a,lazy:l,loadMethod:o}=R,d=X.value,a=(a||errLog("vxe.error.errProp",["show-overflow=false","show-overflow=true"]),t&&!e&&errLog("vxe.error.notSupportProp",["drag","transform=false","transform=true"]),d.isCrossTreeDrag&&!d.isCrossDrag&&errLog("vxe.error.reqSupportProp",["drag-config.isCrossTreeDrag","drag-config.isCrossDrag"]),l&&!o&&warnLog("vxe.error.reqSupportProp",["lazy","load-method"]),_ui.VxeUI.getComponent("VxeContextMenu"));r&&!a&&errLog("vxe.error.reqComp",["vxe-context-menu"]),R.autoResize&&(t=V.value,e=U(),d=_ui.globalResize.create(()=>{R.autoResize&&le()}),t&&d.observe(t),e&&d.observe(e),$.resizeObserver=d),le(),_ui.globalEvents.on(J,"resize",Le)}),(0,_vue.onBeforeUnmount)(()=>{var e=$.resizeObserver;e&&e.disconnect(),_ui.globalEvents.off(J,"resize"),_xeUtils.default.assign(P,createReactData()),_xeUtils.default.assign($,createInternalData())}),P.selectRadioKey=(0,_utils.enModelValue)(R.checkNodeKey),t(R.data||[]),J.renderVN=()=>{var{loading:e,trigger:t,showLine:r}=R;let{bodyHeight:a,topSpaceHeight:l,treeList:o,tooltipStore:d}=P;var n=T.value,i=Y.value,s=W.value,u=I.value,c=k.value,v=S.value,g=X.value,h=G.value;let p=H.loading;var f=H.header,x=H.footer;let m=H.tooltip;var _={};return g.isCrossTreeDrag&&!o.length&&(_.onDragover=J.handleCrossTreeNodeDragoverEmptyEvent),(0,_vue.h)("div",Object.assign({ref:V,class:["vxe-tree",{["size--"+n]:n,"show--line":r,"checkbox--highlight":s.highlight,"radio--highlight":i.highlight,"node--hover":c,"node--trigger":"node"===t,"is--loading":e}]},_),[f?(0,_vue.h)("div",{ref:y,class:"vxe-tree--header-wrapper"},f({$tree:J})):(0,_ui.renderEmptyElement)(J),(0,_vue.h)("div",{ref:C,class:"vxe-tree--node-list-wrapper",style:v,onScroll:xe},[(0,_vue.h)("div",{class:"vxe-tree--y-space",style:{height:a?a+"px":""}}),(0,_vue.h)("div",{ref:E,class:"vxe-tree--node-list-body",style:{transform:`translateY(${l}px)`}},et(o))]),x?(0,_vue.h)("div",{ref:b,class:"vxe-tree--footer-wrapper"},x({$tree:J})):(0,_ui.renderEmptyElement)(J),(()=>{var e=R.drag,{dragNode:t,dragTipText:r}=P,a=X.value;return e?(0,_vue.h)("div",{class:"vxe-tree--drag-wrapper"},[(0,_vue.h)("div",{ref:M,class:["vxe-tree--drag-node-line",{"is--guides":a.showGuidesStatus}]}),t&&a.showDragTip?(0,_vue.h)("div",{ref:D,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)(J)]):(0,_ui.renderEmptyElement)(J)})(),"tooltip"===h.mode?(0,_vue.h)(_tooltip.default,{ref:N,theme:h.theme,enterable:h.enterable,enterDelay:h.enterDelay,leaveDelay:h.leaveDelay,useHtml:h.useHtml,width:h.width,height:h.height,minWidth:h.minWidth,minHeight:h.minHeight,maxWidth:h.maxWidth,maxHeight:h.maxHeight,placement:h.placement,defaultPlacement:h.defaultPlacement,popupClassName:h.popupClassName},m?{content:()=>{var e=d.node;return m({node:e,$tree:J})}}:void 0):(0,_ui.renderEmptyElement)(J),(0,_vue.h)(_loading.default,{class:"vxe-tree--loading",modelValue:e,icon:u.icon,text:u.text},p?{default:()=>p({$tree:J})}:void 0)])},(0,_vue.provide)("$xeTree",J),J},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.19.6";
29
+ const version = exports.version = "4.19.8";
30
30
  _core.VxeUI.uiVersion = version;
31
31
  _core.VxeUI.dynamicApp = _dynamics.dynamicApp;
32
32
  function config(options) {