k-vtable 1.0.14 → 1.0.16

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 (200) hide show
  1. package/cjs/ListTable.d.ts +8 -2
  2. package/cjs/ListTable.js +64 -13
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/PivotChart.d.ts +4 -1
  5. package/cjs/PivotChart.js +9 -4
  6. package/cjs/PivotChart.js.map +1 -1
  7. package/cjs/PivotTable.d.ts +4 -1
  8. package/cjs/PivotTable.js +9 -4
  9. package/cjs/PivotTable.js.map +1 -1
  10. package/cjs/body-helper/style.js +2 -1
  11. package/cjs/core/BaseTable.d.ts +15 -1
  12. package/cjs/core/BaseTable.js +124 -29
  13. package/cjs/core/BaseTable.js.map +1 -1
  14. package/cjs/core/TABLE_EVENT_TYPE.d.ts +4 -0
  15. package/cjs/core/TABLE_EVENT_TYPE.js +5 -1
  16. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  17. package/cjs/core/animation.js.map +1 -1
  18. package/cjs/core/group-helper.d.ts +4 -2
  19. package/cjs/core/group-helper.js +7 -2
  20. package/cjs/core/group-helper.js.map +1 -1
  21. package/cjs/core/utils/get-cell-position.js +2 -2
  22. package/cjs/core/utils/get-cell-position.js.map +1 -1
  23. package/cjs/data/DataSource.d.ts +1 -0
  24. package/cjs/data/DataSource.js +21 -12
  25. package/cjs/data/DataSource.js.map +1 -1
  26. package/cjs/dataset/dataset-pivot-table.js +2 -1
  27. package/cjs/dataset/flatDataToObject.js +1 -2
  28. package/cjs/edit/edit-manager.js +5 -4
  29. package/cjs/edit/edit-manager.js.map +1 -1
  30. package/cjs/event/event.d.ts +17 -0
  31. package/cjs/event/event.js +254 -9
  32. package/cjs/event/event.js.map +1 -1
  33. package/cjs/event/listener/container-dom.js +8 -153
  34. package/cjs/event/listener/container-dom.js.map +1 -1
  35. package/cjs/event/listener/scroll-bar.js +1 -1
  36. package/cjs/event/listener/scroll-bar.js.map +1 -1
  37. package/cjs/event/listener/table-group.js +35 -32
  38. package/cjs/event/listener/table-group.js.map +1 -1
  39. package/cjs/event/scroll.js +3 -1
  40. package/cjs/event/scroll.js.map +1 -1
  41. package/cjs/index.d.ts +1 -1
  42. package/cjs/index.js +1 -1
  43. package/cjs/index.js.map +1 -1
  44. package/cjs/layout/index.js +2 -1
  45. package/cjs/layout/pivot-header-layout.js +0 -1
  46. package/cjs/scenegraph/component/table-component.d.ts +1 -1
  47. package/cjs/scenegraph/component/table-component.js +1 -1
  48. package/cjs/scenegraph/component/table-component.js.map +1 -1
  49. package/cjs/scenegraph/group-creater/cell-helper.js +2 -1
  50. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  51. package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
  52. package/cjs/scenegraph/layout/compute-col-width.js +3 -1
  53. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  54. package/cjs/scenegraph/layout/frozen-react.js +3 -5
  55. package/cjs/scenegraph/layout/frozen-react.js.map +1 -1
  56. package/cjs/scenegraph/layout/frozen.js +7 -4
  57. package/cjs/scenegraph/layout/frozen.js.map +1 -1
  58. package/cjs/scenegraph/scenegraph.d.ts +6 -2
  59. package/cjs/scenegraph/scenegraph.js +34 -10
  60. package/cjs/scenegraph/scenegraph.js.map +1 -1
  61. package/cjs/scenegraph/select/create-select-border.d.ts +2 -0
  62. package/cjs/scenegraph/select/create-select-border.js +2 -2
  63. package/cjs/scenegraph/select/create-select-border.js.map +1 -1
  64. package/cjs/scenegraph/select/update-custom-select-border.d.ts +6 -0
  65. package/cjs/scenegraph/select/update-custom-select-border.js +69 -0
  66. package/cjs/scenegraph/select/update-custom-select-border.js.map +1 -0
  67. package/cjs/scenegraph/select/update-select-border.js +37 -27
  68. package/cjs/scenegraph/select/update-select-border.js.map +1 -1
  69. package/cjs/scenegraph/utils/cell-pos.d.ts +12 -0
  70. package/cjs/scenegraph/utils/cell-pos.js +26 -1
  71. package/cjs/scenegraph/utils/cell-pos.js.map +1 -1
  72. package/cjs/scenegraph/utils/update-container.d.ts +1 -0
  73. package/cjs/scenegraph/utils/update-container.js +8 -1
  74. package/cjs/scenegraph/utils/update-container.js.map +1 -1
  75. package/cjs/state/select/custom-select.d.ts +2 -2
  76. package/cjs/state/select/custom-select.js +2 -14
  77. package/cjs/state/select/custom-select.js.map +1 -1
  78. package/cjs/state/select/update-position.js +1 -1
  79. package/cjs/state/select/update-position.js.map +1 -1
  80. package/cjs/state/state.d.ts +4 -7
  81. package/cjs/state/state.js +28 -4
  82. package/cjs/state/state.js.map +1 -1
  83. package/cjs/themes/theme-define.js +1 -1
  84. package/cjs/themes/theme-define.js.map +1 -1
  85. package/cjs/tools/style.d.ts +3 -1
  86. package/cjs/tools/style.js +23 -2
  87. package/cjs/tools/style.js.map +1 -1
  88. package/cjs/ts-types/base-table.d.ts +7 -0
  89. package/cjs/ts-types/base-table.js.map +1 -1
  90. package/cjs/ts-types/events.d.ts +21 -1
  91. package/cjs/ts-types/events.js.map +1 -1
  92. package/cjs/ts-types/new-data-set.d.ts +1 -0
  93. package/cjs/ts-types/new-data-set.js.map +1 -1
  94. package/cjs/ts-types/style-define.d.ts +6 -0
  95. package/cjs/ts-types/style-define.js.map +1 -1
  96. package/cjs/ts-types/table-engine.d.ts +3 -0
  97. package/cjs/ts-types/table-engine.js.map +1 -1
  98. package/cjs/vrender.js.map +1 -1
  99. package/dist/vtable.js +2523 -497
  100. package/dist/vtable.min.js +2 -2
  101. package/es/ListTable.d.ts +8 -2
  102. package/es/ListTable.js +65 -11
  103. package/es/ListTable.js.map +1 -1
  104. package/es/PivotChart.d.ts +4 -1
  105. package/es/PivotChart.js +9 -4
  106. package/es/PivotChart.js.map +1 -1
  107. package/es/PivotTable.d.ts +4 -1
  108. package/es/PivotTable.js +9 -4
  109. package/es/PivotTable.js.map +1 -1
  110. package/es/body-helper/style.js +2 -1
  111. package/es/core/BaseTable.d.ts +15 -1
  112. package/es/core/BaseTable.js +119 -25
  113. package/es/core/BaseTable.js.map +1 -1
  114. package/es/core/TABLE_EVENT_TYPE.d.ts +4 -0
  115. package/es/core/TABLE_EVENT_TYPE.js +5 -1
  116. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  117. package/es/core/animation.js +1 -1
  118. package/es/core/animation.js.map +1 -1
  119. package/es/core/group-helper.d.ts +4 -2
  120. package/es/core/group-helper.js +7 -2
  121. package/es/core/group-helper.js.map +1 -1
  122. package/es/core/utils/get-cell-position.js +2 -2
  123. package/es/core/utils/get-cell-position.js.map +1 -1
  124. package/es/data/DataSource.d.ts +1 -0
  125. package/es/data/DataSource.js +21 -12
  126. package/es/data/DataSource.js.map +1 -1
  127. package/es/dataset/dataset-pivot-table.js +2 -1
  128. package/es/dataset/flatDataToObject.js +1 -2
  129. package/es/edit/edit-manager.js +5 -4
  130. package/es/edit/edit-manager.js.map +1 -1
  131. package/es/event/event.d.ts +17 -0
  132. package/es/event/event.js +256 -8
  133. package/es/event/event.js.map +1 -1
  134. package/es/event/listener/container-dom.js +9 -154
  135. package/es/event/listener/container-dom.js.map +1 -1
  136. package/es/event/listener/scroll-bar.js +1 -1
  137. package/es/event/listener/scroll-bar.js.map +1 -1
  138. package/es/event/listener/table-group.js +35 -32
  139. package/es/event/listener/table-group.js.map +1 -1
  140. package/es/event/scroll.js +3 -1
  141. package/es/event/scroll.js.map +1 -1
  142. package/es/index.d.ts +1 -1
  143. package/es/index.js +1 -1
  144. package/es/index.js.map +1 -1
  145. package/es/layout/index.js +2 -1
  146. package/es/layout/pivot-header-layout.js +1 -2
  147. package/es/scenegraph/component/table-component.d.ts +1 -1
  148. package/es/scenegraph/component/table-component.js +1 -1
  149. package/es/scenegraph/component/table-component.js.map +1 -1
  150. package/es/scenegraph/group-creater/cell-helper.js +2 -1
  151. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  152. package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
  153. package/es/scenegraph/layout/compute-col-width.js +3 -1
  154. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  155. package/es/scenegraph/layout/frozen-react.js +3 -5
  156. package/es/scenegraph/layout/frozen-react.js.map +1 -1
  157. package/es/scenegraph/layout/frozen.js +7 -4
  158. package/es/scenegraph/layout/frozen.js.map +1 -1
  159. package/es/scenegraph/scenegraph.d.ts +6 -2
  160. package/es/scenegraph/scenegraph.js +32 -11
  161. package/es/scenegraph/scenegraph.js.map +1 -1
  162. package/es/scenegraph/select/create-select-border.d.ts +2 -0
  163. package/es/scenegraph/select/create-select-border.js +1 -1
  164. package/es/scenegraph/select/create-select-border.js.map +1 -1
  165. package/es/scenegraph/select/update-custom-select-border.d.ts +6 -0
  166. package/es/scenegraph/select/update-custom-select-border.js +63 -0
  167. package/es/scenegraph/select/update-custom-select-border.js.map +1 -0
  168. package/es/scenegraph/select/update-select-border.js +37 -26
  169. package/es/scenegraph/select/update-select-border.js.map +1 -1
  170. package/es/scenegraph/utils/cell-pos.d.ts +12 -0
  171. package/es/scenegraph/utils/cell-pos.js +24 -0
  172. package/es/scenegraph/utils/cell-pos.js.map +1 -1
  173. package/es/scenegraph/utils/update-container.d.ts +1 -0
  174. package/es/scenegraph/utils/update-container.js +6 -0
  175. package/es/scenegraph/utils/update-container.js.map +1 -1
  176. package/es/state/select/custom-select.d.ts +2 -2
  177. package/es/state/select/custom-select.js +3 -15
  178. package/es/state/select/custom-select.js.map +1 -1
  179. package/es/state/select/update-position.js +1 -1
  180. package/es/state/select/update-position.js.map +1 -1
  181. package/es/state/state.d.ts +4 -7
  182. package/es/state/state.js +28 -4
  183. package/es/state/state.js.map +1 -1
  184. package/es/themes/theme-define.js +1 -1
  185. package/es/themes/theme-define.js.map +1 -1
  186. package/es/tools/style.d.ts +3 -1
  187. package/es/tools/style.js +20 -0
  188. package/es/tools/style.js.map +1 -1
  189. package/es/ts-types/base-table.d.ts +7 -0
  190. package/es/ts-types/base-table.js.map +1 -1
  191. package/es/ts-types/events.d.ts +21 -1
  192. package/es/ts-types/events.js.map +1 -1
  193. package/es/ts-types/new-data-set.d.ts +1 -0
  194. package/es/ts-types/new-data-set.js.map +1 -1
  195. package/es/ts-types/style-define.d.ts +6 -0
  196. package/es/ts-types/style-define.js.map +1 -1
  197. package/es/ts-types/table-engine.d.ts +3 -0
  198. package/es/ts-types/table-engine.js.map +1 -1
  199. package/es/vrender.js.map +1 -1
  200. package/package.json +12 -8
@@ -49,4 +49,5 @@ function of(columnStyle, bodyStyle, styleArg, StyleClassDef = Style_1.Style, glo
49
49
  StyleClassDef === CheckboxStyle_1.CheckboxStyle ? new CheckboxStyle_1.CheckboxStyle(null != columnStyle ? columnStyle : {}, null != bodyStyle ? bodyStyle : {}, null !== (_a = theme.checkboxStyle) && void 0 !== _a ? _a : {}) : StyleClassDef === RadioStyle_1.RadioStyle ? new RadioStyle_1.RadioStyle(null != columnStyle ? columnStyle : {}, null != bodyStyle ? bodyStyle : {}, null !== (_b = theme.radioStyle) && void 0 !== _b ? _b : {}) : StyleClassDef === SwitchStyle_1.SwitchStyle ? new SwitchStyle_1.SwitchStyle(null != columnStyle ? columnStyle : {}, null != bodyStyle ? bodyStyle : {}, null !== (_c = theme.switchStyle) && void 0 !== _c ? _c : {}) : StyleClassDef === ButtonStyle_1.ButtonStyle ? new ButtonStyle_1.ButtonStyle(null != columnStyle ? columnStyle : {}, null != bodyStyle ? bodyStyle : {}, null !== (_d = theme.buttonStyle) && void 0 !== _d ? _d : {}) : new StyleClassDef(null != columnStyle ? columnStyle : {}, null != bodyStyle ? bodyStyle : {})) : StyleClassDef.DEFAULT;
50
50
  }
51
51
 
52
- exports.EVENT_TYPE = EVENT_TYPE, exports.of = of;
52
+ exports.EVENT_TYPE = EVENT_TYPE, exports.of = of;
53
+ //# sourceMappingURL=style.js.map
@@ -55,6 +55,8 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
55
55
  customRender?: ICustomRender;
56
56
  canvasWidth?: number;
57
57
  canvasHeight?: number;
58
+ contentOffsetX?: number;
59
+ contentOffsetY?: number;
58
60
  _vDataSet?: DataSet;
59
61
  scenegraph: Scenegraph;
60
62
  stateManager: StateManager;
@@ -91,6 +93,7 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
91
93
  getElement(): HTMLElement;
92
94
  get canvas(): HTMLCanvasElement;
93
95
  setCanvasSize(canvasWidth: number, canvasHeight: number): void;
96
+ setContentInsetXY(contentOffsetX: number, contentOffsetY: number): void;
94
97
  resize(): void;
95
98
  get rowCount(): number;
96
99
  set rowCount(rowCount: number);
@@ -103,6 +106,7 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
103
106
  _resetFrozenColCount(): void;
104
107
  get frozenRowCount(): number;
105
108
  set frozenRowCount(frozenRowCount: number);
109
+ _setFrozenRowCount(frozenRowCount: number): void;
106
110
  get rightFrozenColCount(): number;
107
111
  set rightFrozenColCount(rightFrozenColCount: number);
108
112
  get bottomFrozenRowCount(): number;
@@ -256,7 +260,10 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
256
260
  private dispose;
257
261
  release(): void;
258
262
  fireListeners<TYPE extends keyof TableEventHandlersEventArgumentMap>(type: TYPE, event: TableEventHandlersEventArgumentMap[TYPE]): TableEventHandlersReturnMap[TYPE][];
259
- updateOption(options: BaseTableConstructorOptions): void;
263
+ updateOption(options: BaseTableConstructorOptions, updateConfig?: {
264
+ clearColWidthCache?: boolean;
265
+ clearRowHeightCache?: boolean;
266
+ }): void;
260
267
  renderWithRecreateCells(): void;
261
268
  getFrozenRowsHeight(): number;
262
269
  getFrozenColsWidth(): number;
@@ -276,6 +283,13 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
276
283
  clearSelected(): void;
277
284
  selectCell(col: number, row: number, isShift?: boolean, isCtrl?: boolean, makeSelectCellVisible?: boolean, skipBodyMerge?: boolean): void;
278
285
  selectCells(cellRanges: CellRange[]): void;
286
+ selectRow(rowIndex: number, isCtrl?: boolean, isShift?: boolean): void;
287
+ selectCol(colIndex: number, isCtrl?: boolean, isShift?: boolean): void;
288
+ startDragSelectCol(colIndex: number, isCtrl?: boolean, isShift?: boolean): void;
289
+ dragSelectCol(colIndex: number, isCtrl?: boolean): void;
290
+ endDragSelect(): void;
291
+ startDragSelectRow(rowIndex: number, isCtrl?: boolean, isShift?: boolean): void;
292
+ dragSelectRow(rowIndex: number, isCtrl?: boolean): void;
279
293
  abstract isListTable(): boolean;
280
294
  abstract isPivotTable(): boolean;
281
295
  abstract isPivotChart(): boolean;
@@ -43,7 +43,7 @@ class BaseTable extends EventTarget_1.EventTarget {
43
43
  }
44
44
  constructor(container, options = {}) {
45
45
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
46
- if (super(), this.showFrozenIcon = !0, this.version = "1.0.14", this.id = `VTable${Date.now()}`,
46
+ if (super(), this.showFrozenIcon = !0, this.version = "1.0.16", this.id = `VTable${Date.now()}`,
47
47
  this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = (0, util_1.throttle2)(this.render.bind(this), 200),
48
48
  "node" === env_1.Env.mode ? (options = container, container = null) : container instanceof HTMLElement || (options = container,
49
49
  container = container.container ? container.container : null), !container && "node" !== options.mode && !options.canvas) throw new Error("vtable's container is undefined");
@@ -55,7 +55,7 @@ class BaseTable extends EventTarget_1.EventTarget {
55
55
  const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, frozenRowCount: frozenRowCount, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, autoFillHeight: autoFillHeight = !1, containerFit: containerFit = {
56
56
  width: !1,
57
57
  height: !1
58
- }, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, enableCheckboxCascade: enableCheckboxCascade, enableHeaderCheckboxCascade: enableHeaderCheckboxCascade, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, dragOrder: dragOrder, 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, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options, {groupConfig: groupConfig, groupBy: groupBy, groupTitleFieldFormat: groupTitleFieldFormat, groupTitleCustomLayout: groupTitleCustomLayout, enableTreeStickCell: enableTreeStickCell} = options;
58
+ }, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, enableCheckboxCascade: enableCheckboxCascade, enableHeaderCheckboxCascade: enableHeaderCheckboxCascade, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, dragOrder: dragOrder, 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, contentOffsetX: translateX, contentOffsetY: translateY, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options, {groupConfig: groupConfig, groupBy: groupBy, groupTitleFieldFormat: groupTitleFieldFormat, groupTitleCustomLayout: groupTitleCustomLayout, enableTreeStickCell: enableTreeStickCell} = options;
59
59
  this.container = container, this.options = options, this._widthMode = widthMode,
60
60
  this._heightMode = heightMode, this._widthAdaptiveMode = widthAdaptiveMode, this._heightAdaptiveMode = heightAdaptiveMode,
61
61
  this._autoFillWidth = autoFillWidth, this._autoFillHeight = autoFillHeight, void 0 !== containerFit && (this._containerFit = "boolean" == typeof containerFit ? {
@@ -77,9 +77,10 @@ class BaseTable extends EventTarget_1.EventTarget {
77
77
  padding.bottom && (this.padding.bottom = padding.bottom), padding.left && (this.padding.left = padding.left),
78
78
  padding.right && (this.padding.right = padding.right))), ((0, vutils_1.isValid)(canvasHeight) || (0,
79
79
  vutils_1.isValid)(canvasWidth)) && (this.canvasSizeSeted = !0), this.tableNoFrameWidth = 0,
80
- this.tableNoFrameHeight = 0, this.canvasWidth = (0, vutils_1.isNumber)(canvasWidth) ? canvasWidth : void 0,
81
- this.canvasHeight = (0, vutils_1.isNumber)(canvasHeight) ? canvasHeight : void 0,
82
- this.columnWidthComputeMode = null !== (_d = options.columnWidthComputeMode) && void 0 !== _d ? _d : "normal";
80
+ this.tableNoFrameHeight = 0, this.contentOffsetX = null != translateX ? translateX : 0,
81
+ this.contentOffsetY = null != translateY ? translateY : 0, this.canvasWidth = (0,
82
+ vutils_1.isNumber)(canvasWidth) ? canvasWidth : void 0, this.canvasHeight = (0,
83
+ vutils_1.isNumber)(canvasHeight) ? canvasHeight : void 0, this.columnWidthComputeMode = null !== (_d = options.columnWidthComputeMode) && void 0 !== _d ? _d : "normal";
83
84
  const internalProps = this.internalProps = {};
84
85
  void 0 !== showFrozenIcon && (this.showFrozenIcon = showFrozenIcon), "number" == typeof allowFrozenColCount && allowFrozenColCount <= 0 && (this.showFrozenIcon = !1),
85
86
  this.options.canvas ? ("node" !== env_1.Env.mode && (internalProps.element = this.options.canvas.parentElement,
@@ -212,6 +213,10 @@ class BaseTable extends EventTarget_1.EventTarget {
212
213
  this.canvasWidth = canvasWidth, this.canvasHeight = canvasHeight, this.options.canvasHeight = canvasHeight,
213
214
  this.options.canvasWidth = canvasWidth, this.resize();
214
215
  }
216
+ setContentInsetXY(contentOffsetX, contentOffsetY) {
217
+ this.contentOffsetX = contentOffsetX, this.contentOffsetY = contentOffsetY, this.options.contentOffsetX = contentOffsetX,
218
+ this.options.contentOffsetY = contentOffsetY, this.resize();
219
+ }
215
220
  resize() {
216
221
  var _a;
217
222
  this._updateSize(), null === (_a = this.internalProps.legends) || void 0 === _a || _a.forEach((legend => {
@@ -267,6 +272,10 @@ class BaseTable extends EventTarget_1.EventTarget {
267
272
  return null !== (_e = null !== (_c = null === (_b = null === (_a = this.internalProps) || void 0 === _a ? void 0 : _a.layoutMap) || void 0 === _b ? void 0 : _b.frozenRowCount) && void 0 !== _c ? _c : null === (_d = this.internalProps) || void 0 === _d ? void 0 : _d.frozenRowCount) && void 0 !== _e ? _e : 0;
268
273
  }
269
274
  set frozenRowCount(frozenRowCount) {
275
+ this.internalProps.frozenRowCount = frozenRowCount, this.options.frozenRowCount = frozenRowCount,
276
+ this.stateManager.setFrozenRow(this.internalProps.frozenRowCount);
277
+ }
278
+ _setFrozenRowCount(frozenRowCount) {
270
279
  this.internalProps.frozenRowCount = frozenRowCount, this.stateManager.setFrozenRow(this.internalProps.frozenRowCount);
271
280
  }
272
281
  get rightFrozenColCount() {
@@ -441,7 +450,7 @@ class BaseTable extends EventTarget_1.EventTarget {
441
450
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
442
451
  const {padding: padding} = this;
443
452
  let widthP = 0, heightP = 0;
444
- if (this.tableX = 0, this.tableY = 0, this.options.canvas && this.options.viewBox) widthP = this.options.viewBox.x2 - this.options.viewBox.x1,
453
+ if (this.tableX = this.contentOffsetX, this.tableY = this.contentOffsetY, this.options.canvas && this.options.viewBox) widthP = this.options.viewBox.x2 - this.options.viewBox.x1,
445
454
  heightP = this.options.viewBox.y2 - this.options.viewBox.y1, (null === (_a = null == this ? void 0 : this.scenegraph) || void 0 === _a ? void 0 : _a.stage) && (this.options.viewBox ? this.scenegraph.stage.setViewBox(this.options.viewBox, !1) : this.scenegraph.stage.resize(widthP, heightP)); else if ("browser" === env_1.Env.mode) {
446
455
  const element = this.getElement();
447
456
  let widthWithoutPadding = 0, heightWithoutPadding = 0;
@@ -472,15 +481,15 @@ class BaseTable extends EventTarget_1.EventTarget {
472
481
  const width = Math.floor(widthP - vScrollBarWidth), height = Math.floor(heightP - hScrollBarWidth);
473
482
  if (null === (_l = this.internalProps.theme) || void 0 === _l ? void 0 : _l.frameStyle) {
474
483
  const lineWidths = toBoxArray(null !== (_o = null === (_m = this.internalProps.theme.frameStyle) || void 0 === _m ? void 0 : _m.borderLineWidth) && void 0 !== _o ? _o : [ null ]), shadowWidths = toBoxArray(null !== (_q = null === (_p = this.internalProps.theme.frameStyle) || void 0 === _p ? void 0 : _p.shadowBlur) && void 0 !== _q ? _q : [ 0 ]);
475
- if (null === (_r = this.theme.frameStyle) || void 0 === _r ? void 0 : _r.innerBorder) this.tableX = 0,
476
- this.tableY = 0, this.tableNoFrameWidth = width - (null !== (_s = shadowWidths[1]) && void 0 !== _s ? _s : 0),
477
- this.tableNoFrameHeight = height - (null !== (_t = shadowWidths[2]) && void 0 !== _t ? _t : 0); else {
478
- this.tableX = (null !== (_u = lineWidths[3]) && void 0 !== _u ? _u : 0) + (null !== (_v = shadowWidths[3]) && void 0 !== _v ? _v : 0),
479
- this.tableY = (null !== (_w = lineWidths[0]) && void 0 !== _w ? _w : 0) + (null !== (_x = shadowWidths[0]) && void 0 !== _x ? _x : 0);
484
+ if (null === (_r = this.theme.frameStyle) || void 0 === _r ? void 0 : _r.innerBorder) this.tableX += this.contentOffsetX,
485
+ this.tableY += this.contentOffsetY, this.tableNoFrameWidth = width - (null !== (_s = shadowWidths[1]) && void 0 !== _s ? _s : 0) - this.contentOffsetX,
486
+ this.tableNoFrameHeight = height - (null !== (_t = shadowWidths[2]) && void 0 !== _t ? _t : 0) - this.contentOffsetY; else {
487
+ this.tableX += (null !== (_u = lineWidths[3]) && void 0 !== _u ? _u : 0) + (null !== (_v = shadowWidths[3]) && void 0 !== _v ? _v : 0),
488
+ this.tableY += (null !== (_w = lineWidths[0]) && void 0 !== _w ? _w : 0) + (null !== (_x = shadowWidths[0]) && void 0 !== _x ? _x : 0);
480
489
  const rightBorder = (null !== (_y = lineWidths[1]) && void 0 !== _y ? _y : 0) + (null !== (_z = shadowWidths[1]) && void 0 !== _z ? _z : 0);
481
- this.tableNoFrameWidth = width - (rightBorder > vScrollBarWidth ? rightBorder - vScrollBarWidth : 0) - ((null !== (_0 = lineWidths[3]) && void 0 !== _0 ? _0 : 0) + (null !== (_1 = shadowWidths[3]) && void 0 !== _1 ? _1 : 0));
490
+ this.tableNoFrameWidth = width - (rightBorder > vScrollBarWidth ? rightBorder - vScrollBarWidth : 0) - ((null !== (_0 = lineWidths[3]) && void 0 !== _0 ? _0 : 0) + (null !== (_1 = shadowWidths[3]) && void 0 !== _1 ? _1 : 0)) - this.contentOffsetX;
482
491
  const bottomBorder = (null !== (_2 = lineWidths[2]) && void 0 !== _2 ? _2 : 0) + (null !== (_3 = shadowWidths[2]) && void 0 !== _3 ? _3 : 0);
483
- this.tableNoFrameHeight = height - (bottomBorder > hScrollBarWidth ? bottomBorder - hScrollBarWidth : 0) - ((null !== (_4 = lineWidths[0]) && void 0 !== _4 ? _4 : 0) + (null !== (_5 = shadowWidths[0]) && void 0 !== _5 ? _5 : 0));
492
+ this.tableNoFrameHeight = height - (bottomBorder > hScrollBarWidth ? bottomBorder - hScrollBarWidth : 0) - ((null !== (_4 = lineWidths[0]) && void 0 !== _4 ? _4 : 0) + (null !== (_5 = shadowWidths[0]) && void 0 !== _5 ? _5 : 0)) - this.contentOffsetY;
484
493
  }
485
494
  }
486
495
  this._clearColRangeWidthsMap(), this._clearRowRangeHeightsMap();
@@ -922,7 +931,8 @@ class BaseTable extends EventTarget_1.EventTarget {
922
931
  if (this.isReleased) return;
923
932
  null === (_b = null === (_a = internalProps.tooltipHandler) || void 0 === _a ? void 0 : _a.release) || void 0 === _b || _b.call(_a),
924
933
  null === (_d = null === (_c = internalProps.menuHandler) || void 0 === _c ? void 0 : _c.release) || void 0 === _d || _d.call(_c),
925
- null === (_e = super.release) || void 0 === _e || _e.call(this), null === (_g = null === (_f = internalProps.handler) || void 0 === _f ? void 0 : _f.release) || void 0 === _g || _g.call(_f),
934
+ null === (_e = super.release) || void 0 === _e || _e.call(this), this.pluginManager.release(),
935
+ null === (_g = null === (_f = internalProps.handler) || void 0 === _f ? void 0 : _f.release) || void 0 === _g || _g.call(_f),
926
936
  this.eventManager.release(), null === (_j = null === (_h = internalProps.focusControl) || void 0 === _h ? void 0 : _h.release) || void 0 === _j || _j.call(_h),
927
937
  null === (_k = internalProps.legends) || void 0 === _k || _k.forEach((legend => {
928
938
  null == legend || legend.release();
@@ -937,16 +947,22 @@ class BaseTable extends EventTarget_1.EventTarget {
937
947
  parentElement && !this.options.canvas && parentElement.removeChild(internalProps.element),
938
948
  null === (_q = null === (_p = null === (_o = this.editorManager) || void 0 === _o ? void 0 : _o.editingEditor) || void 0 === _p ? void 0 : _p.onEnd) || void 0 === _q || _q.call(_p),
939
949
  this.isReleased = !0, this.scenegraph = null, this.internalProps = null, null === (_r = this.reactCustomLayout) || void 0 === _r || _r.clearCache(),
940
- this.pluginManager.release(), (0, chart_render_helper_1.clearChartRenderQueue)();
950
+ (0, chart_render_helper_1.clearChartRenderQueue)();
941
951
  }
942
952
  fireListeners(type, event) {
943
953
  return super.fireListeners(type, event);
944
954
  }
945
- updateOption(options) {
955
+ updateOption(options, updateConfig = {
956
+ clearColWidthCache: !0,
957
+ clearRowHeightCache: !0
958
+ }) {
946
959
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
947
- null === (_a = this.editorManager) || void 0 === _a || _a.cancelEdit(), this.options = options,
960
+ this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.BEFORE_UPDATE_OPTION, {
961
+ options: options,
962
+ container: this.container
963
+ }), null === (_a = this.editorManager) || void 0 === _a || _a.cancelEdit(), this.options = options,
948
964
  this._hasAutoImageColumn = void 0;
949
- const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth = 80, keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, enableCheckboxCascade: enableCheckboxCascade, enableHeaderCheckboxCascade: enableHeaderCheckboxCascade, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, dragOrder: dragOrder, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, pixelRatio: pixelRatio, widthMode: widthMode, heightMode: heightMode, autoFillWidth: autoFillWidth, autoFillHeight: autoFillHeight, containerFit: containerFit, widthAdaptiveMode: widthAdaptiveMode, heightAdaptiveMode: heightAdaptiveMode, customRender: customRender, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight} = options, {groupConfig: groupConfig, groupBy: groupBy, groupTitleFieldFormat: groupTitleFieldFormat, groupTitleCustomLayout: groupTitleCustomLayout, enableTreeStickCell: enableTreeStickCell} = options;
965
+ const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth = 80, keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, enableCheckboxCascade: enableCheckboxCascade, enableHeaderCheckboxCascade: enableHeaderCheckboxCascade, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, dragOrder: dragOrder, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, pixelRatio: pixelRatio, widthMode: widthMode, heightMode: heightMode, autoFillWidth: autoFillWidth, autoFillHeight: autoFillHeight, containerFit: containerFit, widthAdaptiveMode: widthAdaptiveMode, heightAdaptiveMode: heightAdaptiveMode, customRender: customRender, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, canvasWidth: canvasWidth, canvasHeight: canvasHeight, contentOffsetX: translateX = 0, contentOffsetY: translateY = 0, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight} = options, {groupConfig: groupConfig, groupBy: groupBy, groupTitleFieldFormat: groupTitleFieldFormat, groupTitleCustomLayout: groupTitleCustomLayout, enableTreeStickCell: enableTreeStickCell} = options;
950
966
  pixelRatio && pixelRatio !== this.internalProps.pixelRatio && (this.internalProps.pixelRatio = pixelRatio),
951
967
  padding && ("number" == typeof padding ? (this.padding.top = padding, this.padding.left = padding,
952
968
  this.padding.bottom = padding, this.padding.right = padding) : (padding.top && (this.padding.top = padding.top),
@@ -966,8 +982,10 @@ class BaseTable extends EventTarget_1.EventTarget {
966
982
  } : {
967
983
  width: !1,
968
984
  height: !1
969
- }), this.customRender = customRender, this.canvasWidth = (0, vutils_1.isNumber)(canvasWidth) ? canvasWidth : void 0,
970
- this.canvasHeight = (0, vutils_1.isNumber)(canvasHeight) ? canvasHeight : void 0;
985
+ }), this.customRender = customRender, this.contentOffsetX = null != translateX ? translateX : 0,
986
+ this.contentOffsetY = null != translateY ? translateY : 0, this.canvasWidth = (0,
987
+ vutils_1.isNumber)(canvasWidth) ? canvasWidth : void 0, this.canvasHeight = (0,
988
+ vutils_1.isNumber)(canvasHeight) ? canvasHeight : void 0;
971
989
  const internalProps = this.internalProps;
972
990
  if ("node" === env_1.Env.mode || options.canvas || (0, tableHelper_1.updateRootElementPadding)(internalProps.element, this.padding),
973
991
  this.columnWidthComputeMode = null !== (_d = options.columnWidthComputeMode) && void 0 !== _d ? _d : "normal",
@@ -987,11 +1005,12 @@ class BaseTable extends EventTarget_1.EventTarget {
987
1005
  internalProps.groupTitleFieldFormat = null !== (_l = null == groupConfig ? void 0 : groupConfig.titleFieldFormat) && void 0 !== _l ? _l : groupTitleFieldFormat,
988
1006
  internalProps.groupTitleCustomLayout = null !== (_m = null == groupConfig ? void 0 : groupConfig.titleCustomLayout) && void 0 !== _m ? _m : groupTitleCustomLayout,
989
1007
  internalProps.enableTreeStickCell = null !== (_o = null == groupConfig ? void 0 : groupConfig.enableTreeStickCell) && void 0 !== _o ? _o : enableTreeStickCell,
1008
+ (null == updateConfig ? void 0 : updateConfig.clearColWidthCache) && (internalProps._widthResizedColMap.clear(),
1009
+ this.colWidthsMap = new NumberMap_1.NumberMap, this.colContentWidthsMap = new NumberMap_1.NumberMap,
1010
+ this.colWidthsLimit = {}), (null == updateConfig ? void 0 : updateConfig.clearRowHeightCache) && (internalProps._heightResizedRowMap.clear(),
990
1011
  internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
991
- internalProps._colRangeWidthsMap = new Map, internalProps._widthResizedColMap = new Set,
992
- internalProps._heightResizedRowMap = new Set, this.colWidthsMap = new NumberMap_1.NumberMap,
993
- this.colContentWidthsMap = new NumberMap_1.NumberMap, this.colWidthsLimit = {},
994
- internalProps.stick.changedCells.clear(), internalProps.theme = themes_1.default.of(null !== (_p = options.theme) && void 0 !== _p ? _p : themes_1.default.DEFAULT),
1012
+ internalProps._colRangeWidthsMap = new Map), internalProps.stick.changedCells.clear(),
1013
+ internalProps.theme = themes_1.default.of(null !== (_p = options.theme) && void 0 !== _p ? _p : themes_1.default.DEFAULT),
995
1014
  internalProps.theme.isPivot = this.isPivotTable(), (0, icons_1.setIconColor)(internalProps.theme.functionalIconsStyle),
996
1015
  this.scenegraph.updateStageBackground(), internalProps.autoWrapText = options.autoWrapText,
997
1016
  internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_q = options.allowFrozenColCount) && void 0 !== _q ? _q : 0,
@@ -1036,7 +1055,8 @@ class BaseTable extends EventTarget_1.EventTarget {
1036
1055
  const MenuHandler = factory_1.Factory.getComponent("menuHandler");
1037
1056
  internalProps.menuHandler = new MenuHandler(this);
1038
1057
  }
1039
- this.clearCellStyleCache(), this.clearColWidthCache(), this.clearRowHeightCache(),
1058
+ this.clearCellStyleCache(), (null == updateConfig ? void 0 : updateConfig.clearColWidthCache) && this.clearColWidthCache(),
1059
+ (null == updateConfig ? void 0 : updateConfig.clearRowHeightCache) && this.clearRowHeightCache(),
1040
1060
  internalProps.customMergeCell = (0, get_custom_merge_cell_func_1.getCustomMergeCellFunc)(options.customMergeCell),
1041
1061
  null === (_z = this.customCellStylePlugin) || void 0 === _z || _z.updateCustomCell(null !== (_0 = options.customCellStyle) && void 0 !== _0 ? _0 : [], null !== (_1 = options.customCellStyleArrangement) && void 0 !== _1 ? _1 : []),
1042
1062
  this._adjustCanvasSizeByOption();
@@ -1140,11 +1160,87 @@ class BaseTable extends EventTarget_1.EventTarget {
1140
1160
  const {scrollLeft: scrollLeft, scrollTop: scrollTop} = this;
1141
1161
  cellRanges.forEach(((cellRange, index) => {
1142
1162
  var _a, _b, _c, _d, _e, _f;
1143
- cellRange.start.col === cellRange.end.col && cellRange.start.row === cellRange.end.row ? this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, null === (_b = null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.makeSelectCellVisible) || void 0 === _b || _b, !0) : (this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, null === (_d = null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.makeSelectCellVisible) || void 0 === _d || _d, !0),
1144
- this.stateManager.updateInteractionState(ts_types_1.InteractionState.grabing), this.stateManager.updateSelectPos(cellRange.end.col, cellRange.end.row, !1, index >= 1, !1, null === (_f = null === (_e = this.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f, !0)),
1163
+ const startRow = cellRange.start.row, startCol = cellRange.start.col, endRow = cellRange.end.row, endCol = cellRange.end.col;
1164
+ startCol === endCol && startRow === endRow ? this.stateManager.updateSelectPos(startCol, startRow, !1, index >= 1, !1, null === (_b = null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.makeSelectCellVisible) || void 0 === _b || _b, !0) : (this.stateManager.updateSelectPos(startCol, startRow, !1, index >= 1, !1, null === (_d = null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.makeSelectCellVisible) || void 0 === _d || _d, !0),
1165
+ this.stateManager.updateInteractionState(ts_types_1.InteractionState.grabing), this.stateManager.updateSelectPos(endCol, endRow, !1, index >= 1, !1, null === (_f = null === (_e = this.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f, !0)),
1145
1166
  this.stateManager.endSelectCells(!1, !1), this.stateManager.updateInteractionState(ts_types_1.InteractionState.default);
1146
1167
  })), this.setScrollTop(scrollTop), this.setScrollLeft(scrollLeft);
1147
1168
  }
1169
+ selectRow(rowIndex, isCtrl, isShift) {
1170
+ const currentSelectRanges = this.stateManager.select.ranges;
1171
+ if (isCtrl) currentSelectRanges.push({
1172
+ start: {
1173
+ col: 0,
1174
+ row: rowIndex
1175
+ },
1176
+ end: {
1177
+ col: this.colCount - 1,
1178
+ row: rowIndex
1179
+ }
1180
+ }), this.selectCells(currentSelectRanges); else if (isShift) {
1181
+ const lastSelectRange = currentSelectRanges[currentSelectRanges.length - 1];
1182
+ lastSelectRange && (lastSelectRange.end.row = rowIndex), this.selectCells(currentSelectRanges);
1183
+ } else this.selectCells([ {
1184
+ start: {
1185
+ col: 0,
1186
+ row: rowIndex
1187
+ },
1188
+ end: {
1189
+ col: this.colCount - 1,
1190
+ row: rowIndex
1191
+ }
1192
+ } ]);
1193
+ }
1194
+ selectCol(colIndex, isCtrl, isShift) {
1195
+ const currentSelectRanges = this.stateManager.select.ranges;
1196
+ if (isCtrl) currentSelectRanges.push({
1197
+ start: {
1198
+ col: colIndex,
1199
+ row: 0
1200
+ },
1201
+ end: {
1202
+ col: colIndex,
1203
+ row: this.rowCount - 1
1204
+ }
1205
+ }), this.selectCells(currentSelectRanges); else if (isShift) {
1206
+ const lastSelectRange = currentSelectRanges[currentSelectRanges.length - 1];
1207
+ lastSelectRange && (lastSelectRange.end.col = colIndex), this.selectCells(currentSelectRanges);
1208
+ } else this.selectCells([ {
1209
+ start: {
1210
+ col: colIndex,
1211
+ row: 0
1212
+ },
1213
+ end: {
1214
+ col: colIndex,
1215
+ row: this.rowCount - 1
1216
+ }
1217
+ } ]);
1218
+ }
1219
+ startDragSelectCol(colIndex, isCtrl, isShift) {
1220
+ var _a, _b, _c, _d, _e, _f;
1221
+ const lastSelectRange = this.stateManager.select.ranges[this.stateManager.select.ranges.length - 1], startCol = isShift && (null === (_a = null == lastSelectRange ? void 0 : lastSelectRange.start) || void 0 === _a ? void 0 : _a.col) ? null === (_b = null == lastSelectRange ? void 0 : lastSelectRange.start) || void 0 === _b ? void 0 : _b.col : colIndex, endCol = colIndex, endRow = this.rowCount - 1;
1222
+ this.stateManager.updateSelectPos(startCol, 0, isShift, isCtrl, !1, null === (_d = null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.makeSelectCellVisible) || void 0 === _d || _d, !0),
1223
+ this.stateManager.updateInteractionState(ts_types_1.InteractionState.grabing), this.stateManager.updateSelectPos(endCol, endRow, isShift, isCtrl, !1, null === (_f = null === (_e = this.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f, !0);
1224
+ }
1225
+ dragSelectCol(colIndex, isCtrl) {
1226
+ var _a, _b;
1227
+ const currentSelectRanges = this.stateManager.select.ranges, lastSelectRange = currentSelectRanges[currentSelectRanges.length - 1];
1228
+ lastSelectRange && (lastSelectRange.end.col = colIndex), this.stateManager.updateSelectPos(colIndex, this.rowCount - 1, !1, isCtrl, !1, null === (_b = null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.makeSelectCellVisible) || void 0 === _b || _b, !0);
1229
+ }
1230
+ endDragSelect() {
1231
+ this.stateManager.updateInteractionState(ts_types_1.InteractionState.default), this.stateManager.endSelectCells(!1, !1);
1232
+ }
1233
+ startDragSelectRow(rowIndex, isCtrl, isShift) {
1234
+ var _a, _b, _c, _d, _e, _f;
1235
+ const lastSelectRange = this.stateManager.select.ranges[this.stateManager.select.ranges.length - 1], startRow = isShift && (null === (_a = null == lastSelectRange ? void 0 : lastSelectRange.start) || void 0 === _a ? void 0 : _a.row) ? null === (_b = null == lastSelectRange ? void 0 : lastSelectRange.start) || void 0 === _b ? void 0 : _b.row : rowIndex, endCol = this.colCount - 1, endRow = rowIndex;
1236
+ this.stateManager.updateSelectPos(0, startRow, isShift, isCtrl, !1, null === (_d = null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.makeSelectCellVisible) || void 0 === _d || _d, !0),
1237
+ this.stateManager.updateInteractionState(ts_types_1.InteractionState.grabing), this.stateManager.updateSelectPos(endCol, endRow, isShift, isCtrl, !1, null === (_f = null === (_e = this.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f, !0);
1238
+ }
1239
+ dragSelectRow(rowIndex, isCtrl) {
1240
+ var _a, _b;
1241
+ const currentSelectRanges = this.stateManager.select.ranges, lastSelectRange = currentSelectRanges[currentSelectRanges.length - 1];
1242
+ lastSelectRange && (lastSelectRange.end.row = rowIndex), this.stateManager.updateSelectPos(this.colCount - 1, rowIndex, !1, isCtrl, !1, null === (_b = null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.makeSelectCellVisible) || void 0 === _b || _b, !0);
1243
+ }
1148
1244
  get recordsCount() {
1149
1245
  var _a;
1150
1246
  return null === (_a = this.records) || void 0 === _a ? void 0 : _a.length;
@@ -2001,5 +2097,4 @@ class BaseTable extends EventTarget_1.EventTarget {
2001
2097
  }
2002
2098
  }
2003
2099
 
2004
- exports.BaseTable = BaseTable;
2005
- //# sourceMappingURL=BaseTable.js.map
2100
+ exports.BaseTable = BaseTable;