vxe-table 4.10.6-beta.26 → 4.10.6-beta.28

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 (69) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/en-US.js +2 -2
  4. package/es/style.css +1 -1
  5. package/es/style.min.css +1 -1
  6. package/es/table/src/body.js +14 -11
  7. package/es/table/src/cell.js +25 -39
  8. package/es/table/src/column.js +10 -0
  9. package/es/table/src/columnInfo.js +2 -0
  10. package/es/table/src/footer.js +2 -1
  11. package/es/table/src/header.js +2 -2
  12. package/es/table/src/table.js +75 -40
  13. package/es/table/src/util.js +9 -3
  14. package/es/table/style.css +51 -26
  15. package/es/table/style.min.css +1 -1
  16. package/es/ui/index.js +1 -1
  17. package/es/ui/src/log.js +1 -1
  18. package/es/vxe-table/style.css +51 -26
  19. package/es/vxe-table/style.min.css +1 -1
  20. package/lib/index.css +1 -1
  21. package/lib/index.min.css +1 -1
  22. package/lib/index.umd.js +144 -93
  23. package/lib/index.umd.min.js +1 -1
  24. package/lib/locale/lang/en-US.js +2 -2
  25. package/lib/locale/lang/en-US.min.js +1 -1
  26. package/lib/locale/lang/en-US.umd.js +2 -2
  27. package/lib/style.css +1 -1
  28. package/lib/style.min.css +1 -1
  29. package/lib/table/src/body.js +13 -11
  30. package/lib/table/src/body.min.js +1 -1
  31. package/lib/table/src/cell.js +24 -33
  32. package/lib/table/src/cell.min.js +1 -1
  33. package/lib/table/src/column.js +10 -0
  34. package/lib/table/src/column.min.js +1 -1
  35. package/lib/table/src/columnInfo.js +2 -0
  36. package/lib/table/src/columnInfo.min.js +1 -1
  37. package/lib/table/src/footer.js +2 -1
  38. package/lib/table/src/footer.min.js +1 -1
  39. package/lib/table/src/header.js +1 -1
  40. package/lib/table/src/header.min.js +1 -1
  41. package/lib/table/src/table.js +81 -42
  42. package/lib/table/src/table.min.js +1 -1
  43. package/lib/table/src/util.js +10 -3
  44. package/lib/table/src/util.min.js +1 -1
  45. package/lib/table/style/style.css +51 -26
  46. package/lib/table/style/style.min.css +1 -1
  47. package/lib/ui/index.js +1 -1
  48. package/lib/ui/index.min.js +1 -1
  49. package/lib/ui/src/log.js +1 -1
  50. package/lib/ui/src/log.min.js +1 -1
  51. package/lib/vxe-table/style/style.css +51 -26
  52. package/lib/vxe-table/style/style.min.css +1 -1
  53. package/package.json +2 -2
  54. package/packages/locale/lang/en-US.ts +2 -2
  55. package/packages/table/src/body.ts +14 -11
  56. package/packages/table/src/cell.ts +25 -47
  57. package/packages/table/src/column.ts +10 -0
  58. package/packages/table/src/columnInfo.ts +2 -0
  59. package/packages/table/src/footer.ts +2 -1
  60. package/packages/table/src/header.ts +2 -2
  61. package/packages/table/src/table.ts +77 -41
  62. package/packages/table/src/util.ts +10 -3
  63. package/styles/components/table.scss +63 -31
  64. /package/es/{iconfont.1737366161311.ttf → iconfont.1737448409773.ttf} +0 -0
  65. /package/es/{iconfont.1737366161311.woff → iconfont.1737448409773.woff} +0 -0
  66. /package/es/{iconfont.1737366161311.woff2 → iconfont.1737448409773.woff2} +0 -0
  67. /package/lib/{iconfont.1737366161311.ttf → iconfont.1737448409773.ttf} +0 -0
  68. /package/lib/{iconfont.1737366161311.woff → iconfont.1737448409773.woff} +0 -0
  69. /package/lib/{iconfont.1737366161311.woff2 → iconfont.1737448409773.woff2} +0 -0
@@ -997,8 +997,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
997
997
  for (let rIndex = 0, rLen = afterFullData.length; rIndex < rLen; rIndex++) {
998
998
  const row = afterFullData[rIndex];
999
999
  const rowid = (0, _util.getRowid)($xeTable, row);
1000
- const rowRest = fullAllDataRowIdData[rowid];
1001
- offsetTop += rowRest ? rowRest.resizeHeight || cellOpts.height || rowOpts.height || defaultRowHeight : defaultRowHeight;
1000
+ const rowRest = fullAllDataRowIdData[rowid] || {};
1001
+ offsetTop += rowRest.resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
1002
1002
  if (toVisibleIndex === -1 && scrollTop < offsetTop) {
1003
1003
  toVisibleIndex = rIndex;
1004
1004
  }
@@ -1571,19 +1571,15 @@ var _default = exports.default = (0, _vue.defineComponent)({
1571
1571
  };
1572
1572
  const calcCellAutoHeight = (rowRest, wrapperEl) => {
1573
1573
  const cellElemList = wrapperEl.querySelectorAll(`.vxe-cell--wrapper[rowid="${rowRest.rowid}"]`);
1574
- let topBottomPadding = 0;
1575
- const firstCellEl = cellElemList[0];
1576
- if (firstCellEl && firstCellEl.parentElement) {
1577
- const cellStyle = getComputedStyle(firstCellEl.parentElement);
1578
- topBottomPadding = Math.ceil(_xeUtils.default.toNumber(cellStyle.paddingTop) + _xeUtils.default.toNumber(cellStyle.paddingBottom));
1579
- }
1580
- let colHeight = rowRest.height - topBottomPadding;
1574
+ let colHeight = rowRest.height;
1581
1575
  for (let i = 0; i < cellElemList.length; i++) {
1582
1576
  const cellElem = cellElemList[i];
1577
+ const tdEl = cellElem.parentElement;
1578
+ const topBottomPadding = Math.ceil(_xeUtils.default.toNumber(tdEl.style.paddingTop) + _xeUtils.default.toNumber(tdEl.style.paddingBottom));
1583
1579
  const cellHeight = cellElem ? cellElem.clientHeight : 0;
1584
- colHeight = Math.max(colHeight, Math.ceil(cellHeight));
1580
+ colHeight = Math.max(colHeight - topBottomPadding, Math.ceil(cellHeight));
1585
1581
  }
1586
- return colHeight + topBottomPadding;
1582
+ return colHeight;
1587
1583
  };
1588
1584
  const calcCellHeight = () => {
1589
1585
  const {
@@ -1598,13 +1594,15 @@ var _default = exports.default = (0, _vue.defineComponent)({
1598
1594
  const defaultRowHeight = computeDefaultRowHeight.value;
1599
1595
  const el = refElem.value;
1600
1596
  if (!isAllOverflow && scrollYLoad && el) {
1597
+ el.setAttribute('data-calc-row', 'Y');
1601
1598
  tableData.forEach(row => {
1602
1599
  const rowid = (0, _util.getRowid)($xeTable, row);
1603
1600
  const rowRest = fullAllDataRowIdData[rowid];
1604
1601
  if (rowRest) {
1605
- const height = calcCellAutoHeight(rowRest, el);
1606
- rowRest.height = Math.max(defaultRowHeight, scrollXLoad ? Math.max(rowRest.height, height) : height);
1602
+ const reHeight = calcCellAutoHeight(rowRest, el);
1603
+ rowRest.height = Math.max(defaultRowHeight, scrollXLoad ? Math.max(rowRest.height, reHeight) : reHeight);
1607
1604
  }
1605
+ el.removeAttribute('data-calc-row');
1608
1606
  });
1609
1607
  reactData.calcCellHeightFlag++;
1610
1608
  }
@@ -4816,7 +4814,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
4816
4814
  if (rowRest) {
4817
4815
  const resizeHeight = rowRest.resizeHeight;
4818
4816
  if (resizeHeight || isFull) {
4819
- const currCellHeight = resizeHeight || cellOpts.height || rowOpts.height || defaultRowHeight;
4817
+ const currCellHeight = resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
4820
4818
  rest[rowid] = currCellHeight;
4821
4819
  }
4822
4820
  }
@@ -4867,8 +4865,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
4867
4865
  const defaultRowHeight = computeDefaultRowHeight.value;
4868
4866
  const rowid = _xeUtils.default.isString(rowOrId) || _xeUtils.default.isNumber(rowOrId) ? rowOrId : (0, _util.getRowid)($xeTable, rowOrId);
4869
4867
  const rowRest = fullAllDataRowIdData[rowid];
4870
- const currCellHeight = rowRest ? rowRest.resizeHeight : cellOpts.height || rowOpts.height || defaultRowHeight;
4871
- return currCellHeight;
4868
+ if (rowRest) {
4869
+ return rowRest.resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
4870
+ }
4871
+ return 0;
4872
4872
  },
4873
4873
  /**
4874
4874
  * 刷新滚动操作,手动同步滚动相关位置(对于某些特殊的操作,比如滚动条错位、固定列不同步)
@@ -7760,6 +7760,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
7760
7760
  resizeTipElem.style.left = `${resizeTipLeft}px`;
7761
7761
  resizeTipElem.style.top = `${Math.min(tableHeight - resizeTipHeight, Math.max(0, evnt.clientY - wrapperRect.y - resizeTipHeight / 2))}px`;
7762
7762
  }
7763
+ reactData.isDragResize = true;
7763
7764
  };
7764
7765
  reactData.isDragResize = true;
7765
7766
  (0, _dom.addClass)(tableEl, 'col-drag--resize');
@@ -7769,8 +7770,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
7769
7770
  document.onmousemove = null;
7770
7771
  document.onmouseup = null;
7771
7772
  resizeBarElem.style.display = 'none';
7772
- reactData.isDragResize = false;
7773
7773
  internalData._lastResizeTime = Date.now();
7774
+ setTimeout(() => {
7775
+ reactData.isDragResize = false;
7776
+ }, 50);
7774
7777
  const resizeWidth = resizeColumn.renderWidth + (isRightFixed ? dragPosLeft - dragLeft : dragLeft - dragPosLeft);
7775
7778
  const resizeParams = Object.assign(Object.assign({}, params), {
7776
7779
  resizeWidth,
@@ -7805,6 +7808,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
7805
7808
  } = resizableOpts;
7806
7809
  const el = refElem.value;
7807
7810
  if (isDblclickAutoWidth && el) {
7811
+ evnt.stopPropagation();
7812
+ evnt.preventDefault();
7808
7813
  const {
7809
7814
  fullColumnIdData
7810
7815
  } = internalData;
@@ -7890,7 +7895,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
7890
7895
  return;
7891
7896
  }
7892
7897
  const defaultRowHeight = computeDefaultRowHeight.value;
7893
- const currCellHeight = rowRest.resizeHeight || cellOpts.height || rowOpts.height || defaultRowHeight;
7898
+ const currCellHeight = rowRest.resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
7894
7899
  const tableRect = tableEl.getBoundingClientRect();
7895
7900
  const trRect = trEl.getBoundingClientRect();
7896
7901
  const targetOffsetY = dragClientY - trRect.y - trEl.clientHeight;
@@ -7932,6 +7937,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
7932
7937
  resizeTipElem.style.left = `${resizeBarLeft}px`;
7933
7938
  resizeTipElem.style.top = `${resizeBarTop}px`;
7934
7939
  }
7940
+ reactData.isDragResize = true;
7935
7941
  };
7936
7942
  reactData.isDragResize = true;
7937
7943
  (0, _dom.addClass)(tableEl, 'row-drag--resize');
@@ -7941,8 +7947,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
7941
7947
  document.onmousemove = null;
7942
7948
  document.onmouseup = null;
7943
7949
  resizeBarElem.style.display = 'none';
7944
- reactData.isDragResize = false;
7945
7950
  internalData._lastResizeTime = Date.now();
7951
+ setTimeout(() => {
7952
+ reactData.isDragResize = false;
7953
+ }, 50);
7946
7954
  if (resizeHeight !== currCellHeight) {
7947
7955
  const resizeParams = Object.assign(Object.assign({}, params), {
7948
7956
  resizeHeight,
@@ -7967,9 +7975,17 @@ var _default = exports.default = (0, _vue.defineComponent)({
7967
7975
  } = resizableOpts;
7968
7976
  const el = refElem.value;
7969
7977
  if (isDblclickAutoHeight && el) {
7978
+ evnt.stopPropagation();
7979
+ evnt.preventDefault();
7980
+ const {
7981
+ editStore
7982
+ } = reactData;
7970
7983
  const {
7971
7984
  fullAllDataRowIdData
7972
7985
  } = internalData;
7986
+ const {
7987
+ actived
7988
+ } = editStore;
7973
7989
  const {
7974
7990
  row
7975
7991
  } = params;
@@ -7978,18 +7994,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
7978
7994
  if (!rowRest) {
7979
7995
  return;
7980
7996
  }
7981
- const resizeHeight = calcCellAutoHeight(rowRest, el);
7982
- const resizeParams = Object.assign(Object.assign({}, params), {
7983
- resizeHeight,
7984
- resizeRow: row
7985
- });
7986
- reactData.isDragResize = false;
7987
- internalData._lastResizeTime = Date.now();
7988
- if ($xeTable.handleRowResizeDblclickCellAreaEvent) {
7989
- $xeTable.handleRowResizeDblclickCellAreaEvent(evnt, resizeParams);
7997
+ const handleRsHeight = () => {
7998
+ el.setAttribute('data-calc-row', 'Y');
7999
+ const resizeHeight = calcCellAutoHeight(rowRest, el);
8000
+ el.removeAttribute('data-calc-row');
8001
+ const resizeParams = Object.assign(Object.assign({}, params), {
8002
+ resizeHeight,
8003
+ resizeRow: row
8004
+ });
8005
+ reactData.isDragResize = false;
8006
+ internalData._lastResizeTime = Date.now();
8007
+ if ($xeTable.handleRowResizeDblclickCellAreaEvent) {
8008
+ $xeTable.handleRowResizeDblclickCellAreaEvent(evnt, resizeParams);
8009
+ } else {
8010
+ rowRest.resizeHeight = resizeHeight;
8011
+ handleUpdateRowResize(evnt, resizeParams);
8012
+ }
8013
+ };
8014
+ if (actived.row || actived.column) {
8015
+ $xeTable.clearEdit().then(handleRsHeight);
7990
8016
  } else {
7991
- rowRest.resizeHeight = resizeHeight;
7992
- handleUpdateRowResize(evnt, resizeParams);
8017
+ handleRsHeight();
7993
8018
  }
7994
8019
  }
7995
8020
  },
@@ -8477,11 +8502,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
8477
8502
  internalData.tooltipTimeout = setTimeout(() => {
8478
8503
  $tooltip = refTooltip.value;
8479
8504
  if ($tooltip && $tooltip.isActived && !$tooltip.isActived()) {
8480
- tableMethods.closeTooltip();
8505
+ $xeTable.closeTooltip();
8481
8506
  }
8482
8507
  }, tooltipOpts.leaveDelay);
8483
8508
  } else {
8484
- tableMethods.closeTooltip();
8509
+ $xeTable.closeTooltip();
8485
8510
  }
8486
8511
  },
8487
8512
  triggerHeaderCellClickEvent(evnt, params) {
@@ -8526,8 +8551,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
8526
8551
  editConfig
8527
8552
  } = props;
8528
8553
  const {
8529
- editStore
8554
+ editStore,
8555
+ isDragResize
8530
8556
  } = reactData;
8557
+ if (isDragResize) {
8558
+ return;
8559
+ }
8531
8560
  const expandOpts = computeExpandOpts.value;
8532
8561
  const editOpts = computeEditOpts.value;
8533
8562
  const treeOpts = computeTreeOpts.value;
@@ -8637,8 +8666,12 @@ var _default = exports.default = (0, _vue.defineComponent)({
8637
8666
  editConfig
8638
8667
  } = props;
8639
8668
  const {
8640
- editStore
8669
+ editStore,
8670
+ isDragResize
8641
8671
  } = reactData;
8672
+ if (isDragResize) {
8673
+ return;
8674
+ }
8642
8675
  const editOpts = computeEditOpts.value;
8643
8676
  const {
8644
8677
  actived
@@ -9166,7 +9199,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
9166
9199
  // 根到根
9167
9200
  }
9168
9201
  const fullList = _xeUtils.default.toTreeArray(internalData.afterTreeFullData, {
9169
- children: childrenField
9202
+ key: rowField,
9203
+ parentKey: parentField,
9204
+ children: mapChildrenField
9170
9205
  });
9171
9206
  // 移出
9172
9207
  const otfIndex = $xeTable.findRowIndexOf(fullList, dragRow);
@@ -9183,10 +9218,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
9183
9218
  }
9184
9219
  dragRow[parentField] = isDragToChildFlag ? prevDragRow[rowField] : prevDragRow[parentField];
9185
9220
  internalData.tableFullTreeData = _xeUtils.default.toArrayTree(fullList, {
9186
- key: treeOpts.rowField,
9187
- parentKey: treeOpts.parentField,
9221
+ key: rowField,
9222
+ parentKey: parentField,
9188
9223
  children: childrenField,
9189
- mapChildren: treeOpts.mapChildrenField
9224
+ mapChildren: mapChildrenField
9190
9225
  });
9191
9226
  }
9192
9227
  }
@@ -9974,9 +10009,13 @@ var _default = exports.default = (0, _vue.defineComponent)({
9974
10009
  },
9975
10010
  triggerBodyWheelEvent(evnt) {
9976
10011
  const {
10012
+ target,
9977
10013
  deltaY,
9978
10014
  deltaX
9979
10015
  } = evnt;
10016
+ if (target && /^textarea$/i.test(target.tagName)) {
10017
+ return;
10018
+ }
9980
10019
  const {
9981
10020
  highlightHoverRow
9982
10021
  } = _props.default;
@@ -10240,14 +10279,14 @@ var _default = exports.default = (0, _vue.defineComponent)({
10240
10279
  for (let i = 0; i < afterFullData.length; i++) {
10241
10280
  const row = afterFullData[i];
10242
10281
  const rowid = (0, _util.getRowid)($xeTable, row);
10243
- const rowRest = fullAllDataRowIdData[rowid];
10244
- ySpaceHeight += rowRest ? rowRest.resizeHeight || cellOpts.height || rowOpts.height || defaultRowHeight : defaultRowHeight;
10282
+ const rowRest = fullAllDataRowIdData[rowid] || {};
10283
+ ySpaceHeight += rowRest.resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
10245
10284
  }
10246
10285
  for (let i = 0; i < startIndex; i++) {
10247
10286
  const row = afterFullData[i];
10248
10287
  const rowid = (0, _util.getRowid)($xeTable, row);
10249
- const rowRest = fullAllDataRowIdData[rowid];
10250
- topSpaceHeight += rowRest ? rowRest.resizeHeight || cellOpts.height || rowOpts.height || defaultRowHeight : defaultRowHeight;
10288
+ const rowRest = fullAllDataRowIdData[rowid] || {};
10289
+ topSpaceHeight += rowRest.resizeHeight || rowRest.height || cellOpts.height || rowOpts.height || defaultRowHeight;
10251
10290
  }
10252
10291
  }
10253
10292
  } else {