vxe-table 4.12.0-beta.9 → 4.12.1

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 (185) hide show
  1. package/es/grid/src/grid.js +45 -36
  2. package/es/locale/lang/ar-EG.js +7 -1
  3. package/es/locale/lang/de-DE.js +7 -1
  4. package/es/locale/lang/en-US.js +7 -1
  5. package/es/locale/lang/es-ES.js +7 -1
  6. package/es/locale/lang/fr-FR.js +7 -1
  7. package/es/locale/lang/hu-HU.js +7 -1
  8. package/es/locale/lang/hy-AM.js +7 -1
  9. package/es/locale/lang/id-ID.js +7 -1
  10. package/es/locale/lang/it-IT.js +7 -1
  11. package/es/locale/lang/ja-JP.js +7 -1
  12. package/es/locale/lang/ko-KR.js +7 -1
  13. package/es/locale/lang/nb-NO.js +7 -1
  14. package/es/locale/lang/pt-BR.js +7 -1
  15. package/es/locale/lang/ru-RU.js +7 -1
  16. package/es/locale/lang/th-TH.js +7 -1
  17. package/es/locale/lang/ug-CN.js +7 -1
  18. package/es/locale/lang/uk-UA.js +7 -1
  19. package/es/locale/lang/vi-VN.js +7 -1
  20. package/es/locale/lang/zh-CHT.js +7 -1
  21. package/es/locale/lang/zh-CN.js +7 -1
  22. package/es/style.css +1 -1
  23. package/es/table/module/custom/hook.js +1 -1
  24. package/es/table/module/custom/panel.js +4 -2
  25. package/es/table/module/edit/hook.js +29 -33
  26. package/es/table/module/export/export-panel.js +3 -2
  27. package/es/table/module/export/import-panel.js +3 -2
  28. package/es/table/module/filter/panel.js +12 -2
  29. package/es/table/module/keyboard/hook.js +105 -30
  30. package/es/table/module/menu/hook.js +2 -1
  31. package/es/table/module/validator/hook.js +4 -5
  32. package/es/table/render/index.js +3 -3
  33. package/es/table/src/body.js +45 -27
  34. package/es/table/src/cell.js +43 -24
  35. package/es/table/src/columnInfo.js +2 -2
  36. package/es/table/src/footer.js +12 -7
  37. package/es/table/src/header.js +12 -7
  38. package/es/table/src/props.js +4 -0
  39. package/es/table/src/table.js +501 -512
  40. package/es/table/src/util.js +34 -6
  41. package/es/ui/index.js +4 -3
  42. package/es/ui/src/log.js +1 -1
  43. package/helper/vetur/attributes.json +1 -1
  44. package/helper/vetur/tags.json +1 -1
  45. package/lib/grid/src/grid.js +42 -40
  46. package/lib/grid/src/grid.min.js +1 -1
  47. package/lib/index.umd.js +12594 -1185
  48. package/lib/index.umd.min.js +1 -1
  49. package/lib/locale/lang/ar-EG.js +7 -1
  50. package/lib/locale/lang/ar-EG.min.js +1 -1
  51. package/lib/locale/lang/de-DE.js +7 -1
  52. package/lib/locale/lang/de-DE.min.js +1 -1
  53. package/lib/locale/lang/en-US.js +7 -1
  54. package/lib/locale/lang/en-US.min.js +1 -1
  55. package/lib/locale/lang/en-US.umd.js +7 -1
  56. package/lib/locale/lang/es-ES.js +7 -1
  57. package/lib/locale/lang/es-ES.min.js +1 -1
  58. package/lib/locale/lang/es-ES.umd.js +7 -1
  59. package/lib/locale/lang/fr-FR.js +7 -1
  60. package/lib/locale/lang/fr-FR.min.js +1 -1
  61. package/lib/locale/lang/hu-HU.js +7 -1
  62. package/lib/locale/lang/hu-HU.min.js +1 -1
  63. package/lib/locale/lang/hu-HU.umd.js +7 -1
  64. package/lib/locale/lang/hy-AM.js +7 -1
  65. package/lib/locale/lang/hy-AM.min.js +1 -1
  66. package/lib/locale/lang/id-ID.js +7 -1
  67. package/lib/locale/lang/id-ID.min.js +1 -1
  68. package/lib/locale/lang/it-IT.js +7 -1
  69. package/lib/locale/lang/it-IT.min.js +1 -1
  70. package/lib/locale/lang/ja-JP.js +7 -1
  71. package/lib/locale/lang/ja-JP.min.js +1 -1
  72. package/lib/locale/lang/ja-JP.umd.js +7 -1
  73. package/lib/locale/lang/ko-KR.js +7 -1
  74. package/lib/locale/lang/ko-KR.min.js +1 -1
  75. package/lib/locale/lang/ko-KR.umd.js +7 -1
  76. package/lib/locale/lang/nb-NO.js +7 -1
  77. package/lib/locale/lang/nb-NO.min.js +1 -1
  78. package/lib/locale/lang/pt-BR.js +7 -1
  79. package/lib/locale/lang/pt-BR.min.js +1 -1
  80. package/lib/locale/lang/pt-BR.umd.js +7 -1
  81. package/lib/locale/lang/ru-RU.js +7 -1
  82. package/lib/locale/lang/ru-RU.min.js +1 -1
  83. package/lib/locale/lang/ru-RU.umd.js +7 -1
  84. package/lib/locale/lang/th-TH.js +7 -1
  85. package/lib/locale/lang/th-TH.min.js +1 -1
  86. package/lib/locale/lang/ug-CN.js +7 -1
  87. package/lib/locale/lang/ug-CN.min.js +1 -1
  88. package/lib/locale/lang/uk-UA.js +7 -1
  89. package/lib/locale/lang/uk-UA.min.js +1 -1
  90. package/lib/locale/lang/uk-UA.umd.js +7 -1
  91. package/lib/locale/lang/vi-VN.js +7 -1
  92. package/lib/locale/lang/vi-VN.min.js +1 -1
  93. package/lib/locale/lang/zh-CHT.js +7 -1
  94. package/lib/locale/lang/zh-CHT.min.js +1 -1
  95. package/lib/locale/lang/zh-CN.js +7 -1
  96. package/lib/locale/lang/zh-CN.min.js +1 -1
  97. package/lib/locale/lang/zh-CN.umd.js +7 -1
  98. package/lib/style.css +1 -1
  99. package/lib/table/module/custom/hook.js +1 -1
  100. package/lib/table/module/custom/hook.min.js +1 -1
  101. package/lib/table/module/custom/panel.js +4 -2
  102. package/lib/table/module/custom/panel.min.js +1 -1
  103. package/lib/table/module/edit/hook.js +36 -45
  104. package/lib/table/module/edit/hook.min.js +1 -1
  105. package/lib/table/module/export/export-panel.js +3 -2
  106. package/lib/table/module/export/export-panel.min.js +1 -1
  107. package/lib/table/module/export/import-panel.js +3 -2
  108. package/lib/table/module/export/import-panel.min.js +1 -1
  109. package/lib/table/module/filter/panel.js +8 -2
  110. package/lib/table/module/filter/panel.min.js +1 -1
  111. package/lib/table/module/keyboard/hook.js +113 -31
  112. package/lib/table/module/keyboard/hook.min.js +1 -1
  113. package/lib/table/module/menu/hook.js +2 -1
  114. package/lib/table/module/menu/hook.min.js +1 -1
  115. package/lib/table/module/validator/hook.js +6 -10
  116. package/lib/table/module/validator/hook.min.js +1 -1
  117. package/lib/table/render/index.js +4 -3
  118. package/lib/table/render/index.min.js +1 -1
  119. package/lib/table/src/body.js +53 -26
  120. package/lib/table/src/body.min.js +1 -1
  121. package/lib/table/src/cell.js +49 -25
  122. package/lib/table/src/cell.min.js +1 -1
  123. package/lib/table/src/columnInfo.js +2 -4
  124. package/lib/table/src/columnInfo.min.js +1 -1
  125. package/lib/table/src/footer.js +12 -5
  126. package/lib/table/src/footer.min.js +1 -1
  127. package/lib/table/src/header.js +12 -5
  128. package/lib/table/src/header.min.js +1 -1
  129. package/lib/table/src/props.js +4 -0
  130. package/lib/table/src/props.min.js +1 -1
  131. package/lib/table/src/table.js +594 -564
  132. package/lib/table/src/table.min.js +1 -1
  133. package/lib/table/src/util.js +36 -6
  134. package/lib/table/src/util.min.js +1 -1
  135. package/lib/ui/index.js +4 -3
  136. package/lib/ui/index.min.js +1 -1
  137. package/lib/ui/src/log.js +1 -1
  138. package/lib/ui/src/log.min.js +1 -1
  139. package/package.json +2 -2
  140. package/packages/grid/src/grid.ts +49 -42
  141. package/packages/locale/lang/ar-EG.ts +7 -1
  142. package/packages/locale/lang/de-DE.ts +7 -1
  143. package/packages/locale/lang/en-US.ts +7 -1
  144. package/packages/locale/lang/es-ES.ts +7 -1
  145. package/packages/locale/lang/fr-FR.ts +7 -1
  146. package/packages/locale/lang/hu-HU.ts +7 -1
  147. package/packages/locale/lang/hy-AM.ts +7 -1
  148. package/packages/locale/lang/id-ID.ts +7 -1
  149. package/packages/locale/lang/it-IT.ts +7 -1
  150. package/packages/locale/lang/ja-JP.ts +7 -1
  151. package/packages/locale/lang/ko-KR.ts +7 -1
  152. package/packages/locale/lang/nb-NO.ts +7 -1
  153. package/packages/locale/lang/pt-BR.ts +7 -1
  154. package/packages/locale/lang/ru-RU.ts +7 -1
  155. package/packages/locale/lang/th-TH.ts +7 -1
  156. package/packages/locale/lang/ug-CN.ts +7 -1
  157. package/packages/locale/lang/uk-UA.ts +7 -1
  158. package/packages/locale/lang/vi-VN.ts +7 -1
  159. package/packages/locale/lang/zh-CHT.ts +7 -1
  160. package/packages/locale/lang/zh-CN.ts +7 -1
  161. package/packages/table/module/custom/hook.ts +1 -1
  162. package/packages/table/module/custom/panel.ts +6 -2
  163. package/packages/table/module/edit/hook.ts +30 -33
  164. package/packages/table/module/export/export-panel.ts +4 -2
  165. package/packages/table/module/export/import-panel.ts +4 -2
  166. package/packages/table/module/filter/panel.ts +12 -2
  167. package/packages/table/module/keyboard/hook.ts +106 -32
  168. package/packages/table/module/menu/hook.ts +3 -1
  169. package/packages/table/module/validator/hook.ts +5 -5
  170. package/packages/table/render/index.ts +3 -4
  171. package/packages/table/src/body.ts +46 -27
  172. package/packages/table/src/cell.ts +43 -24
  173. package/packages/table/src/columnInfo.ts +3 -2
  174. package/packages/table/src/footer.ts +13 -7
  175. package/packages/table/src/header.ts +13 -7
  176. package/packages/table/src/props.ts +4 -0
  177. package/packages/table/src/table.ts +513 -518
  178. package/packages/table/src/util.ts +39 -6
  179. package/packages/ui/index.ts +3 -2
  180. /package/es/{iconfont.1741337003908.ttf → iconfont.1743045589885.ttf} +0 -0
  181. /package/es/{iconfont.1741337003908.woff → iconfont.1743045589885.woff} +0 -0
  182. /package/es/{iconfont.1741337003908.woff2 → iconfont.1743045589885.woff2} +0 -0
  183. /package/lib/{iconfont.1741337003908.ttf → iconfont.1743045589885.ttf} +0 -0
  184. /package/lib/{iconfont.1741337003908.woff → iconfont.1743045589885.woff} +0 -0
  185. /package/lib/{iconfont.1741337003908.woff2 → iconfont.1743045589885.woff2} +0 -0
@@ -41,6 +41,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
41
41
  const {
42
42
  computeEditOpts,
43
43
  computeMouseOpts,
44
+ computeCellOffsetWidth,
44
45
  computeAreaOpts,
45
46
  computeDefaultRowHeight,
46
47
  computeEmptyOpts,
@@ -76,7 +77,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
76
77
  } = tableReactData;
77
78
  return !!(isDragResize || lastScrollTime && Date.now() < lastScrollTime + delayHover);
78
79
  };
79
- const renderLine = (params, cellHeight) => {
80
+ const renderLine = (rowid, params, cellHeight) => {
80
81
  const {
81
82
  row,
82
83
  column
@@ -98,7 +99,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
98
99
  if (slots && slots.line) {
99
100
  return $xeTable.callSlot(slots.line, params);
100
101
  }
101
- const rowid = (0, _util.getRowid)($xeTable, row);
102
102
  const rest = fullAllDataRowIdData[rowid];
103
103
  let rLevel = 0;
104
104
  let prevRow = null;
@@ -126,8 +126,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
126
126
  * 渲染列
127
127
  */
128
128
  const renderTdColumn = (seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, columns, items) => {
129
+ const $xeGrid = $xeTable.xeGrid;
129
130
  const {
130
- fullAllDataRowIdData
131
+ fullAllDataRowIdData,
132
+ fullColumnIdData,
133
+ visibleColumn
131
134
  } = tableInternalData;
132
135
  const {
133
136
  columnKey,
@@ -154,6 +157,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
154
157
  scrollYLoad,
155
158
  calcCellHeightFlag,
156
159
  resizeHeightFlag,
160
+ resizeWidthFlag,
157
161
  mergeList,
158
162
  editStore,
159
163
  isAllOverflow,
@@ -186,6 +190,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
186
190
  const columnOpts = computeColumnOpts.value;
187
191
  const mouseOpts = computeMouseOpts.value;
188
192
  const areaOpts = computeAreaOpts.value;
193
+ const cellOffsetWidth = computeCellOffsetWidth.value;
189
194
  const {
190
195
  selectCellToRow
191
196
  } = areaOpts;
@@ -208,15 +213,16 @@ var _default = exports.default = (0, _vue.defineComponent)({
208
213
  const {
209
214
  actived
210
215
  } = editStore;
211
- const rowRest = fullAllDataRowIdData[rowid];
216
+ const rowRest = fullAllDataRowIdData[rowid] || {};
212
217
  const colid = column.id;
218
+ const colRest = fullColumnIdData[colid] || {};
213
219
  const renderOpts = editRender || cellRender;
214
220
  const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
215
221
  const compCellClassName = compConf ? compConf.tableCellClassName || compConf.cellClassName : null;
216
222
  const compCellStyle = compConf ? compConf.tableCellStyle || compConf.cellStyle : '';
217
223
  const showAllTip = tooltipOpts.showAll;
218
- const columnIndex = $xeTable.getColumnIndex(column);
219
- const _columnIndex = $xeTable.getVTColumnIndex(column);
224
+ const columnIndex = colRest.index;
225
+ const _columnIndex = colRest._index;
220
226
  const isEdit = (0, _utils.isEnableConf)(editRender);
221
227
  const resizeHeight = resizeHeightFlag ? rowRest.resizeHeight : 0;
222
228
  let fixedHiddenColumn = fixedType ? column.fixed !== fixedType : column.fixed && overflowX;
@@ -240,7 +246,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
240
246
  };
241
247
  const cellParams = {
242
248
  $table: $xeTable,
243
- $grid: $xeTable.xegrid,
249
+ $grid: $xeGrid,
244
250
  isEdit: false,
245
251
  seq,
246
252
  rowid,
@@ -379,6 +385,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
379
385
  }
380
386
  }
381
387
  const tcStyle = {};
388
+ if (hasEllipsis && resizeWidthFlag) {
389
+ let tsColspan = tdAttrs.colspan || 0;
390
+ if (tsColspan > 1) {
391
+ for (let index = 1; index < tsColspan; index++) {
392
+ const nextColumn = visibleColumn[columnIndex + index];
393
+ if (nextColumn) {
394
+ tsColspan += nextColumn.renderWidth;
395
+ }
396
+ }
397
+ }
398
+ tcStyle.width = `${column.renderWidth - cellOffsetWidth * tsColspan}px`;
399
+ }
382
400
  if (scrollYLoad || hasEllipsis || isCsHeight || isRsHeight) {
383
401
  tcStyle.height = `${cellHeight}px`;
384
402
  } else {
@@ -397,7 +415,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
397
415
  }));
398
416
  } else {
399
417
  // 渲染单元格
400
- tdVNs.push(...renderLine(cellParams, cellHeight), (0, _vue.h)('div', {
418
+ tdVNs.push(...renderLine(rowid, cellParams, cellHeight), (0, _vue.h)('div', {
401
419
  key: 'tc',
402
420
  class: ['vxe-cell', {
403
421
  'c--title': showTitle,
@@ -492,20 +510,23 @@ var _default = exports.default = (0, _vue.defineComponent)({
492
510
  } = tableProps;
493
511
  const {
494
512
  hasFixedColumn,
495
- treeExpandedMaps,
513
+ treeExpandedFlag,
496
514
  isColLoading,
497
515
  scrollXLoad,
498
516
  scrollYLoad,
499
517
  isAllOverflow,
500
- rowExpandedMaps,
518
+ rowExpandedFlag,
501
519
  expandColumn,
502
520
  selectRadioRow,
503
- pendingRowMaps,
521
+ pendingRowFlag,
504
522
  isDragColMove,
505
523
  rowExpandHeightFlag
506
524
  } = tableReactData;
507
525
  const {
508
- fullAllDataRowIdData
526
+ fullAllDataRowIdData,
527
+ treeExpandedMaps,
528
+ pendingRowMaps,
529
+ rowExpandedMaps
509
530
  } = tableInternalData;
510
531
  const checkboxOpts = computeCheckboxOpts.value;
511
532
  const radioOpts = computeRadioOpts.value;
@@ -520,11 +541,17 @@ var _default = exports.default = (0, _vue.defineComponent)({
520
541
  } = treeOpts;
521
542
  const childrenField = treeOpts.children || treeOpts.childrenField;
522
543
  const rows = [];
544
+ const {
545
+ handleGetRowId
546
+ } = (0, _util.createHandleGetRowId)($xeTable);
523
547
  tableData.forEach((row, $rowIndex) => {
524
- const trOn = {};
548
+ const rowid = handleGetRowId(row);
549
+ const rowRest = fullAllDataRowIdData[rowid] || {};
525
550
  let rowIndex = $rowIndex;
526
- // 确保任何情况下 rowIndex 都精准指向真实 data 索引
527
- rowIndex = $xeTable.getRowIndex(row);
551
+ let rowLevel = 0;
552
+ let seq = -1;
553
+ let _rowIndex = -1;
554
+ const trOn = {};
528
555
  // 当前行事件
529
556
  if (rowOpts.isHover || highlightHoverRow) {
530
557
  trOn.onMouseenter = evnt => {
@@ -543,11 +570,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
543
570
  $xeTable.clearHoverRow();
544
571
  };
545
572
  }
546
- const rowid = (0, _util.getRowid)($xeTable, row);
547
- const rowRest = fullAllDataRowIdData[rowid];
548
- let rowLevel = 0;
549
- let seq = -1;
550
- let _rowIndex = 0;
551
573
  if (rowRest) {
552
574
  rowLevel = rowRest.level;
553
575
  if (treeConfig && transform && seqMode === 'increasing') {
@@ -555,6 +577,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
555
577
  } else {
556
578
  seq = rowRest.seq;
557
579
  }
580
+ rowIndex = rowRest.index;
558
581
  _rowIndex = rowRest._index;
559
582
  }
560
583
  const params = {
@@ -570,7 +593,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
570
593
  _rowIndex
571
594
  };
572
595
  // 行是否被展开
573
- const isExpandRow = expandColumn && !!rowExpandedMaps[rowid];
596
+ const isExpandRow = expandColumn && !!rowExpandedFlag && !!rowExpandedMaps[rowid];
574
597
  // 树节点是否被展开
575
598
  let isExpandTree = false;
576
599
  let rowChildren = [];
@@ -580,7 +603,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
580
603
  }
581
604
  if (treeConfig && !scrollYLoad && !transform) {
582
605
  rowChildren = row[childrenField];
583
- isExpandTree = rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
606
+ isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
584
607
  }
585
608
  // 拖拽行事件
586
609
  if (rowOpts.drag && (!treeConfig || transform)) {
@@ -596,7 +619,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
596
619
  'row--new': isNewRow && (editOpts.showStatus || editOpts.showInsertStatus),
597
620
  'row--radio': radioOpts.highlight && $xeTable.eqRow(selectRadioRow, row),
598
621
  'row--checked': checkboxOpts.highlight && $xeTable.isCheckedByCheckboxRow(row),
599
- 'row--pending': !!pendingRowMaps[rowid]
622
+ 'row--pending': !!pendingRowFlag && !!pendingRowMaps[rowid]
600
623
  }, (0, _dom.getPropClass)(rowClassName, params)];
601
624
  const tdVNs = tableColumn.map((column, $columnIndex) => {
602
625
  return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
@@ -726,6 +749,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
726
749
  const {
727
750
  slots
728
751
  } = tableContext;
752
+ const $xeGrid = $xeTable.xeGrid;
729
753
  const {
730
754
  fixedColumn,
731
755
  fixedType,
@@ -771,7 +795,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
771
795
  isOptimizeMode = true;
772
796
  }
773
797
  }
774
- if (fixedType || !overflowX) {
798
+ if (!isColLoading && (fixedType || !overflowX)) {
775
799
  renderColumnList = visibleColumn;
776
800
  }
777
801
  if (fixedType) {
@@ -830,7 +854,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
830
854
  if (emptySlot) {
831
855
  emptyContent = $xeTable.callSlot(emptySlot, {
832
856
  $table: $xeTable,
833
- $grid: $xeTable.xegrid
857
+ $grid: $xeGrid
834
858
  });
835
859
  } else {
836
860
  const compConf = emptyOpts.name ? renderer.get(emptyOpts.name) : null;
@@ -877,7 +901,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
877
901
  }, renderColumnList.map((column, $columnIndex) => {
878
902
  return (0, _vue.h)('col', {
879
903
  name: column.id,
880
- key: $columnIndex
904
+ key: $columnIndex,
905
+ style: {
906
+ width: `${column.renderWidth}px`
907
+ }
881
908
  });
882
909
  })),
883
910
  /**
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(T){let qe=(0,_vue.inject)("$xeTable",{}),{xID:k,props:Ae,context:z,reactData:$e,internalData:Ue}=qe,{computeEditOpts:Le,computeMouseOpts:je,computeAreaOpts:He,computeDefaultRowHeight:Ne,computeEmptyOpts:q,computeTooltipOpts:Fe,computeRadioOpts:e,computeExpandOpts:J,computeTreeOpts:c,computeCheckboxOpts:Be,computeCellOpts:Pe,computeValidOpts:Ke,computeRowOpts:Ve,computeColumnOpts:Xe,computeRowDragOpts:We,computeColumnDragOpts:l,computeResizableOpts:Ye}=qe.getComputeMaps(),A=(0,_vue.ref)(),$=(0,_vue.ref)(),U=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),H=(0,_vue.ref)(),N=(0,_vue.ref)(),F=(0,_vue.ref)(),Ge=()=>{var e=Ae.delayHover,{lastScrollTime:l,isDragResize:t}=$e;return!!(t||l&&Date.now()<l+e)},Je=(e,l)=>{var{row:t,column:a}=e,o=Ue.afterFullData,r=Ae.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=Ue.fullAllDataRowIdData;if(a&&a.line)return qe.callSlot(a.line,e);a=n[(0,_util.getRowid)(qe,t)];let d=0,u=null;a&&(d=a.level,u=a.items[a.treeIndex-1]);n=qe.eqRow(o[0],t);return r&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:(0,_util.calcTreeLine)(e,u)}px`,bottom:`-${Math.floor(l/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(qe):0)+16+"px"}})])]:[]},Q=(e,l,t,$,U,a,L,o,r,i,j,H,s)=>{var n=Ue.fullAllDataRowIdData,{columnKey:N,resizable:d,showOverflow:u,border:F,height:c,cellClassName:B,cellStyle:P,align:K,spanMethod:V,mouseConfig:X,editConfig:W,editRules:v,tooltipConfig:p,padding:g}=Ae,{tableData:x,dragRow:Y,overflowX:G,currentColumn:J,scrollXLoad:Q,scrollYLoad:h,calcCellHeightFlag:w,resizeHeightFlag:m,mergeList:Z,editStore:ee,isAllOverflow:le,validErrorMaps:_}=$e,{afterFullData:te,scrollXStore:b,scrollYStore:ae}=Ue,oe=Pe.value,f=Ke.value,re=Be.value,ie=Le.value,se=Fe.value,{isAllColumnDrag:ne,isAllRowDrag:de}=Ye.value,y=Ve.value,C=We.value,ue=Ne.value,w=w?oe.height||y.height:0,{disabledMethod:R,isCrossDrag:ce,isPeerDrag:ve}=C,pe=Xe.value,ge=je.value,xe=He.value.selectCellToRow,{type:he,cellRender:we,editRender:me,align:_e,showOverflow:be,className:fe,treeNode:ye,rowResize:Ce,padding:D,verticalAlign:E,slots:Re}=i,O=oe.verticalAlign,ee=ee.actived,n=n[l],M=i.id,S=me||we,S=S?renderer.get(S.name):null,De=S?S.tableCellClassName||S.cellClassName:null,Ee=S?S.tableCellStyle||S.cellStyle:"";let Oe=se.showAll;var se=qe.getColumnIndex(i),I=qe.getVTColumnIndex(i),Me=(0,_utils.isEnableConf)(me),m=m?n.resizeHeight:0;let T=t?i.fixed!==t:i.fixed&&G;G=_xeUtils.default.eqNull(D)?null===g?oe.padding:g:D,g=_xeUtils.default.eqNull(be)?u:be,D="ellipsis"===g;let k="title"===g,z=!0===g||"tooltip"===g;u=le||k||z||D,be=_xeUtils.default.isBoolean(i.resizable)?i.resizable:pe.resizable||d,g=!!w,d=0<m;let Se;w={},m=_e||(S?S.tableCellAlign:"")||K,_e=_xeUtils.default.eqNull(E)?O:E,S=_[l+":"+M],K=v&&f.showMessage&&("default"===f.message?c||1<x.length:"inline"===f.message),O={colid:M};let q={$table:qe,$grid:qe.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:L,$rowIndex:o,_rowIndex:r,column:i,columnIndex:se,$columnIndex:j,_columnIndex:I,fixed:t,type:renderType,isHidden:!!T,level:U,visibleData:te,data:x,items:s},A=!1,Ie=!1,Te=((A=y.drag?"row"===C.trigger||i.dragSort&&"cell"===C.trigger:A)&&(Ie=!(!R||!R(q))),(k||z||Oe||p)&&(w.onMouseenter=e=>{Ge()||(k?(0,_dom.updateCellTitle)(e.currentTarget,i):(z||Oe)&&qe.triggerBodyTooltipEvent(e,q),qe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(z||Oe||p)&&(w.onMouseleave=e=>{Ge()||((z||Oe)&&qe.handleTargetLeaveEvent(e),qe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),(A||re.range||X)&&(w.onMousedown=e=>{qe.triggerCellMousedownEvent(e,q)}),A&&(w.onMouseup=qe.triggerCellMouseupEvent),w.onClick=e=>{qe.triggerCellClickEvent(e,q)},!(w.onDblclick=e=>{qe.triggerCellDblclickEvent(e,q)}));if(Z.length){E=(0,_util.mergeBodyMethod)(Z,r,I);if(E){var{rowspan:_,colspan:v}=E;if(!_||!v)return null;1<_&&(Te=!0,O.rowspan=_),1<v&&(Te=!0,O.colspan=v)}}else if(V){var{rowspan:c=1,colspan:e=1}=V(q)||{};if(!c||!e)return null;1<c&&(O.rowspan=c),1<e&&(O.colspan=e)}!(T=T&&Z&&(1<O.colspan||1<O.rowspan)?!1:T)&&W&&(me||we)&&(ie.showStatus||ie.showUpdateStatus)&&(Se=qe.isUpdateByRow(a,i.field));L=h&&!u,o=n.resizeHeight||oe.height||y.height||n.height||ue,se=j===H.length-1,te=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let ke=!1;Te||Y&&(0,_util.getRowid)(qe,Y)===l||(h&&(r<ae.visibleStartIndex-ae.preloadSize||r>ae.visibleEndIndex+ae.preloadSize)||Q&&!i.fixed&&(I<b.visibleStartIndex-b.preloadSize||I>b.visibleEndIndex+b.preloadSize))&&(ke=!0);x={},h||u||g||d?x.height=o+"px":x.minHeight=o+"px",s=[];T&&le?s.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":z,"c--ellipsis":D}],style:x})):(s.push(...Je(q,o),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":k,"c--tooltip":z,"c--ellipsis":D}],style:x,title:k?qe.getCellLabel(a,i):null},ke?[]:[(0,_vue.h)("div",{colid:M,rowid:l,class:"vxe-cell--wrapper"},i.renderCell(q))])),K&&S&&(C=S.rule,R=Re?Re.valid:null,p=Object.assign(Object.assign(Object.assign({},q),S),{rule:S}),s.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,p)],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")},[R?qe.callSlot(R,p):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)]])]))));let ze=!1;return X&&ge.area&&xe&&((I||!0!==xe)&&xe!==i.field||(ze=!0)),!T&&be&&ne&&s.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!F||"none"===F}],onMousedown:e=>qe.handleColResizeMousedownEvent(e,t,q),onDblclick:e=>qe.handleColResizeDblclickEvent(e,q)})),(Ce||de)&&y.resizable&&s.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>qe.handleRowResizeMousedownEvent(e,q),onDblclick:e=>qe.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",M,_e?"col--vertical-"+_e:"",m?"col--"+m:"",he?"col--"+he:"",{"col--last":se,"col--tree-node":ye,"col--edit":Me,"col--ellipsis":u,"col--cs-height":g,"col--rs-height":d,"col--to-row":ze,"col--auto-height":L,"fixed--width":!te,"fixed--hidden":T,"is--padding":G,"is--progress":T&&le||ke,"is--drag-cell":A&&(ce||ve||!U),"is--drag-disabled":Ie,"col--dirty":Se,"col--active":W&&Me&&ee.row===a&&(ee.column===i||"row"===ie.mode),"col--valid-error":!!S,"col--current":J===i},(0,_dom.getPropClass)(De,q),(0,_dom.getPropClass)(fe,q),(0,_dom.getPropClass)(B,q)],key:N||Q||h||pe.useKey||y.useKey||pe.drag?M:j},O),{style:Object.assign({},_xeUtils.default.isFunction(Ee)?Ee(q):Ee,_xeUtils.default.isFunction(P)?P(q):P)}),w),$&&T?[]:s)},Z=(h,w,m,_)=>{let{stripe:b,rowKey:f,highlightHoverRow:y,rowClassName:C,rowStyle:R,editConfig:D,treeConfig:E}=Ae,{hasFixedColumn:O,treeExpandedMaps:M,isColLoading:S,scrollXLoad:I,scrollYLoad:T,isAllOverflow:k,rowExpandedMaps:z,expandColumn:q,selectRadioRow:A,pendingRowMaps:$,isDragColMove:U,rowExpandHeightFlag:L}=$e,j=Ue.fullAllDataRowIdData,H=Be.value,N=e.value,F=c.value,B=Le.value,P=Ve.value,K=Xe.value,V=l.value,{transform:X,seqMode:W}=F,Y=F.children||F.childrenField,G=[];return m.forEach((t,a)=>{var e={};let o,r=(o=qe.getRowIndex(t),(P.isHover||y)&&(e.onMouseenter=e=>{Ge()||qe.triggerHoverEvent(e,{row:t,rowIndex:o})},e.onMouseleave=()=>{Ge()||qe.clearHoverRow()}),(0,_util.getRowid)(qe,t));var l=j[r];let i=0,s=-1,n=0;l&&(i=l.level,s=E&&X&&"increasing"===W?l._index+1:l.seq,n=l._index);var d={$table:qe,seq:s,rowid:r,fixed:h,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n},u=q&&!!z[r];let c=!1,v=[],p=!1;D&&(p=qe.isInsertByRow(t)),!E||T||X||(v=t[Y],c=v&&0<v.length&&!!M[r]),!P.drag||E&&!X||(e.onDragstart=qe.handleRowDragDragstartEvent,e.onDragend=qe.handleRowDragDragendEvent,e.onDragover=qe.handleRowDragDragoverEvent);var g=["vxe-body--row",E?"row--level-"+i:"",{"row--stripe":b&&(n+1)%2==0,"is--new":p,"is--expand-row":u,"is--expand-tree":c,"row--new":p&&(B.showStatus||B.showInsertStatus),"row--radio":N.highlight&&qe.eqRow(A,t),"row--checked":H.highlight&&qe.isCheckedByCheckboxRow(t),"row--pending":!!$[r]},(0,_dom.getPropClass)(C,d)];let x=_.map((e,l)=>Q(s,r,h,w,i,t,o,a,n,e,l,_,m));G.push(!S&&K.drag&&V.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(U?"":"-disabled"),tag:"tr",class:g,rowid:r,style:R?_xeUtils.default.isFunction(R)?R(d):R:null,key:f||I||T||P.useKey||P.drag||K.drag||E?r:a},e),{default:()=>x}):(0,_vue.h)("tr",Object.assign({class:g,rowid:r,style:R?_xeUtils.default.isFunction(R)?R(d):R:null,key:f||I||T||P.useKey||P.drag||K.drag||E?r:a},e),x)),u&&({height:g,padding:d,mode:e}=J.value,"fixed"===e?G.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?l.expandHeight||g:0}px`}})])):(u={},e=(g&&(u.height=g+"px"),E&&(u.paddingLeft=i*F.indent+30+"px"),q).showOverflow,l=_xeUtils.default.isUndefined(e)||_xeUtils.default.isNull(e)?k:e,e={$table:qe,seq:s,column:q,fixed:h,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n},G.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":d}],key:"expand_"+r},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!O,"col--ellipsis":l}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":g}],style:u},[q.renderData(e)])])])))),c&&G.push(...Z(h,w,v,_))}),G};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Ue.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=A,l[e+"scroll"]=$,l[e+"table"]=U,l[e+"colgroup"]=L,l[e+"list"]=j,l[e+"xSpace"]=H,l[e+"ySpace"]=N,l[e+"emptyBlock"]=F})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Ue.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=z.slots;let{fixedColumn:l,fixedType:t,tableColumn:a}=T;var{spanMethod:o,footerSpanMethod:r,mouseConfig:i}=Ae,{isGroup:s,tableData:n,isRowLoading:d,isColLoading:u,overflowX:c,scrollXLoad:v,scrollYLoad:p,isAllOverflow:g,isDragRowMove:x,expandColumn:h,dragRow:w,dragCol:m}=$e,{visibleColumn:_,fullAllDataRowIdData:b,fullColumnIdData:f}=Ue,y=Ve.value,C=q.value,R=je.value,D=We.value,E=J.value;let O=n,M=a,S=!1;!(v||p||g)||h&&"fixed"!==E.mode||o||r||(S=!0),!t&&c||(M=_),t&&S&&(M=l||[]),p&&w&&2<O.length&&(n=b[(0,_util.getRowid)(qe,w)])&&(g=n._index,h=O[0],E=O[O.length-1],o=b[(0,_util.getRowid)(qe,h)],r=b[(0,_util.getRowid)(qe,E)],o)&&r&&(c=o._index,_=r._index,g<c?O=[w].concat(O):_<g&&(O=O.concat([w]))),t||s||v&&m&&2<M.length&&(p=f[m.id])&&(n=p._index,h=M[0],b=M[M.length-1],E=f[h.id],o=f[b.id],E)&&o&&(r=E._index,c=o._index,n<r?M=[m].concat(M):c<n&&(M=M.concat([m])));let I;_=e?e.empty:null,I=_?qe.callSlot(_,{$table:qe,$grid:qe.xegrid}):(w=(g=C.name?renderer.get(C.name):null)?g.renderTableEmpty||g.renderTableEmptyView||g.renderEmpty:null)?(0,_vn.getSlotVNs)(w(C,{$table:qe})):Ae.emptyText||getI18n("vxe.table.emptyText"),s={onScroll(e){qe.triggerBodyScrollEvent(e,t)}};return(0,_vue.h)("div",{ref:A,class:["vxe-table--body-wrapper",t?`fixed-${t}--wrapper`:"body--wrapper"],xid:k},[(0,_vue.h)("div",Object.assign({ref:$,class:"vxe-table--body-inner-wrapper"},s),[t?renderEmptyElement(qe):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:U,class:"vxe-table--body",xid:k,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},M.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),!d&&!u&&y.drag&&D.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:j,name:"vxe-body--row-list"+(x?"":"-disabled"),tag:"tbody"},{default:()=>Z(t,S,O,M)}):(0,_vue.h)("tbody",{ref:j},Z(t,S,O,M))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&R.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},R.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){qe.triggerCellAreaExtendMousedownEvent&&qe.triggerCellAreaExtendMousedownEvent(e,{$table:qe,fixed:t,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(qe),t?renderEmptyElement(qe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:F},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},I)])])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(T){let He=(0,_vue.inject)("$xeTable",{}),{xID:z,props:Le,context:q,reactData:je,internalData:Ne}=He,{computeEditOpts:Be,computeMouseOpts:We,computeCellOffsetWidth:Ge,computeAreaOpts:Pe,computeDefaultRowHeight:Ke,computeEmptyOpts:A,computeTooltipOpts:Xe,computeRadioOpts:e,computeExpandOpts:le,computeTreeOpts:v,computeCheckboxOpts:Ve,computeCellOpts:Ye,computeValidOpts:Je,computeRowOpts:Qe,computeColumnOpts:Ze,computeRowDragOpts:el,computeColumnDragOpts:l,computeResizableOpts:ll}=He.getComputeMaps(),$=(0,_vue.ref)(),U=(0,_vue.ref)(),F=(0,_vue.ref)(),H=(0,_vue.ref)(),L=(0,_vue.ref)(),j=(0,_vue.ref)(),N=(0,_vue.ref)(),B=(0,_vue.ref)(),tl=()=>{var e=Le.delayHover,{lastScrollTime:l,isDragResize:t}=je;return!!(t||l&&Date.now()<l+e)},al=(e,l,t)=>{var{row:a,column:r}=l,o=Ne.afterFullData,i=Le.treeConfig,s=v.value,{slots:r,treeNode:n}=r,d=Ne.fullAllDataRowIdData;if(r&&r.line)return He.callSlot(r.line,l);r=d[e];let u=0,c=null;r&&(u=r.level,c=r.items[r.treeIndex-1]);d=He.eqRow(o[0],a);return 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:`${d?1:(0,_util.calcTreeLine)(l,c)}px`,bottom:`-${Math.floor(t/2)}px`,left:u*s.indent+(u?2-(0,_util.getOffsetSize)(He):0)+16+"px"}})])]:[]},ae=($,e,l,U,F,t,a,H,r,o,L,j,i)=>{var s=He.xeGrid,{fullAllDataRowIdData:n,fullColumnIdData:d,visibleColumn:N}=Ne,{columnKey:B,resizable:u,showOverflow:c,border:W,height:v,cellClassName:G,cellStyle:P,align:K,spanMethod:X,mouseConfig:V,editConfig:Y,editRules:p,tooltipConfig:g,padding:h}=Le,{tableData:x,dragRow:J,overflowX:Q,currentColumn:Z,scrollXLoad:ee,scrollYLoad:w,calcCellHeightFlag:m,resizeHeightFlag:_,resizeWidthFlag:le,mergeList:te,editStore:ae,isAllOverflow:re,validErrorMaps:f}=je,{afterFullData:oe,scrollXStore:ie,scrollYStore:se}=Ne,ne=Ye.value,b=Je.value,de=Ve.value,ue=Be.value,y=Xe.value,{isAllColumnDrag:ce,isAllRowDrag:ve}=ll.value,C=Qe.value,D=el.value,pe=Ke.value,m=m?ne.height||C.height:0,{disabledMethod:R,isCrossDrag:ge,isPeerDrag:he}=D,xe=Ze.value,we=We.value,me=Pe.value,_e=Ge.value,me=me.selectCellToRow,{type:fe,cellRender:be,editRender:ye,align:Ce,showOverflow:De,className:Re,treeNode:Ee,rowResize:Oe,padding:E,verticalAlign:O,slots:Me}=o,M=ne.verticalAlign,ae=ae.actived,n=n[e]||{},S=o.id,d=d[S]||{},I=ye||be,I=I?renderer.get(I.name):null,Se=I?I.tableCellClassName||I.cellClassName:null,Ie=I?I.tableCellStyle||I.cellStyle:"";let ke=y.showAll;var Te=d.index,y=d._index,d=(0,_utils.isEnableConf)(ye),_=_?n.resizeHeight:0;let k=l?o.fixed!==l:o.fixed&&Q;Q=_xeUtils.default.eqNull(E)?null===h?ne.padding:h:E,h=_xeUtils.default.eqNull(De)?c:De,E="ellipsis"===h;let T="title"===h,z=!0===h||"tooltip"===h;c=re||T||z||E,De=_xeUtils.default.isBoolean(o.resizable)?o.resizable:xe.resizable||u,h=!!m,u=0<_;let ze;m={},_=Ce||(I?I.tableCellAlign:"")||K,Ce=_xeUtils.default.eqNull(O)?M:O,I=f[e+":"+S],K=p&&b.showMessage&&("default"===b.message?v||1<x.length:"inline"===b.message),M={colid:S};let q={$table:He,$grid:s,isEdit:!1,seq:$,rowid:e,row:t,rowIndex:a,$rowIndex:H,_rowIndex:r,column:o,columnIndex:Te,$columnIndex:L,_columnIndex:y,fixed:l,type:renderType,isHidden:!!k,level:F,visibleData:oe,data:x,items:i},A=!1,qe=!1,Ae=((A=C.drag?"row"===D.trigger||o.dragSort&&"cell"===D.trigger:A)&&(qe=!(!R||!R(q))),(T||z||ke||g)&&(m.onMouseenter=e=>{tl()||(T?(0,_dom.updateCellTitle)(e.currentTarget,o):(z||ke)&&He.triggerBodyTooltipEvent(e,q),He.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(z||ke||g)&&(m.onMouseleave=e=>{tl()||((z||ke)&&He.handleTargetLeaveEvent(e),He.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),(A||de.range||V)&&(m.onMousedown=e=>{He.triggerCellMousedownEvent(e,q)}),A&&(m.onMouseup=He.triggerCellMouseupEvent),m.onClick=e=>{He.triggerCellClickEvent(e,q)},!(m.onDblclick=e=>{He.triggerCellDblclickEvent(e,q)}));if(te.length){O=(0,_util.mergeBodyMethod)(te,r,y);if(O){var{rowspan:f,colspan:p}=O;if(!f||!p)return null;1<f&&(Ae=!0,M.rowspan=f),1<p&&(Ae=!0,M.colspan=p)}}else if(X){var{rowspan:v=1,colspan:s=1}=X(q)||{};if(!v||!s)return null;1<v&&(M.rowspan=v),1<s&&(M.colspan=s)}!(k=k&&te&&(1<M.colspan||1<M.rowspan)?!1:k)&&Y&&(ye||be)&&(ue.showStatus||ue.showUpdateStatus)&&(ze=He.isUpdateByRow(t,o.field));$=w&&!c,a=n.resizeHeight||ne.height||C.height||n.height||pe,H=L===j.length-1,oe=!o.resizeWidth&&("auto"===o.minWidth||"auto"===o.width);let $e=!1;Ae||J&&(0,_util.getRowid)(He,J)===e||(w&&(r<se.visibleStartIndex-se.preloadSize||r>se.visibleEndIndex+se.preloadSize)||ee&&!o.fixed&&(y<ie.visibleStartIndex-ie.preloadSize||y>ie.visibleEndIndex+ie.preloadSize))&&($e=!0);x={};if(c&&le){let l=M.colspan||0;if(1<l)for(let e=1;e<l;e++){var Ue=N[Te+e];Ue&&(l+=Ue.renderWidth)}x.width=o.renderWidth-_e*l+"px"}w||c||h||u?x.height=a+"px":x.minHeight=a+"px";i=[];k&&re?i.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:x})):(i.push(...al(e,q,a),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":z,"c--ellipsis":E}],style:x,title:T?He.getCellLabel(t,o):null},$e?[]:[(0,_vue.h)("div",{colid:S,rowid:e,class:"vxe-cell--wrapper"},o.renderCell(q))])),K&&I&&(D=I.rule,R=Me?Me.valid:null,g=Object.assign(Object.assign(Object.assign({},q),I),{rule:I}),i.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(b.className,g)],style:D&&D.maxWidth?{width:D.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(b.theme||"normal")},[R?He.callSlot(R,g):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},I.content)]])]))));let Fe=!1;return V&&we.area&&me&&((y||!0!==me)&&me!==o.field||(Fe=!0)),!k&&De&&ce&&i.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>He.handleColResizeMousedownEvent(e,l,q),onDblclick:e=>He.handleColResizeDblclickEvent(e,q)})),(Oe||ve)&&C.resizable&&i.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>He.handleRowResizeMousedownEvent(e,q),onDblclick:e=>He.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",S,Ce?"col--vertical-"+Ce:"",_?"col--"+_:"",fe?"col--"+fe:"",{"col--last":H,"col--tree-node":Ee,"col--edit":d,"col--ellipsis":c,"col--cs-height":h,"col--rs-height":u,"col--to-row":Fe,"col--auto-height":$,"fixed--width":!oe,"fixed--hidden":k,"is--padding":Q,"is--progress":k&&re||$e,"is--drag-cell":A&&(ge||he||!F),"is--drag-disabled":qe,"col--dirty":ze,"col--active":Y&&d&&ae.row===t&&(ae.column===o||"row"===ue.mode),"col--valid-error":!!I,"col--current":Z===o},(0,_dom.getPropClass)(Se,q),(0,_dom.getPropClass)(Re,q),(0,_dom.getPropClass)(G,q)],key:B||ee||w||xe.useKey||C.useKey||xe.drag?S:L},M),{style:Object.assign({},_xeUtils.default.isFunction(Ie)?Ie(q):Ie,_xeUtils.default.isFunction(P)?P(q):P)}),m),U&&k?[]:i)},te=(x,w,m,_)=>{let{stripe:f,rowKey:b,highlightHoverRow:y,rowClassName:C,rowStyle:D,editConfig:R,treeConfig:E}=Le,{hasFixedColumn:O,treeExpandedFlag:M,isColLoading:S,scrollXLoad:I,scrollYLoad:k,isAllOverflow:T,rowExpandedFlag:z,expandColumn:q,selectRadioRow:A,pendingRowFlag:$,isDragColMove:U,rowExpandHeightFlag:F}=je,{fullAllDataRowIdData:H,treeExpandedMaps:L,pendingRowMaps:j,rowExpandedMaps:N}=Ne,B=Ve.value,W=e.value,G=v.value,P=Be.value,K=Qe.value,X=Ze.value,V=l.value,{transform:Y,seqMode:Q}=G,Z=G.children||G.childrenField,J=[],ee=(0,_util.createHandleGetRowId)(He).handleGetRowId;return m.forEach((t,a)=>{let r=ee(t);var e=H[r]||{};let o=a,i=0,s=-1,n=-1;var l={},d=((K.isHover||y)&&(l.onMouseenter=e=>{tl()||He.triggerHoverEvent(e,{row:t,rowIndex:o})},l.onMouseleave=()=>{tl()||He.clearHoverRow()}),e&&(i=e.level,s=E&&Y&&"increasing"===Q?e._index+1:e.seq,o=e.index,n=e._index),{$table:He,seq:s,rowid:r,fixed:x,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n}),u=q&&!!z&&!!N[r];let c=!1,v=[],p=!1;R&&(p=He.isInsertByRow(t)),!E||k||Y||(v=t[Z],c=!!M&&v&&0<v.length&&!!L[r]),!K.drag||E&&!Y||(l.onDragstart=He.handleRowDragDragstartEvent,l.onDragend=He.handleRowDragDragendEvent,l.onDragover=He.handleRowDragDragoverEvent);var g=["vxe-body--row",E?"row--level-"+i:"",{"row--stripe":f&&(n+1)%2==0,"is--new":p,"is--expand-row":u,"is--expand-tree":c,"row--new":p&&(P.showStatus||P.showInsertStatus),"row--radio":W.highlight&&He.eqRow(A,t),"row--checked":B.highlight&&He.isCheckedByCheckboxRow(t),"row--pending":!!$&&!!j[r]},(0,_dom.getPropClass)(C,d)];let h=_.map((e,l)=>ae(s,r,x,w,i,t,o,a,n,e,l,_,m));J.push(!S&&X.drag&&V.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(U?"":"-disabled"),tag:"tr",class:g,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(d):D:null,key:b||I||k||K.useKey||K.drag||X.drag||E?r:a},l),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:g,rowid:r,style:D?_xeUtils.default.isFunction(D)?D(d):D:null,key:b||I||k||K.useKey||K.drag||X.drag||E?r:a},l),h)),u&&({height:g,padding:d,mode:l}=le.value,"fixed"===l?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:`${F?e.expandHeight||g:0}px`}})])):(u={},l=(g&&(u.height=g+"px"),E&&(u.paddingLeft=i*G.indent+30+"px"),q).showOverflow,e=_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?T:l,l={$table:He,seq:s,column:q,fixed:x,type:renderType,level:i,row:t,rowIndex:o,$rowIndex:a,_rowIndex:n},J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":d}],key:"expand_"+r},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":x&&!O,"col--ellipsis":e}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":g}],style:u},[q.renderData(l)])])])))),c&&J.push(...te(x,w,v,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=Ne.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=$,l[e+"scroll"]=U,l[e+"table"]=F,l[e+"colgroup"]=H,l[e+"list"]=L,l[e+"xSpace"]=j,l[e+"ySpace"]=N,l[e+"emptyBlock"]=B})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=Ne.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=He.xeGrid;let{fixedColumn:t,fixedType:a,tableColumn:r}=T;var{spanMethod:o,footerSpanMethod:i,mouseConfig:s}=Le,{isGroup:n,tableData:d,isRowLoading:u,isColLoading:c,overflowX:v,scrollXLoad:p,scrollYLoad:g,isAllOverflow:h,isDragRowMove:x,expandColumn:w,dragRow:m,dragCol:_}=je,{visibleColumn:f,fullAllDataRowIdData:b,fullColumnIdData:y}=Ne,C=Qe.value,D=A.value,R=We.value,E=el.value,O=le.value;let M=d,S=r,I=!1;!(p||g||h)||w&&"fixed"!==O.mode||o||i||(I=!0),c||!a&&v||(S=f),a&&I&&(S=t||[]),g&&m&&2<M.length&&(d=b[(0,_util.getRowid)(He,m)])&&(h=d._index,w=M[0],O=M[M.length-1],o=b[(0,_util.getRowid)(He,w)],i=b[(0,_util.getRowid)(He,O)],o)&&i&&(v=o._index,f=i._index,h<v?M=[m].concat(M):f<h&&(M=M.concat([m]))),a||n||p&&_&&2<S.length&&(g=y[_.id])&&(d=g._index,w=S[0],b=S[S.length-1],O=y[w.id],o=y[b.id],O)&&o&&(i=O._index,v=o._index,d<i?S=[_].concat(S):v<d&&(S=S.concat([_])));let k;f=e?e.empty:null,k=f?He.callSlot(f,{$table:He,$grid:l}):(m=(h=D.name?renderer.get(D.name):null)?h.renderTableEmpty||h.renderTableEmptyView||h.renderEmpty:null)?(0,_vn.getSlotVNs)(m(D,{$table:He})):Le.emptyText||getI18n("vxe.table.emptyText"),n={onScroll(e){He.triggerBodyScrollEvent(e,a)}};return(0,_vue.h)("div",{ref:$,class:["vxe-table--body-wrapper",a?`fixed-${a}--wrapper`:"body--wrapper"],xid:z},[(0,_vue.h)("div",Object.assign({ref:U,class:"vxe-table--body-inner-wrapper"},n),[a?renderEmptyElement(He):(0,_vue.h)("div",{ref:j,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},[(0,_vue.h)("colgroup",{ref:H},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:L,name:"vxe-body--row-list"+(x?"":"-disabled"),tag:"tbody"},{default:()=>te(a,I,M,S)}):(0,_vue.h)("tbody",{ref:L},te(a,I,M,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&R.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},R.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){He.triggerCellAreaExtendMousedownEvent&&He.triggerCellAreaExtendMousedownEvent(e,{$table:He,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(He),a?renderEmptyElement(He):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:B},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},k)])])])}}});
@@ -283,15 +283,21 @@ function getFooterContent(params) {
283
283
  });
284
284
  if (footerFormatter) {
285
285
  if (_xeUtils.default.isFunction(footerFormatter)) {
286
- return `${footerFormatter(footParams)}`;
286
+ return [(0, _vue.h)('span', {
287
+ class: 'vxe-cell--label'
288
+ }, `${footerFormatter(footParams)}`)];
287
289
  }
288
290
  const isArr = _xeUtils.default.isArray(footerFormatter);
289
291
  const gFormatOpts = isArr ? formats.get(footerFormatter[0]) : formats.get(footerFormatter);
290
292
  const footerFormatMethod = gFormatOpts ? gFormatOpts.tableFooterCellFormatMethod : null;
291
293
  if (footerFormatMethod) {
292
- return `${isArr ? footerFormatMethod(footParams, ...footerFormatter.slice(1)) : footerFormatMethod(footParams)}`;
294
+ return [(0, _vue.h)('span', {
295
+ class: 'vxe-cell--label'
296
+ }, `${isArr ? footerFormatMethod(footParams, ...footerFormatter.slice(1)) : footerFormatMethod(footParams)}`)];
293
297
  }
294
- return '';
298
+ return [(0, _vue.h)('span', {
299
+ class: 'vxe-cell--label'
300
+ }, '')];
295
301
  }
296
302
  if (renderOpts) {
297
303
  const compConf = renderer.get(renderOpts.name);
@@ -302,7 +308,9 @@ function getFooterContent(params) {
302
308
  }
303
309
  }
304
310
  }
305
- return [(0, _utils.formatText)(itemValue, 1)];
311
+ return [(0, _vue.h)('span', {
312
+ class: 'vxe-cell--label'
313
+ }, (0, _utils.formatText)(itemValue, 1))];
306
314
  }
307
315
  function getDefaultCellLabel(params) {
308
316
  const {
@@ -501,11 +509,12 @@ const Cell = exports.Cell = {
501
509
  computeTreeOpts
502
510
  } = $table.getComputeMaps();
503
511
  const {
504
- treeExpandedMaps,
505
- treeExpandLazyLoadedMaps
512
+ treeExpandedFlag
506
513
  } = tableReactData;
507
514
  const {
508
- fullAllDataRowIdData
515
+ fullAllDataRowIdData,
516
+ treeExpandedMaps,
517
+ treeExpandLazyLoadedMaps
509
518
  } = tableInternalData;
510
519
  const treeOpts = computeTreeOpts.value;
511
520
  const {
@@ -540,7 +549,7 @@ const Cell = exports.Cell = {
540
549
  }
541
550
  if (!isHidden) {
542
551
  const rowid = (0, _util.getRowid)($table, row);
543
- isActive = !!treeExpandedMaps[rowid];
552
+ isActive = !!treeExpandedFlag && !!treeExpandedMaps[rowid];
544
553
  if (lazy) {
545
554
  const rest = fullAllDataRowIdData[rowid];
546
555
  isLazyLoading = !!treeExpandLazyLoadedMaps[rowid];
@@ -729,7 +738,12 @@ const Cell = exports.Cell = {
729
738
  const headerSlot = slots ? slots.header : null;
730
739
  const titleSlot = slots ? slots.title : null;
731
740
  const checkboxOpts = computeCheckboxOpts.value;
732
- const headerTitle = column.getTitle();
741
+ const {
742
+ checkStrictly,
743
+ showHeader,
744
+ headerTitle
745
+ } = checkboxOpts;
746
+ const colTitle = column.getTitle();
733
747
  const ons = {};
734
748
  if (!isHidden) {
735
749
  ons.onClick = evnt => {
@@ -746,10 +760,10 @@ const Cell = exports.Cell = {
746
760
  if (headerSlot) {
747
761
  return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, $table.callSlot(headerSlot, checkboxParams)));
748
762
  }
749
- if (checkboxOpts.checkStrictly ? !checkboxOpts.showHeader : checkboxOpts.showHeader === false) {
763
+ if (checkStrictly ? !showHeader : showHeader === false) {
750
764
  return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, [(0, _vue.h)('span', {
751
765
  class: 'vxe-checkbox--label'
752
- }, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : headerTitle)]));
766
+ }, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : colTitle)]));
753
767
  }
754
768
  return renderHeaderCellBaseVNs(params, renderTitleContent(checkboxParams, [(0, _vue.h)('span', Object.assign({
755
769
  class: ['vxe-cell--checkbox', {
@@ -757,12 +771,12 @@ const Cell = exports.Cell = {
757
771
  'is--disabled': isAllCheckboxDisabled,
758
772
  'is--indeterminate': isAllCheckboxIndeterminate
759
773
  }],
760
- title: getI18n('vxe.table.allTitle')
774
+ title: _xeUtils.default.eqNull(headerTitle) ? getI18n('vxe.table.allTitle') : `${headerTitle || ''}`
761
775
  }, ons), [(0, _vue.h)('span', {
762
776
  class: ['vxe-checkbox--icon', isAllCheckboxIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllCheckboxSelected ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
763
- })].concat(titleSlot || headerTitle ? [(0, _vue.h)('span', {
777
+ })].concat(titleSlot || colTitle ? [(0, _vue.h)('span', {
764
778
  class: 'vxe-checkbox--label'
765
- }, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : headerTitle)] : []))]));
779
+ }, titleSlot ? $table.callSlot(titleSlot, checkboxParams) : colTitle)] : []))]));
766
780
  },
767
781
  renderCheckboxCell(params) {
768
782
  const {
@@ -773,13 +787,17 @@ const Cell = exports.Cell = {
773
787
  } = params;
774
788
  const tableProps = $table.props;
775
789
  const tableReactData = $table.reactData;
790
+ const tableInternalData = $table.internalData;
776
791
  const {
777
792
  treeConfig
778
793
  } = tableProps;
779
794
  const {
780
- selectCheckboxMaps,
781
- treeIndeterminateMaps
795
+ updateCheckboxFlag
782
796
  } = tableReactData;
797
+ const {
798
+ selectCheckboxMaps,
799
+ treeIndeterminateRowMaps
800
+ } = tableInternalData;
783
801
  const {
784
802
  computeCheckboxOpts
785
803
  } = $table.getComputeMaps();
@@ -803,7 +821,7 @@ const Cell = exports.Cell = {
803
821
  const ons = {};
804
822
  if (!isHidden) {
805
823
  const rowid = (0, _util.getRowid)($table, row);
806
- isChecked = !!selectCheckboxMaps[rowid];
824
+ isChecked = !!updateCheckboxFlag && !!selectCheckboxMaps[rowid];
807
825
  ons.onClick = evnt => {
808
826
  if (!isDisabled && isVisible) {
809
827
  $table.triggerCheckRowEvent(evnt, params, !isChecked);
@@ -815,7 +833,7 @@ const Cell = exports.Cell = {
815
833
  });
816
834
  }
817
835
  if (treeConfig) {
818
- indeterminate = !!treeIndeterminateMaps[rowid];
836
+ indeterminate = !!treeIndeterminateRowMaps[rowid];
819
837
  }
820
838
  }
821
839
  const checkboxParams = Object.assign(Object.assign({}, params), {
@@ -859,12 +877,16 @@ const Cell = exports.Cell = {
859
877
  } = params;
860
878
  const tableProps = $table.props;
861
879
  const tableReactData = $table.reactData;
880
+ const tableInternalData = $table.internalData;
862
881
  const {
863
882
  treeConfig
864
883
  } = tableProps;
865
884
  const {
866
- treeIndeterminateMaps
885
+ updateCheckboxFlag
867
886
  } = tableReactData;
887
+ const {
888
+ treeIndeterminateRowMaps
889
+ } = tableInternalData;
868
890
  const {
869
891
  computeCheckboxOpts
870
892
  } = $table.getComputeMaps();
@@ -890,7 +912,7 @@ const Cell = exports.Cell = {
890
912
  const ons = {};
891
913
  if (!isHidden) {
892
914
  const rowid = (0, _util.getRowid)($table, row);
893
- isChecked = _xeUtils.default.get(row, checkField);
915
+ isChecked = !!updateCheckboxFlag && _xeUtils.default.get(row, checkField);
894
916
  ons.onClick = evnt => {
895
917
  if (!isDisabled && isVisible) {
896
918
  $table.triggerCheckRowEvent(evnt, params, !isChecked);
@@ -902,7 +924,7 @@ const Cell = exports.Cell = {
902
924
  });
903
925
  }
904
926
  if (treeConfig) {
905
- isIndeterminate = !!treeIndeterminateMaps[rowid];
927
+ isIndeterminate = !!treeIndeterminateRowMaps[rowid];
906
928
  }
907
929
  }
908
930
  const checkboxParams = Object.assign(Object.assign({}, params), {
@@ -947,11 +969,11 @@ const Cell = exports.Cell = {
947
969
  row,
948
970
  column
949
971
  } = params;
950
- const tableReactData = $table.reactData;
972
+ const tableInternalData = $table.internalData;
951
973
  const {
952
974
  rowExpandedMaps,
953
975
  rowExpandLazyLoadedMaps
954
- } = tableReactData;
976
+ } = tableInternalData;
955
977
  const {
956
978
  computeExpandOpts
957
979
  } = $table.getComputeMaps();
@@ -1069,6 +1091,8 @@ const Cell = exports.Cell = {
1069
1091
  const {
1070
1092
  showIcon,
1071
1093
  allowBtn,
1094
+ ascTitle,
1095
+ descTitle,
1072
1096
  iconLayout,
1073
1097
  iconAsc,
1074
1098
  iconDesc,
@@ -1084,7 +1108,7 @@ const Cell = exports.Cell = {
1084
1108
  class: ['vxe-sort--asc-btn', iconAsc || getIcon().TABLE_SORT_ASC, {
1085
1109
  'sort--active': order === 'asc'
1086
1110
  }],
1087
- title: getI18n('vxe.table.sortAsc'),
1111
+ title: _xeUtils.default.eqNull(ascTitle) ? getI18n('vxe.table.sortAsc') : `${ascTitle || ''}`,
1088
1112
  onClick: allowBtn ? evnt => {
1089
1113
  evnt.stopPropagation();
1090
1114
  $table.triggerSortEvent(evnt, column, 'asc');
@@ -1093,7 +1117,7 @@ const Cell = exports.Cell = {
1093
1117
  class: ['vxe-sort--desc-btn', iconDesc || getIcon().TABLE_SORT_DESC, {
1094
1118
  'sort--active': order === 'desc'
1095
1119
  }],
1096
- title: getI18n('vxe.table.sortDesc'),
1120
+ title: _xeUtils.default.eqNull(descTitle) ? getI18n('vxe.table.sortDesc') : `${descTitle || ''}`,
1097
1121
  onClick: allowBtn ? evnt => {
1098
1122
  evnt.stopPropagation();
1099
1123
  $table.triggerSortEvent(evnt, column, 'desc');
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(l){let{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderTitleSuffixIcon(l){let{$table:r,column:e}=l,t=e.titleSuffix;return t?(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderCellDragIcon(l){let{$table:r,column:e}=l;var t=r.context,t=t.slots,n=e.slots,a=r.props.dragConfig,o=r.getComputeMaps().computeRowDragOpts,{icon:o,trigger:d,disabledMethod:s}=o.value,s=s||(a?a.rowDisabledMethod:null);let i=s&&s(l);s=(n?n.rowDragIcon||n["row-drag-icon"]:null)||t.rowDragIcon||t["row-drag-icon"],n={};return"cell"!==d&&(n.onMousedown=e=>{i||r.handleCellDragMousedownEvent(e,l)},n.onMouseup=r.handleCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}]},n),s?r.callSlot(s,l):[(0,_vue.h)("i",{class:o||(a?a.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l){var{$table:r,column:t,level:n}=e,t=t.dragSort,{treeConfig:a,dragConfig:o}=r.props,{computeRowOpts:r,computeRowDragOpts:d,computeTreeOpts:s}=r.getComputeMaps(),r=r.value,d=d.value,s=s.value,{showIcon:d,isPeerDrag:i,isCrossDrag:c,visibleMethod:u}=d,u=u||(o?o.rowVisibleMethod:null),l=_xeUtils.default.isArray(l)?l:[l];return t&&r.drag&&(d||o&&o.showRowIcon)&&(!u||u(e))&&(!a||s.transform&&(i||c||!n))&&l.unshift(renderCellDragIcon(e)),l}function renderHeaderCellDragIcon(r){let{$table:t,column:e}=r;var n=t.context,n=n.slots,a=e.slots,{computeColumnOpts:o,computeColumnDragOpts:d}=t.getComputeMaps(),o=o.value,{showIcon:d,icon:s,trigger:i,isPeerDrag:l,isCrossDrag:c,visibleMethod:u,disabledMethod:C}=d.value;if(!o.drag||!d||u&&!u(r)||e.fixed||!l&&!c&&e.parentId)return renderEmptyElement(t);{let l=C&&C(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.onMousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.onMouseup=t.handleHeaderCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}]},d),o?t.callSlot(o,r):[(0,_vue.h)("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l){return[renderTitlePrefixIcon(e),renderHeaderCellDragIcon(e),..._xeUtils.default.isArray(l)?l:[l],renderTitleSuffixIcon(e)]}function renderTitleContent(l,e){let{$table:r,column:t}=l;var n=r.props;let a=r.reactData;var o=r.getComputeMaps().computeTooltipOpts,n=n.showHeaderOverflow,{type:d,showHeaderOverflow:s}=t;let i=o.value.showAll;o=_xeUtils.default.isUndefined(s)||_xeUtils.default.isNull(s)?n:s;let c="title"===o,u=!0===o||"tooltip"===o;n={};return(c||u||i)&&(n.onMouseenter=e=>{a.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,t):(u||i)&&r.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(n.onMouseleave=e=>{a.isDragResize||(u||i)&&r.handleTargetLeaveEvent(e)}),["html"===d&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},n)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},n),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:d,cellRender:s,footerFormatter:i}=r,d=d||s,s=o?o.footer:null;if(s)return l.callSlot(s,e);let c="";c=_xeUtils.default.isArray(n)?n[t]:_xeUtils.default.get(a,r.field);o=Object.assign(e,{itemValue:c});if(i)return _xeUtils.default.isFunction(i)?""+i(o):(n=(s=(l=_xeUtils.default.isArray(i))?formats.get(i[0]):formats.get(i))?s.tableFooterCellFormatMethod:null)?""+(l?n(o,...i.slice(1)):n(o)):"";if(d){t=renderer.get(d.name);if(t){a=t.renderTableFooter||t.renderFooter;if(a)return(0,_vn.getSlotVNs)(a(d,o))}}return[(0,_utils.formatText)(c,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e){var{column:l,$table:r}=e,t=r.props.editConfig,{type:l,treeNode:n,editRender:a}=l,{computeEditOpts:r,computeCheckboxOpts:o}=r.getComputeMaps(),d=o.value,o=r.value;switch(l){case"seq":return n?Cell.renderTreeIndexCell(e):Cell.renderSeqCell(e);case"radio":return n?Cell.renderTreeRadioCell(e):Cell.renderRadioCell(e);case"checkbox":return d.checkField?n?Cell.renderTreeSelectionCellByProp(e):Cell.renderCheckboxCellByProp(e):n?Cell.renderTreeSelectionCell(e):Cell.renderCheckboxCell(e);case"expand":return Cell.renderExpandCell(e);case"html":return n?Cell.renderTreeHTMLCell(e):Cell.renderHTMLCell(e)}return(0,_utils.isEnableConf)(t)&&a?"cell"===o.mode?n?Cell.renderTreeCellEdit(e):Cell.renderCellEdit(e):n?Cell.renderTreeRowEdit(e):Cell.renderRowEdit(e):n?Cell.renderTreeCell(e):Cell.renderDefaultCell(e)}function renderHeaderHandle(e){var{column:l,$table:r}=e,r=r.props.editConfig,{type:l,filters:t,sortable:n,editRender:a}=l;switch(l){case"seq":return Cell.renderSeqHeader(e);case"radio":return Cell.renderRadioHeader(e);case"checkbox":return Cell.renderCheckboxHeader(e);case"html":if(t&&n)return Cell.renderSortAndFilterHeader(e);if(n)return Cell.renderSortHeader(e);if(t)return Cell.renderFilterHeader(e)}return r&&a?Cell.renderEditHeader(e):t&&n?Cell.renderSortAndFilterHeader(e):n?Cell.renderSortHeader(e):t?Cell.renderFilterHeader(e):Cell.renderDefaultHeader(e)}function renderFooterHandle(e){return Cell.renderDefaultFooter(e)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t){l=t.renderTableHeader||t.renderHeader;if(l)return renderTitleContent(e,(0,_vn.getSlotVNs)(l(n,e)))}}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return renderCellBaseVNs(e,l.callSlot(n,e));if(o){n=renderer.get(o.name);if(n){var d=n.renderTableCell||n.renderCell,n=n.renderTableDefault||n.renderDefault,d=a?d:n;if(d)return renderCellBaseVNs(e,(0,_vn.getSlotVNs)(d(o,Object.assign({$type:a?"edit":"cell"},e))))}}n=l.getCellLabel(r,t),d=a?a.placeholder:"";return renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},[a&&(0,_utils.eqEmptyValue)(n)?(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(d),1)):(0,_vue.h)("span",(0,_utils.formatText)(n,1))])])},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return getFooterContent(e)},renderTreeIcon(l,e){let{$table:r,isHidden:t}=l;var n=r.reactData,a=r.internalData,o=r.getComputeMaps().computeTreeOpts,{treeExpandedMaps:n,treeExpandLazyLoadedMaps:d}=n,a=a.fullAllDataRowIdData,o=o.value,{row:s,column:i,level:c}=l,i=i.slots,{indent:u,lazy:C,trigger:v,iconLoaded:p,showIcon:g,iconOpen:h,iconClose:E}=o,_=o.children||o.childrenField,o=o.hasChild||o.hasChildField,_=s[_],_=_&&_.length,i=i?i.icon:null;let b=!1,x=!1,f=!1,m=!1;var T={};return i?r.callSlot(i,l):(t||(i=(0,_util.getRowid)(r,s),x=!!n[i],C&&(n=a[i],f=!!d[i],b=s[o],m=!!n.treeLoaded)),v&&"default"!==v||(T.onClick=e=>{r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":x}],style:{paddingLeft:c*u+"px"}},[g&&(!C||m?_:_||b)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},T),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",f?p||getIcon().TABLE_TREE_LOADED:x?h||getIcon().TABLE_TREE_OPEN:E||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r.slots,t=t?t.header:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e){var{$table:l,column:r}=e,t=l.props.treeConfig,n=l.getComputeMaps().computeSeqOpts,n=n.value,r=r.slots,r=r?r.default:null;return r?renderCellBaseVNs(e,l.callSlot(r,e)):(l=e.seq,r=n.seqMethod,renderCellBaseVNs(e,[(0,_vue.h)("span",""+(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1))]))},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r.slots,n=t?t.header:null,t=t?t.title:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(l){let{$table:r,column:e,isHidden:t}=l;var n=r.reactData,a=r.getComputeMaps().computeRadioOpts,n=n.selectRadioRow,o=e.slots,{labelField:a,checkMethod:d,visibleMethod:s}=a.value,i=l.row,c=o?o.default:null,o=o?o.radio:null,n=r.eqRow(i,n);let u=!s||s({row:i}),C=!!d,v;t||(v={onClick(e){!C&&u&&r.triggerRadioRowEvent(e,l)}},d&&(C=!d({row:i})));s=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?renderCellBaseVNs(l,r.callSlot(o,s)):(d=[],u&&d.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(c||a)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},c?r.callSlot(c,s):_xeUtils.default.get(i,a))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),d)]))},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){let{$table:l,column:r,isHidden:t}=e;var n=l.reactData,{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();let{isAllSelected:d,isIndeterminate:s}=n,i=a.value;var n=r.slots,a=n?n.header:null,n=n?n.title:null,o=o.value,c=r.getTitle(),u={},C=(t||(u.onClick=e=>{i||l.triggerCheckAllEvent(e,!d)}),Object.assign(Object.assign({},e),{checked:d,disabled:i,indeterminate:s}));return a?renderHeaderCellBaseVNs(e,renderTitleContent(C,l.callSlot(a,C))):(o.checkStrictly?o.showHeader:!1!==o.showHeader)?renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":d,"is--disabled":i,"is--indeterminate":s}],title:getI18n("vxe.table.allTitle")},u),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:d?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||c?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]:[]))])):renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]))},renderCheckboxCell(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,{selectCheckboxMaps:o,treeIndeterminateMaps:d}=r.reactData,s=r.getComputeMaps().computeCheckboxOpts,{labelField:s,checkMethod:i,visibleMethod:c}=s.value,u=t.slots,C=u?u.default:null,u=u?u.checkbox:null;let v=!1,p=!1,g=!c||c({row:e}),h=!!i;var E,c={},o=(n||(E=(0,_util.getRowid)(r,e),p=!!o[E],c.onClick=e=>{!h&&g&&r.triggerCheckRowEvent(e,l,!p)},i&&(h=!i({row:e})),a&&(v=!!d[E])),Object.assign(Object.assign({},l),{checked:p,disabled:h,visible:g,indeterminate:v}));return u?renderCellBaseVNs(l,r.callSlot(u,o)):(i=[],g&&i.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(C||s)&&i.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},C?r.callSlot(C,o):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":h,"is--indeterminate":v,"is--hidden":!g}]},c),i)]))},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,o=r.reactData.treeIndeterminateMaps,d=r.getComputeMaps().computeCheckboxOpts,d=d.value,{labelField:s,checkField:i,checkMethod:c,visibleMethod:u}=d,d=d.indeterminateField||d.halfField,C=t.slots,v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1,h=!u||u({row:e}),E=!!c;var _,u={},i=(n||(_=(0,_util.getRowid)(r,e),g=_xeUtils.default.get(e,i),u.onClick=e=>{!E&&h&&r.triggerCheckRowEvent(e,l,!g)},c&&(E=!c({row:e})),a&&(p=!!o[_])),Object.assign(Object.assign({},l),{checked:g,disabled:E,visible:h,indeterminate:p}));return C?renderCellBaseVNs(l,r.callSlot(C,i)):(c=[],h&&(c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),v||s)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,i):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":E,"is--indeterminate":d&&!g?e[d]:p,"is--hidden":!h}]},u),c)]))},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){let{$table:r,isHidden:e,row:t,column:n}=l;var{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=r.reactData,d=r.getComputeMaps().computeExpandOpts,{lazy:d,labelField:s,iconLoaded:i,showIcon:c,iconOpen:u,iconClose:C,visibleMethod:v}=d.value,p=n.slots,g=p?p.default:null,p=p?p.icon:null;let h=!1,E=!1;return p?renderCellBaseVNs(l,r.callSlot(p,l)):(e||(p=(0,_util.getRowid)(r,t),h=!!a[p],d&&(E=!!o[p])),renderCellBaseVNs(l,[!c||v&&!v(l)?renderEmptyElement(r):(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":h}],onMousedown(e){e.stopPropagation()},onClick(e){r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",E?i||getIcon().TABLE_EXPAND_LOADED:h?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||s?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,s)):renderEmptyElement(r)]))},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l){r=l.renderTableExpand||l.renderExpand;if(r)return(0,_vn.getSlotVNs)(r(t,e))}}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r.slots,r=r?r.default:null;return renderCellBaseVNs(e,r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})])},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e).concat(Cell.renderFilterIcon(e))))},renderSortHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e)))},renderSortIcon(e){let{$table:l,column:r}=e;var t=l.getComputeMaps().computeSortOpts,{showIcon:t,allowBtn:n,iconLayout:a,iconAsc:o,iconDesc:d,iconVisibleMethod:s}=t.value,i=r.order;return!t||s&&!s(e)?[]:[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${a}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",o||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===i}],title:getI18n("vxe.table.sortAsc"),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}:void 0}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",d||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===i}],title:getI18n("vxe.table.sortDesc"),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}:void 0})])]},renderFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderFilterIcon(e)))},renderFilterIcon(l){let{$table:r,column:e,hasFilter:t}=l;var n=r.reactData.filterStore,a=r.getComputeMaps().computeFilterOpts,{showIcon:a,iconNone:o,iconMatch:d,iconVisibleMethod:s}=a.value;return!a||s&&!s(l)?[]:[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?d||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]},renderEditHeader(e){var{$table:l,column:r}=e,t=l.props,n=l.getComputeMaps().computeEditOpts,{editConfig:t,editRules:a}=t,n=n.value,{sortable:o,filters:d,editRender:s}=r;let i=!1,c=(a&&(a=_xeUtils.default.get(a,r.field))&&(i=a.some(e=>e.required)),[]);return renderHeaderCellBaseVNs(e,(c=(0,_utils.isEnableConf)(t)?[i&&n.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(l),(0,_utils.isEnableConf)(s)&&n.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",n.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(l)]:c).concat(Cell.renderHeaderTitle(e)).concat(o?Cell.renderSortIcon(e):[]).concat(d?Cell.renderFilterIcon(e):[]))},renderRowEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,d=renderer.get(n.name),d=d?d.renderTableEdit||d.renderEdit:null,s=Object.assign({$type:"",isEdit:l},e);return l?(s.$type="edit",t?r.callSlot(t,s):d?(0,_vn.getSlotVNs)(d(n,s)):[]):o?renderCellBaseVNs(e,r.callSlot(o,s)):a?renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(s))]):Cell.renderDefaultCell(s)}};var _default=exports.default=Cell;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(l){let{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderTitleSuffixIcon(l){let{$table:r,column:e}=l,t=e.titleSuffix;return t?(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderCellDragIcon(l){let{$table:r,column:e}=l;var t=r.context,t=t.slots,n=e.slots,a=r.props.dragConfig,o=r.getComputeMaps().computeRowDragOpts,{icon:o,trigger:s,disabledMethod:d}=o.value,d=d||(a?a.rowDisabledMethod:null);let i=d&&d(l);d=(n?n.rowDragIcon||n["row-drag-icon"]:null)||t.rowDragIcon||t["row-drag-icon"],n={};return"cell"!==s&&(n.onMousedown=e=>{i||r.handleCellDragMousedownEvent(e,l)},n.onMouseup=r.handleCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}]},n),d?r.callSlot(d,l):[(0,_vue.h)("i",{class:o||(a?a.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l){var{$table:r,column:t,level:n}=e,t=t.dragSort,{treeConfig:a,dragConfig:o}=r.props,{computeRowOpts:r,computeRowDragOpts:s,computeTreeOpts:d}=r.getComputeMaps(),r=r.value,s=s.value,d=d.value,{showIcon:s,isPeerDrag:i,isCrossDrag:c,visibleMethod:u}=s,u=u||(o?o.rowVisibleMethod:null),l=_xeUtils.default.isArray(l)?l:[l];return t&&r.drag&&(s||o&&o.showRowIcon)&&(!u||u(e))&&(!a||d.transform&&(i||c||!n))&&l.unshift(renderCellDragIcon(e)),l}function renderHeaderCellDragIcon(r){let{$table:t,column:e}=r;var n=t.context,n=n.slots,a=e.slots,{computeColumnOpts:o,computeColumnDragOpts:s}=t.getComputeMaps(),o=o.value,{showIcon:s,icon:d,trigger:i,isPeerDrag:l,isCrossDrag:c,visibleMethod:u,disabledMethod:C}=s.value;if(!o.drag||!s||u&&!u(r)||e.fixed||!l&&!c&&e.parentId)return renderEmptyElement(t);{let l=C&&C(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],s={};return"cell"!==i&&(s.onMousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},s.onMouseup=t.handleHeaderCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}]},s),o?t.callSlot(o,r):[(0,_vue.h)("i",{class:d||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l){return[renderTitlePrefixIcon(e),renderHeaderCellDragIcon(e),..._xeUtils.default.isArray(l)?l:[l],renderTitleSuffixIcon(e)]}function renderTitleContent(l,e){let{$table:r,column:t}=l;var n=r.props;let a=r.reactData;var o=r.getComputeMaps().computeTooltipOpts,n=n.showHeaderOverflow,{type:s,showHeaderOverflow:d}=t;let i=o.value.showAll;o=_xeUtils.default.isUndefined(d)||_xeUtils.default.isNull(d)?n:d;let c="title"===o,u=!0===o||"tooltip"===o;n={};return(c||u||i)&&(n.onMouseenter=e=>{a.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,t):(u||i)&&r.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(n.onMouseleave=e=>{a.isDragResize||(u||i)&&r.handleTargetLeaveEvent(e)}),["html"===s&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},n)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},n),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:s,cellRender:d,footerFormatter:i}=r,s=s||d,d=o?o.footer:null;if(d)return l.callSlot(d,e);let c="";c=_xeUtils.default.isArray(n)?n[t]:_xeUtils.default.get(a,r.field);o=Object.assign(e,{itemValue:c});if(i)return _xeUtils.default.isFunction(i)?[(0,_vue.h)("span",{class:"vxe-cell--label"},""+i(o))]:(n=(d=(l=_xeUtils.default.isArray(i))?formats.get(i[0]):formats.get(i))?d.tableFooterCellFormatMethod:null)?[(0,_vue.h)("span",{class:"vxe-cell--label"},""+(l?n(o,...i.slice(1)):n(o)))]:[(0,_vue.h)("span",{class:"vxe-cell--label"},"")];if(s){t=renderer.get(s.name);if(t){a=t.renderTableFooter||t.renderFooter;if(a)return(0,_vn.getSlotVNs)(a(s,o))}}return[(0,_vue.h)("span",{class:"vxe-cell--label"},(0,_utils.formatText)(c,1))]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e){var{column:l,$table:r}=e,t=r.props.editConfig,{type:l,treeNode:n,editRender:a}=l,{computeEditOpts:r,computeCheckboxOpts:o}=r.getComputeMaps(),s=o.value,o=r.value;switch(l){case"seq":return n?Cell.renderTreeIndexCell(e):Cell.renderSeqCell(e);case"radio":return n?Cell.renderTreeRadioCell(e):Cell.renderRadioCell(e);case"checkbox":return s.checkField?n?Cell.renderTreeSelectionCellByProp(e):Cell.renderCheckboxCellByProp(e):n?Cell.renderTreeSelectionCell(e):Cell.renderCheckboxCell(e);case"expand":return Cell.renderExpandCell(e);case"html":return n?Cell.renderTreeHTMLCell(e):Cell.renderHTMLCell(e)}return(0,_utils.isEnableConf)(t)&&a?"cell"===o.mode?n?Cell.renderTreeCellEdit(e):Cell.renderCellEdit(e):n?Cell.renderTreeRowEdit(e):Cell.renderRowEdit(e):n?Cell.renderTreeCell(e):Cell.renderDefaultCell(e)}function renderHeaderHandle(e){var{column:l,$table:r}=e,r=r.props.editConfig,{type:l,filters:t,sortable:n,editRender:a}=l;switch(l){case"seq":return Cell.renderSeqHeader(e);case"radio":return Cell.renderRadioHeader(e);case"checkbox":return Cell.renderCheckboxHeader(e);case"html":if(t&&n)return Cell.renderSortAndFilterHeader(e);if(n)return Cell.renderSortHeader(e);if(t)return Cell.renderFilterHeader(e)}return r&&a?Cell.renderEditHeader(e):t&&n?Cell.renderSortAndFilterHeader(e):n?Cell.renderSortHeader(e):t?Cell.renderFilterHeader(e):Cell.renderDefaultHeader(e)}function renderFooterHandle(e){return Cell.renderDefaultFooter(e)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t){l=t.renderTableHeader||t.renderHeader;if(l)return renderTitleContent(e,(0,_vn.getSlotVNs)(l(n,e)))}}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return renderCellBaseVNs(e,l.callSlot(n,e));if(o){n=renderer.get(o.name);if(n){var s=n.renderTableCell||n.renderCell,n=n.renderTableDefault||n.renderDefault,s=a?s:n;if(s)return renderCellBaseVNs(e,(0,_vn.getSlotVNs)(s(o,Object.assign({$type:a?"edit":"cell"},e))))}}n=l.getCellLabel(r,t),s=a?a.placeholder:"";return renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},[a&&(0,_utils.eqEmptyValue)(n)?(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(s),1)):(0,_vue.h)("span",(0,_utils.formatText)(n,1))])])},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return getFooterContent(e)},renderTreeIcon(l,e){let{$table:r,isHidden:t}=l;var n=r.reactData,a=r.internalData,o=r.getComputeMaps().computeTreeOpts,n=n.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:s,treeExpandLazyLoadedMaps:d}=a,o=o.value,{row:i,column:c,level:u}=l,c=c.slots,{indent:C,lazy:v,trigger:p,iconLoaded:g,showIcon:h,iconOpen:_,iconClose:b}=o,E=o.children||o.childrenField,o=o.hasChild||o.hasChildField,E=i[E],E=E&&E.length,c=c?c.icon:null;let x=!1,f=!1,m=!1,T=!1;var I={};return c?r.callSlot(c,l):(t||(c=(0,_util.getRowid)(r,i),f=!!n&&!!s[c],v&&(n=a[c],m=!!d[c],x=i[o],T=!!n.treeLoaded)),p&&"default"!==p||(I.onClick=e=>{r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":f}],style:{paddingLeft:u*C+"px"}},[h&&(!v||T?E:E||x)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},I),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",m?g||getIcon().TABLE_TREE_LOADED:f?_||getIcon().TABLE_TREE_OPEN:b||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r.slots,t=t?t.header:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e){var{$table:l,column:r}=e,t=l.props.treeConfig,n=l.getComputeMaps().computeSeqOpts,n=n.value,r=r.slots,r=r?r.default:null;return r?renderCellBaseVNs(e,l.callSlot(r,e)):(l=e.seq,r=n.seqMethod,renderCellBaseVNs(e,[(0,_vue.h)("span",""+(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1))]))},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r.slots,n=t?t.header:null,t=t?t.title:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(l){let{$table:r,column:e,isHidden:t}=l;var n=r.reactData,a=r.getComputeMaps().computeRadioOpts,n=n.selectRadioRow,o=e.slots,{labelField:a,checkMethod:s,visibleMethod:d}=a.value,i=l.row,c=o?o.default:null,o=o?o.radio:null,n=r.eqRow(i,n);let u=!d||d({row:i}),C=!!s,v;t||(v={onClick(e){!C&&u&&r.triggerRadioRowEvent(e,l)}},s&&(C=!s({row:i})));d=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?renderCellBaseVNs(l,r.callSlot(o,d)):(s=[],u&&s.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(c||a)&&s.push((0,_vue.h)("span",{class:"vxe-radio--label"},c?r.callSlot(c,d):_xeUtils.default.get(i,a))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),s)]))},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){let{$table:l,column:r,isHidden:t}=e;var n=l.reactData,{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();let{isAllSelected:s,isIndeterminate:d}=n,i=a.value;var n=r.slots,a=n?n.header:null,n=n?n.title:null,{checkStrictly:o,showHeader:c,headerTitle:u}=o.value,C=r.getTitle(),v={},p=(t||(v.onClick=e=>{i||l.triggerCheckAllEvent(e,!s)}),Object.assign(Object.assign({},e),{checked:s,disabled:i,indeterminate:d}));return renderHeaderCellBaseVNs(e,renderTitleContent(p,a?l.callSlot(a,p):(o?c:!1!==c)?[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":s,"is--disabled":i,"is--indeterminate":d}],title:_xeUtils.default.eqNull(u)?getI18n("vxe.table.allTitle"):""+(u||"")},v),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",d?getIcon().TABLE_CHECKBOX_INDETERMINATE:s?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||C?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,p):C)]:[]))]:[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,p):C)]))},renderCheckboxCell(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,o=r.reactData.updateCheckboxFlag,{selectCheckboxMaps:s,treeIndeterminateRowMaps:d}=r.internalData,i=r.getComputeMaps().computeCheckboxOpts,{labelField:i,checkMethod:c,visibleMethod:u}=i.value,C=t.slots,v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1,h=!u||u({row:e}),_=!!c;var b,u={},o=(n||(b=(0,_util.getRowid)(r,e),g=!!o&&!!s[b],u.onClick=e=>{!_&&h&&r.triggerCheckRowEvent(e,l,!g)},c&&(_=!c({row:e})),a&&(p=!!d[b])),Object.assign(Object.assign({},l),{checked:g,disabled:_,visible:h,indeterminate:p}));return C?renderCellBaseVNs(l,r.callSlot(C,o)):(s=[],h&&s.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(v||i)&&s.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,o):_xeUtils.default.get(e,i))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":_,"is--indeterminate":p,"is--hidden":!h}]},u),s)]))},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,o=r.reactData.updateCheckboxFlag,s=r.internalData.treeIndeterminateRowMaps,d=r.getComputeMaps().computeCheckboxOpts,d=d.value,{labelField:i,checkField:c,checkMethod:u,visibleMethod:C}=d,d=d.indeterminateField||d.halfField,v=t.slots,p=v?v.default:null,v=v?v.checkbox:null;let g=!1,h=!1,_=!C||C({row:e}),b=!!u;var E,C={},o=(n||(E=(0,_util.getRowid)(r,e),h=!!o&&_xeUtils.default.get(e,c),C.onClick=e=>{!b&&_&&r.triggerCheckRowEvent(e,l,!h)},u&&(b=!u({row:e})),a&&(g=!!s[E])),Object.assign(Object.assign({},l),{checked:h,disabled:b,visible:_,indeterminate:g}));return v?renderCellBaseVNs(l,r.callSlot(v,o)):(c=[],_&&(c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",g?getIcon().TABLE_CHECKBOX_INDETERMINATE:h?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),p||i)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},p?r.callSlot(p,o):_xeUtils.default.get(e,i))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":h,"is--disabled":b,"is--indeterminate":d&&!h?e[d]:g,"is--hidden":!_}]},C),c)]))},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){let{$table:r,isHidden:e,row:t,column:n}=l;var{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=r.internalData,s=r.getComputeMaps().computeExpandOpts,{lazy:s,labelField:d,iconLoaded:i,showIcon:c,iconOpen:u,iconClose:C,visibleMethod:v}=s.value,p=n.slots,g=p?p.default:null,p=p?p.icon:null;let h=!1,_=!1;return p?renderCellBaseVNs(l,r.callSlot(p,l)):(e||(p=(0,_util.getRowid)(r,t),h=!!a[p],s&&(_=!!o[p])),renderCellBaseVNs(l,[!c||v&&!v(l)?renderEmptyElement(r):(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":h}],onMousedown(e){e.stopPropagation()},onClick(e){r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",_?i||getIcon().TABLE_EXPAND_LOADED:h?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||d?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,d)):renderEmptyElement(r)]))},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l){r=l.renderTableExpand||l.renderExpand;if(r)return(0,_vn.getSlotVNs)(r(t,e))}}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r.slots,r=r?r.default:null;return renderCellBaseVNs(e,r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})])},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e).concat(Cell.renderFilterIcon(e))))},renderSortHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e)))},renderSortIcon(e){let{$table:l,column:r}=e;var t=l.getComputeMaps().computeSortOpts,{showIcon:t,allowBtn:n,ascTitle:a,descTitle:o,iconLayout:s,iconAsc:d,iconDesc:i,iconVisibleMethod:c}=t.value,u=r.order;return!t||c&&!c(e)?[]:[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${s}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",d||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===u}],title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||""),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}:void 0}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",i||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===u}],title:_xeUtils.default.eqNull(o)?getI18n("vxe.table.sortDesc"):""+(o||""),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}:void 0})])]},renderFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderFilterIcon(e)))},renderFilterIcon(l){let{$table:r,column:e,hasFilter:t}=l;var n=r.reactData.filterStore,a=r.getComputeMaps().computeFilterOpts,{showIcon:a,iconNone:o,iconMatch:s,iconVisibleMethod:d}=a.value;return!a||d&&!d(l)?[]:[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?s||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]},renderEditHeader(e){var{$table:l,column:r}=e,t=l.props,n=l.getComputeMaps().computeEditOpts,{editConfig:t,editRules:a}=t,n=n.value,{sortable:o,filters:s,editRender:d}=r;let i=!1,c=(a&&(a=_xeUtils.default.get(a,r.field))&&(i=a.some(e=>e.required)),[]);return renderHeaderCellBaseVNs(e,(c=(0,_utils.isEnableConf)(t)?[i&&n.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(l),(0,_utils.isEnableConf)(d)&&n.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",n.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(l)]:c).concat(Cell.renderHeaderTitle(e)).concat(o?Cell.renderSortIcon(e):[]).concat(s?Cell.renderFilterIcon(e):[]))},renderRowEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,s=renderer.get(n.name),s=s?s.renderTableEdit||s.renderEdit:null,d=Object.assign({$type:"",isEdit:l},e);return l?(d.$type="edit",t?r.callSlot(t,d):s?(0,_vn.getSlotVNs)(s(n,d)):[]):o?renderCellBaseVNs(e,r.callSlot(o,d)):a?renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(d))]):Cell.renderDefaultCell(d)}};var _default=exports.default=Cell;
@@ -22,12 +22,10 @@ class ColumnInfo {
22
22
  renderFooter,
23
23
  renderData
24
24
  } = {}) {
25
- const $xeGrid = $xeTable.xegrid;
25
+ const tableProps = $xeTable.props;
26
+ const $xeGrid = $xeTable.xeGrid;
26
27
  const formatter = _vm.formatter;
27
28
  const visible = _xeUtils.default.isBoolean(_vm.visible) ? _vm.visible : true;
28
- const {
29
- props: tableProps
30
- } = $xeTable;
31
29
  const types = ['seq', 'checkbox', 'radio', 'expand', 'html'];
32
30
  if (_vm.type && types.indexOf(_vm.type) === -1) {
33
31
  (0, _log.warnLog)('vxe.error.errProp', [`type=${_vm.type}`, types.join(', ')]);