vxe-table 4.17.4 → 4.17.6

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 (55) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/table/module/edit/hook.js +13 -11
  6. package/es/table/module/export/hook.js +5 -3
  7. package/es/table/src/cell.js +2 -2
  8. package/es/table/src/table.js +18 -2
  9. package/es/table/style.css +4 -3
  10. package/es/table/style.min.css +1 -1
  11. package/es/toolbar/src/toolbar.js +3 -3
  12. package/es/ui/index.js +1 -1
  13. package/es/ui/src/dom.js +17 -0
  14. package/es/ui/src/log.js +1 -1
  15. package/es/vxe-table/style.css +4 -3
  16. package/es/vxe-table/style.min.css +1 -1
  17. package/lib/index.css +1 -1
  18. package/lib/index.min.css +1 -1
  19. package/lib/index.umd.js +46 -24
  20. package/lib/index.umd.min.js +1 -1
  21. package/lib/style.css +1 -1
  22. package/lib/style.min.css +1 -1
  23. package/lib/table/module/edit/hook.js +13 -11
  24. package/lib/table/module/edit/hook.min.js +1 -1
  25. package/lib/table/module/export/hook.js +5 -3
  26. package/lib/table/module/export/hook.min.js +1 -1
  27. package/lib/table/src/cell.js +2 -2
  28. package/lib/table/src/table.js +4 -3
  29. package/lib/table/src/table.min.js +1 -1
  30. package/lib/table/style/style.css +4 -3
  31. package/lib/table/style/style.min.css +1 -1
  32. package/lib/toolbar/src/toolbar.js +3 -3
  33. package/lib/toolbar/src/toolbar.min.js +1 -1
  34. package/lib/ui/index.js +1 -1
  35. package/lib/ui/index.min.js +1 -1
  36. package/lib/ui/src/dom.js +18 -0
  37. package/lib/ui/src/dom.min.js +1 -1
  38. package/lib/ui/src/log.js +1 -1
  39. package/lib/ui/src/log.min.js +1 -1
  40. package/lib/vxe-table/style/style.css +4 -3
  41. package/lib/vxe-table/style/style.min.css +1 -1
  42. package/package.json +1 -1
  43. package/packages/table/module/edit/hook.ts +13 -11
  44. package/packages/table/module/export/hook.ts +5 -3
  45. package/packages/table/src/cell.ts +2 -2
  46. package/packages/table/src/table.ts +19 -2
  47. package/packages/toolbar/src/toolbar.ts +3 -3
  48. package/packages/ui/src/dom.ts +18 -0
  49. package/styles/components/table.scss +34 -3
  50. /package/es/{iconfont.1761699987872.ttf → iconfont.1761877377602.ttf} +0 -0
  51. /package/es/{iconfont.1761699987872.woff → iconfont.1761877377602.woff} +0 -0
  52. /package/es/{iconfont.1761699987872.woff2 → iconfont.1761877377602.woff2} +0 -0
  53. /package/lib/{iconfont.1761699987872.ttf → iconfont.1761877377602.ttf} +0 -0
  54. /package/lib/{iconfont.1761699987872.woff → iconfont.1761877377602.woff} +0 -0
  55. /package/lib/{iconfont.1761699987872.woff2 → iconfont.1761877377602.woff2} +0 -0
@@ -67,17 +67,17 @@ hooks.add('tableEditModule', {
67
67
  const { item: parentRow } = matchObj;
68
68
  const parentRest = fullAllDataRowIdData[getRowid($xeTable, parentRow)];
69
69
  const parentLevel = parentRest ? parentRest.level : 0;
70
- let parentChilds = parentRow[childrenField];
71
- let mapChilds = parentRow[mapChildrenField];
72
- if (!XEUtils.isArray(parentChilds)) {
73
- parentChilds = parentRow[childrenField] = [];
70
+ let pChilds = parentRow[childrenField];
71
+ let pMapChilds = parentRow[mapChildrenField];
72
+ if (!XEUtils.isArray(pChilds)) {
73
+ pChilds = parentRow[childrenField] = [];
74
74
  }
75
- if (!XEUtils.isArray(mapChilds)) {
76
- mapChilds = parentRow[childrenField] = [];
75
+ if (!XEUtils.isArray(pMapChilds)) {
76
+ pMapChilds = parentRow[mapChildrenField] = [];
77
77
  }
78
- parentChilds[funcName](item);
79
- mapChilds[funcName](item);
80
- const rest = { row: item, rowid, seq: -1, index: -1, _index: -1, $index: -1, treeIndex: -1, _tIndex: -1, items: parentChilds, parent: parentRow, level: parentLevel + 1, height: 0, resizeHeight: 0, oTop: 0, expandHeight: 0 };
78
+ pChilds[funcName](item);
79
+ pMapChilds[funcName](item);
80
+ const rest = { row: item, rowid, seq: -1, index: -1, _index: -1, $index: -1, treeIndex: -1, _tIndex: -1, items: pChilds, parent: parentRow, level: parentLevel + 1, height: 0, resizeHeight: 0, oTop: 0, expandHeight: 0 };
81
81
  fullDataRowIdData[rowid] = rest;
82
82
  fullAllDataRowIdData[rowid] = rest;
83
83
  }
@@ -178,14 +178,16 @@ hooks.add('tableEditModule', {
178
178
  treeRecords.forEach((row, i) => {
179
179
  if (parentRow) {
180
180
  if (row[parentField] !== parentRow[rowField]) {
181
- row[parentField] = parentRow[rowField];
182
181
  errLog('vxe.error.errProp', [`${parentField}=${row[parentField]}`, `${parentField}=${parentRow[rowField]}`]);
182
+ row[parentField] = parentRow[rowField];
183
183
  }
184
184
  }
185
185
  else {
186
186
  if (row[parentField] !== null) {
187
+ if (!XEUtils.eqNull(row[parentField])) {
188
+ errLog('vxe.error.errProp', [`${parentField}=${row[parentField]}`, 'null']);
189
+ }
187
190
  row[parentField] = null;
188
- errLog('vxe.error.errProp', [`${parentField}=${row[parentField]}`, 'null']);
189
191
  }
190
192
  }
191
193
  let targetIndex = matchMapObj.index + i;
@@ -264,15 +264,17 @@ hooks.add('tableExportModule', {
264
264
  };
265
265
  const getSeq = (cellValue, row, $rowIndex, column, $columnIndex) => {
266
266
  const seqOpts = computeSeqOpts.value;
267
- const seqMethod = seqOpts.seqMethod || column.seqMethod;
268
- if (seqMethod) {
269
- return seqMethod({
267
+ const seqMd = seqOpts.seqMethod || column.seqMethod;
268
+ if (seqMd) {
269
+ return seqMd({
270
270
  $table: $xeTable,
271
271
  row,
272
272
  rowIndex: $xeTable.getRowIndex(row),
273
+ _rowIndex: $xeTable.getVTRowIndex(row),
273
274
  $rowIndex,
274
275
  column,
275
276
  columnIndex: $xeTable.getColumnIndex(column),
277
+ _columnIndex: $xeTable.getVTColumnIndex(column),
276
278
  $columnIndex
277
279
  });
278
280
  }
@@ -628,9 +628,9 @@ export const Cell = {
628
628
  return renderCellBaseVNs(params, $table.callSlot(defaultSlot, params));
629
629
  }
630
630
  const { seq } = params;
631
- const seqMethod = seqOpts.seqMethod;
631
+ const seqMd = seqOpts.seqMethod;
632
632
  return renderCellBaseVNs(params, [
633
- h('span', `${formatText(seqMethod ? seqMethod(params) : treeConfig ? seq : (seqOpts.startIndex || 0) + seq, 1)}`)
633
+ h('span', `${formatText(seqMd ? seqMd(params) : treeConfig ? seq : (seqOpts.startIndex || 0) + seq, 1)}`)
634
634
  ]);
635
635
  },
636
636
  renderDeepIndexCell(params) {
@@ -1,7 +1,7 @@
1
1
  import { h, reactive, ref, provide, inject, nextTick, Teleport, onActivated, onDeactivated, onBeforeUnmount, onUnmounted, watch, computed, onMounted } from 'vue';
2
2
  import { defineVxeComponent } from '../../ui/src/comp';
3
3
  import XEUtils from 'xe-utils';
4
- import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass, getEventTargetNode, getPaddingTopBottomSize, setScrollTop, setScrollLeft, toCssUnit, hasControlKey } from '../../ui/src/dom';
4
+ import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass, getEventTargetNode, getPaddingTopBottomSize, setScrollTop, setScrollLeft, toCssUnit, hasControlKey, checkTargetElement } from '../../ui/src/dom';
5
5
  import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue } from '../../ui/src/utils';
6
6
  import { VxeUI } from '../../ui';
7
7
  import { createInternalData, getRowUniqueId, clearTableAllStatus, getColumnList, toFilters, hasDeepKey, getRowkey, getRowid, rowToVisible, colToVisible, getCellValue, setCellValue, handleRowidOrRow, handleFieldOrColumn, toTreePathSeq, restoreScrollLocation, getRootColumn, getRefElem, getColReMinWidth, createHandleUpdateRowId, createHandleGetRowId, getCalcHeight, getCellRestHeight, getLastChildColumn } from './util';
@@ -46,6 +46,7 @@ export default defineVxeComponent({
46
46
  const VxeUILoadingComponent = VxeUI.getComponent('VxeLoading');
47
47
  const VxeUITooltipComponent = VxeUI.getComponent('VxeTooltip');
48
48
  const $xeTabs = inject('$xeTabs', null);
49
+ const $xeParentTable = inject('$xeTable', null);
49
50
  const $xeGrid = inject('$xeGrid', null);
50
51
  const $xeGantt = inject('$xeGantt', null);
51
52
  const $xeGGWrapper = $xeGrid || $xeGantt;
@@ -11422,6 +11423,21 @@ export default defineVxeComponent({
11422
11423
  return;
11423
11424
  }
11424
11425
  }
11426
+ // 展开行处理,如果展开行嵌入表格中
11427
+ if ($xeParentTable) {
11428
+ if (isRollY) {
11429
+ if (checkTargetElement(evnt.target, [leftScrollElem, bodyScrollElem, rightScrollElem], evnt.currentTarget)) {
11430
+ evnt.stopPropagation();
11431
+ return;
11432
+ }
11433
+ }
11434
+ if (isRollX) {
11435
+ if (checkTargetElement(evnt.target, [headerScrollElem, bodyScrollElem, footerScrollElem], evnt.currentTarget)) {
11436
+ evnt.stopPropagation();
11437
+ return;
11438
+ }
11439
+ }
11440
+ }
11425
11441
  if (!(leftFixedWidth || rightFixedWidth || expandColumn)) {
11426
11442
  return;
11427
11443
  }
@@ -12646,7 +12662,7 @@ export default defineVxeComponent({
12646
12662
  watch(dataFlag, () => {
12647
12663
  const { initStatus } = internalData;
12648
12664
  const value = props.data || [];
12649
- if (value && value.length >= 50000) {
12665
+ if (value && value.length >= 20000) {
12650
12666
  warnLog('vxe.error.errLargeData', ['loadData(data), reloadData(data)']);
12651
12667
  }
12652
12668
  loadTableData(value, true).then(() => {
@@ -3547,13 +3547,14 @@
3547
3547
  left: 50%;
3548
3548
  font-size: 12px;
3549
3549
  line-height: 1em;
3550
- transform: translate(-50%, -50%);
3550
+ transform: translate(-50%, -2px);
3551
3551
  text-align: left;
3552
3552
  z-index: 4;
3553
3553
  padding: 0 var(--vxe-ui-table-cell-padding-default);
3554
3554
  pointer-events: none;
3555
3555
  }
3556
3556
  .vxe-table--render-default .vxe-body--column .vxe-cell--valid-error-wrapper {
3557
+ position: relative;
3557
3558
  display: inline-block;
3558
3559
  border-radius: var(--vxe-ui-border-radius);
3559
3560
  pointer-events: auto;
@@ -3584,11 +3585,11 @@
3584
3585
  }
3585
3586
  .vxe-table--render-default.valid-msg--single .vxe-body--row:last-child .vxe-cell--valid-error-tip {
3586
3587
  bottom: 100%;
3587
- transform: translate(-50%, 50%);
3588
+ transform: translate(-50%, 0);
3588
3589
  }
3589
3590
  .vxe-table--render-default.valid-msg--single .vxe-body--row:last-child:first-child .vxe-cell--valid-error-tip {
3590
3591
  bottom: auto;
3591
- transform: translate(-50%, -50%);
3592
+ transform: translate(-50%, -2px);
3592
3593
  }
3593
3594
  .vxe-table--render-default.valid-msg--full .vxe-body--row:last-child .vxe-cell--valid-error-tip {
3594
3595
  top: calc(100% - 1.3em);