vxe-table 3.17.9 → 3.18.0-beta.0

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 (166) hide show
  1. package/es/components.js +1 -1
  2. package/es/grid/src/grid.js +6 -6
  3. package/es/index.css +1 -1
  4. package/es/index.min.css +1 -1
  5. package/es/locale/lang/ar-EG.js +3 -1
  6. package/es/locale/lang/de-DE.js +3 -1
  7. package/es/locale/lang/en-US.js +3 -1
  8. package/es/locale/lang/es-ES.js +3 -1
  9. package/es/locale/lang/fr-FR.js +3 -1
  10. package/es/locale/lang/hu-HU.js +3 -1
  11. package/es/locale/lang/hy-AM.js +3 -1
  12. package/es/locale/lang/id-ID.js +3 -1
  13. package/es/locale/lang/it-IT.js +3 -1
  14. package/es/locale/lang/ja-JP.js +3 -1
  15. package/es/locale/lang/ko-KR.js +3 -1
  16. package/es/locale/lang/ms-MY.js +3 -1
  17. package/es/locale/lang/nb-NO.js +3 -1
  18. package/es/locale/lang/pt-BR.js +3 -1
  19. package/es/locale/lang/ru-RU.js +3 -1
  20. package/es/locale/lang/th-TH.js +3 -1
  21. package/es/locale/lang/ug-CN.js +3 -1
  22. package/es/locale/lang/uk-UA.js +3 -1
  23. package/es/locale/lang/uz-UZ.js +3 -1
  24. package/es/locale/lang/vi-VN.js +3 -1
  25. package/es/locale/lang/zh-CHT.js +3 -1
  26. package/es/locale/lang/zh-CN.js +3 -1
  27. package/es/style.css +1 -1
  28. package/es/style.min.css +1 -1
  29. package/es/table/src/body.js +3 -3
  30. package/es/table/src/footer.js +1 -1
  31. package/es/table/src/header.js +2 -2
  32. package/es/table/src/methods.js +49 -21
  33. package/es/table/style.css +3 -3
  34. package/es/table/style.min.css +1 -1
  35. package/es/ui/index.js +1 -1
  36. package/es/ui/src/log.js +1 -1
  37. package/es/vxe-table/style.css +3 -3
  38. package/es/vxe-table/style.min.css +1 -1
  39. package/lib/components.js +17 -18
  40. package/lib/components.min.js +1 -1
  41. package/lib/grid/src/grid.js +6 -27
  42. package/lib/grid/src/grid.min.js +1 -1
  43. package/lib/index.css +1 -1
  44. package/lib/index.min.css +1 -1
  45. package/lib/index.umd.js +72 -71
  46. package/lib/index.umd.min.js +1 -1
  47. package/lib/locale/lang/ar-EG.js +3 -1
  48. package/lib/locale/lang/ar-EG.min.js +1 -1
  49. package/lib/locale/lang/ar-EG.umd.js +3 -1
  50. package/lib/locale/lang/de-DE.js +3 -1
  51. package/lib/locale/lang/de-DE.min.js +1 -1
  52. package/lib/locale/lang/de-DE.umd.js +3 -1
  53. package/lib/locale/lang/en-US.js +3 -1
  54. package/lib/locale/lang/en-US.min.js +1 -1
  55. package/lib/locale/lang/en-US.umd.js +3 -1
  56. package/lib/locale/lang/es-ES.js +3 -1
  57. package/lib/locale/lang/es-ES.min.js +1 -1
  58. package/lib/locale/lang/es-ES.umd.js +3 -1
  59. package/lib/locale/lang/fr-FR.js +3 -1
  60. package/lib/locale/lang/fr-FR.min.js +1 -1
  61. package/lib/locale/lang/fr-FR.umd.js +3 -1
  62. package/lib/locale/lang/hu-HU.js +3 -1
  63. package/lib/locale/lang/hu-HU.min.js +1 -1
  64. package/lib/locale/lang/hu-HU.umd.js +3 -1
  65. package/lib/locale/lang/hy-AM.js +3 -1
  66. package/lib/locale/lang/hy-AM.min.js +1 -1
  67. package/lib/locale/lang/hy-AM.umd.js +3 -1
  68. package/lib/locale/lang/id-ID.js +3 -1
  69. package/lib/locale/lang/id-ID.min.js +1 -1
  70. package/lib/locale/lang/id-ID.umd.js +3 -1
  71. package/lib/locale/lang/it-IT.js +3 -1
  72. package/lib/locale/lang/it-IT.min.js +1 -1
  73. package/lib/locale/lang/it-IT.umd.js +3 -1
  74. package/lib/locale/lang/ja-JP.js +3 -1
  75. package/lib/locale/lang/ja-JP.min.js +1 -1
  76. package/lib/locale/lang/ja-JP.umd.js +3 -1
  77. package/lib/locale/lang/ko-KR.js +3 -1
  78. package/lib/locale/lang/ko-KR.min.js +1 -1
  79. package/lib/locale/lang/ko-KR.umd.js +3 -1
  80. package/lib/locale/lang/ms-MY.js +3 -1
  81. package/lib/locale/lang/ms-MY.min.js +1 -1
  82. package/lib/locale/lang/ms-MY.umd.js +3 -1
  83. package/lib/locale/lang/nb-NO.js +3 -1
  84. package/lib/locale/lang/nb-NO.min.js +1 -1
  85. package/lib/locale/lang/nb-NO.umd.js +3 -1
  86. package/lib/locale/lang/pt-BR.js +3 -1
  87. package/lib/locale/lang/pt-BR.min.js +1 -1
  88. package/lib/locale/lang/pt-BR.umd.js +3 -1
  89. package/lib/locale/lang/ru-RU.js +3 -1
  90. package/lib/locale/lang/ru-RU.min.js +1 -1
  91. package/lib/locale/lang/ru-RU.umd.js +3 -1
  92. package/lib/locale/lang/th-TH.js +3 -1
  93. package/lib/locale/lang/th-TH.min.js +1 -1
  94. package/lib/locale/lang/th-TH.umd.js +3 -1
  95. package/lib/locale/lang/ug-CN.js +3 -1
  96. package/lib/locale/lang/ug-CN.min.js +1 -1
  97. package/lib/locale/lang/ug-CN.umd.js +3 -1
  98. package/lib/locale/lang/uk-UA.js +3 -1
  99. package/lib/locale/lang/uk-UA.min.js +1 -1
  100. package/lib/locale/lang/uk-UA.umd.js +3 -1
  101. package/lib/locale/lang/uz-UZ.js +3 -1
  102. package/lib/locale/lang/uz-UZ.min.js +1 -1
  103. package/lib/locale/lang/uz-UZ.umd.js +3 -1
  104. package/lib/locale/lang/vi-VN.js +3 -1
  105. package/lib/locale/lang/vi-VN.min.js +1 -1
  106. package/lib/locale/lang/vi-VN.umd.js +3 -1
  107. package/lib/locale/lang/zh-CHT.js +3 -1
  108. package/lib/locale/lang/zh-CHT.min.js +1 -1
  109. package/lib/locale/lang/zh-CHT.umd.js +3 -1
  110. package/lib/locale/lang/zh-CN.js +3 -1
  111. package/lib/locale/lang/zh-CN.min.js +1 -1
  112. package/lib/locale/lang/zh-CN.umd.js +3 -1
  113. package/lib/style.css +1 -1
  114. package/lib/style.min.css +1 -1
  115. package/lib/table/src/body.js +3 -2
  116. package/lib/table/src/body.min.js +1 -1
  117. package/lib/table/src/footer.js +1 -1
  118. package/lib/table/src/footer.min.js +1 -1
  119. package/lib/table/src/header.js +3 -2
  120. package/lib/table/src/header.min.js +1 -1
  121. package/lib/table/src/methods.js +49 -30
  122. package/lib/table/src/methods.min.js +1 -1
  123. package/lib/table/style/style.css +3 -3
  124. package/lib/table/style/style.min.css +1 -1
  125. package/lib/ui/index.js +1 -1
  126. package/lib/ui/index.min.js +1 -1
  127. package/lib/ui/src/log.js +1 -1
  128. package/lib/ui/src/log.min.js +1 -1
  129. package/lib/vxe-table/style/style.css +3 -3
  130. package/lib/vxe-table/style/style.min.css +1 -1
  131. package/package.json +1 -1
  132. package/packages/components.ts +1 -1
  133. package/packages/grid/src/grid.ts +26 -25
  134. package/packages/locale/lang/ar-EG.ts +3 -1
  135. package/packages/locale/lang/de-DE.ts +3 -1
  136. package/packages/locale/lang/en-US.ts +3 -1
  137. package/packages/locale/lang/es-ES.ts +3 -1
  138. package/packages/locale/lang/fr-FR.ts +3 -1
  139. package/packages/locale/lang/hu-HU.ts +3 -1
  140. package/packages/locale/lang/hy-AM.ts +3 -1
  141. package/packages/locale/lang/id-ID.ts +3 -1
  142. package/packages/locale/lang/it-IT.ts +3 -1
  143. package/packages/locale/lang/ja-JP.ts +3 -1
  144. package/packages/locale/lang/ko-KR.ts +3 -1
  145. package/packages/locale/lang/ms-MY.ts +3 -1
  146. package/packages/locale/lang/nb-NO.ts +3 -1
  147. package/packages/locale/lang/pt-BR.ts +3 -1
  148. package/packages/locale/lang/ru-RU.ts +3 -1
  149. package/packages/locale/lang/th-TH.ts +3 -1
  150. package/packages/locale/lang/ug-CN.ts +3 -1
  151. package/packages/locale/lang/uk-UA.ts +3 -1
  152. package/packages/locale/lang/uz-UZ.ts +3 -1
  153. package/packages/locale/lang/vi-VN.ts +3 -1
  154. package/packages/locale/lang/zh-CHT.ts +3 -1
  155. package/packages/locale/lang/zh-CN.ts +3 -1
  156. package/packages/table/src/body.ts +3 -3
  157. package/packages/table/src/footer.ts +1 -1
  158. package/packages/table/src/header.ts +2 -2
  159. package/packages/table/src/methods.ts +53 -21
  160. package/styles/components/table.scss +7 -3
  161. /package/es/{iconfont.1755066349013.ttf → iconfont.1755178463571.ttf} +0 -0
  162. /package/es/{iconfont.1755066349013.woff → iconfont.1755178463571.woff} +0 -0
  163. /package/es/{iconfont.1755066349013.woff2 → iconfont.1755178463571.woff2} +0 -0
  164. /package/lib/{iconfont.1755066349013.ttf → iconfont.1755178463571.ttf} +0 -0
  165. /package/lib/{iconfont.1755066349013.woff → iconfont.1755178463571.woff} +0 -0
  166. /package/lib/{iconfont.1755066349013.woff2 → iconfont.1755178463571.woff2} +0 -0
@@ -61,7 +61,7 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
61
61
  const tableInternalData = $xeTable;
62
62
  const $xeGrid = $xeTable.$xeGrid;
63
63
  const { columnKey, resizable: allResizable, showOverflow: allShowOverflow, border, height, treeConfig, cellClassName: allCellClassName, cellStyle, align: allAlign, spanMethod, mouseConfig, editConfig, editRules, tooltipConfig, padding: allPadding } = tableProps;
64
- const { tableData, dragRow, overflowX, overflowY, currentColumn, scrollXLoad, scrollYLoad, mergeBodyFlag, calcCellHeightFlag, resizeHeightFlag, resizeWidthFlag, editStore, isAllOverflow, validErrorMaps } = tableReactData;
64
+ const { tableData, tableColumn, dragRow, overflowX, overflowY, currentColumn, scrollXLoad, scrollYLoad, mergeBodyFlag, calcCellHeightFlag, resizeHeightFlag, resizeWidthFlag, editStore, isAllOverflow, validErrorMaps } = tableReactData;
65
65
  const { fullAllDataRowIdData, fullColumnIdData, mergeBodyCellMaps, visibleColumn, afterFullData, mergeBodyList, scrollXStore, scrollYStore } = tableInternalData;
66
66
  const cellOpts = $xeTable.computeCellOpts;
67
67
  const validOpts = $xeTable.computeValidOpts;
@@ -246,10 +246,10 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
246
246
  let isVNPreEmptyStatus = false;
247
247
  if (!isMergeCell) {
248
248
  if (!dragRow || getRowid($xeTable, dragRow) !== rowid) {
249
- if (overflowY && scrollYLoad && !treeConfig && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
249
+ if (overflowY && scrollYLoad && !treeConfig && tableData.length > 16 && !virtualYOpts.immediate && (_rowIndex < scrollYStore.visibleStartIndex - scrollYStore.preloadSize || _rowIndex > scrollYStore.visibleEndIndex + scrollYStore.preloadSize)) {
250
250
  isVNPreEmptyStatus = true;
251
251
  }
252
- else if (overflowX && scrollXLoad && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
252
+ else if (overflowX && scrollXLoad && tableColumn.length > 10 && !virtualXOpts.immediate && !column.fixed && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
253
253
  isVNPreEmptyStatus = true;
254
254
  }
255
255
  }
@@ -122,7 +122,7 @@ function renderRows(h, _vm, isOptimizeMode, tableColumn, footerTableData, row, $
122
122
  const isAutoCellWidth = !column.resizeWidth && (column.minWidth === 'auto' || column.width === 'auto');
123
123
  let isVNPreEmptyStatus = false;
124
124
  if (isOptimizeMode && overflowX && !isMergeCell) {
125
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
125
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
126
126
  isVNPreEmptyStatus = true;
127
127
  }
128
128
  }
@@ -13,7 +13,7 @@ const renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) => {
13
13
  const tableInternalData = $xeTable;
14
14
  const { fixedType } = props;
15
15
  const { resizable: allResizable, columnKey, headerCellClassName, headerCellStyle, showHeaderOverflow: allColumnHeaderOverflow, headerAlign: allHeaderAlign, align: allAlign, mouseConfig } = tableProps;
16
- const { currentColumn, dragCol, scrollXLoad, scrollYLoad, overflowX } = tableReactData;
16
+ const { currentColumn, dragCol, scrollXLoad, scrollYLoad, overflowX, tableColumn } = tableReactData;
17
17
  const { fullColumnIdData, scrollXStore } = tableInternalData;
18
18
  const virtualXOpts = $xeTable.computeVirtualXOpts;
19
19
  const columnOpts = $xeTable.computeColumnOpts;
@@ -94,7 +94,7 @@ const renderRows = (h, _vm, isGroup, isOptimizeMode, cols, $rowIndex) => {
94
94
  let isVNPreEmptyStatus = false;
95
95
  if (isOptimizeMode && overflowX && !isGroup) {
96
96
  if (!dragCol || dragCol.id !== colid) {
97
- if (scrollXLoad && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
97
+ if (scrollXLoad && tableColumn.length > 10 && !column.fixed && !virtualXOpts.immediate && (_columnIndex < scrollXStore.visibleStartIndex - scrollXStore.preloadSize || _columnIndex > scrollXStore.visibleEndIndex + scrollXStore.preloadSize)) {
98
98
  isVNPreEmptyStatus = true;
99
99
  }
100
100
  }
@@ -280,8 +280,11 @@ function cacheColumnMap($xeTable) {
280
280
  fullColFieldData[field] = rest;
281
281
  }
282
282
  else {
283
- if ((storage && !type) || (columnOpts.drag && (isCrossDrag || isSelfToChildDrag))) {
284
- errLog('vxe.error.reqProp', [`${column.getTitle() || type || ''} -> column.field=?`]);
283
+ if (storage && !type) {
284
+ errLog('vxe.error.reqSupportProp', ['storage', `${column.getTitle() || type || ''} -> field=?`]);
285
+ }
286
+ if (columnOpts.drag && (isCrossDrag || isSelfToChildDrag)) {
287
+ errLog('vxe.error.reqSupportProp', ['column-drag-config.isCrossDrag | column-drag-config.isSelfToChildDrag', `${column.getTitle() || type || ''} -> field=?`]);
285
288
  }
286
289
  }
287
290
  if (!hasFixed && fixed) {
@@ -7534,15 +7537,22 @@ const Methods = {
7534
7537
  * @param {Row} row 行对象
7535
7538
  */
7536
7539
  setCurrentRow(row) {
7537
- const { $el, rowOpts } = this;
7540
+ const $xeTable = this;
7541
+ const internalData = $xeTable;
7542
+ const $xeGanttView = internalData.xeGanttView;
7543
+ const el = $xeTable.$refs.refElem;
7544
+ const rowOpts = $xeTable.computeRowOpts;
7538
7545
  this.clearCurrentRow();
7539
7546
  // this.clearCurrentColumn()
7540
7547
  this.currentRow = row;
7541
7548
  if (rowOpts.isCurrent || this.highlightCurrentRow) {
7542
- if ($el) {
7543
- XEUtils.arrayEach($el.querySelectorAll(`[rowid="${getRowid(this, row)}"]`), elem => addClass(elem, 'row--current'));
7549
+ if (el) {
7550
+ XEUtils.arrayEach(el.querySelectorAll(`[rowid="${getRowid($xeTable, row)}"]`), elem => addClass(elem, 'row--current'));
7544
7551
  }
7545
7552
  }
7553
+ if ($xeGanttView) {
7554
+ $xeGanttView.handleUpdateCurrentRow(row);
7555
+ }
7546
7556
  return this.$nextTick();
7547
7557
  },
7548
7558
  isCheckedByRadioRow(row) {
@@ -7589,13 +7599,20 @@ const Methods = {
7589
7599
  * 用于当前行,手动清空当前高亮的状态
7590
7600
  */
7591
7601
  clearCurrentRow() {
7592
- const { $el } = this;
7593
- this.currentRow = null;
7594
- this.hoverRow = null;
7595
- if ($el) {
7596
- XEUtils.arrayEach($el.querySelectorAll('.row--current'), elem => removeClass(elem, 'row--current'));
7602
+ const $xeTable = this;
7603
+ const reactData = $xeTable;
7604
+ const internalData = $xeTable;
7605
+ const $xeGanttView = internalData.xeGanttView;
7606
+ const el = $xeTable.$refs.refElem;
7607
+ reactData.currentRow = null;
7608
+ internalData.hoverRow = null;
7609
+ if (el) {
7610
+ XEUtils.arrayEach(el.querySelectorAll('.row--current'), elem => removeClass(elem, 'row--current'));
7597
7611
  }
7598
- return this.$nextTick();
7612
+ if ($xeGanttView) {
7613
+ $xeGanttView.handleUpdateCurrentRow();
7614
+ }
7615
+ return $xeTable.$nextTick();
7599
7616
  },
7600
7617
  /**
7601
7618
  * 用于单选行,手动清空用户的选择
@@ -7657,20 +7674,31 @@ const Methods = {
7657
7674
  this.setHoverRow(row);
7658
7675
  },
7659
7676
  setHoverRow(row) {
7660
- const { $el } = this;
7661
- const rowid = getRowid(this, row);
7662
- this.clearHoverRow();
7663
- if ($el) {
7664
- XEUtils.arrayEach($el.querySelectorAll(`.vxe-body--row[rowid="${rowid}"]`), elem => addClass(elem, 'row--hover'));
7677
+ const $xeTable = this;
7678
+ const internalData = $xeTable;
7679
+ const $xeGanttView = internalData.xeGanttView;
7680
+ const el = $xeTable.$refs.refElem;
7681
+ $xeTable.clearHoverRow();
7682
+ if (el) {
7683
+ XEUtils.arrayEach(el.querySelectorAll(`.vxe-body--row[rowid="${getRowid($xeTable, row)}"]`), elem => addClass(elem, 'row--hover'));
7684
+ }
7685
+ internalData.hoverRow = row;
7686
+ if ($xeGanttView) {
7687
+ $xeGanttView.handleUpdateHoverRow(row);
7665
7688
  }
7666
- this.hoverRow = row;
7667
7689
  },
7668
7690
  clearHoverRow() {
7669
- const { $el } = this;
7670
- if ($el) {
7671
- XEUtils.arrayEach($el.querySelectorAll('.vxe-body--row.row--hover'), elem => removeClass(elem, 'row--hover'));
7691
+ const $xeTable = this;
7692
+ const internalData = $xeTable;
7693
+ const $xeGanttView = internalData.xeGanttView;
7694
+ const el = $xeTable.$refs.refElem;
7695
+ if (el) {
7696
+ XEUtils.arrayEach(el.querySelectorAll('.vxe-body--row.row--hover'), elem => removeClass(elem, 'row--hover'));
7697
+ }
7698
+ internalData.hoverRow = null;
7699
+ if ($xeGanttView) {
7700
+ $xeGanttView.handleUpdateHoverRow();
7672
7701
  }
7673
- this.hoverRow = null;
7674
7702
  },
7675
7703
  triggerHeaderCellClickEvent(evnt, params) {
7676
7704
  const $xeTable = this;
@@ -2670,9 +2670,6 @@
2670
2670
  .vxe-table--render-default .vxe-body--row.row--hover.row--current > .vxe-body--column {
2671
2671
  background-color: var(--vxe-ui-table-row-hover-current-background-color);
2672
2672
  }
2673
- .vxe-table--render-default .vxe-table--footer-wrapper {
2674
- border-top: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
2675
- }
2676
2673
  .vxe-table--render-default.border--default .vxe-table--scroll-y-top-corner::before,
2677
2674
  .vxe-table--render-default.border--default .vxe-table--scroll-y-bottom-corner::before, .vxe-table--render-default.border--full .vxe-table--scroll-y-top-corner::before,
2678
2675
  .vxe-table--render-default.border--full .vxe-table--scroll-y-bottom-corner::before, .vxe-table--render-default.border--outer .vxe-table--scroll-y-top-corner::before,
@@ -2740,6 +2737,9 @@
2740
2737
  background-size: 100% var(--vxe-ui-table-border-width);
2741
2738
  background-position: right bottom;
2742
2739
  }
2740
+ .vxe-table--render-default.border--default .vxe-table--footer-wrapper, .vxe-table--render-default.border--full .vxe-table--footer-wrapper, .vxe-table--render-default.border--inner .vxe-table--footer-wrapper {
2741
+ border-top: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
2742
+ }
2743
2743
  .vxe-table--render-default.border--default .vxe-table--scroll-y-top-corner::before, .vxe-table--render-default.border--full .vxe-table--scroll-y-top-corner::before {
2744
2744
  border-left-width: var(--vxe-ui-table-border-width);
2745
2745
  border-right-width: var(--vxe-ui-table-border-width);