vxe-table 3.14.4 → 3.15.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 (140) hide show
  1. package/es/locale/lang/ar-EG.js +3 -1
  2. package/es/locale/lang/de-DE.js +3 -1
  3. package/es/locale/lang/en-US.js +7 -5
  4. package/es/locale/lang/es-ES.js +3 -1
  5. package/es/locale/lang/fr-FR.js +3 -1
  6. package/es/locale/lang/hu-HU.js +3 -1
  7. package/es/locale/lang/hy-AM.js +3 -1
  8. package/es/locale/lang/id-ID.js +3 -1
  9. package/es/locale/lang/it-IT.js +3 -1
  10. package/es/locale/lang/ja-JP.js +3 -1
  11. package/es/locale/lang/ko-KR.js +3 -1
  12. package/es/locale/lang/nb-NO.js +3 -1
  13. package/es/locale/lang/pt-BR.js +3 -1
  14. package/es/locale/lang/ru-RU.js +3 -1
  15. package/es/locale/lang/th-TH.js +3 -1
  16. package/es/locale/lang/ug-CN.js +3 -1
  17. package/es/locale/lang/uk-UA.js +3 -1
  18. package/es/locale/lang/vi-VN.js +3 -1
  19. package/es/locale/lang/zh-CHT.js +3 -1
  20. package/es/locale/lang/zh-CN.js +3 -1
  21. package/es/style.css +1 -1
  22. package/es/table/module/edit/mixin.js +10 -9
  23. package/es/table/module/export/export-panel.js +32 -17
  24. package/es/table/module/export/mixin.js +17 -12
  25. package/es/table/src/body.js +11 -13
  26. package/es/table/src/footer.js +3 -16
  27. package/es/table/src/methods.js +246 -109
  28. package/es/table/src/table.js +50 -25
  29. package/es/table/src/util.js +0 -13
  30. package/es/ui/index.js +2 -2
  31. package/es/ui/src/log.js +1 -1
  32. package/lib/index.umd.js +410 -247
  33. package/lib/index.umd.min.js +1 -1
  34. package/lib/locale/lang/ar-EG.js +3 -1
  35. package/lib/locale/lang/ar-EG.min.js +1 -1
  36. package/lib/locale/lang/de-DE.js +3 -1
  37. package/lib/locale/lang/de-DE.min.js +1 -1
  38. package/lib/locale/lang/en-US.js +7 -5
  39. package/lib/locale/lang/en-US.min.js +1 -1
  40. package/lib/locale/lang/en-US.umd.js +7 -5
  41. package/lib/locale/lang/es-ES.js +3 -1
  42. package/lib/locale/lang/es-ES.min.js +1 -1
  43. package/lib/locale/lang/es-ES.umd.js +3 -1
  44. package/lib/locale/lang/fr-FR.js +3 -1
  45. package/lib/locale/lang/fr-FR.min.js +1 -1
  46. package/lib/locale/lang/hu-HU.js +3 -1
  47. package/lib/locale/lang/hu-HU.min.js +1 -1
  48. package/lib/locale/lang/hu-HU.umd.js +3 -1
  49. package/lib/locale/lang/hy-AM.js +3 -1
  50. package/lib/locale/lang/hy-AM.min.js +1 -1
  51. package/lib/locale/lang/id-ID.js +3 -1
  52. package/lib/locale/lang/id-ID.min.js +1 -1
  53. package/lib/locale/lang/it-IT.js +3 -1
  54. package/lib/locale/lang/it-IT.min.js +1 -1
  55. package/lib/locale/lang/ja-JP.js +3 -1
  56. package/lib/locale/lang/ja-JP.min.js +1 -1
  57. package/lib/locale/lang/ja-JP.umd.js +3 -1
  58. package/lib/locale/lang/ko-KR.js +3 -1
  59. package/lib/locale/lang/ko-KR.min.js +1 -1
  60. package/lib/locale/lang/ko-KR.umd.js +3 -1
  61. package/lib/locale/lang/nb-NO.js +3 -1
  62. package/lib/locale/lang/nb-NO.min.js +1 -1
  63. package/lib/locale/lang/pt-BR.js +3 -1
  64. package/lib/locale/lang/pt-BR.min.js +1 -1
  65. package/lib/locale/lang/pt-BR.umd.js +3 -1
  66. package/lib/locale/lang/ru-RU.js +3 -1
  67. package/lib/locale/lang/ru-RU.min.js +1 -1
  68. package/lib/locale/lang/ru-RU.umd.js +3 -1
  69. package/lib/locale/lang/th-TH.js +3 -1
  70. package/lib/locale/lang/th-TH.min.js +1 -1
  71. package/lib/locale/lang/ug-CN.js +3 -1
  72. package/lib/locale/lang/ug-CN.min.js +1 -1
  73. package/lib/locale/lang/uk-UA.js +3 -1
  74. package/lib/locale/lang/uk-UA.min.js +1 -1
  75. package/lib/locale/lang/uk-UA.umd.js +3 -1
  76. package/lib/locale/lang/vi-VN.js +3 -1
  77. package/lib/locale/lang/vi-VN.min.js +1 -1
  78. package/lib/locale/lang/zh-CHT.js +3 -1
  79. package/lib/locale/lang/zh-CHT.min.js +1 -1
  80. package/lib/locale/lang/zh-CHT.umd.js +3 -1
  81. package/lib/locale/lang/zh-CN.js +3 -1
  82. package/lib/locale/lang/zh-CN.min.js +1 -1
  83. package/lib/locale/lang/zh-CN.umd.js +3 -1
  84. package/lib/style.css +1 -1
  85. package/lib/table/module/edit/mixin.js +9 -9
  86. package/lib/table/module/edit/mixin.min.js +1 -1
  87. package/lib/table/module/export/export-panel.js +29 -17
  88. package/lib/table/module/export/export-panel.min.js +1 -1
  89. package/lib/table/module/export/mixin.js +18 -12
  90. package/lib/table/module/export/mixin.min.js +1 -1
  91. package/lib/table/src/body.js +14 -15
  92. package/lib/table/src/body.min.js +1 -1
  93. package/lib/table/src/footer.js +4 -27
  94. package/lib/table/src/footer.min.js +1 -1
  95. package/lib/table/src/methods.js +278 -114
  96. package/lib/table/src/methods.min.js +1 -1
  97. package/lib/table/src/table.js +52 -25
  98. package/lib/table/src/table.min.js +1 -1
  99. package/lib/table/src/util.js +0 -25
  100. package/lib/table/src/util.min.js +1 -1
  101. package/lib/ui/index.js +2 -2
  102. package/lib/ui/index.min.js +1 -1
  103. package/lib/ui/src/log.js +1 -1
  104. package/lib/ui/src/log.min.js +1 -1
  105. package/package.json +2 -2
  106. package/packages/locale/lang/ar-EG.ts +3 -1
  107. package/packages/locale/lang/de-DE.ts +3 -1
  108. package/packages/locale/lang/en-US.ts +7 -5
  109. package/packages/locale/lang/es-ES.ts +3 -1
  110. package/packages/locale/lang/fr-FR.ts +3 -1
  111. package/packages/locale/lang/hu-HU.ts +3 -1
  112. package/packages/locale/lang/hy-AM.ts +3 -1
  113. package/packages/locale/lang/id-ID.ts +3 -1
  114. package/packages/locale/lang/it-IT.ts +3 -1
  115. package/packages/locale/lang/ja-JP.ts +3 -1
  116. package/packages/locale/lang/ko-KR.ts +3 -1
  117. package/packages/locale/lang/nb-NO.ts +3 -1
  118. package/packages/locale/lang/pt-BR.ts +3 -1
  119. package/packages/locale/lang/ru-RU.ts +3 -1
  120. package/packages/locale/lang/th-TH.ts +3 -1
  121. package/packages/locale/lang/ug-CN.ts +3 -1
  122. package/packages/locale/lang/uk-UA.ts +3 -1
  123. package/packages/locale/lang/vi-VN.ts +3 -1
  124. package/packages/locale/lang/zh-CHT.ts +3 -1
  125. package/packages/locale/lang/zh-CN.ts +3 -1
  126. package/packages/table/module/edit/mixin.ts +10 -9
  127. package/packages/table/module/export/export-panel.ts +33 -17
  128. package/packages/table/module/export/mixin.ts +17 -12
  129. package/packages/table/src/body.ts +11 -13
  130. package/packages/table/src/footer.ts +3 -17
  131. package/packages/table/src/methods.ts +261 -119
  132. package/packages/table/src/table.ts +50 -25
  133. package/packages/table/src/util.ts +0 -14
  134. package/packages/ui/index.ts +1 -1
  135. /package/es/{iconfont.1743393991959.ttf → iconfont.1743578536739.ttf} +0 -0
  136. /package/es/{iconfont.1743393991959.woff → iconfont.1743578536739.woff} +0 -0
  137. /package/es/{iconfont.1743393991959.woff2 → iconfont.1743578536739.woff2} +0 -0
  138. /package/lib/{iconfont.1743393991959.ttf → iconfont.1743578536739.ttf} +0 -0
  139. /package/lib/{iconfont.1743393991959.woff → iconfont.1743578536739.woff} +0 -0
  140. /package/lib/{iconfont.1743393991959.woff2 → iconfont.1743578536739.woff2} +0 -0
@@ -199,21 +199,23 @@ function renderRowExpandedVNs(h, $xeTable) {
199
199
  const { transform, seqMode } = treeOpts;
200
200
  const cellStyle = {};
201
201
  const rowid = handleGetRowId(row);
202
- const rest = fullAllDataRowIdData[rowid];
202
+ const rowRest = fullAllDataRowIdData[rowid];
203
203
  let rowLevel = 0;
204
204
  let seq = -1;
205
- let _rowIndex = 0;
206
- const rowIndex = $xeTable.getRowIndex(row);
207
- const $rowIndex = $xeTable.getVMRowIndex(row);
208
- if (rest) {
209
- rowLevel = rest.level;
205
+ let _rowIndex = -1;
206
+ let rowIndex = -1;
207
+ let $rowIndex = -1;
208
+ if (rowRest) {
209
+ rowLevel = rowRest.level;
210
210
  if (treeConfig && transform && seqMode === 'increasing') {
211
- seq = rest._index + 1;
211
+ seq = rowRest._index + 1;
212
212
  }
213
213
  else {
214
- seq = rest.seq;
214
+ seq = rowRest.seq;
215
215
  }
216
- _rowIndex = rest._index;
216
+ rowIndex = rowRest.index;
217
+ $rowIndex = rowRest.$index;
218
+ _rowIndex = rowRest._index;
217
219
  }
218
220
  if (expandHeight) {
219
221
  cellStyle.height = `${expandHeight}px`;
@@ -453,10 +455,6 @@ export default {
453
455
  hasFixedColumn: false,
454
456
  // 树节点列信息
455
457
  treeNodeColumn: null,
456
- // 合并单元格的对象集
457
- mergeList: [],
458
- // 合并表尾数据的对象集
459
- mergeFooterList: [],
460
458
  // 初始化标识
461
459
  initStore: {
462
460
  filter: false,
@@ -599,12 +597,17 @@ export default {
599
597
  original: false,
600
598
  message: true,
601
599
  isHeader: false,
600
+ isTitle: false,
602
601
  isFooter: false
603
602
  },
604
603
  rowExpandedFlag: 1,
605
604
  treeExpandedFlag: 1,
606
605
  updateCheckboxFlag: 1,
607
606
  pendingRowFlag: 1,
607
+ insertRowFlag: 1,
608
+ removeRowFlag: 1,
609
+ mergeBodyFlag: 1,
610
+ mergeFootFlag: 1,
608
611
  rowHeightStore: {
609
612
  default: 48,
610
613
  medium: 44,
@@ -1030,19 +1033,21 @@ export default {
1030
1033
  },
1031
1034
  computeTableRowExpandedList() {
1032
1035
  const $xeTable = this;
1036
+ const props = $xeTable;
1033
1037
  const reactData = $xeTable;
1034
1038
  const internalData = $xeTable;
1035
- const { rowExpandedFlag, tableData, expandColumn } = reactData;
1036
- const { rowExpandedMaps } = internalData;
1037
- const { handleGetRowId } = createHandleGetRowId($xeTable);
1039
+ const { treeConfig } = props;
1040
+ const { rowExpandedFlag, expandColumn } = reactData;
1041
+ const { visibleDataRowIdData, rowExpandedMaps } = internalData;
1042
+ const treeOpts = $xeTable.computeTreeOpts;
1043
+ const { transform } = treeOpts;
1038
1044
  const expandList = [];
1039
1045
  if (expandColumn && rowExpandedFlag) {
1040
- const rowKeys = {};
1041
- tableData.forEach(row => {
1042
- rowKeys[handleGetRowId(row)] = true;
1043
- });
1046
+ if (treeConfig && !transform) {
1047
+ return XEUtils.values(rowExpandedMaps);
1048
+ }
1044
1049
  XEUtils.each(rowExpandedMaps, (row, rowid) => {
1045
- if (rowKeys[rowid]) {
1050
+ if (visibleDataRowIdData[rowid]) {
1046
1051
  expandList.push(row);
1047
1052
  }
1048
1053
  });
@@ -1301,13 +1306,26 @@ export default {
1301
1306
  tableFullColumn: [],
1302
1307
  // 渲染所有列
1303
1308
  visibleColumn: [],
1304
- // 总的缓存数据集
1309
+ // 全量数据集(包括当前和已删除)
1305
1310
  fullAllDataRowIdData: {},
1311
+ // 数据集(仅当前)
1312
+ fullDataRowIdData: {},
1313
+ // 数据集(仅可视)
1314
+ visibleDataRowIdData: {},
1306
1315
  // 渲染中缓存数据
1307
1316
  sourceDataRowIdData: {},
1308
- fullDataRowIdData: {},
1309
1317
  fullColumnIdData: {},
1310
1318
  fullColumnFieldData: {},
1319
+ // 合并单元格的数据
1320
+ mergeBodyList: [],
1321
+ mergeBodyMaps: {},
1322
+ // 合并表尾的数据
1323
+ mergeFooterList: [],
1324
+ mergeFooterMaps: {},
1325
+ // 已合并单元格数据集合
1326
+ mergeBodyCellMaps: {},
1327
+ // 已合并表尾数据集合
1328
+ mergeFooterCellMaps: {},
1311
1329
  // 已展开的行集合
1312
1330
  rowExpandedMaps: {},
1313
1331
  // 懒加载中的展开行的集合
@@ -1345,6 +1363,7 @@ export default {
1345
1363
  const currentColumnOpts = $xeTable.computeCurrentColumnOpts;
1346
1364
  const virtualXOpts = $xeTable.computeVirtualXOpts;
1347
1365
  const virtualYOpts = $xeTable.computeVirtualYOpts;
1366
+ const keyboardOpts = $xeTable.computeKeyboardOpts;
1348
1367
  if (props.rowId) {
1349
1368
  warnLog('vxe.error.delProp', ['row-id', 'row-config.keyField']);
1350
1369
  }
@@ -1387,6 +1406,12 @@ export default {
1387
1406
  if (this.highlightHoverColumn) {
1388
1407
  warnLog('vxe.error.delProp', ['highlight-hover-column', 'column-config.isHover']);
1389
1408
  }
1409
+ // if (props.scrollY) {
1410
+ // warnLog('vxe.error.delProp', ['scroll-y', 'virtual-y-config'])
1411
+ // }
1412
+ // if (props.scrollX) {
1413
+ // warnLog('vxe.error.delProp', ['scroll-x', 'virtual-x-config'])
1414
+ // }
1390
1415
  // 检查导入导出类型,如果自定义导入导出方法,则不校验类型
1391
1416
  if (importConfig && importOpts.types && !importOpts.importMethod && !XEUtils.includeArrays(XEUtils.keys(importOpts._typeMaps), importOpts.types)) {
1392
1417
  warnLog('vxe.error.errProp', [`export-config.types=${importOpts.types.join(',')}`, importOpts.types.filter((type) => XEUtils.includes(XEUtils.keys(importOpts._typeMaps), type)).join(',') || XEUtils.keys(importOpts._typeMaps).join(',')]);
@@ -1478,10 +1503,10 @@ export default {
1478
1503
  if (props.emptyRender && !XEUtils.isObject(props.emptyRender)) {
1479
1504
  warnLog('vxe.error.errProp', [`table.empty-render=${props.emptyRender}`, 'table.empty-render={}']);
1480
1505
  }
1481
- if ((rowOpts.isCurrent || highlightCurrentRow) && !XEUtils.isBoolean(currentRowOpts.isFollowSelected)) {
1506
+ if ((rowOpts.isCurrent || highlightCurrentRow) && props.keyboardConfig && keyboardOpts.isArrow && !XEUtils.isBoolean(currentRowOpts.isFollowSelected)) {
1482
1507
  warnLog('vxe.error.notConflictProp', ['row-config.isCurrent', 'current-row-config.isFollowSelected']);
1483
1508
  }
1484
- if ((columnOpts.isCurrent || highlightCurrentColumn) && !XEUtils.isBoolean(currentColumnOpts.isFollowSelected)) {
1509
+ if ((columnOpts.isCurrent || highlightCurrentColumn) && props.keyboardConfig && keyboardOpts.isArrow && !XEUtils.isBoolean(currentColumnOpts.isFollowSelected)) {
1485
1510
  warnLog('vxe.error.notConflictProp', ['column-config.isCurrent', 'current-column-config.isFollowSelected']);
1486
1511
  }
1487
1512
  // 如果不支持虚拟滚动
@@ -353,19 +353,6 @@ export function calcTreeLine(params, prevRow) {
353
353
  }
354
354
  return cellHeight * expandSize - (prevRow ? 1 : (12 - getOffsetSize($table)));
355
355
  }
356
- export function mergeBodyMethod(mergeList, _rowIndex, _columnIndex) {
357
- for (let mIndex = 0; mIndex < mergeList.length; mIndex++) {
358
- const { row: mergeRowIndex, col: mergeColIndex, rowspan: mergeRowspan, colspan: mergeColspan } = mergeList[mIndex];
359
- if (mergeColIndex > -1 && mergeRowIndex > -1 && mergeRowspan && mergeColspan) {
360
- if (mergeRowIndex === _rowIndex && mergeColIndex === _columnIndex) {
361
- return { rowspan: mergeRowspan, colspan: mergeColspan };
362
- }
363
- if (_rowIndex >= mergeRowIndex && _rowIndex < mergeRowIndex + mergeRowspan && _columnIndex >= mergeColIndex && _columnIndex < mergeColIndex + mergeColspan) {
364
- return { rowspan: 0, colspan: 0 };
365
- }
366
- }
367
- }
368
- }
369
356
  export function getCellValue(row, column) {
370
357
  return XEUtils.get(row, column.field);
371
358
  }
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { getFuncText } from './src/utils';
3
- export const version = "3.14.4";
3
+ export const version = "3.15.0-beta.0";
4
4
  VxeUI.version = version;
5
5
  VxeUI.tableVersion = version;
6
6
  VxeUI.setConfig({
@@ -192,7 +192,7 @@ VxeUI.setConfig({
192
192
  },
193
193
  virtualXConfig: {
194
194
  enabled: true,
195
- gt: 60,
195
+ gt: 28,
196
196
  preSize: 0,
197
197
  oSize: 1
198
198
  },
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `table v${"3.14.4"}`;
3
+ const version = `table v${"3.15.0-beta.0"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);