@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;
@@ -82,13 +82,13 @@ export class BaseTable extends EventTarget {
82
82
  }
83
83
  constructor(container, options = {}) {
84
84
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
85
- if (super(), this.showFrozenIcon = !0, this.version = "0.23.1-alpha.1", this.id = `VTable${Date.now()}`,
85
+ if (super(), this.showFrozenIcon = !0, this.version = "0.23.1", this.id = `VTable${Date.now()}`,
86
86
  this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = throttle2(this.render.bind(this), 200),
87
87
  !container && "node" !== options.mode) throw new Error("vtable's container is undefined");
88
88
  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 = defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth} = options;
89
- this.container = container, this.options = options, this.options.container = container,
90
- this._widthMode = widthMode, this._heightMode = heightMode, this._autoFillWidth = autoFillWidth,
91
- this._autoFillHeight = autoFillHeight, this.customRender = customRender, this.padding = {
89
+ this.container = container, this.options = options, this._widthMode = widthMode,
90
+ this._heightMode = heightMode, this._autoFillWidth = autoFillWidth, this._autoFillHeight = autoFillHeight,
91
+ this.customRender = customRender, this.padding = {
92
92
  top: 0,
93
93
  right: 0,
94
94
  left: 0,
@@ -553,7 +553,7 @@ export class BaseTable extends EventTarget {
553
553
  return this.getCellsRectWidth(cellRange.start.col, cellRange.start.row, cellRange.end.col, cellRange.end.row);
554
554
  }
555
555
  isFrozenCell(col, row) {
556
- const isFrozenRow = this.isFrozenRow(row) || this.isBottomFrozenRow(row), isFrozenCol = this.isFrozenColumn(col) || this.isRightFrozenColumn(col);
556
+ const isFrozenRow = this.isFrozenRow(row), isFrozenCol = this.isFrozenColumn(col);
557
557
  return isFrozenRow || isFrozenCol ? {
558
558
  row: isFrozenRow,
559
559
  col: isFrozenCol
@@ -908,6 +908,36 @@ export class BaseTable extends EventTarget {
908
908
  return null;
909
909
  })(candRow, bottom);
910
910
  }
911
+ getTargetColAtConsiderRightFrozen(absoluteX, isConsider) {
912
+ if (0 === absoluteX) return {
913
+ left: 0,
914
+ col: 0,
915
+ right: 0,
916
+ width: 0
917
+ };
918
+ 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 {
919
+ col: this.colCount - i - 1,
920
+ left: void 0,
921
+ right: void 0,
922
+ width: void 0
923
+ };
924
+ return this.getTargetColAt(absoluteX);
925
+ }
926
+ getTargetRowAtConsiderBottomFrozen(absoluteY, isConsider) {
927
+ if (0 === absoluteY) return {
928
+ top: 0,
929
+ row: 0,
930
+ bottom: 0,
931
+ height: 0
932
+ };
933
+ 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 {
934
+ row: this.rowCount - i - 1,
935
+ top: void 0,
936
+ bottom: void 0,
937
+ height: void 0
938
+ };
939
+ return this.getTargetRowAt(absoluteY);
940
+ }
911
941
  computeTargetRowByY(absoluteY) {
912
942
  let defaultRowHeight = this.internalProps.defaultRowHeight;
913
943
  return this._rowRangeHeightsMap.get("$0$" + (this.rowCount - 1)) && (defaultRowHeight = this._rowRangeHeightsMap.get("$0$" + (this.rowCount - 1)) / this.rowCount),
@@ -1136,8 +1166,7 @@ export class BaseTable extends EventTarget {
1136
1166
  return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isCornerHeader(col, row);
1137
1167
  }
1138
1168
  isFrozenColumn(col, row) {
1139
- var _a;
1140
- return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isFrozenColumn(col, row);
1169
+ return this.isLeftFrozenColumn(col, row) || this.isRightFrozenColumn(col, row);
1141
1170
  }
1142
1171
  isLeftFrozenColumn(col, row) {
1143
1172
  var _a;
@@ -1148,8 +1177,7 @@ export class BaseTable extends EventTarget {
1148
1177
  return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isRightFrozenColumn(col, row);
1149
1178
  }
1150
1179
  isFrozenRow(col, row) {
1151
- var _a;
1152
- return null === (_a = this.internalProps.layoutMap) || void 0 === _a ? void 0 : _a.isFrozenRow(col, row);
1180
+ return this.isTopFrozenRow(col, row) || this.isBottomFrozenRow(col, row);
1153
1181
  }
1154
1182
  isTopFrozenRow(col, row) {
1155
1183
  var _a;
@@ -1282,7 +1310,7 @@ export class BaseTable extends EventTarget {
1282
1310
  }
1283
1311
  _canDragHeaderPosition(col, row) {
1284
1312
  if (this.isHeader(col, row) && this.stateManager.isSelected(col, row)) {
1285
- if ("disabled" === this.internalProps.frozenColDragHeaderMode && (this.isFrozenColumn(col) || this.isRightFrozenColumn(col))) return !1;
1313
+ if ("disabled" === this.internalProps.frozenColDragHeaderMode && this.isFrozenColumn(col)) return !1;
1286
1314
  const selectRange = this.stateManager.select.ranges[0];
1287
1315
  if (this.isColumnHeader(col, row)) {
1288
1316
  if (selectRange.end.row !== this.rowCount - 1) return !1;