vxe-table 4.13.46 → 4.13.48

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 (171) hide show
  1. package/es/grid/src/grid.js +1 -1
  2. package/es/index.css +1 -1
  3. package/es/index.min.css +1 -1
  4. package/es/locale/lang/ar-EG.js +12 -2
  5. package/es/locale/lang/de-DE.js +12 -2
  6. package/es/locale/lang/en-US.js +12 -2
  7. package/es/locale/lang/es-ES.js +12 -2
  8. package/es/locale/lang/fr-FR.js +12 -2
  9. package/es/locale/lang/hu-HU.js +12 -2
  10. package/es/locale/lang/hy-AM.js +12 -2
  11. package/es/locale/lang/id-ID.js +12 -2
  12. package/es/locale/lang/it-IT.js +12 -2
  13. package/es/locale/lang/ja-JP.js +12 -2
  14. package/es/locale/lang/ko-KR.js +12 -2
  15. package/es/locale/lang/ms-MY.js +12 -2
  16. package/es/locale/lang/nb-NO.js +12 -2
  17. package/es/locale/lang/pt-BR.js +12 -2
  18. package/es/locale/lang/ru-RU.js +12 -2
  19. package/es/locale/lang/th-TH.js +12 -2
  20. package/es/locale/lang/ug-CN.js +12 -2
  21. package/es/locale/lang/uk-UA.js +12 -2
  22. package/es/locale/lang/uz-UZ.js +12 -2
  23. package/es/locale/lang/vi-VN.js +12 -2
  24. package/es/locale/lang/zh-CHT.js +12 -2
  25. package/es/locale/lang/zh-CN.js +12 -2
  26. package/es/style.css +1 -1
  27. package/es/style.min.css +1 -1
  28. package/es/table/module/custom/hook.js +20 -5
  29. package/es/table/module/custom/panel.js +34 -15
  30. package/es/table/src/body.js +8 -5
  31. package/es/table/src/cell.js +19 -4
  32. package/es/table/src/columnInfo.js +1 -0
  33. package/es/table/src/table.js +45 -7
  34. package/es/table/style.css +5 -1
  35. package/es/table/style.min.css +1 -1
  36. package/es/ui/index.js +8 -6
  37. package/es/ui/src/log.js +1 -1
  38. package/es/vxe-table/style.css +5 -1
  39. package/es/vxe-table/style.min.css +1 -1
  40. package/lib/grid/src/grid.js +1 -1
  41. package/lib/grid/src/grid.min.js +1 -1
  42. package/lib/index.css +1 -1
  43. package/lib/index.min.css +1 -1
  44. package/lib/index.umd.js +111 -53
  45. package/lib/index.umd.min.js +1 -1
  46. package/lib/locale/lang/ar-EG.js +12 -2
  47. package/lib/locale/lang/ar-EG.min.js +1 -1
  48. package/lib/locale/lang/ar-EG.umd.js +12 -2
  49. package/lib/locale/lang/de-DE.js +12 -2
  50. package/lib/locale/lang/de-DE.min.js +1 -1
  51. package/lib/locale/lang/de-DE.umd.js +12 -2
  52. package/lib/locale/lang/en-US.js +12 -2
  53. package/lib/locale/lang/en-US.min.js +1 -1
  54. package/lib/locale/lang/en-US.umd.js +12 -2
  55. package/lib/locale/lang/es-ES.js +12 -2
  56. package/lib/locale/lang/es-ES.min.js +1 -1
  57. package/lib/locale/lang/es-ES.umd.js +12 -2
  58. package/lib/locale/lang/fr-FR.js +12 -2
  59. package/lib/locale/lang/fr-FR.min.js +1 -1
  60. package/lib/locale/lang/fr-FR.umd.js +12 -2
  61. package/lib/locale/lang/hu-HU.js +12 -2
  62. package/lib/locale/lang/hu-HU.min.js +1 -1
  63. package/lib/locale/lang/hu-HU.umd.js +12 -2
  64. package/lib/locale/lang/hy-AM.js +12 -2
  65. package/lib/locale/lang/hy-AM.min.js +1 -1
  66. package/lib/locale/lang/hy-AM.umd.js +12 -2
  67. package/lib/locale/lang/id-ID.js +12 -2
  68. package/lib/locale/lang/id-ID.min.js +1 -1
  69. package/lib/locale/lang/id-ID.umd.js +12 -2
  70. package/lib/locale/lang/it-IT.js +12 -2
  71. package/lib/locale/lang/it-IT.min.js +1 -1
  72. package/lib/locale/lang/it-IT.umd.js +12 -2
  73. package/lib/locale/lang/ja-JP.js +12 -2
  74. package/lib/locale/lang/ja-JP.min.js +1 -1
  75. package/lib/locale/lang/ja-JP.umd.js +12 -2
  76. package/lib/locale/lang/ko-KR.js +12 -2
  77. package/lib/locale/lang/ko-KR.min.js +1 -1
  78. package/lib/locale/lang/ko-KR.umd.js +12 -2
  79. package/lib/locale/lang/ms-MY.js +12 -2
  80. package/lib/locale/lang/ms-MY.min.js +1 -1
  81. package/lib/locale/lang/ms-MY.umd.js +12 -2
  82. package/lib/locale/lang/nb-NO.js +12 -2
  83. package/lib/locale/lang/nb-NO.min.js +1 -1
  84. package/lib/locale/lang/nb-NO.umd.js +12 -2
  85. package/lib/locale/lang/pt-BR.js +12 -2
  86. package/lib/locale/lang/pt-BR.min.js +1 -1
  87. package/lib/locale/lang/pt-BR.umd.js +12 -2
  88. package/lib/locale/lang/ru-RU.js +12 -2
  89. package/lib/locale/lang/ru-RU.min.js +1 -1
  90. package/lib/locale/lang/ru-RU.umd.js +12 -2
  91. package/lib/locale/lang/th-TH.js +12 -2
  92. package/lib/locale/lang/th-TH.min.js +1 -1
  93. package/lib/locale/lang/th-TH.umd.js +12 -2
  94. package/lib/locale/lang/ug-CN.js +12 -2
  95. package/lib/locale/lang/ug-CN.min.js +1 -1
  96. package/lib/locale/lang/ug-CN.umd.js +12 -2
  97. package/lib/locale/lang/uk-UA.js +12 -2
  98. package/lib/locale/lang/uk-UA.min.js +1 -1
  99. package/lib/locale/lang/uk-UA.umd.js +12 -2
  100. package/lib/locale/lang/uz-UZ.js +12 -2
  101. package/lib/locale/lang/uz-UZ.min.js +1 -1
  102. package/lib/locale/lang/uz-UZ.umd.js +12 -2
  103. package/lib/locale/lang/vi-VN.js +12 -2
  104. package/lib/locale/lang/vi-VN.min.js +1 -1
  105. package/lib/locale/lang/vi-VN.umd.js +12 -2
  106. package/lib/locale/lang/zh-CHT.js +12 -2
  107. package/lib/locale/lang/zh-CHT.min.js +1 -1
  108. package/lib/locale/lang/zh-CHT.umd.js +12 -2
  109. package/lib/locale/lang/zh-CN.js +12 -2
  110. package/lib/locale/lang/zh-CN.min.js +1 -1
  111. package/lib/locale/lang/zh-CN.umd.js +12 -2
  112. package/lib/style.css +1 -1
  113. package/lib/style.min.css +1 -1
  114. package/lib/table/module/custom/hook.js +20 -5
  115. package/lib/table/module/custom/hook.min.js +1 -1
  116. package/lib/table/module/custom/panel.js +32 -15
  117. package/lib/table/module/custom/panel.min.js +1 -1
  118. package/lib/table/src/body.js +8 -5
  119. package/lib/table/src/body.min.js +1 -1
  120. package/lib/table/src/cell.js +17 -6
  121. package/lib/table/src/cell.min.js +1 -1
  122. package/lib/table/src/columnInfo.js +1 -0
  123. package/lib/table/src/columnInfo.min.js +1 -1
  124. package/lib/table/src/table.js +11 -11
  125. package/lib/table/src/table.min.js +1 -1
  126. package/lib/table/style/style.css +5 -1
  127. package/lib/table/style/style.min.css +1 -1
  128. package/lib/ui/index.js +8 -6
  129. package/lib/ui/index.min.js +1 -1
  130. package/lib/ui/src/log.js +1 -1
  131. package/lib/ui/src/log.min.js +1 -1
  132. package/lib/vxe-table/style/style.css +5 -1
  133. package/lib/vxe-table/style/style.min.css +1 -1
  134. package/package.json +1 -1
  135. package/packages/grid/src/grid.ts +1 -1
  136. package/packages/locale/lang/ar-EG.ts +12 -2
  137. package/packages/locale/lang/de-DE.ts +12 -2
  138. package/packages/locale/lang/en-US.ts +12 -2
  139. package/packages/locale/lang/es-ES.ts +12 -2
  140. package/packages/locale/lang/fr-FR.ts +12 -2
  141. package/packages/locale/lang/hu-HU.ts +12 -2
  142. package/packages/locale/lang/hy-AM.ts +12 -2
  143. package/packages/locale/lang/id-ID.ts +12 -2
  144. package/packages/locale/lang/it-IT.ts +12 -2
  145. package/packages/locale/lang/ja-JP.ts +12 -2
  146. package/packages/locale/lang/ko-KR.ts +12 -2
  147. package/packages/locale/lang/ms-MY.ts +12 -2
  148. package/packages/locale/lang/nb-NO.ts +12 -2
  149. package/packages/locale/lang/pt-BR.ts +12 -2
  150. package/packages/locale/lang/ru-RU.ts +12 -2
  151. package/packages/locale/lang/th-TH.ts +12 -2
  152. package/packages/locale/lang/ug-CN.ts +12 -2
  153. package/packages/locale/lang/uk-UA.ts +12 -2
  154. package/packages/locale/lang/uz-UZ.ts +12 -2
  155. package/packages/locale/lang/vi-VN.ts +12 -2
  156. package/packages/locale/lang/zh-CHT.ts +12 -2
  157. package/packages/locale/lang/zh-CN.ts +12 -2
  158. package/packages/table/module/custom/hook.ts +18 -5
  159. package/packages/table/module/custom/panel.ts +33 -15
  160. package/packages/table/src/body.ts +8 -5
  161. package/packages/table/src/cell.ts +23 -11
  162. package/packages/table/src/columnInfo.ts +1 -0
  163. package/packages/table/src/table.ts +46 -7
  164. package/packages/ui/index.ts +7 -5
  165. package/styles/components/table-module/custom.scss +5 -1
  166. /package/es/{iconfont.1750660623154.ttf → iconfont.1750813693750.ttf} +0 -0
  167. /package/es/{iconfont.1750660623154.woff → iconfont.1750813693750.woff} +0 -0
  168. /package/es/{iconfont.1750660623154.woff2 → iconfont.1750813693750.woff2} +0 -0
  169. /package/lib/{iconfont.1750660623154.ttf → iconfont.1750813693750.ttf} +0 -0
  170. /package/lib/{iconfont.1750660623154.woff → iconfont.1750813693750.woff} +0 -0
  171. /package/lib/{iconfont.1750660623154.woff2 → iconfont.1750813693750.woff2} +0 -0
@@ -102,7 +102,9 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
102
102
  allowVisible,
103
103
  allowSort,
104
104
  allowFixed,
105
- allowResizable
105
+ allowResizable,
106
+ allowGroup,
107
+ allowValues
106
108
  } = customOpts;
107
109
  _xeUtils.default.eachTree(customColumnList, (column, index, items, path, parentColumn) => {
108
110
  if (parentColumn) {
@@ -128,6 +130,9 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
128
130
  if (allowVisible) {
129
131
  column.visible = column.renderVisible;
130
132
  }
133
+ if (allowGroup && allowValues) {
134
+ column.aggFunc = column.renderAggFn;
135
+ }
131
136
  });
132
137
  reactData.isCustomStatus = true;
133
138
  reactData.isDragColMove = true;
@@ -135,14 +140,17 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
135
140
  reactData.isDragColMove = false;
136
141
  }, 1000);
137
142
  return $xeTable.saveCustomStore('confirm').then(() => {
138
- if ($xeTable.handlePivotTableAggregateData) {
143
+ if (allowGroup && allowValues && $xeTable.handlePivotTableAggregateData) {
139
144
  if (rowGroupList.length !== aggHandleFields.length || rowGroupList.some((conf, i) => conf.field !== aggHandleFields[i])) {
140
- // 改动聚合分组
145
+ // 更新数据分组
141
146
  if (aggHandleFields.length) {
142
147
  $xeTable.setRowGroups(aggHandleFields);
143
148
  } else {
144
149
  $xeTable.clearRowGroups();
145
150
  }
151
+ } else {
152
+ // 更新聚合函数
153
+ $xeTable.handleUpdateAggData();
146
154
  }
147
155
  }
148
156
  });
@@ -265,7 +273,8 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
265
273
  visible: true,
266
274
  resizable: options === true,
267
275
  fixed: options === true,
268
- sort: options === true
276
+ sort: options === true,
277
+ aggFunc: options === true
269
278
  }, options);
270
279
  _xeUtils.default.eachTree(collectColumn, column => {
271
280
  if (opts.resizable) {
@@ -283,12 +292,16 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
283
292
  })) {
284
293
  column.visible = column.defaultVisible;
285
294
  }
295
+ if (opts.aggFunc) {
296
+ column.aggFunc = column.defaultAggFunc;
297
+ column.renderAggFn = column.defaultAggFunc;
298
+ }
286
299
  column.renderResizeWidth = column.renderWidth;
287
300
  });
288
301
  reactData.isCustomStatus = false;
289
302
  $xeTable.saveCustomStore('reset');
290
303
  return $xeTable.handleCustom().then(() => {
291
- if ($xeTable.handlePivotTableAggregateData) {
304
+ if (opts.aggFunc && $xeTable.handlePivotTableAggregateData) {
292
305
  const rowGroupFields = computeRowGroupFields.value;
293
306
  if (rowGroupFields ? rowGroupFields.length : rowGroupList.length) {
294
307
  if (rowGroupFields && rowGroupFields.length) {
@@ -296,6 +309,8 @@ _ui.VxeUI.hooks.add('tableCustomModule', {
296
309
  } else {
297
310
  $xeTable.clearRowGroups();
298
311
  }
312
+ } else {
313
+ $xeTable.handleUpdateAggData();
299
314
  }
300
315
  }
301
316
  });
@@ -1 +1 @@
1
- var _vue=require("vue"),_ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let tableCustomMethodKeys=["openCustom","closeCustom","toggleCustom","saveCustom","cancelCustom","resetCustom","toggleCustomAllCheckbox","setCustomAllCheckbox"];_ui.VxeUI.hooks.add("tableCustomModule",{setupTable(n){let{reactData:m,internalData:r}=n,{computeCustomOpts:c,computeRowGroupFields:o}=n.getComputeMaps(),s=n.getRefMaps().refElem,l=n.xeGrid,i=()=>{var e=m.customStore,t=s.value;let l=0;t&&(l=t.clientHeight-28),e.maxHeight=Math.max(88,l)},u=()=>{var{initStore:e,customStore:t}=m;return t.visible=!0,e.custom=!0,a(),v(),i(),(0,_vue.nextTick)().then(()=>i())},a=()=>{var e=m.customStore,t=r.collectColumn;if(e.visible){let l={},s={},i={};_xeUtils.default.eachTree(t,e=>{var t=e.getKey();e.renderFixed=e.fixed,e.renderVisible=e.visible,e.renderResizeWidth=e.renderWidth,l[t]=e.renderSortNumber,s[t]=e.fixed,i[t]=e.visible}),e.oldSortMaps=l,e.oldFixedMaps=s,e.oldVisibleMaps=i,m.customColumnList=t.slice(0)}},d=()=>{var e=m.customStore,t=c.value;return e.visible&&(e.visible=!1,t.immediate||n.handleCustom()),(0,_vue.nextTick)()};let t=e=>{var t=m.customStore,l=m.customColumnList,s=c.value;let{checkMethod:i,visibleMethod:r}=s,o=!!e;return s.immediate?(_xeUtils.default.eachTree(l,e=>{r&&!r({$table:n,column:e})||i&&!i({$table:n,column:e})||(e.visible=o,e.renderVisible=o,e.halfVisible=!1)}),t.isAll=o,m.isCustomStatus=!0,n.handleCustom(),n.saveCustomStore("update:visible")):(_xeUtils.default.eachTree(l,e=>{r&&!r({$table:n,column:e})||i&&!i({$table:n,column:e})||(e.renderVisible=o,e.halfVisible=!1)}),t.isAll=o),n.checkCustomStatus(),(0,_vue.nextTick)()};var e={openCustom:u,closeCustom:d,toggleCustom:()=>{var e=m.customStore;return(e.visible?d:u)()},saveCustom:()=>{let{customColumnList:e,aggHandleFields:l,rowGroupList:t}=m;let{allowVisible:r,allowSort:o,allowFixed:u,allowResizable:a}=c.value;return _xeUtils.default.eachTree(e,(e,t,l,s,i)=>{i?e.fixed=i.fixed:(o&&(e.renderSortNumber=t+1),u&&(e.fixed=e.renderFixed)),a&&e.renderVisible&&(!e.children||e.children.length)&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth),r&&(e.visible=e.renderVisible)}),m.isCustomStatus=!0,m.isDragColMove=!0,setTimeout(()=>{m.isDragColMove=!1},1e3),n.saveCustomStore("confirm").then(()=>{!n.handlePivotTableAggregateData||t.length===l.length&&!t.some((e,t)=>e.field!==l[t])||(l.length?n.setRowGroups(l):n.clearRowGroups())})},cancelCustom:()=>{var{customColumnList:e,customStore:t}=m;let{oldSortMaps:i,oldFixedMaps:r,oldVisibleMaps:o}=t,{allowVisible:u,allowSort:a,allowFixed:n,allowResizable:d}=c.value;return _xeUtils.default.eachTree(e,e=>{var t=e.getKey(),l=!!o[t],s=r[t]||"";u&&(e.renderVisible=l,e.visible=l),n&&(e.renderFixed=s,e.fixed=s),a&&(e.renderSortNumber=i[t]||0),d&&(e.renderResizeWidth=e.renderWidth)},{children:"children"}),(0,_vue.nextTick)()},resetCustom(e){let t=m.rowGroupList;var l=r.collectColumn;let s=c.value.checkMethod,i=Object.assign({visible:!0,resizable:!0===e,fixed:!0===e,sort:!0===e},e);return _xeUtils.default.eachTree(l,e=>{i.resizable&&(e.resizeWidth=0),i.fixed&&(e.fixed=e.defaultFixed),i.sort&&(e.renderSortNumber=e.sortNumber),s&&!s({$table:n,column:e})||(e.visible=e.defaultVisible),e.renderResizeWidth=e.renderWidth}),m.isCustomStatus=!1,n.saveCustomStore("reset"),n.handleCustom().then(()=>{var e;n.handlePivotTableAggregateData&&((e=o.value)||t).length&&(e&&e.length?n.setRowGroups(e):n.clearRowGroups())})},toggleCustomAllCheckbox(){var e=m.customStore,e=!e.isAll;return t(e)},setCustomAllCheckbox:t};let v=()=>{var e=m.customStore,t=r.collectColumn;let l=c.value.checkMethod;e.isAll=t.every(e=>!!l&&!l({$table:n,column:e})||e.renderVisible),e.isIndeterminate=!e.isAll&&t.some(e=>(!l||l({$table:n,column:e}))&&(e.renderVisible||e.halfVisible))},b=(e,t)=>{(l||n).dispatchEvent("custom",{type:e},t)};var h={checkCustomStatus:v,emitCustomEvent:b,triggerCustomEvent(e){var t=n.reactData.customStore;t.visible?(d(),b("close",e)):(t.btnEl=e.target,u(),b("open",e))},customOpenEvent(e){var t=n.reactData.customStore;t.visible||(t.activeBtn=!0,t.btnEl=e.target,n.openCustom(),n.emitCustomEvent("open",e))},customCloseEvent(e){var t=n.reactData.customStore;t.visible&&(t.activeBtn=!1,n.closeCustom(),n.emitCustomEvent("close",e))},handleUpdateCustomColumn:a};return Object.assign(Object.assign({},e),h)},setupGrid(e){return e.extendTableMethods(tableCustomMethodKeys)}});
1
+ var _vue=require("vue"),_ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let tableCustomMethodKeys=["openCustom","closeCustom","toggleCustom","saveCustom","cancelCustom","resetCustom","toggleCustomAllCheckbox","setCustomAllCheckbox"];_ui.VxeUI.hooks.add("tableCustomModule",{setupTable(m){let{reactData:c,internalData:i}=m,{computeCustomOpts:v,computeRowGroupFields:o}=m.getComputeMaps(),s=m.getRefMaps().refElem,l=m.xeGrid,r=()=>{var e=c.customStore,t=s.value;let l=0;t&&(l=t.clientHeight-28),e.maxHeight=Math.max(88,l)},a=()=>{var{initStore:e,customStore:t}=c;return t.visible=!0,e.custom=!0,u(),d(),r(),(0,_vue.nextTick)().then(()=>r())},u=()=>{var e=c.customStore,t=i.collectColumn;if(e.visible){let l={},s={},r={};_xeUtils.default.eachTree(t,e=>{var t=e.getKey();e.renderFixed=e.fixed,e.renderVisible=e.visible,e.renderResizeWidth=e.renderWidth,l[t]=e.renderSortNumber,s[t]=e.fixed,r[t]=e.visible}),e.oldSortMaps=l,e.oldFixedMaps=s,e.oldVisibleMaps=r,c.customColumnList=t.slice(0)}},n=()=>{var e=c.customStore,t=v.value;return e.visible&&(e.visible=!1,t.immediate||m.handleCustom()),(0,_vue.nextTick)()};let t=e=>{var t=c.customStore,l=c.customColumnList,s=v.value;let{checkMethod:r,visibleMethod:i}=s,o=!!e;return s.immediate?(_xeUtils.default.eachTree(l,e=>{i&&!i({$table:m,column:e})||r&&!r({$table:m,column:e})||(e.visible=o,e.renderVisible=o,e.halfVisible=!1)}),t.isAll=o,c.isCustomStatus=!0,m.handleCustom(),m.saveCustomStore("update:visible")):(_xeUtils.default.eachTree(l,e=>{i&&!i({$table:m,column:e})||r&&!r({$table:m,column:e})||(e.renderVisible=o,e.halfVisible=!1)}),t.isAll=o),m.checkCustomStatus(),(0,_vue.nextTick)()};var e={openCustom:a,closeCustom:n,toggleCustom:()=>{var e=c.customStore;return(e.visible?n:a)()},saveCustom:()=>{let{customColumnList:e,aggHandleFields:l,rowGroupList:t}=c;let{allowVisible:i,allowSort:o,allowFixed:a,allowResizable:u,allowGroup:n,allowValues:d}=v.value;return _xeUtils.default.eachTree(e,(e,t,l,s,r)=>{r?e.fixed=r.fixed:(o&&(e.renderSortNumber=t+1),a&&(e.fixed=e.renderFixed)),u&&e.renderVisible&&(!e.children||e.children.length)&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth),i&&(e.visible=e.renderVisible),n&&d&&(e.aggFunc=e.renderAggFn)}),c.isCustomStatus=!0,c.isDragColMove=!0,setTimeout(()=>{c.isDragColMove=!1},1e3),m.saveCustomStore("confirm").then(()=>{n&&d&&m.handlePivotTableAggregateData&&(t.length!==l.length||t.some((e,t)=>e.field!==l[t])?l.length?m.setRowGroups(l):m.clearRowGroups():m.handleUpdateAggData())})},cancelCustom:()=>{var{customColumnList:e,customStore:t}=c;let{oldSortMaps:r,oldFixedMaps:i,oldVisibleMaps:o}=t,{allowVisible:a,allowSort:u,allowFixed:n,allowResizable:d}=v.value;return _xeUtils.default.eachTree(e,e=>{var t=e.getKey(),l=!!o[t],s=i[t]||"";a&&(e.renderVisible=l,e.visible=l),n&&(e.renderFixed=s,e.fixed=s),u&&(e.renderSortNumber=r[t]||0),d&&(e.renderResizeWidth=e.renderWidth)},{children:"children"}),(0,_vue.nextTick)()},resetCustom(e){let t=c.rowGroupList;var l=i.collectColumn;let s=v.value.checkMethod,r=Object.assign({visible:!0,resizable:!0===e,fixed:!0===e,sort:!0===e,aggFunc:!0===e},e);return _xeUtils.default.eachTree(l,e=>{r.resizable&&(e.resizeWidth=0),r.fixed&&(e.fixed=e.defaultFixed),r.sort&&(e.renderSortNumber=e.sortNumber),s&&!s({$table:m,column:e})||(e.visible=e.defaultVisible),r.aggFunc&&(e.aggFunc=e.defaultAggFunc,e.renderAggFn=e.defaultAggFunc),e.renderResizeWidth=e.renderWidth}),c.isCustomStatus=!1,m.saveCustomStore("reset"),m.handleCustom().then(()=>{var e;r.aggFunc&&m.handlePivotTableAggregateData&&(((e=o.value)||t).length?e&&e.length?m.setRowGroups(e):m.clearRowGroups():m.handleUpdateAggData())})},toggleCustomAllCheckbox(){var e=c.customStore,e=!e.isAll;return t(e)},setCustomAllCheckbox:t};let d=()=>{var e=c.customStore,t=i.collectColumn;let l=v.value.checkMethod;e.isAll=t.every(e=>!!l&&!l({$table:m,column:e})||e.renderVisible),e.isIndeterminate=!e.isAll&&t.some(e=>(!l||l({$table:m,column:e}))&&(e.renderVisible||e.halfVisible))},b=(e,t)=>{(l||m).dispatchEvent("custom",{type:e},t)};var h={checkCustomStatus:d,emitCustomEvent:b,triggerCustomEvent(e){var t=m.reactData.customStore;t.visible?(n(),b("close",e)):(t.btnEl=e.target,a(),b("open",e))},customOpenEvent(e){var t=m.reactData.customStore;t.visible||(t.activeBtn=!0,t.btnEl=e.target,m.openCustom(),m.emitCustomEvent("open",e))},customCloseEvent(e){var t=m.reactData.customStore;t.visible&&(t.activeBtn=!1,m.closeCustom(),m.emitCustomEvent("close",e))},handleUpdateCustomColumn:u};return Object.assign(Object.assign({},e),h)},setupGrid(e){return e.extendTableMethods(tableCustomMethodKeys)}});
@@ -52,12 +52,14 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
52
52
  const refDragTipElem = (0, _vue.ref)();
53
53
  const customPanelReactData = (0, _vue.reactive)({
54
54
  dragCol: null,
55
- prevDragGroup: null,
56
- prevDragValues: null,
55
+ dragGroupField: null,
56
+ dragAggFnCol: null,
57
57
  dragTipText: ''
58
58
  });
59
59
  const customPanelInternalData = {
60
60
  // prevDragCol: undefined,
61
+ // prevDragGroupField: undefined,
62
+ // prevDragAggFnColid: undefined,
61
63
  // prevDragToChild: false,
62
64
  // prevDragPos: null
63
65
  };
@@ -252,8 +254,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
252
254
  } = customPanelInternalData;
253
255
  const bodyWrapperRect = bodyWrapperElem.getBoundingClientRect();
254
256
  const customBodyRect = customBodyElem.getBoundingClientRect();
257
+ const dragLineEl = refDragLineElem.value;
255
258
  if (optEl) {
256
- const dragLineEl = refDragLineElem.value;
257
259
  if (dragLineEl) {
258
260
  if (showLine) {
259
261
  const optRect = optEl.getBoundingClientRect();
@@ -268,6 +270,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
268
270
  dragLineEl.style.display = '';
269
271
  }
270
272
  }
273
+ } else {
274
+ if (dragLineEl) {
275
+ dragLineEl.style.display = 'node';
276
+ }
271
277
  }
272
278
  const dragTipEl = refDragTipElem.value;
273
279
  if (dragTipEl) {
@@ -316,6 +322,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
316
322
  const column = $xeTable.getColumnById(colid);
317
323
  trEl.draggable = true;
318
324
  customPanelReactData.dragCol = column;
325
+ customPanelReactData.dragGroupField = null;
326
+ customPanelReactData.dragAggFnCol = null;
319
327
  updateColDropTipContent();
320
328
  (0, _dom.addClass)(trEl, 'active--drag-origin');
321
329
  };
@@ -327,14 +335,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
327
335
  hideDropTip();
328
336
  trEl.draggable = false;
329
337
  customPanelReactData.dragCol = null;
338
+ customPanelReactData.dragGroupField = null;
339
+ customPanelReactData.dragAggFnCol = null;
330
340
  (0, _dom.removeClass)(trEl, 'active--drag-origin');
331
341
  };
332
342
  const sortDragstartEvent = evnt => {
333
343
  if (evnt.dataTransfer) {
334
344
  evnt.dataTransfer.setDragImage((0, _dom.getTpImg)(), 0, 0);
335
345
  }
336
- customPanelInternalData.prevDragGroup = null;
337
- customPanelInternalData.prevDragValues = null;
346
+ customPanelInternalData.prevDragGroupField = null;
347
+ customPanelInternalData.prevDragAggFnColid = null;
338
348
  };
339
349
  const sortDragendEvent = evnt => {
340
350
  const {
@@ -363,13 +373,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
363
373
  } = customPanelReactData;
364
374
  const {
365
375
  prevDragCol,
366
- prevDragGroup,
367
- prevDragValues,
376
+ prevDragGroupField,
377
+ prevDragAggFnColid,
368
378
  prevDragPos,
369
379
  prevDragToChild
370
380
  } = customPanelInternalData;
371
381
  const dragOffsetIndex = prevDragPos === 'bottom' ? 1 : 0;
372
- if (prevDragGroup || prevDragValues) {
382
+ if (prevDragGroupField || prevDragAggFnColid) {
373
383
  if ($xeTable.handlePivotTableAggregatePanelDragendEvent) {
374
384
  $xeTable.handlePivotTableAggregatePanelDragendEvent(evnt);
375
385
  }
@@ -529,8 +539,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
529
539
  }
530
540
  hideDropTip();
531
541
  customPanelReactData.dragCol = null;
532
- customPanelInternalData.prevDragGroup = null;
533
- customPanelInternalData.prevDragValues = null;
542
+ customPanelReactData.dragGroupField = null;
543
+ customPanelReactData.dragAggFnCol = null;
544
+ customPanelInternalData.prevDragGroupField = null;
545
+ customPanelInternalData.prevDragAggFnColid = null;
534
546
  trEl.draggable = false;
535
547
  trEl.removeAttribute('drag-pos');
536
548
  (0, _dom.removeClass)(trEl, 'active--drag-target');
@@ -553,14 +565,14 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
553
565
  const {
554
566
  dragCol
555
567
  } = customPanelReactData;
556
- customPanelInternalData.prevDragGroup = null;
557
- customPanelInternalData.prevDragValues = null;
568
+ customPanelInternalData.prevDragGroupField = null;
569
+ customPanelInternalData.prevDragAggFnColid = null;
558
570
  // 是否移入有效列
559
571
  if (column && (isCrossDrag || column.level === 1)) {
560
572
  evnt.preventDefault();
561
573
  const offsetY = evnt.clientY - optEl.getBoundingClientRect().y;
562
574
  const dragPos = offsetY < optEl.clientHeight / 2 ? 'top' : 'bottom';
563
- if (dragCol && dragCol.id === column.id || !isCrossDrag && column.level > 1 || !immediate && column.level > 1 || column.renderFixed) {
575
+ if (!dragCol || dragCol && dragCol.id === column.id || !isCrossDrag && column.level > 1 || !immediate && column.level > 1 || column.renderFixed) {
564
576
  showDropTip(evnt, optEl, false, dragPos);
565
577
  return;
566
578
  }
@@ -753,7 +765,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
753
765
  class: ['vxe-table-custom-wrapper', `placement--${placement}`, {
754
766
  'is--active': customStore.visible
755
767
  }],
756
- style: maxHeight && !['left', 'right'].includes(placement) ? {
768
+ style: maxHeight && !['left', 'right'].includes(placement || '') ? {
757
769
  maxHeight: `${maxHeight}px`
758
770
  } : {}
759
771
  }, customStore.visible ? [(0, _vue.h)('div', {
@@ -827,6 +839,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
827
839
  customStore
828
840
  } = props;
829
841
  const {
842
+ treeConfig,
843
+ rowGroupConfig,
844
+ aggregateConfig,
830
845
  resizable: allResizable
831
846
  } = tableProps;
832
847
  const {
@@ -1047,7 +1062,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1047
1062
  default: () => trVNs
1048
1063
  })])]), bottomSlot ? (0, _vue.h)('div', {
1049
1064
  class: 'vxe-table-custom-popup--table-bottom'
1050
- }, $xeTable.callSlot(bottomSlot, params)) : renderEmptyElement($xeTable), renderDragTip()])]);
1065
+ }, $xeTable.callSlot(bottomSlot, params)) : renderEmptyElement($xeTable), renderDragTip()]), !treeConfig && (aggregateConfig || rowGroupConfig) && $xeTable.getPivotTableAggregatePopupPanel ? (0, _vue.h)($xeTable.getPivotTableAggregatePopupPanel(), {
1066
+ customStore
1067
+ }) : renderEmptyElement($xeTable)]);
1051
1068
  },
1052
1069
  footer: () => {
1053
1070
  if (footerSlot) {
@@ -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"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"TableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},setup(N,t){var e=_xeUtils.default.uniqueId();let U=_ui.VxeUI.getComponent("VxeModal"),L=_ui.VxeUI.getComponent("VxeDrawer"),M=_ui.VxeUI.getComponent("VxeButton"),F=_ui.VxeUI.getComponent("VxeNumberInput"),R=_ui.VxeUI.getComponent("VxeRadioGroup"),H=(0,_vue.inject)("$xeTable",{}),{props:z,reactData:G,internalData:r}=H,{computeCustomOpts:W,computeColumnDragOpts:K,computeColumnOpts:ie,computeIsMaxFixedColumn:$,computeResizableOpts:re}=H.getComputeMaps(),y=(0,_vue.ref)(),P=(0,_vue.ref)(),X=(0,_vue.ref)(),u=(0,_vue.ref)(),c=(0,_vue.ref)(),f=(0,_vue.reactive)({dragCol:null,prevDragGroup:null,prevDragValues:null,dragTipText:""}),T={},a={refElem:y,refBodyWrapperElem:P,refCustomBodyElem:X,refDragLineElem:u,refDragTipElem:c},s={},k=e=>{var t=N.customStore;t.activeWrapper=!0,H.customOpenEvent(e)},S=e=>{let t=N.customStore;t.activeWrapper=!1,setTimeout(()=>{t.activeBtn||t.activeWrapper||H.customCloseEvent(e)},300)},q=({$event:e})=>{G.isCustomStatus=!0,H.saveCustom(),H.closeCustom(),H.emitCustomEvent("confirm",e)},j=({$event:e})=>{H.closeCustom(),H.emitCustomEvent("close",e)},Y=({$event:e})=>{H.cancelCustom(),H.closeCustom(),H.emitCustomEvent("cancel",e)},l=e=>{H.resetCustom(!0),H.closeCustom(),H.emitCustomEvent("reset",e)},Z=({$event:t})=>{_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&l(t)}):l(t)},o=t=>{var e=G.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),o(e))},J=(e,t)=>{let l=!e.renderVisible;W.value.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=l,e.renderVisible=l,e.halfVisible=!1}),G.isCustomStatus=!0,H.handleCustom(),H.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=l,e.halfVisible=!1}),o(e),H.checkCustomStatus(),H.dispatchEvent("custom-visible-change",{column:e,checked:l},t)},ne=e=>{W.value.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,G.isCustomStatus=!0,H.handleCustom(),H.saveCustomStore("update:width"))},Q=(e,t,l)=>{var o=$.value;let a=null;W.value.immediate?(e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),G.isCustomStatus=!0,H.handleCustom(),H.saveCustomStore("update:fixed")):e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==!a&&H.dispatchEvent("custom-fixed-change",{column:e,fixed:a},l)},ee=e=>{var t=G.customStore,t=!t.isAll;H.toggleCustomAllCheckbox(),H.dispatchEvent("custom-visible-all",{checked:t},e)},d=(e,t,l,o)=>{var a,s,i,r,n=P.value;n&&(r=X.value)&&(a=T.prevDragToChild,s=n.getBoundingClientRect(),r=r.getBoundingClientRect(),t&&(i=u.value)&&(l?(t=t.getBoundingClientRect(),i.style.display="block",i.style.left=Math.max(0,r.x-s.x)+"px",i.style.top=Math.max(1,t.y+n.scrollTop-s.y)+"px",i.style.height=t.height+"px",i.style.width=t.width+"px",i.setAttribute("drag-pos",o),i.setAttribute("drag-to-child",a?"y":"n")):i.style.display=""),r=c.value)&&(r.style.display="block",r.style.top=Math.min(n.clientHeight+n.scrollTop-r.clientHeight,e.clientY+n.scrollTop-s.y)+"px",r.style.left=Math.min(n.clientWidth+n.scrollLeft-r.clientWidth,e.clientX+n.scrollLeft-s.x)+"px",r.setAttribute("drag-status",l?a?"sub":"normal":"disabled"))},n=()=>{var e=f.dragCol,t=K.value.tooltipMethod;let l="";l=t?""+(t({$table:H,column:e})||""):getI18n("vxe.custom.cstmDragTarget",[e&&"html"!==e.type?e.getTitle():""]),f.dragTipText=l},i=()=>{var e=c.value,t=u.value;e&&(e.style.display=""),t&&(t.style.display="")},te=e=>{var e=e.currentTarget.parentElement.parentElement.parentElement,t=e.getAttribute("colid"),t=H.getColumnById(t);e.draggable=!0,f.dragCol=t,n(),(0,_dom.addClass)(e,"active--drag-origin")},le=e=>{e=e.currentTarget.parentElement.parentElement.parentElement;i(),e.draggable=!1,(f.dragCol=null,_dom.removeClass)(e,"active--drag-origin")},oe=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),T.prevDragGroup=null,T.prevDragValues=null},ae=c=>{let d=z.mouseConfig,m=G.customColumnList,v=r.collectColumn;let p=W.value.immediate;var e=c.currentTarget;let{isCrossDrag:x,isSelfToChildDrag:h,isToChildDrag:g,dragEndMethod:t}=K.value;var l=f.dragCol;let{prevDragCol:o,prevDragGroup:a,prevDragValues:s,prevDragPos:_,prevDragToChild:b}=T,C="bottom"===_?1:0;if(a||s)H.handlePivotTableAggregatePanelDragendEvent&&H.handlePivotTableAggregatePanelDragendEvent(c);else if(o&&l&&o!==l){let n=l,u=o;Promise.resolve(!t||t({oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,dragToChild:!!b,offsetIndex:C})).then(a=>{if(a){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(p){if(n.parentId&&u.parentId){if(!x)return;if(l[u.id]&&(o=!0,!x||!h))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!x)return}else if(u.parentId){if(!x)return;if(l[u.id]&&(o=!0,!x||!h))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var s,i,r,a=_xeUtils.default.findTree(v,e=>e.id===n.id),a=(o&&x&&h?a&&({items:s,index:r}=a,(i=n.children||[]).forEach(e=>{e.parentId=n.parentId}),s.splice(r,1,...i),n.children=[]):a&&({items:s,index:r,parent:i}=a,s.splice(r,1),i||(e=r)),_xeUtils.default.findTree(v,e=>e.id===u.id));a&&({items:s,index:i,parent:r}=a,x&&g&&b?(n.parentId=u.id,u.children=(u.children||[]).concat([n])):(n.parentId=u.parentId,s.splice(i+C,0,n)),r||(t=i)),_xeUtils.default.eachTree(v,(e,t,l,o,a)=>{a||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(m,e=>e.id===n.id),m.splice(e,1),t=_xeUtils.default.findIndexOf(m,e=>e.id===u.id),m.splice(t+C,0,n);G.isDragColMove=!0,d&&(H.clearSelected&&H.clearSelected(),H.clearCellAreas)&&(H.clearCellAreas(),H.clearCopyCellArea()),H.dispatchEvent("column-dragend",{oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,offsetIndex:C,_index:{newIndex:t,oldIndex:e}},c),p&&(G.customColumnList=v.slice(0),H.handleColDragSwapColumn())}}).catch(()=>{})}i(),f.dragCol=null,T.prevDragGroup=null,T.prevDragValues=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},se=e=>{var t,l=W.value.immediate,{isCrossDrag:o,isToChildDrag:a}=K.value,s=e.currentTarget,i=(0,_dom.hasControlKey)(e),r=s.getAttribute("colid"),r=H.getColumnById(r),n=f.dragCol;T.prevDragGroup=null,T.prevDragValues=null,r&&(o||1===r.level)&&(e.preventDefault(),t=e.clientY-s.getBoundingClientRect().y<s.clientHeight/2?"top":"bottom",n&&n.id===r.id||!o&&1<r.level||!l&&1<r.level||r.renderFixed?d(e,s,!1,t):(T.prevDragToChild=!!(o&&a&&i&&l),T.prevDragCol=r,T.prevDragPos=t,d(e,s,!0,t)))},ue=()=>{var e=f.dragTipText,t=K.value;return(0,_vue.h)("div",{},[(0,_vue.h)("div",{ref:u,class:["vxe-table-custom-popup--drag-line",{"is--guides":t.showGuidesStatus}]}),(0,_vue.h)("div",{ref:c,class:"vxe-table-custom-popup--drag-tip"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-status"},[(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(e||""))])])])};(0,_vue.nextTick)(()=>{var e=W.value.mode;U||"modal"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),L||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),M||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),F||(0,_log.errLog)("vxe.error.reqComp",["vxe-number-input"]),R||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])});e={xID:e,props:N,context:t,reactData:f,internalData:T,xeTable:H,getRefMaps:()=>a,getComputeMaps:()=>s,renderVN:()=>{var e=W.value;return(["modal","drawer","popup"].includes(""+e.mode)?()=>{var e=H.xeGrid;let t=N.customStore,c=z.resizable,{isCustomStatus:l,customColumnList:o}=G,a=W.value,d=a.immediate;var s=K.value;let{mode:i,modalOptions:r,drawerOptions:n,allowVisible:m,allowSort:v,allowFixed:p,allowResizable:x,checkMethod:h,visibleMethod:g}=a,_=ie.value,u=_.maxFixedSize,{minWidth:b,maxWidth:C}=re.value;var f=Object.assign({},r),T=Object.assign({},n);let I=$.value,E=s.isCrossDrag;s=a.slots||{};let V=s.header,D=s.top,A=s.bottom,y=s.default,k=s.footer,S=[],B=t.isAll,w=t.isIndeterminate,O={$table:H,$grid:e,columns:o,isAllChecked:B,isAllIndeterminate:w,isCustomStatus:l};_xeUtils.default.eachTree(o,(o,a,e,t,s)=>{if(!g||g({$table:H,column:o})){let e=0,t=0;x&&(a={$table:H,column:o,columnIndex:a,$columnIndex:a,$rowIndex:-1},b&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(b)?b(a):b)),C)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(C)?C(a):C));var a=o.renderVisible,i=o.halfVisible,r=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!h&&!h({$table:H,column:o});var u=!a;S.push((0,_vue.h)("tr",{key:o.id,colid:o.id,class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],onDragstart:oe,onDragend:ae,onDragover:se},[m?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--visible"},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":i,"is--disabled":l}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{l||J(o,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--name"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--name"},[v?E&&d||1===o.level?(0,_vue.h)("div",Object.assign({class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||u||o.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},l||u||o.renderFixed?{}:{onMousedown:te,onMouseup:le}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})]):(0,_vue.h)("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):(0,_vue.createCommentVNode)(),"html"===o.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom-popup--title",innerHTML:r}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom-popup--title",title:r},r)])]),x?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:_.resizable||c)?(0,_vue.h)("span","-"):F?(0,_vue.h)(F,{type:"integer",immediate:!1,disabled:l||u,modelValue:o.renderResizeWidth,min:e||void 0,max:t||void 0,"onUpdate:modelValue"(e){e=Math.max(0,Number(e));o.renderResizeWidth=e},onChange(){ne(o)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)(),p?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[s?(0,_vue.h)("span","-"):R?(0,_vue.h)(R,{modelValue:o.renderFixed||"",type:"button",size:"mini",disabled:l||u,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||u||I},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||u},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||u||I}],onChange({label:e,$event:t}){Q(o,e,t)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}});s={default:()=>(0,_vue.h)("div",{ref:P,class:"vxe-table-custom-popup--body-wrapper"},y?H.callSlot(y,O):[(0,_vue.h)("div",{ref:X,class:"vxe-table-custom-popup--handle-wrapper"},[D?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-top"},H.callSlot(D,O)):renderEmptyElement(H),(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-wrapper"},[(0,_vue.h)("table",{},[(0,_vue.h)("colgroup",{},[m?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-seq"}):(0,_vue.createCommentVNode)(),(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-title"}),x?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-width"}):(0,_vue.createCommentVNode)(),p?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-fixed"}):(0,_vue.createCommentVNode)()]),(0,_vue.h)("thead",{},[(0,_vue.h)("tr",{},[m?(0,_vue.h)("th",{},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":B,"is--indeterminate":w}],title:getI18n("vxe.table.allTitle"),onClick:ee},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",w?getIcon().TABLE_CHECKBOX_INDETERMINATE:B?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colTitle")),x?(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colResizable")):(0,_vue.createCommentVNode)(),p?(0,_vue.h)("th",{},getI18n("vxe.custom.setting."+(u?"colFixedMax":"colFixed"),[u])):(0,_vue.createCommentVNode)()])]),(0,_vue.h)(_vue.TransitionGroup,{class:"vxe-table-custom--panel-list",tag:"tbody",name:"vxe-table-custom--list"},{default:()=>S})])]),A?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-bottom"},H.callSlot(A,O)):renderEmptyElement(H),ue()])]),footer:()=>k?H.callSlot(k,O):(0,_vue.h)("div",{class:"vxe-table-custom-popup--footer"},[M?(0,_vue.h)(M,{content:a.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!l,onClick:Z}):(0,_vue.createCommentVNode)(),d?M?(0,_vue.h)(M,{content:a.closeButtonText||getI18n("vxe.table.customClose"),onClick:j}):(0,_vue.createCommentVNode)():M?(0,_vue.h)(M,{content:a.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:Y}):(0,_vue.createCommentVNode)(),!d&&M?(0,_vue.h)(M,{status:"primary",content:a.confirmButtonText||getI18n("vxe.custom.cstmConfirm"),onClick:q}):(0,_vue.createCommentVNode)()])};return V&&(s.header=()=>H.callSlot(V,O)),"drawer"===i?L?(0,_vue.h)(L,{key:"drawer",className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",T.className||""].join(" "),modelValue:t.visible,title:T.title||getI18n("vxe.custom.cstmTitle"),width:T.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:T.position,resize:!!T.resize,escClosable:!!T.escClosable,maskClosable:!!T.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){t.visible=e}},s):(0,_vue.createCommentVNode)():U?(0,_vue.h)(U,{key:"modal",className:["vxe-table-custom-modal-wrapper","vxe-table--ignore-clear",f.className||""].join(" "),modelValue:t.visible,title:f.title||getI18n("vxe.custom.cstmTitle"),width:f.width||Math.min(880,document.documentElement.clientWidth),minWidth:f.minWidth||700,height:f.height||Math.min(680,document.documentElement.clientHeight),minHeight:f.minHeight||400,showZoom:f.showZoom,showMaximize:f.showMaximize,showMinimize:f.showMinimize,mask:f.mask,lockView:f.lockView,resize:f.resize,escClosable:!!f.escClosable,maskClosable:!!f.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){t.visible=e}},s):(0,_vue.createCommentVNode)()}:()=>{var e=H.xeGrid,t=H.props,l=N.customStore,{treeConfig:t,rowGroupConfig:o,aggregateConfig:a}=t,{isCustomStatus:s,customColumnList:i}=G,r=W.value;let c=r.immediate;var n=K.value,u=l.maxHeight;let{checkMethod:d,visibleMethod:m,allowVisible:v,allowSort:p,allowFixed:x,trigger:h,placement:g}=r,_=$.value,b=n.isCrossDrag;var n=r.slots||{},C=n.header,f=n.top,T=n.bottom,I=n.default,n=n.footer;let E=[];var V={},D=l.isAll,A=l.isIndeterminate,e=("hover"===h&&(V.onMouseenter=k,V.onMouseleave=S),{$table:H,$grid:e,columns:i,isAllChecked:D,isAllIndeterminate:A,isCustomStatus:s});return _xeUtils.default.eachTree(i,(l,e,t,o,a)=>{if(!m||m({$table:H,column:l})){var s=l.renderVisible,i=l.halfVisible,r=l.children&&l.children.length,n=(0,_utils.formatText)(l.getTitle(),1);let t=!!d&&!d({$table:H,column:l});var u=!s;E.push((0,_vue.h)("li",{key:l.id,colid:l.id,class:["vxe-table-custom--option","level--"+l.level,{"is--hidden":t||u,"is--group":r}],onDragstart:oe,onDragend:ae,onDragover:se},[v?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":s,"is--indeterminate":i,"is--disabled":t}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{t||J(l,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?getIcon().TABLE_CHECKBOX_INDETERMINATE:s?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-custom--name-option"},[p&&(b&&c||1===l.level)?(0,_vue.h)("div",{class:"vxe-table-custom--sort-option"},[(0,_vue.h)("span",Object.assign({class:["vxe-table-custom--sort-btn",{"is--disabled":t||u||l.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},t||u||l.renderFixed?{}:{onMousedown:te,onMouseup:le}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):(0,_vue.createCommentVNode)(),"html"===l.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom--checkbox-label",innerHTML:n}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom--checkbox-label"},n)]),!a&&x?(0,_vue.h)("div",{class:"vxe-table-custom--fixed-option"},[M?(0,_vue.h)(M,{mode:"text",icon:"left"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===l.renderFixed?"primary":"",disabled:t||u||_&&!l.renderFixed,title:getI18n("left"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft"),onClick:({$event:e})=>{Q(l,"left",e)}}):(0,_vue.createCommentVNode)(),M?(0,_vue.h)(M,{mode:"text",icon:"right"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===l.renderFixed?"primary":"",disabled:t||u||_&&!l.renderFixed,title:getI18n("right"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight"),onClick:({$event:e})=>{Q(l,"right",e)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}}),(0,_vue.h)("div",{ref:y,key:"simple",class:["vxe-table-custom-wrapper","placement--"+g,{"is--active":l.visible}],style:u&&!["left","right"].includes(g)?{maxHeight:u+"px"}:{}},l.visible?[(0,_vue.h)("div",{ref:P,class:"vxe-table-custom-simple--body-wrapper"},[!t&&(a||o)&&H.getPivotTableAggregateSimplePanel?(0,_vue.h)(H.getPivotTableAggregateSimplePanel(),{customStore:l}):renderEmptyElement(H),(0,_vue.h)("div",{ref:X,class:"vxe-table-custom--handle-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom--header"},C?H.callSlot(C,e):[(0,_vue.h)("ul",{class:"vxe-table-custom--panel-list"},[(0,_vue.h)("li",{class:"vxe-table-custom--option"},[v?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":D,"is--indeterminate":A}],title:getI18n("vxe.table.allTitle"),onClick:ee},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",A?getIcon().TABLE_CHECKBOX_INDETERMINATE:D?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),(0,_vue.h)("div",{class:"vxe-table-custom--body"},[f?(0,_vue.h)("div",{class:"vxe-table-custom--panel-top"},H.callSlot(f,e)):renderEmptyElement(H),I?(0,_vue.h)("div",{class:"vxe-table-custom--panel-body"},H.callSlot(I,e)):(0,_vue.h)(_vue.TransitionGroup,Object.assign({class:"vxe-table-custom--panel-list",name:"vxe-table-custom--list",tag:"ul"},V),{default:()=>E}),T?(0,_vue.h)("div",{class:"vxe-table-custom--panel-bottom"},H.callSlot(T,e)):renderEmptyElement(H)]),r.showFooter?(0,_vue.h)("div",{class:"vxe-table-custom--footer"},n?H.callSlot(n,e):[(0,_vue.h)("div",{class:"vxe-table-custom--footer-buttons"},[M?(0,_vue.h)(M,{mode:"text",content:r.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!s,onClick:Z}):(0,_vue.createCommentVNode)(),c?M?(0,_vue.h)(M,{mode:"text",content:r.closeButtonText||getI18n("vxe.table.customClose"),onClick:j}):(0,_vue.createCommentVNode)():M?(0,_vue.h)(M,{mode:"text",content:r.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:Y}):(0,_vue.createCommentVNode)(),!c&&M?(0,_vue.h)(M,{mode:"text",status:"primary",content:r.confirmButtonText||getI18n("vxe.table.customConfirm"),onClick:q}):(0,_vue.createCommentVNode)()])]):null]),ue()])]:[])})()}};return(0,_vue.provide)("$xeTableCustomPanel",e),e},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"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"TableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},setup(L,t){var e=_xeUtils.default.uniqueId();let M=_ui.VxeUI.getComponent("VxeModal"),R=_ui.VxeUI.getComponent("VxeDrawer"),H=_ui.VxeUI.getComponent("VxeButton"),G=_ui.VxeUI.getComponent("VxeNumberInput"),z=_ui.VxeUI.getComponent("VxeRadioGroup"),P=(0,_vue.inject)("$xeTable",{}),{props:W,reactData:K,internalData:r}=P,{computeCustomOpts:$,computeColumnDragOpts:X,computeColumnOpts:ue,computeIsMaxFixedColumn:q,computeResizableOpts:de}=P.getComputeMaps(),y=(0,_vue.ref)(),j=(0,_vue.ref)(),Y=(0,_vue.ref)(),u=(0,_vue.ref)(),d=(0,_vue.ref)(),f=(0,_vue.reactive)({dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:""}),T={},a={refElem:y,refBodyWrapperElem:j,refCustomBodyElem:Y,refDragLineElem:u,refDragTipElem:d},i={},S=e=>{var t=L.customStore;t.activeWrapper=!0,P.customOpenEvent(e)},k=e=>{let t=L.customStore;t.activeWrapper=!1,setTimeout(()=>{t.activeBtn||t.activeWrapper||P.customCloseEvent(e)},300)},Z=({$event:e})=>{K.isCustomStatus=!0,P.saveCustom(),P.closeCustom(),P.emitCustomEvent("confirm",e)},J=({$event:e})=>{P.closeCustom(),P.emitCustomEvent("close",e)},Q=({$event:e})=>{P.cancelCustom(),P.closeCustom(),P.emitCustomEvent("cancel",e)},l=e=>{P.resetCustom(!0),P.closeCustom(),P.emitCustomEvent("reset",e)},ee=({$event:t})=>{_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&l(t)}):l(t)},o=t=>{var e=K.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),o(e))},te=(e,t)=>{let l=!e.renderVisible;$.value.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=l,e.renderVisible=l,e.halfVisible=!1}),K.isCustomStatus=!0,P.handleCustom(),P.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=l,e.halfVisible=!1}),o(e),P.checkCustomStatus(),P.dispatchEvent("custom-visible-change",{column:e,checked:l},t)},ce=e=>{$.value.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,K.isCustomStatus=!0,P.handleCustom(),P.saveCustomStore("update:width"))},le=(e,t,l)=>{var o=q.value;let a=null;$.value.immediate?(e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),K.isCustomStatus=!0,P.handleCustom(),P.saveCustomStore("update:fixed")):e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==!a&&P.dispatchEvent("custom-fixed-change",{column:e,fixed:a},l)},oe=e=>{var t=K.customStore,t=!t.isAll;P.toggleCustomAllCheckbox(),P.dispatchEvent("custom-visible-all",{checked:t},e)},c=(e,t,l,o)=>{var a,i,s,r,n=j.value;n&&(r=Y.value)&&(a=T.prevDragToChild,i=n.getBoundingClientRect(),r=r.getBoundingClientRect(),s=u.value,t?s&&(l?(t=t.getBoundingClientRect(),s.style.display="block",s.style.left=Math.max(0,r.x-i.x)+"px",s.style.top=Math.max(1,t.y+n.scrollTop-i.y)+"px",s.style.height=t.height+"px",s.style.width=t.width+"px",s.setAttribute("drag-pos",o),s.setAttribute("drag-to-child",a?"y":"n")):s.style.display=""):s&&(s.style.display="node"),r=d.value)&&(r.style.display="block",r.style.top=Math.min(n.clientHeight+n.scrollTop-r.clientHeight,e.clientY+n.scrollTop-i.y)+"px",r.style.left=Math.min(n.clientWidth+n.scrollLeft-r.clientWidth,e.clientX+n.scrollLeft-i.x)+"px",r.setAttribute("drag-status",l?a?"sub":"normal":"disabled"))},n=()=>{var e=f.dragCol,t=X.value.tooltipMethod;let l="";l=t?""+(t({$table:P,column:e})||""):getI18n("vxe.custom.cstmDragTarget",[e&&"html"!==e.type?e.getTitle():""]),f.dragTipText=l},s=()=>{var e=d.value,t=u.value;e&&(e.style.display=""),t&&(t.style.display="")},ae=e=>{var e=e.currentTarget.parentElement.parentElement.parentElement,t=e.getAttribute("colid"),t=P.getColumnById(t);e.draggable=!0,f.dragCol=t,f.dragGroupField=null,f.dragAggFnCol=null,n(),(0,_dom.addClass)(e,"active--drag-origin")},ie=e=>{e=e.currentTarget.parentElement.parentElement.parentElement;s(),e.draggable=!1,f.dragCol=null,f.dragGroupField=null,(f.dragAggFnCol=null,_dom.removeClass)(e,"active--drag-origin")},se=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),T.prevDragGroupField=null,T.prevDragAggFnColid=null},re=d=>{let c=W.mouseConfig,m=K.customColumnList,v=r.collectColumn;let p=$.value.immediate;var e=d.currentTarget;let{isCrossDrag:g,isSelfToChildDrag:x,isToChildDrag:h,dragEndMethod:t}=X.value;var l=f.dragCol;let{prevDragCol:o,prevDragGroupField:a,prevDragAggFnColid:i,prevDragPos:_,prevDragToChild:b}=T,C="bottom"===_?1:0;if(a||i)P.handlePivotTableAggregatePanelDragendEvent&&P.handlePivotTableAggregatePanelDragendEvent(d);else if(o&&l&&o!==l){let n=l,u=o;Promise.resolve(!t||t({oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,dragToChild:!!b,offsetIndex:C})).then(a=>{if(a){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(p){if(n.parentId&&u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!g)return}else if(u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var i,s,r,a=_xeUtils.default.findTree(v,e=>e.id===n.id),a=(o&&g&&x?a&&({items:i,index:r}=a,(s=n.children||[]).forEach(e=>{e.parentId=n.parentId}),i.splice(r,1,...s),n.children=[]):a&&({items:i,index:r,parent:s}=a,i.splice(r,1),s||(e=r)),_xeUtils.default.findTree(v,e=>e.id===u.id));a&&({items:i,index:s,parent:r}=a,g&&h&&b?(n.parentId=u.id,u.children=(u.children||[]).concat([n])):(n.parentId=u.parentId,i.splice(s+C,0,n)),r||(t=s)),_xeUtils.default.eachTree(v,(e,t,l,o,a)=>{a||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(m,e=>e.id===n.id),m.splice(e,1),t=_xeUtils.default.findIndexOf(m,e=>e.id===u.id),m.splice(t+C,0,n);K.isDragColMove=!0,c&&(P.clearSelected&&P.clearSelected(),P.clearCellAreas)&&(P.clearCellAreas(),P.clearCopyCellArea()),P.dispatchEvent("column-dragend",{oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,offsetIndex:C,_index:{newIndex:t,oldIndex:e}},d),p&&(K.customColumnList=v.slice(0),P.handleColDragSwapColumn())}}).catch(()=>{})}s(),f.dragCol=null,f.dragGroupField=null,f.dragAggFnCol=null,T.prevDragGroupField=null,T.prevDragAggFnColid=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},ne=e=>{var t,l=$.value.immediate,{isCrossDrag:o,isToChildDrag:a}=X.value,i=e.currentTarget,s=(0,_dom.hasControlKey)(e),r=i.getAttribute("colid"),r=P.getColumnById(r),n=f.dragCol;T.prevDragGroupField=null,T.prevDragAggFnColid=null,r&&(o||1===r.level)&&(e.preventDefault(),t=e.clientY-i.getBoundingClientRect().y<i.clientHeight/2?"top":"bottom",!n||n.id===r.id||!o&&1<r.level||!l&&1<r.level||r.renderFixed?c(e,i,!1,t):(T.prevDragToChild=!!(o&&a&&s&&l),T.prevDragCol=r,T.prevDragPos=t,c(e,i,!0,t)))},me=()=>{var e=f.dragTipText,t=X.value;return(0,_vue.h)("div",{},[(0,_vue.h)("div",{ref:u,class:["vxe-table-custom-popup--drag-line",{"is--guides":t.showGuidesStatus}]}),(0,_vue.h)("div",{ref:d,class:"vxe-table-custom-popup--drag-tip"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-status"},[(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(e||""))])])])};(0,_vue.nextTick)(()=>{var e=$.value.mode;M||"modal"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),R||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),H||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),G||(0,_log.errLog)("vxe.error.reqComp",["vxe-number-input"]),z||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])});e={xID:e,props:L,context:t,reactData:f,internalData:T,xeTable:P,getRefMaps:()=>a,getComputeMaps:()=>i,renderVN:()=>{var e=$.value;return(["modal","drawer","popup"].includes(""+e.mode)?()=>{var e=P.xeGrid;let t=L.customStore,{treeConfig:l,rowGroupConfig:o,aggregateConfig:a,resizable:d}=W,{isCustomStatus:i,customColumnList:s}=K,r=$.value,c=r.immediate;var n=X.value;let{mode:u,modalOptions:m,drawerOptions:v,allowVisible:p,allowSort:g,allowFixed:x,allowResizable:h,checkMethod:_,visibleMethod:b}=r,C=ue.value,f=C.maxFixedSize,{minWidth:T,maxWidth:I}=de.value;var E=Object.assign({},m),V=Object.assign({},v);let A=q.value,U=n.isCrossDrag;n=r.slots||{};let D=n.header,y=n.top,S=n.bottom,k=n.default,F=n.footer,B=[],w=t.isAll,O=t.isIndeterminate,N={$table:P,$grid:e,columns:s,isAllChecked:w,isAllIndeterminate:O,isCustomStatus:i};_xeUtils.default.eachTree(s,(o,a,e,t,i)=>{if(!b||b({$table:P,column:o})){let e=0,t=0;h&&(a={$table:P,column:o,columnIndex:a,$columnIndex:a,$rowIndex:-1},T&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(T)?T(a):T)),I)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(I)?I(a):I));var a=o.renderVisible,s=o.halfVisible,r=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!_&&!_({$table:P,column:o});var u=!a;B.push((0,_vue.h)("tr",{key:o.id,colid:o.id,class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],onDragstart:se,onDragend:re,onDragover:ne},[p?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--visible"},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":s,"is--disabled":l}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{l||te(o,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--name"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--name"},[g?U&&c||1===o.level?(0,_vue.h)("div",Object.assign({class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||u||o.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},l||u||o.renderFixed?{}:{onMousedown:ae,onMouseup:ie}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})]):(0,_vue.h)("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):(0,_vue.createCommentVNode)(),"html"===o.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom-popup--title",innerHTML:r}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom-popup--title",title:r},r)])]),h?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:C.resizable||d)?(0,_vue.h)("span","-"):G?(0,_vue.h)(G,{type:"integer",immediate:!1,disabled:l||u,modelValue:o.renderResizeWidth,min:e||void 0,max:t||void 0,"onUpdate:modelValue"(e){e=Math.max(0,Number(e));o.renderResizeWidth=e},onChange(){ce(o)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[i?(0,_vue.h)("span","-"):z?(0,_vue.h)(z,{modelValue:o.renderFixed||"",type:"button",size:"mini",disabled:l||u,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||u||A},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||u},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||u||A}],onChange({label:e,$event:t}){le(o,e,t)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}});n={default:()=>(0,_vue.h)("div",{ref:j,class:"vxe-table-custom-popup--body-wrapper"},k?P.callSlot(k,N):[(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom-popup--handle-wrapper"},[y?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-top"},P.callSlot(y,N)):renderEmptyElement(P),(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-wrapper"},[(0,_vue.h)("table",{},[(0,_vue.h)("colgroup",{},[p?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-seq"}):(0,_vue.createCommentVNode)(),(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-title"}),h?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-width"}):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-fixed"}):(0,_vue.createCommentVNode)()]),(0,_vue.h)("thead",{},[(0,_vue.h)("tr",{},[p?(0,_vue.h)("th",{},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":w,"is--indeterminate":O}],title:getI18n("vxe.table.allTitle"),onClick:oe},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",O?getIcon().TABLE_CHECKBOX_INDETERMINATE:w?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colTitle")),h?(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colResizable")):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("th",{},getI18n("vxe.custom.setting."+(f?"colFixedMax":"colFixed"),[f])):(0,_vue.createCommentVNode)()])]),(0,_vue.h)(_vue.TransitionGroup,{class:"vxe-table-custom--panel-list",tag:"tbody",name:"vxe-table-custom--list"},{default:()=>B})])]),S?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-bottom"},P.callSlot(S,N)):renderEmptyElement(P),me()]),!l&&(a||o)&&P.getPivotTableAggregatePopupPanel?(0,_vue.h)(P.getPivotTableAggregatePopupPanel(),{customStore:t}):renderEmptyElement(P)]),footer:()=>F?P.callSlot(F,N):(0,_vue.h)("div",{class:"vxe-table-custom-popup--footer"},[H?(0,_vue.h)(H,{content:r.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!i,onClick:ee}):(0,_vue.createCommentVNode)(),c?H?(0,_vue.h)(H,{content:r.closeButtonText||getI18n("vxe.table.customClose"),onClick:J}):(0,_vue.createCommentVNode)():H?(0,_vue.h)(H,{content:r.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:Q}):(0,_vue.createCommentVNode)(),!c&&H?(0,_vue.h)(H,{status:"primary",content:r.confirmButtonText||getI18n("vxe.custom.cstmConfirm"),onClick:Z}):(0,_vue.createCommentVNode)()])};return D&&(n.header=()=>P.callSlot(D,N)),"drawer"===u?R?(0,_vue.h)(R,{key:"drawer",className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",V.className||""].join(" "),modelValue:t.visible,title:V.title||getI18n("vxe.custom.cstmTitle"),width:V.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:V.position,resize:!!V.resize,escClosable:!!V.escClosable,maskClosable:!!V.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){t.visible=e}},n):(0,_vue.createCommentVNode)():M?(0,_vue.h)(M,{key:"modal",className:["vxe-table-custom-modal-wrapper","vxe-table--ignore-clear",E.className||""].join(" "),modelValue:t.visible,title:E.title||getI18n("vxe.custom.cstmTitle"),width:E.width||Math.min(880,document.documentElement.clientWidth),minWidth:E.minWidth||700,height:E.height||Math.min(680,document.documentElement.clientHeight),minHeight:E.minHeight||400,showZoom:E.showZoom,showMaximize:E.showMaximize,showMinimize:E.showMinimize,mask:E.mask,lockView:E.lockView,resize:E.resize,escClosable:!!E.escClosable,maskClosable:!!E.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){t.visible=e}},n):(0,_vue.createCommentVNode)()}:()=>{var e=P.xeGrid,t=P.props,l=L.customStore,{treeConfig:t,rowGroupConfig:o,aggregateConfig:a}=t,{isCustomStatus:i,customColumnList:s}=K,r=$.value;let d=r.immediate;var n=X.value,u=l.maxHeight;let{checkMethod:c,visibleMethod:m,allowVisible:v,allowSort:p,allowFixed:g,trigger:x,placement:h}=r,_=q.value,b=n.isCrossDrag;var n=r.slots||{},C=n.header,f=n.top,T=n.bottom,I=n.default,n=n.footer;let E=[];var V={},A=l.isAll,D=l.isIndeterminate,e=("hover"===x&&(V.onMouseenter=S,V.onMouseleave=k),{$table:P,$grid:e,columns:s,isAllChecked:A,isAllIndeterminate:D,isCustomStatus:i});return _xeUtils.default.eachTree(s,(l,e,t,o,a)=>{if(!m||m({$table:P,column:l})){var i=l.renderVisible,s=l.halfVisible,r=l.children&&l.children.length,n=(0,_utils.formatText)(l.getTitle(),1);let t=!!c&&!c({$table:P,column:l});var u=!i;E.push((0,_vue.h)("li",{key:l.id,colid:l.id,class:["vxe-table-custom--option","level--"+l.level,{"is--hidden":t||u,"is--group":r}],onDragstart:se,onDragend:re,onDragover:ne},[v?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":s,"is--disabled":t}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{t||te(l,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-custom--name-option"},[p&&(b&&d||1===l.level)?(0,_vue.h)("div",{class:"vxe-table-custom--sort-option"},[(0,_vue.h)("span",Object.assign({class:["vxe-table-custom--sort-btn",{"is--disabled":t||u||l.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},t||u||l.renderFixed?{}:{onMousedown:ae,onMouseup:ie}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):(0,_vue.createCommentVNode)(),"html"===l.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom--checkbox-label",innerHTML:n}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom--checkbox-label"},n)]),!a&&g?(0,_vue.h)("div",{class:"vxe-table-custom--fixed-option"},[H?(0,_vue.h)(H,{mode:"text",icon:"left"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===l.renderFixed?"primary":"",disabled:t||u||_&&!l.renderFixed,title:getI18n("left"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft"),onClick:({$event:e})=>{le(l,"left",e)}}):(0,_vue.createCommentVNode)(),H?(0,_vue.h)(H,{mode:"text",icon:"right"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===l.renderFixed?"primary":"",disabled:t||u||_&&!l.renderFixed,title:getI18n("right"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight"),onClick:({$event:e})=>{le(l,"right",e)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}}),(0,_vue.h)("div",{ref:y,key:"simple",class:["vxe-table-custom-wrapper","placement--"+h,{"is--active":l.visible}],style:u&&!["left","right"].includes(h||"")?{maxHeight:u+"px"}:{}},l.visible?[(0,_vue.h)("div",{ref:j,class:"vxe-table-custom-simple--body-wrapper"},[!t&&(a||o)&&P.getPivotTableAggregateSimplePanel?(0,_vue.h)(P.getPivotTableAggregateSimplePanel(),{customStore:l}):renderEmptyElement(P),(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom--handle-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom--header"},C?P.callSlot(C,e):[(0,_vue.h)("ul",{class:"vxe-table-custom--panel-list"},[(0,_vue.h)("li",{class:"vxe-table-custom--option"},[v?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":A,"is--indeterminate":D}],title:getI18n("vxe.table.allTitle"),onClick:oe},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",D?getIcon().TABLE_CHECKBOX_INDETERMINATE:A?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),(0,_vue.h)("div",{class:"vxe-table-custom--body"},[f?(0,_vue.h)("div",{class:"vxe-table-custom--panel-top"},P.callSlot(f,e)):renderEmptyElement(P),I?(0,_vue.h)("div",{class:"vxe-table-custom--panel-body"},P.callSlot(I,e)):(0,_vue.h)(_vue.TransitionGroup,Object.assign({class:"vxe-table-custom--panel-list",name:"vxe-table-custom--list",tag:"ul"},V),{default:()=>E}),T?(0,_vue.h)("div",{class:"vxe-table-custom--panel-bottom"},P.callSlot(T,e)):renderEmptyElement(P)]),r.showFooter?(0,_vue.h)("div",{class:"vxe-table-custom--footer"},n?P.callSlot(n,e):[(0,_vue.h)("div",{class:"vxe-table-custom--footer-buttons"},[H?(0,_vue.h)(H,{mode:"text",content:r.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!i,onClick:ee}):(0,_vue.createCommentVNode)(),d?H?(0,_vue.h)(H,{mode:"text",content:r.closeButtonText||getI18n("vxe.table.customClose"),onClick:J}):(0,_vue.createCommentVNode)():H?(0,_vue.h)(H,{mode:"text",content:r.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:Q}):(0,_vue.createCommentVNode)(),!d&&H?(0,_vue.h)(H,{mode:"text",status:"primary",content:r.confirmButtonText||getI18n("vxe.table.customConfirm"),onClick:Z}):(0,_vue.createCommentVNode)()])]):null]),me()])]:[])})()}};return(0,_vue.provide)("$xeTableCustomPanel",e),e},render(){return this.renderVN()}});
@@ -329,6 +329,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
329
329
  $xeTable.triggerCellDblclickEvent(evnt, cellParams);
330
330
  };
331
331
  let isMergeCell = false;
332
+ let mergeColspan = 1;
332
333
  let mergeRowspan = 1;
333
334
  // 合并行或列
334
335
  if (mergeBodyFlag && mergeBodyList.length) {
@@ -348,6 +349,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
348
349
  }
349
350
  if (colspan > 1) {
350
351
  isMergeCell = true;
352
+ mergeColspan = colspan;
351
353
  tdAttrs.colspan = colspan;
352
354
  }
353
355
  }
@@ -367,6 +369,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
367
369
  }
368
370
  if (colspan > 1) {
369
371
  isMergeCell = true;
372
+ mergeColspan = colspan;
370
373
  tdAttrs.colspan = colspan;
371
374
  }
372
375
  }
@@ -405,16 +408,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
405
408
  }
406
409
  const tcStyle = {};
407
410
  if (hasEllipsis && resizeWidthFlag) {
408
- let tsColspan = tdAttrs.colspan || 0;
409
- if (tsColspan > 1) {
410
- for (let index = 1; index < tsColspan; index++) {
411
+ let mergeColWidth = 0;
412
+ if (mergeColspan > 1) {
413
+ for (let index = 1; index < mergeColspan; index++) {
411
414
  const nextColumn = visibleColumn[columnIndex + index];
412
415
  if (nextColumn) {
413
- tsColspan += nextColumn.renderWidth;
416
+ mergeColWidth += nextColumn.renderWidth;
414
417
  }
415
418
  }
416
419
  }
417
- tcStyle.width = `${column.renderWidth - cellOffsetWidth * tsColspan}px`;
420
+ tcStyle.width = `${column.renderWidth + mergeColWidth - cellOffsetWidth}px`;
418
421
  }
419
422
  if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
420
423
  tcStyle.height = `${cellHeight}px`;
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(k){let Pe=(0,_vue.inject)("$xeTable",{}),{xID:z,props:Xe,context:q,reactData:Ke,internalData:Ye}=Pe,{computeEditOpts:Je,computeMouseOpts:Qe,computeCellOffsetWidth:Ze,computeAreaOpts:el,computeDefaultRowHeight:ll,computeEmptyOpts:$,computeTooltipOpts:tl,computeRadioOpts:e,computeExpandOpts:re,computeTreeOpts:p,computeCheckboxOpts:al,computeCellOpts:ol,computeValidOpts:rl,computeRowOpts:il,computeColumnOpts:sl,computeRowDragOpts:nl,computeColumnDragOpts:l,computeResizableOpts:dl,computeVirtualXOpts:ul,computeVirtualYOpts:pl}=Pe.getComputeMaps(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),U=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),cl=()=>{var e=Xe.delayHover,{lastScrollTime:l,isDragResize:t}=Ke;return!!(t||l&&Date.now()<l+e)},vl=(e,l,t)=>{var{row:a,column:o}=l,r=Ye.afterFullData,i=Xe.treeConfig,s=p.value,{slots:o,treeNode:n}=o,d=Ye.fullAllDataRowIdData;if(o&&o.line)return Pe.callSlot(o.line,l);o=d[e];let u=0,c=null;return o&&(u=o.level,c=o.items[o.treeIndex-1]),i&&n&&(s.showLine||s.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${Pe.eqRow(r[0],a)?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(Pe):0)+16+"px"}})])]:[]},se=(A,e,l,H,F,t,L,j,a,o,U,N,r)=>{var i=Pe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:G,height:d,treeConfig:W,cellClassName:V,cellStyle:P,align:X,spanMethod:K,mouseConfig:Y,editConfig:J,editRules:u,tooltipConfig:c,padding:p}=Xe,{tableData:v,dragRow:Q,overflowX:Z,currentColumn:ee,scrollXLoad:le,scrollYLoad:g,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:oe,isAllOverflow:re,validErrorMaps:m}=Ke,{fullAllDataRowIdData:ie,fullColumnIdData:w,mergeBodyCellMaps:se,visibleColumn:ne,afterFullData:de,mergeBodyList:ue,scrollXStore:ce,scrollYStore:pe}=Ye,_=ol.value,f=rl.value,ve=al.value,ge=Je.value,b=tl.value,xe=dl.value,he=ul.value,me=pl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=il.value,C=nl.value,_e=ll.value,x=x?_.height||y.height:0,{disabledMethod:R,isCrossDrag:fe,isPeerDrag:be}=C,ye=sl.value,Ce=Qe.value,Re=el.value,De=Ze.value,Re=Re.selectCellToRow,{type:Ee,cellRender:Oe,editRender:Ie,align:Se,showOverflow:Me,className:Te,treeNode:ke,rowResize:ze,padding:D,verticalAlign:E,slots:qe}=o,O=_.verticalAlign,oe=oe.actived,$e=ie[e]||{},I=o.id,w=w[I]||{},S=Ie||Oe,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var Le=w.index,b=w._index,w=(0,_utils.isEnableConf)(Ie),h=h?$e.resizeHeight:0;let M=l?o.fixed!==l:o.fixed&&Z;Z=_xeUtils.default.eqNull(D)?null===p?_.padding:p:D,p=_xeUtils.default.eqNull(Me)?n:Me,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;n=re||T||k||D,Me=_xeUtils.default.isBoolean(o.resizable)?o.resizable:ye.resizable||s,p=!!x,s=0<h;let je;x={},h=Se||(S?S.tableCellAlign:"")||X,Se=_xeUtils.default.eqNull(E)?O:E,S=m[e+":"+I],X=u&&f.showMessage&&("default"===f.message?d||1<v.length:"inline"===f.message),O={colid:I};let z={$table:Pe,$grid:i,isEdit:!1,seq:A,rowid:e,row:t,rowIndex:L,$rowIndex:j,_rowIndex:a,column:o,columnIndex:Le,$columnIndex:U,_columnIndex:b,fixed:l,type:renderType,isHidden:!!M,level:F,visibleData:de,data:v,items:r},q=!1,Ue=!1,$=((q=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:q)&&(Ue=!(!R||!R(z))),(T||k||Fe||c)&&(x.onMouseenter=e=>{cl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||Fe)&&Pe.triggerBodyTooltipEvent(e,z),Pe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||c)&&(x.onMouseleave=e=>{cl()||((k||Fe)&&Pe.handleTargetLeaveEvent(e),Pe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),(q||ve.range||Y)&&(x.onMousedown=e=>{Pe.triggerCellMousedownEvent(e,z)}),q&&(x.onMouseup=Pe.triggerCellMouseupEvent),x.onClick=e=>{Pe.triggerCellClickEvent(e,z)},!(x.onDblclick=e=>{Pe.triggerCellDblclickEvent(e,z)})),Ne=1;if(te&&ue.length){E=se[a+":"+b];if(E){var{rowspan:m,colspan:u}=E;if(!m||!u)return null;1<m&&($=!0,Ne=m,O.rowspan=m),1<u&&($=!0,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K(z)||{};if(!d||!i)return null;1<d&&($=!0,Ne=d,O.rowspan=d),1<i&&($=!0,O.colspan=i)}!(M=M&&$&&(1<O.colspan||1<O.rowspan)?!1:M)&&J&&(Ie||Oe)&&(ge.showStatus||ge.showUpdateStatus)&&(je=Pe.isUpdateByRow(t,o.field));A=g&&!n;let Be=(0,_util.getCellRestHeight)($e,_,y,_e);L=U===N.length-1,j=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let Ge=!1;$||Q&&(0,_util.getRowid)(Pe,Q)===e||(g&&!W&&!me.immediate&&(a<pe.visibleStartIndex-pe.preloadSize||a>pe.visibleEndIndex+pe.preloadSize)||le&&!he.immediate&&!o.fixed&&(b<ce.visibleStartIndex-ce.preloadSize||b>ce.visibleEndIndex+ce.preloadSize))&&(Ge=!0),1<Ne&&(v=de[a+Ne-1])&&(r=ie[(0,_util.getRowid)(Pe,v)])&&(Be+=r.oTop+(0,_util.getCellRestHeight)(r,_,y,_e)-$e.oTop-(0,_util.getCellRestHeight)($e,_,y,_e));C={};if(n&&ae){let l=O.colspan||0;if(1<l)for(let e=1;e<l;e++){var We=ne[Le+e];We&&(l+=We.renderWidth)}C.width=o.renderWidth-De*l+"px"}g||n||p||s?C.height=Be+"px":C.minHeight=Be+"px";R=[];M&&re?R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C})):(W&&R.push(...vl(e,z,Be)),R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C,title:T?Pe.getCellLabel(t,o):null},Ge?[]:[(0,_vue.h)("div",{colid:I,rowid:e,class:"vxe-cell--wrapper"},o.renderCell(z))])),X&&S&&(c=S.rule,ve=qe?qe.valid:null,te=Object.assign(Object.assign(Object.assign({},z),S),{rule:S}),R.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,te)],style:c&&c.maxWidth?{width:c.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[ve?Pe.callSlot(ve,te):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)]])]))));let Ve=!1;return Y&&Ce.area&&Re&&((b||!0!==Re)&&Re!==o.field||(Ve=!0)),!M&&Me&&xe&&R.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!G||"none"===G}],onMousedown:e=>Pe.handleColResizeMousedownEvent(e,l,z),onDblclick:e=>Pe.handleColResizeDblclickEvent(e,z)})),(ze||we)&&y.resizable&&R.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Pe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Pe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",I,Se?"col--vertical-"+Se:"",h?"col--"+h:"",Ee?"col--"+Ee:"",{"col--last":L,"col--tree-node":ke,"col--edit":w,"col--ellipsis":n,"col--cs-height":p,"col--rs-height":s,"col--to-row":Ve,"col--auto-height":A,"fixed--width":!j,"fixed--hidden":M,"is--padding":Z,"is--progress":M&&re||Ge,"is--drag-cell":q&&(fe||be||!F),"is--drag-disabled":Ue,"col--dirty":je,"col--active":J&&w&&oe.row===t&&(oe.column===o||"row"===ge.mode),"col--valid-error":!!S,"col--current":ee===o},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Te,z),(0,_dom.getPropClass)(V,z)],key:B||le||g||ye.useKey||y.useKey||ye.drag?I:U},O),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),x),H&&M?[]:R)},ie=(h,m,w,_)=>{let f=Pe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:R,rowStyle:D,editConfig:E,treeConfig:O}=Xe,{hasFixedColumn:I,treeExpandedFlag:S,isColLoading:M,scrollXLoad:T,scrollYLoad:k,isAllOverflow:z,rowExpandedFlag:q,expandColumn:$,selectRadioRow:A,pendingRowFlag:H,isDragColMove:F,rowExpandHeightFlag:L,isRowGroupStatus:j}=Ke,{fullAllDataRowIdData:U,fullColumnIdData:N,treeExpandedMaps:B,pendingRowMaps:G,rowExpandedMaps:W}=Ye,Q=al.value,Z=e.value,V=p.value,P=Je.value,X=il.value,K=sl.value,ee=l.value,{transform:Y,seqMode:le}=V,te=V.children||V.childrenField,J=[],ae=(0,_util.createHandleGetRowId)(Pe).handleGetRowId,oe=O||j;return w.forEach((a,o)=>{let r=ae(a);var i=U[r]||{};let s=o,n=0,d=-1,u=-1;var c=j&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{cl()||Pe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{cl()||Pe.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===le?i._index+1:i.seq,s=i.index,u=i._index),{$table:Pe,seq:d,rowid:r,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:o,_rowIndex:u}),g=$&&!!q&&!!W[r];let e=!1,l=[],t=!1;E&&(t=Pe.isInsertByRow(a)),!O||k||Y||(l=a[te],e=!!S&&l&&0<l.length&&!!B[r]),!X.drag||j||O&&!Y||(p.onDragstart=Pe.handleRowDragDragstartEvent,p.onDragend=Pe.handleRowDragDragendEvent,p.onDragover=Pe.handleRowDragDragoverEvent);c=["vxe-body--row",oe?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":Z.highlight&&Pe.eqRow(A,a),"row--checked":Q.highlight&&Pe.isCheckedByCheckboxRow(a),"row--pending":!!H&&!!G[r],"row--group":c},(0,_dom.getPropClass)(R,v)];let x=_.map((e,l)=>se(d,r,h,m,n,a,s,o,u,e,l,_,w));if(J.push(!M&&K.drag&&ee.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(F?"":"-disabled"),tag:"tr",class:c,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||T||k||X.useKey||X.drag||K.drag||j||O?r:o},p),{default:()=>x}):(0,_vue.h)("tr",Object.assign({class:c,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||T||k||X.useKey||X.drag||K.drag||j||O?r:o},p),x)),g){var{height:c,padding:v,mode:p}=re.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+r,rowid:r},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${L?i.expandHeight||c:0}px`}})]));else{g={},p=(c&&(g.height=c+"px"),O&&(g.paddingLeft=n*V.indent+30+"px"),$||{}).showOverflow,i=$.id,i=N[i]||{},p=_xeUtils.default.eqNull(p)?z:p;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);i={$grid:f,$table:Pe,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:r,rowIndex:s,$rowIndex:o,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+r},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!I,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:g},[$.renderData(i)])])]))}}e&&J.push(...ie(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=k.fixedType,l=Ye.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=A,l[e+"scroll"]=H,l[e+"table"]=F,l[e+"colgroup"]=L,l[e+"list"]=j,l[e+"xSpace"]=U,l[e+"ySpace"]=N,l[e+"emptyBlock"]=B})}),(0,_vue.onUnmounted)(()=>{var e=k.fixedType,l=Ye.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=q.slots,l=Pe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:o}=k;var{spanMethod:r,footerSpanMethod:i,mouseConfig:s}=Xe,{isGroup:n,tableData:d,isRowLoading:u,isColLoading:c,overflowX:p,scrollXLoad:v,scrollYLoad:g,isAllOverflow:x,isDragRowMove:h,expandColumn:m,dragRow:w,dragCol:_}=Ke,{visibleColumn:f,fullAllDataRowIdData:b,fullColumnIdData:y}=Ye,C=il.value,R=$.value,D=Qe.value,E=nl.value,O=re.value;let I=d,S=o,M=!1;!(v||g||x)||m&&"fixed"!==O.mode||r||i||(M=!0),c||!a&&p||(S=f),a&&M&&(S=t||[]),g&&w&&2<I.length&&(d=b[(0,_util.getRowid)(Pe,w)])&&(x=d._index,m=I[0],O=I[I.length-1],r=b[(0,_util.getRowid)(Pe,m)],i=b[(0,_util.getRowid)(Pe,O)],r)&&i&&(p=r._index,f=i._index,x<p?I=[w].concat(I):f<x&&(I=I.concat([w]))),a||n||v&&_&&2<S.length&&(g=y[_.id])&&(d=g._index,m=S[0],b=S[S.length-1],O=y[m.id],r=y[b.id],O)&&r&&(i=O._index,p=r._index,d<i?S=[_].concat(S):p<d&&(S=S.concat([_])));let T;f=e?e.empty:null,x={$table:Pe,$grid:l},T=f?Pe.callSlot(f,x):(n=(w=R.name?renderer.get(R.name):null)?w.renderTableEmpty||w.renderTableEmptyView||w.renderEmpty:null)?(0,_vn.getSlotVNs)(n(R,x)):Xe.emptyText||getI18n("vxe.table.emptyText"),v={onScroll(e){Pe.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:A,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:z},[(0,_vue.h)("div",Object.assign({ref:H,class:"vxe-table--body-inner-wrapper"},v),[a?renderEmptyElement(Pe):(0,_vue.h)("div",{ref:U,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:F,class:"vxe-table--body",xid:z,cellspacing:0,cellpadding:0,border:0,xvm:M?"1":null},[(0,_vue.h)("colgroup",{ref:L},S.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),!u&&!c&&C.drag&&E.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:j,name:"vxe-body--row-list"+(h?"":"-disabled"),tag:"tbody"},{default:()=>ie(a,M,I,S)}):(0,_vue.h)("tbody",{ref:j},ie(a,M,I,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&D.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},D.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Pe.triggerCellAreaExtendMousedownEvent&&Pe.triggerCellAreaExtendMousedownEvent(e,{$table:Pe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Pe),a?renderEmptyElement(Pe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:B},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},T)])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(k){let Xe=(0,_vue.inject)("$xeTable",{}),{xID:z,props:Ke,context:q,reactData:Ye,internalData:Je}=Xe,{computeEditOpts:Qe,computeMouseOpts:Ze,computeCellOffsetWidth:el,computeAreaOpts:ll,computeDefaultRowHeight:tl,computeEmptyOpts:$,computeTooltipOpts:al,computeRadioOpts:e,computeExpandOpts:re,computeTreeOpts:p,computeCheckboxOpts:ol,computeCellOpts:rl,computeValidOpts:il,computeRowOpts:sl,computeColumnOpts:nl,computeRowDragOpts:dl,computeColumnDragOpts:l,computeResizableOpts:ul,computeVirtualXOpts:cl,computeVirtualYOpts:vl}=Xe.getComputeMaps(),A=(0,_vue.ref)(),H=(0,_vue.ref)(),F=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),U=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),pl=()=>{var e=Ke.delayHover,{lastScrollTime:l,isDragResize:t}=Ye;return!!(t||l&&Date.now()<l+e)},gl=(e,l,t)=>{var{row:a,column:o}=l,r=Je.afterFullData,i=Ke.treeConfig,s=p.value,{slots:o,treeNode:n}=o,d=Je.fullAllDataRowIdData;if(o&&o.line)return Xe.callSlot(o.line,l);o=d[e];let u=0,c=null;return o&&(u=o.level,c=o.items[o.treeIndex-1]),i&&n&&(s.showLine||s.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${Xe.eqRow(r[0],a)?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(Xe):0)+16+"px"}})])]:[]},se=(A,e,l,H,F,t,L,j,a,o,U,N,r)=>{var i=Xe.xeGrid,{columnKey:B,resizable:s,showOverflow:n,border:G,height:d,treeConfig:W,cellClassName:V,cellStyle:P,align:X,spanMethod:K,mouseConfig:Y,editConfig:J,editRules:u,tooltipConfig:c,padding:p}=Ke,{tableData:v,dragRow:Q,overflowX:Z,currentColumn:ee,scrollXLoad:le,scrollYLoad:g,mergeBodyFlag:te,calcCellHeightFlag:x,resizeHeightFlag:h,resizeWidthFlag:ae,editStore:oe,isAllOverflow:re,validErrorMaps:m}=Ye,{fullAllDataRowIdData:ie,fullColumnIdData:w,mergeBodyCellMaps:se,visibleColumn:ne,afterFullData:de,mergeBodyList:ue,scrollXStore:ce,scrollYStore:pe}=Je,_=rl.value,f=il.value,ve=ol.value,ge=Qe.value,b=al.value,xe=ul.value,he=cl.value,me=vl.value,{isAllColumnDrag:xe,isAllRowDrag:we}=xe,y=sl.value,C=dl.value,_e=tl.value,x=x?_.height||y.height:0,{disabledMethod:R,isCrossDrag:fe,isPeerDrag:be}=C,ye=nl.value,Ce=Ze.value,Re=ll.value,De=el.value,Re=Re.selectCellToRow,{type:Ee,cellRender:Oe,editRender:Ie,align:Se,showOverflow:Me,className:Te,treeNode:ke,rowResize:ze,padding:D,verticalAlign:E,slots:qe}=o,O=_.verticalAlign,oe=oe.actived,$e=ie[e]||{},I=o.id,w=w[I]||{},S=Ie||Oe,S=S?renderer.get(S.name):null,Ae=S?S.tableCellClassName||S.cellClassName:null,He=S?S.tableCellStyle||S.cellStyle:"";let Fe=b.showAll;var Le=w.index,b=w._index,w=(0,_utils.isEnableConf)(Ie),h=h?$e.resizeHeight:0;let M=l?o.fixed!==l:o.fixed&&Z;Z=_xeUtils.default.eqNull(D)?null===p?_.padding:p:D,p=_xeUtils.default.eqNull(Me)?n:Me,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;n=re||T||k||D,Me=_xeUtils.default.isBoolean(o.resizable)?o.resizable:ye.resizable||s,p=!!x,s=0<h;let je;x={},h=Se||(S?S.tableCellAlign:"")||X,Se=_xeUtils.default.eqNull(E)?O:E,S=m[e+":"+I],X=u&&f.showMessage&&("default"===f.message?d||1<v.length:"inline"===f.message),O={colid:I};let z={$table:Xe,$grid:i,isEdit:!1,seq:A,rowid:e,row:t,rowIndex:L,$rowIndex:j,_rowIndex:a,column:o,columnIndex:Le,$columnIndex:U,_columnIndex:b,fixed:l,type:renderType,isHidden:!!M,level:F,visibleData:de,data:v,items:r},q=!1,Ue=!1,$=((q=y.drag?"row"===C.trigger||o.dragSort&&"cell"===C.trigger:q)&&(Ue=!(!R||!R(z))),(T||k||Fe||c)&&(x.onMouseenter=e=>{pl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(k||Fe)&&Xe.triggerBodyTooltipEvent(e,z),Xe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},z),e))}),(k||Fe||c)&&(x.onMouseleave=e=>{pl()||((k||Fe)&&Xe.handleTargetLeaveEvent(e),Xe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},z),e))}),(q||ve.range||Y)&&(x.onMousedown=e=>{Xe.triggerCellMousedownEvent(e,z)}),q&&(x.onMouseup=Xe.triggerCellMouseupEvent),x.onClick=e=>{Xe.triggerCellClickEvent(e,z)},!(x.onDblclick=e=>{Xe.triggerCellDblclickEvent(e,z)})),Ne=1,Be=1;if(te&&ue.length){E=se[a+":"+b];if(E){var{rowspan:m,colspan:u}=E;if(!m||!u)return null;1<m&&($=!0,Be=m,O.rowspan=m),1<u&&($=!0,Ne=u,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K(z)||{};if(!d||!i)return null;1<d&&($=!0,Be=d,O.rowspan=d),1<i&&($=!0,Ne=i,O.colspan=i)}!(M=M&&$&&(1<O.colspan||1<O.rowspan)?!1:M)&&J&&(Ie||Oe)&&(ge.showStatus||ge.showUpdateStatus)&&(je=Xe.isUpdateByRow(t,o.field));A=g&&!n;let Ge=(0,_util.getCellRestHeight)($e,_,y,_e);L=U===N.length-1,j=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let We=!1;$||Q&&(0,_util.getRowid)(Xe,Q)===e||(g&&!W&&!me.immediate&&(a<pe.visibleStartIndex-pe.preloadSize||a>pe.visibleEndIndex+pe.preloadSize)||le&&!he.immediate&&!o.fixed&&(b<ce.visibleStartIndex-ce.preloadSize||b>ce.visibleEndIndex+ce.preloadSize))&&(We=!0),1<Be&&(v=de[a+Be-1])&&(r=ie[(0,_util.getRowid)(Xe,v)])&&(Ge+=r.oTop+(0,_util.getCellRestHeight)(r,_,y,_e)-$e.oTop-(0,_util.getCellRestHeight)($e,_,y,_e));C={};if(n&&ae){let l=0;if(1<Ne)for(let e=1;e<Ne;e++){var Ve=ne[Le+e];Ve&&(l+=Ve.renderWidth)}C.width=o.renderWidth+l-De+"px"}g||n||p||s?C.height=Ge+"px":C.minHeight=Ge+"px";R=[];M&&re?R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C})):(W&&R.push(...gl(e,z,Ge)),R.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:C,title:T?Xe.getCellLabel(t,o):null},We?[]:[(0,_vue.h)("div",{colid:I,rowid:e,class:"vxe-cell--wrapper"},o.renderCell(z))])),X&&S&&(c=S.rule,ve=qe?qe.valid:null,te=Object.assign(Object.assign(Object.assign({},z),S),{rule:S}),R.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,te)],style:c&&c.maxWidth?{width:c.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[ve?Xe.callSlot(ve,te):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)]])]))));let Pe=!1;return Y&&Ce.area&&Re&&((b||!0!==Re)&&Re!==o.field||(Pe=!0)),!M&&Me&&xe&&R.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!G||"none"===G}],onMousedown:e=>Xe.handleColResizeMousedownEvent(e,l,z),onDblclick:e=>Xe.handleColResizeDblclickEvent(e,z)})),(ze||we)&&y.resizable&&R.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Xe.handleRowResizeMousedownEvent(e,z),onDblclick:e=>Xe.handleRowResizeDblclickEvent(e,z)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",I,Se?"col--vertical-"+Se:"",h?"col--"+h:"",Ee?"col--"+Ee:"",{"col--last":L,"col--tree-node":ke,"col--edit":w,"col--ellipsis":n,"col--cs-height":p,"col--rs-height":s,"col--to-row":Pe,"col--auto-height":A,"fixed--width":!j,"fixed--hidden":M,"is--padding":Z,"is--progress":M&&re||We,"is--drag-cell":q&&(fe||be||!F),"is--drag-disabled":Ue,"col--dirty":je,"col--active":J&&w&&oe.row===t&&(oe.column===o||"row"===ge.mode),"col--valid-error":!!S,"col--current":ee===o},(0,_dom.getPropClass)(Ae,z),(0,_dom.getPropClass)(Te,z),(0,_dom.getPropClass)(V,z)],key:B||le||g||ye.useKey||y.useKey||ye.drag?I:U},O),{style:Object.assign({},_xeUtils.default.isFunction(He)?He(z):He,_xeUtils.default.isFunction(P)?P(z):P)}),x),H&&M?[]:R)},ie=(h,m,w,_)=>{let f=Xe.xeGrid,{stripe:b,rowKey:y,highlightHoverRow:C,rowClassName:R,rowStyle:D,editConfig:E,treeConfig:O}=Ke,{hasFixedColumn:I,treeExpandedFlag:S,isColLoading:M,scrollXLoad:T,scrollYLoad:k,isAllOverflow:z,rowExpandedFlag:q,expandColumn:$,selectRadioRow:A,pendingRowFlag:H,isDragColMove:F,rowExpandHeightFlag:L,isRowGroupStatus:j}=Ye,{fullAllDataRowIdData:U,fullColumnIdData:N,treeExpandedMaps:B,pendingRowMaps:G,rowExpandedMaps:W}=Je,Q=ol.value,Z=e.value,V=p.value,P=Qe.value,X=sl.value,K=nl.value,ee=l.value,{transform:Y,seqMode:le}=V,te=V.children||V.childrenField,J=[],ae=(0,_util.createHandleGetRowId)(Xe).handleGetRowId,oe=O||j;return w.forEach((a,o)=>{let r=ae(a);var i=U[r]||{};let s=o,n=0,d=-1,u=-1;var c=j&&a.isAggregate,p={},v=((X.isHover||C)&&(p.onMouseenter=e=>{pl()||Xe.triggerHoverEvent(e,{row:a,rowIndex:s})},p.onMouseleave=()=>{pl()||Xe.clearHoverRow()}),i&&(n=i.level,d=c||O&&Y&&"increasing"===le?i._index+1:i.seq,s=i.index,u=i._index),{$table:Xe,seq:d,rowid:r,fixed:h,type:renderType,level:n,row:a,rowIndex:s,$rowIndex:o,_rowIndex:u}),g=$&&!!q&&!!W[r];let e=!1,l=[],t=!1;E&&(t=Xe.isInsertByRow(a)),!O||k||Y||(l=a[te],e=!!S&&l&&0<l.length&&!!B[r]),!X.drag||j||O&&!Y||(p.onDragstart=Xe.handleRowDragDragstartEvent,p.onDragend=Xe.handleRowDragDragendEvent,p.onDragover=Xe.handleRowDragDragoverEvent);c=["vxe-body--row",oe?"row--level-"+n:"",{"row--stripe":b&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":Z.highlight&&Xe.eqRow(A,a),"row--checked":Q.highlight&&Xe.isCheckedByCheckboxRow(a),"row--pending":!!H&&!!G[r],"row--group":c},(0,_dom.getPropClass)(R,v)];let x=_.map((e,l)=>se(d,r,h,m,n,a,s,o,u,e,l,_,w));if(J.push(!M&&K.drag&&ee.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(F?"":"-disabled"),tag:"tr",class:c,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||T||k||X.useKey||X.drag||K.drag||j||O?r:o},p),{default:()=>x}):(0,_vue.h)("tr",Object.assign({class:c,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:y||T||k||X.useKey||X.drag||K.drag||j||O?r:o},p),x)),g){var{height:c,padding:v,mode:p}=re.value;if("fixed"===p)J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+r,rowid:r},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:`${L?i.expandHeight||c:0}px`}})]));else{g={},p=(c&&(g.height=c+"px"),O&&(g.paddingLeft=n*V.indent+30+"px"),$||{}).showOverflow,i=$.id,i=N[i]||{},p=_xeUtils.default.eqNull(p)?z:p;let e=-1,l=-1,t=-1;i&&(e=i.index,l=i.$index,t=i._index);i={$grid:f,$table:Xe,seq:d,column:$,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,type:renderType,level:n,row:a,rowid:r,rowIndex:s,$rowIndex:o,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+r},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!I,"col--ellipsis":p}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:g},[$.renderData(i)])])]))}}e&&J.push(...ie(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=k.fixedType,l=Je.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=A,l[e+"scroll"]=H,l[e+"table"]=F,l[e+"colgroup"]=L,l[e+"list"]=j,l[e+"xSpace"]=U,l[e+"ySpace"]=N,l[e+"emptyBlock"]=B})}),(0,_vue.onUnmounted)(()=>{var e=k.fixedType,l=Je.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=q.slots,l=Xe.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:o}=k;var{spanMethod:r,footerSpanMethod:i,mouseConfig:s}=Ke,{isGroup:n,tableData:d,isRowLoading:u,isColLoading:c,overflowX:p,scrollXLoad:v,scrollYLoad:g,isAllOverflow:x,isDragRowMove:h,expandColumn:m,dragRow:w,dragCol:_}=Ye,{visibleColumn:f,fullAllDataRowIdData:b,fullColumnIdData:y}=Je,C=sl.value,R=$.value,D=Ze.value,E=dl.value,O=re.value;let I=d,S=o,M=!1;!(v||g||x)||m&&"fixed"!==O.mode||r||i||(M=!0),c||!a&&p||(S=f),a&&M&&(S=t||[]),g&&w&&2<I.length&&(d=b[(0,_util.getRowid)(Xe,w)])&&(x=d._index,m=I[0],O=I[I.length-1],r=b[(0,_util.getRowid)(Xe,m)],i=b[(0,_util.getRowid)(Xe,O)],r)&&i&&(p=r._index,f=i._index,x<p?I=[w].concat(I):f<x&&(I=I.concat([w]))),a||n||v&&_&&2<S.length&&(g=y[_.id])&&(d=g._index,m=S[0],b=S[S.length-1],O=y[m.id],r=y[b.id],O)&&r&&(i=O._index,p=r._index,d<i?S=[_].concat(S):p<d&&(S=S.concat([_])));let T;f=e?e.empty:null,x={$table:Xe,$grid:l},T=f?Xe.callSlot(f,x):(n=(w=R.name?renderer.get(R.name):null)?w.renderTableEmpty||w.renderTableEmptyView||w.renderEmpty:null)?(0,_vn.getSlotVNs)(n(R,x)):Ke.emptyText||getI18n("vxe.table.emptyText"),v={onScroll(e){Xe.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:A,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:z},[(0,_vue.h)("div",Object.assign({ref:H,class:"vxe-table--body-inner-wrapper"},v),[a?renderEmptyElement(Xe):(0,_vue.h)("div",{ref:U,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:F,class:"vxe-table--body",xid:z,cellspacing:0,cellpadding:0,border:0,xvm:M?"1":null},[(0,_vue.h)("colgroup",{ref:L},S.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),!u&&!c&&C.drag&&E.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:j,name:"vxe-body--row-list"+(h?"":"-disabled"),tag:"tbody"},{default:()=>ie(a,M,I,S)}):(0,_vue.h)("tbody",{ref:j},ie(a,M,I,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&D.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},D.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Xe.triggerCellAreaExtendMousedownEvent&&Xe.triggerCellAreaExtendMousedownEvent(e,{$table:Xe,fixed:a,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Xe),a?renderEmptyElement(Xe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:B},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},T)])])])}}});
@@ -204,6 +204,17 @@ function renderHeaderCellBaseVNs(params, content) {
204
204
  const vns = [renderTitlePrefixIcon(params), renderHeaderCellDragIcon(params), ...(_xeUtils.default.isArray(content) ? content : [content]), renderTitleSuffixIcon(params)];
205
205
  return vns;
206
206
  }
207
+ function getRenderDefaultColumnTitle(column, content) {
208
+ if (column.type === 'html' && _xeUtils.default.isString(content)) {
209
+ return (0, _vue.h)('span', {
210
+ key: 'ch',
211
+ innerHTML: content
212
+ });
213
+ }
214
+ return (0, _vue.h)('span', {
215
+ key: 'ct'
216
+ }, (0, _vn.getSlotVNs)(content));
217
+ }
207
218
  function renderTitleContent(params, content) {
208
219
  const {
209
220
  $table,
@@ -218,7 +229,9 @@ function renderTitleContent(params, content) {
218
229
  showHeaderOverflow: allColumnHeaderOverflow
219
230
  } = tableProps;
220
231
  const {
221
- type,
232
+ isRowGroupStatus
233
+ } = tableReactData;
234
+ const {
222
235
  showHeaderOverflow
223
236
  } = column;
224
237
  const tooltipOpts = computeTooltipOpts.value;
@@ -249,12 +262,10 @@ function renderTitleContent(params, content) {
249
262
  }
250
263
  };
251
264
  }
252
- return [type === 'html' && _xeUtils.default.isString(content) ? (0, _vue.h)('span', Object.assign({
253
- class: 'vxe-cell--title',
254
- innerHTML: content
255
- }, ons)) : (0, _vue.h)('span', Object.assign({
265
+ const titleVN = getRenderDefaultColumnTitle(column, content);
266
+ return [(0, _vue.h)('span', Object.assign({
256
267
  class: 'vxe-cell--title'
257
- }, ons), (0, _vn.getSlotVNs)(content))];
268
+ }, ons), isRowGroupStatus && column.aggFunc && $table.getPivotTableAggregateRenderColTitles ? $table.getPivotTableAggregateRenderColTitles(column, titleVN) : [titleVN])];
258
269
  }
259
270
  function getFooterContent(params) {
260
271
  const {