@visactor/vtable 0.23.1-alpha.1 → 0.23.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 (113) hide show
  1. package/cjs/ListTable.js +1 -1
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/core/BaseTable.d.ts +12 -0
  4. package/cjs/core/BaseTable.js +38 -10
  5. package/cjs/core/BaseTable.js.map +1 -1
  6. package/cjs/data/DataSource.d.ts +1 -1
  7. package/cjs/data/DataSource.js +14 -3
  8. package/cjs/data/DataSource.js.map +1 -1
  9. package/cjs/event/event.d.ts +4 -0
  10. package/cjs/event/event.js +6 -5
  11. package/cjs/event/event.js.map +1 -1
  12. package/cjs/event/listener/container-dom.js +65 -26
  13. package/cjs/event/listener/container-dom.js.map +1 -1
  14. package/cjs/event/listener/table-group.js +1 -1
  15. package/cjs/event/listener/table-group.js.map +1 -1
  16. package/cjs/event/listener/touch.js +7 -18
  17. package/cjs/event/listener/touch.js.map +1 -1
  18. package/cjs/event/scroll.d.ts +16 -1
  19. package/cjs/event/scroll.js +38 -5
  20. package/cjs/event/scroll.js.map +1 -1
  21. package/cjs/index.d.ts +1 -1
  22. package/cjs/index.js +1 -1
  23. package/cjs/index.js.map +1 -1
  24. package/cjs/layout/simple-header-layout.js +1 -1
  25. package/cjs/layout/simple-header-layout.js.map +1 -1
  26. package/cjs/scenegraph/component/table-component.js +1 -1
  27. package/cjs/scenegraph/component/table-component.js.map +1 -1
  28. package/cjs/scenegraph/group-creater/cell-helper.js +1 -1
  29. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  30. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js +2 -1
  31. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
  32. package/cjs/scenegraph/icon/icon-update.js +2 -0
  33. package/cjs/scenegraph/icon/icon-update.js.map +1 -1
  34. package/cjs/scenegraph/layout/compute-row-height.js +2 -2
  35. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  36. package/cjs/scenegraph/layout/update-row.js +2 -3
  37. package/cjs/scenegraph/layout/update-row.js.map +1 -1
  38. package/cjs/scenegraph/scenegraph.js +4 -4
  39. package/cjs/scenegraph/scenegraph.js.map +1 -1
  40. package/cjs/scenegraph/utils/text-icon-layout.js +5 -5
  41. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  42. package/cjs/state/cell-move/index.js +2 -2
  43. package/cjs/state/cell-move/index.js.map +1 -1
  44. package/cjs/state/select/update-position.d.ts +1 -1
  45. package/cjs/state/select/update-position.js +4 -4
  46. package/cjs/state/select/update-position.js.map +1 -1
  47. package/cjs/state/state.d.ts +1 -1
  48. package/cjs/state/state.js +8 -4
  49. package/cjs/state/state.js.map +1 -1
  50. package/cjs/tools/diff-cell.d.ts +1 -1
  51. package/cjs/tools/diff-cell.js +3 -3
  52. package/cjs/tools/diff-cell.js.map +1 -1
  53. package/cjs/ts-types/base-table.d.ts +12 -0
  54. package/cjs/ts-types/base-table.js.map +1 -1
  55. package/cjs/vrender.js.map +1 -1
  56. package/dist/vtable.js +425 -237
  57. package/dist/vtable.min.js +2 -2
  58. package/es/ListTable.js +1 -1
  59. package/es/ListTable.js.map +1 -1
  60. package/es/core/BaseTable.d.ts +12 -0
  61. package/es/core/BaseTable.js +38 -10
  62. package/es/core/BaseTable.js.map +1 -1
  63. package/es/data/DataSource.d.ts +1 -1
  64. package/es/data/DataSource.js +13 -4
  65. package/es/data/DataSource.js.map +1 -1
  66. package/es/event/event.d.ts +4 -0
  67. package/es/event/event.js +7 -4
  68. package/es/event/event.js.map +1 -1
  69. package/es/event/listener/container-dom.js +66 -25
  70. package/es/event/listener/container-dom.js.map +1 -1
  71. package/es/event/listener/table-group.js +1 -1
  72. package/es/event/listener/table-group.js.map +1 -1
  73. package/es/event/listener/touch.js +7 -18
  74. package/es/event/listener/touch.js.map +1 -1
  75. package/es/event/scroll.d.ts +16 -1
  76. package/es/event/scroll.js +33 -2
  77. package/es/event/scroll.js.map +1 -1
  78. package/es/index.d.ts +1 -1
  79. package/es/index.js +1 -1
  80. package/es/index.js.map +1 -1
  81. package/es/layout/simple-header-layout.js +1 -1
  82. package/es/layout/simple-header-layout.js.map +1 -1
  83. package/es/scenegraph/component/table-component.js +1 -1
  84. package/es/scenegraph/component/table-component.js.map +1 -1
  85. package/es/scenegraph/group-creater/cell-helper.js +1 -1
  86. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  87. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js +2 -1
  88. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
  89. package/es/scenegraph/icon/icon-update.js +2 -0
  90. package/es/scenegraph/icon/icon-update.js.map +1 -1
  91. package/es/scenegraph/layout/compute-row-height.js +3 -1
  92. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  93. package/es/scenegraph/layout/update-row.js +2 -3
  94. package/es/scenegraph/layout/update-row.js.map +1 -1
  95. package/es/scenegraph/scenegraph.js +4 -4
  96. package/es/scenegraph/scenegraph.js.map +1 -1
  97. package/es/scenegraph/utils/text-icon-layout.js +5 -5
  98. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  99. package/es/state/cell-move/index.js +2 -2
  100. package/es/state/cell-move/index.js.map +1 -1
  101. package/es/state/select/update-position.d.ts +1 -1
  102. package/es/state/select/update-position.js +4 -4
  103. package/es/state/select/update-position.js.map +1 -1
  104. package/es/state/state.d.ts +1 -1
  105. package/es/state/state.js +8 -4
  106. package/es/state/state.js.map +1 -1
  107. package/es/tools/diff-cell.d.ts +1 -1
  108. package/es/tools/diff-cell.js +3 -3
  109. package/es/tools/diff-cell.js.map +1 -1
  110. package/es/ts-types/base-table.d.ts +12 -0
  111. package/es/ts-types/base-table.js.map +1 -1
  112. package/es/vrender.js.map +1 -1
  113. package/package.json +3 -3
@@ -236,6 +236,18 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
236
236
  bottom: number;
237
237
  height: number;
238
238
  } | null;
239
+ getTargetColAtConsiderRightFrozen(absoluteX: number, isConsider: boolean): {
240
+ col: number;
241
+ left: number;
242
+ right: number;
243
+ width: number;
244
+ } | null;
245
+ getTargetRowAtConsiderBottomFrozen(absoluteY: number, isConsider: boolean): {
246
+ row: number;
247
+ top: number;
248
+ bottom: number;
249
+ height: number;
250
+ } | null;
239
251
  private computeTargetRowByY;
240
252
  private computeTargetColByX;
241
253
  clearSelected(): void;
@@ -45,13 +45,13 @@ class BaseTable extends EventTarget_1.EventTarget {
45
45
  }
46
46
  constructor(container, options = {}) {
47
47
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
48
- if (super(), this.showFrozenIcon = !0, this.version = "0.23.1-alpha.1", this.id = `VTable${Date.now()}`,
48
+ if (super(), this.showFrozenIcon = !0, this.version = "0.23.1", this.id = `VTable${Date.now()}`,
49
49
  this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = (0, util_1.throttle2)(this.render.bind(this), 200),
50
50
  !container && "node" !== options.mode) throw new Error("vtable's container is undefined");
51
51
  const {frozenColCount: frozenColCount = 0, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, autoFillHeight: autoFillHeight = !1, keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, customRender: customRender, pixelRatio: pixelRatio = pixel_ratio_1.defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth} = options;
52
- this.container = container, this.options = options, this.options.container = container,
53
- this._widthMode = widthMode, this._heightMode = heightMode, this._autoFillWidth = autoFillWidth,
54
- this._autoFillHeight = autoFillHeight, this.customRender = customRender, this.padding = {
52
+ this.container = container, this.options = options, this._widthMode = widthMode,
53
+ this._heightMode = heightMode, this._autoFillWidth = autoFillWidth, this._autoFillHeight = autoFillHeight,
54
+ this.customRender = customRender, this.padding = {
55
55
  top: 0,
56
56
  right: 0,
57
57
  left: 0,
@@ -521,7 +521,7 @@ class BaseTable extends EventTarget_1.EventTarget {
521
521
  return this.getCellsRectWidth(cellRange.start.col, cellRange.start.row, cellRange.end.col, cellRange.end.row);
522
522
  }
523
523
  isFrozenCell(col, row) {
524
- const isFrozenRow = this.isFrozenRow(row) || this.isBottomFrozenRow(row), isFrozenCol = this.isFrozenColumn(col) || this.isRightFrozenColumn(col);
524
+ const isFrozenRow = this.isFrozenRow(row), isFrozenCol = this.isFrozenColumn(col);
525
525
  return isFrozenRow || isFrozenCol ? {
526
526
  row: isFrozenRow,
527
527
  col: isFrozenCol
@@ -877,6 +877,36 @@ class BaseTable extends EventTarget_1.EventTarget {
877
877
  return null;
878
878
  })(candRow, bottom);
879
879
  }
880
+ getTargetColAtConsiderRightFrozen(absoluteX, isConsider) {
881
+ if (0 === absoluteX) return {
882
+ left: 0,
883
+ col: 0,
884
+ right: 0,
885
+ width: 0
886
+ };
887
+ if (isConsider && absoluteX > this.tableNoFrameWidth - this.getRightFrozenColsWidth() && absoluteX < this.tableNoFrameWidth) for (let i = 0; i < this.rightFrozenColCount; i++) if (absoluteX > this.tableNoFrameWidth - this.getColsWidth(this.colCount - i - 1, this.colCount - 1)) return {
888
+ col: this.colCount - i - 1,
889
+ left: void 0,
890
+ right: void 0,
891
+ width: void 0
892
+ };
893
+ return this.getTargetColAt(absoluteX);
894
+ }
895
+ getTargetRowAtConsiderBottomFrozen(absoluteY, isConsider) {
896
+ if (0 === absoluteY) return {
897
+ top: 0,
898
+ row: 0,
899
+ bottom: 0,
900
+ height: 0
901
+ };
902
+ if (isConsider && absoluteY > this.tableNoFrameHeight - this.getBottomFrozenRowsHeight() && absoluteY < this.tableNoFrameHeight) for (let i = 0; i < this.rightFrozenColCount; i++) if (absoluteY > this.tableNoFrameHeight - this.getRowsHeight(this.rowCount - i - 1, this.rowCount - 1)) return {
903
+ row: this.rowCount - i - 1,
904
+ top: void 0,
905
+ bottom: void 0,
906
+ height: void 0
907
+ };
908
+ return this.getTargetRowAt(absoluteY);
909
+ }
880
910
  computeTargetRowByY(absoluteY) {
881
911
  let defaultRowHeight = this.internalProps.defaultRowHeight;
882
912
  return this._rowRangeHeightsMap.get("$0$" + (this.rowCount - 1)) && (defaultRowHeight = this._rowRangeHeightsMap.get("$0$" + (this.rowCount - 1)) / this.rowCount),
@@ -1106,8 +1136,7 @@ class BaseTable extends EventTarget_1.EventTarget {
1106
1136
  return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isCornerHeader(col, row);
1107
1137
  }
1108
1138
  isFrozenColumn(col, row) {
1109
- var _a;
1110
- return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isFrozenColumn(col, row);
1139
+ return this.isLeftFrozenColumn(col, row) || this.isRightFrozenColumn(col, row);
1111
1140
  }
1112
1141
  isLeftFrozenColumn(col, row) {
1113
1142
  var _a;
@@ -1118,8 +1147,7 @@ class BaseTable extends EventTarget_1.EventTarget {
1118
1147
  return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isRightFrozenColumn(col, row);
1119
1148
  }
1120
1149
  isFrozenRow(col, row) {
1121
- var _a;
1122
- return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isFrozenRow(col, row);
1150
+ return this.isTopFrozenRow(col, row) || this.isBottomFrozenRow(col, row);
1123
1151
  }
1124
1152
  isTopFrozenRow(col, row) {
1125
1153
  var _a;
@@ -1253,7 +1281,7 @@ class BaseTable extends EventTarget_1.EventTarget {
1253
1281
  }
1254
1282
  _canDragHeaderPosition(col, row) {
1255
1283
  if (this.isHeader(col, row) && this.stateManager.isSelected(col, row)) {
1256
- if ("disabled" === this.internalProps.frozenColDragHeaderMode && (this.isFrozenColumn(col) || this.isRightFrozenColumn(col))) return !1;
1284
+ if ("disabled" === this.internalProps.frozenColDragHeaderMode && this.isFrozenColumn(col)) return !1;
1257
1285
  const selectRange = this.stateManager.select.ranges[0];
1258
1286
  if (this.isColumnHeader(col, row)) {
1259
1287
  if (selectRange.end.row !== this.rowCount - 1) return !1;