k-vtable 1.0.11 → 1.0.13

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 (135) hide show
  1. package/cjs/ListTable.js +15 -11
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/core/BaseTable.js +47 -33
  4. package/cjs/core/BaseTable.js.map +1 -1
  5. package/cjs/core/group-helper.d.ts +3 -1
  6. package/cjs/core/group-helper.js +5 -3
  7. package/cjs/core/group-helper.js.map +1 -1
  8. package/cjs/core/record-helper.js +121 -17
  9. package/cjs/core/record-helper.js.map +1 -1
  10. package/cjs/core/tableHelper.js +1 -1
  11. package/cjs/core/tableHelper.js.map +1 -1
  12. package/cjs/data/CachedDataSource.d.ts +1 -1
  13. package/cjs/data/CachedDataSource.js +7 -6
  14. package/cjs/data/CachedDataSource.js.map +1 -1
  15. package/cjs/event/event.js +2 -2
  16. package/cjs/event/event.js.map +1 -1
  17. package/cjs/event/listener/table-group.js +6 -4
  18. package/cjs/event/listener/table-group.js.map +1 -1
  19. package/cjs/event/self-event-listener/base-table/dropdown-menu.d.ts +1 -1
  20. package/cjs/event/self-event-listener/base-table/dropdown-menu.js +5 -3
  21. package/cjs/event/self-event-listener/base-table/dropdown-menu.js.map +1 -1
  22. package/cjs/event/self-event-listener/list-table/checkbox.js +5 -5
  23. package/cjs/event/self-event-listener/list-table/checkbox.js.map +1 -1
  24. package/cjs/index.d.ts +1 -1
  25. package/cjs/index.js +1 -1
  26. package/cjs/index.js.map +1 -1
  27. package/cjs/layout/cell-range/simple-cell-range.js +2 -2
  28. package/cjs/layout/cell-range/simple-cell-range.js.map +1 -1
  29. package/cjs/layout/layout-helper.js +1 -1
  30. package/cjs/layout/layout-helper.js.map +1 -1
  31. package/cjs/layout/simple-header-layout.js +3 -3
  32. package/cjs/layout/simple-header-layout.js.map +1 -1
  33. package/cjs/scenegraph/graphic/chart.js +7 -4
  34. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  35. package/cjs/scenegraph/group-creater/cell-helper.js +3 -3
  36. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  37. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -5
  38. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  39. package/cjs/scenegraph/group-creater/column-helper.js +3 -3
  40. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  41. package/cjs/scenegraph/group-creater/init-scenegraph.js +1 -1
  42. package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  43. package/cjs/scenegraph/layout/update-height.js +2 -2
  44. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  45. package/cjs/scenegraph/layout/update-width.js +1 -1
  46. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  47. package/cjs/scenegraph/scenegraph.js +1 -1
  48. package/cjs/scenegraph/scenegraph.js.map +1 -1
  49. package/cjs/scenegraph/select/update-select-border.js +27 -11
  50. package/cjs/scenegraph/select/update-select-border.js.map +1 -1
  51. package/cjs/scenegraph/utils/get-hierarchy-offset.js +1 -1
  52. package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  53. package/cjs/state/checkbox/checkbox.js +7 -6
  54. package/cjs/state/checkbox/checkbox.js.map +1 -1
  55. package/cjs/tools/diff-cell.d.ts +1 -1
  56. package/cjs/tools/diff-cell.js +4 -1
  57. package/cjs/tools/diff-cell.js.map +1 -1
  58. package/cjs/ts-types/base-table.d.ts +10 -1
  59. package/cjs/ts-types/base-table.js.map +1 -1
  60. package/cjs/ts-types/list-table/define/checkbox-define.d.ts +0 -1
  61. package/cjs/ts-types/list-table/define/checkbox-define.js.map +1 -1
  62. package/cjs/ts-types/new-data-set.d.ts +1 -0
  63. package/cjs/ts-types/new-data-set.js.map +1 -1
  64. package/cjs/ts-types/table-engine.d.ts +12 -1
  65. package/cjs/ts-types/table-engine.js.map +1 -1
  66. package/cjs/vrender.js.map +1 -1
  67. package/dist/vtable.js +341 -85
  68. package/dist/vtable.min.js +2 -2
  69. package/es/ListTable.js +13 -9
  70. package/es/ListTable.js.map +1 -1
  71. package/es/core/BaseTable.js +47 -33
  72. package/es/core/BaseTable.js.map +1 -1
  73. package/es/core/group-helper.d.ts +3 -1
  74. package/es/core/group-helper.js +5 -3
  75. package/es/core/group-helper.js.map +1 -1
  76. package/es/core/record-helper.js +120 -14
  77. package/es/core/record-helper.js.map +1 -1
  78. package/es/core/tableHelper.js +1 -1
  79. package/es/core/tableHelper.js.map +1 -1
  80. package/es/data/CachedDataSource.d.ts +1 -1
  81. package/es/data/CachedDataSource.js +7 -6
  82. package/es/data/CachedDataSource.js.map +1 -1
  83. package/es/event/event.js +3 -3
  84. package/es/event/event.js.map +1 -1
  85. package/es/event/listener/table-group.js +6 -4
  86. package/es/event/listener/table-group.js.map +1 -1
  87. package/es/event/self-event-listener/base-table/dropdown-menu.d.ts +1 -1
  88. package/es/event/self-event-listener/base-table/dropdown-menu.js +3 -1
  89. package/es/event/self-event-listener/base-table/dropdown-menu.js.map +1 -1
  90. package/es/event/self-event-listener/list-table/checkbox.js +5 -5
  91. package/es/event/self-event-listener/list-table/checkbox.js.map +1 -1
  92. package/es/index.d.ts +1 -1
  93. package/es/index.js +1 -1
  94. package/es/index.js.map +1 -1
  95. package/es/layout/cell-range/simple-cell-range.js +2 -2
  96. package/es/layout/cell-range/simple-cell-range.js.map +1 -1
  97. package/es/layout/layout-helper.js +1 -1
  98. package/es/layout/layout-helper.js.map +1 -1
  99. package/es/layout/simple-header-layout.js +3 -3
  100. package/es/layout/simple-header-layout.js.map +1 -1
  101. package/es/scenegraph/graphic/chart.js +7 -4
  102. package/es/scenegraph/graphic/chart.js.map +1 -1
  103. package/es/scenegraph/group-creater/cell-helper.js +2 -2
  104. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  105. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -5
  106. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  107. package/es/scenegraph/group-creater/column-helper.js +2 -2
  108. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  109. package/es/scenegraph/group-creater/init-scenegraph.js +1 -1
  110. package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  111. package/es/scenegraph/layout/update-height.js +2 -2
  112. package/es/scenegraph/layout/update-height.js.map +1 -1
  113. package/es/scenegraph/layout/update-width.js +1 -1
  114. package/es/scenegraph/layout/update-width.js.map +1 -1
  115. package/es/scenegraph/scenegraph.js +1 -1
  116. package/es/scenegraph/scenegraph.js.map +1 -1
  117. package/es/scenegraph/select/update-select-border.js +23 -9
  118. package/es/scenegraph/select/update-select-border.js.map +1 -1
  119. package/es/scenegraph/utils/get-hierarchy-offset.js +1 -1
  120. package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  121. package/es/state/checkbox/checkbox.js +7 -6
  122. package/es/state/checkbox/checkbox.js.map +1 -1
  123. package/es/tools/diff-cell.d.ts +1 -1
  124. package/es/tools/diff-cell.js +4 -1
  125. package/es/tools/diff-cell.js.map +1 -1
  126. package/es/ts-types/base-table.d.ts +10 -1
  127. package/es/ts-types/base-table.js.map +1 -1
  128. package/es/ts-types/list-table/define/checkbox-define.d.ts +0 -1
  129. package/es/ts-types/list-table/define/checkbox-define.js.map +1 -1
  130. package/es/ts-types/new-data-set.d.ts +1 -0
  131. package/es/ts-types/new-data-set.js.map +1 -1
  132. package/es/ts-types/table-engine.d.ts +12 -1
  133. package/es/ts-types/table-engine.js.map +1 -1
  134. package/es/vrender.js.map +1 -1
  135. package/package.json +6 -7
@@ -89,8 +89,8 @@ export class BaseTable extends EventTarget {
89
89
  return TABLE_EVENT_TYPE;
90
90
  }
91
91
  constructor(container, options = {}) {
92
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
93
- if (super(), this.showFrozenIcon = !0, this.version = "1.0.11", this.id = `VTable${Date.now()}`,
92
+ 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;
93
+ if (super(), this.showFrozenIcon = !0, this.version = "1.0.13", this.id = `VTable${Date.now()}`,
94
94
  this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = throttle2(this.render.bind(this), 200),
95
95
  "node" === Env.mode ? (options = container, container = null) : container instanceof HTMLElement || (options = container,
96
96
  container = container.container ? container.container : null), !container && "node" !== options.mode && !options.canvas) throw new Error("vtable's container is undefined");
@@ -102,7 +102,7 @@ export class BaseTable extends EventTarget {
102
102
  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 = {
103
103
  width: !1,
104
104
  height: !1
105
- }, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, enableCheckboxCascade: enableCheckboxCascade, 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 = defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options;
105
+ }, 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 = 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;
106
106
  this.container = container, this.options = options, this._widthMode = widthMode,
107
107
  this._heightMode = heightMode, this._widthAdaptiveMode = widthAdaptiveMode, this._heightAdaptiveMode = heightAdaptiveMode,
108
108
  this._autoFillWidth = autoFillWidth, this._autoFillHeight = autoFillHeight, void 0 !== containerFit && (this._containerFit = "boolean" == typeof containerFit ? {
@@ -139,12 +139,20 @@ export class BaseTable extends EventTarget {
139
139
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
140
140
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
141
141
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
142
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = enableCheckboxCascade,
143
- internalProps.columnResizeMode = null !== (_f = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _f ? _f : columnResizeMode,
144
- internalProps.rowResizeMode = null !== (_g = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _g ? _g : rowResizeMode,
145
- internalProps.dragHeaderMode = null !== (_j = null !== (_h = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _h ? _h : dragHeaderMode) && void 0 !== _j ? _j : "none",
142
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = null === (_f = null != enableCheckboxCascade ? enableCheckboxCascade : null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox) || void 0 === _f || _f,
143
+ internalProps.enableHeaderCheckboxCascade = enableCheckboxCascade || null == enableHeaderCheckboxCascade || enableHeaderCheckboxCascade,
144
+ internalProps.columnResizeMode = null !== (_g = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _g ? _g : columnResizeMode,
145
+ internalProps.rowResizeMode = null !== (_h = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _h ? _h : rowResizeMode,
146
+ internalProps.dragHeaderMode = null !== (_k = null !== (_j = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _j ? _j : dragHeaderMode) && void 0 !== _k ? _k : "none",
146
147
  internalProps.renderChartAsync = renderChartAsync, setBatchRenderChartCount(renderChartAsyncBatchCount),
147
148
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
149
+ internalProps.groupBy = null !== (_l = null == groupConfig ? void 0 : groupConfig.groupBy) && void 0 !== _l ? _l : groupBy,
150
+ internalProps.groupTitleCheckbox = null !== (_m = null == groupConfig ? void 0 : groupConfig.titleCheckbox) && void 0 !== _m ? _m : !!(null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox),
151
+ internalProps.groupCellMerge = null == groupConfig ? void 0 : groupConfig.groupCellMerge,
152
+ internalProps.customDealGroupData = null == groupConfig ? void 0 : groupConfig.customDealGroupData,
153
+ internalProps.groupTitleFieldFormat = null !== (_o = null == groupConfig ? void 0 : groupConfig.titleFieldFormat) && void 0 !== _o ? _o : groupTitleFieldFormat,
154
+ internalProps.groupTitleCustomLayout = null !== (_p = null == groupConfig ? void 0 : groupConfig.titleCustomLayout) && void 0 !== _p ? _p : groupTitleCustomLayout,
155
+ internalProps.enableTreeStickCell = null !== (_q = null == groupConfig ? void 0 : groupConfig.enableTreeStickCell) && void 0 !== _q ? _q : enableTreeStickCell,
148
156
  internalProps._rowHeightsMap = new NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
149
157
  internalProps._colRangeWidthsMap = new Map, internalProps._widthResizedColMap = new Set,
150
158
  internalProps._heightResizedRowMap = new Set, this.colWidthsMap = new NumberMap,
@@ -156,14 +164,14 @@ export class BaseTable extends EventTarget {
156
164
  var _a;
157
165
  return "node" === Env.mode ? that.canvasWidth / (null != pixelRatio ? pixelRatio : 1) : this._.canvas.width / (null !== (_a = this._.context.pixelRatio) && void 0 !== _a ? _a : window.devicePixelRatio);
158
166
  }
159
- }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes.of(null !== (_k = options.theme) && void 0 !== _k ? _k : themes.DEFAULT),
167
+ }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes.of(null !== (_r = options.theme) && void 0 !== _r ? _r : themes.DEFAULT),
160
168
  internalProps.theme.isPivot = this.isPivotTable(), setIconColor(internalProps.theme.functionalIconsStyle),
161
169
  container ? (clearDOM && (container.innerHTML = ""), container.appendChild(internalProps.element),
162
170
  this._updateSize()) : this._updateSize(), internalProps.bodyHelper = new BodyHelper(this),
163
171
  internalProps.headerHelper = new HeaderHelper(this), internalProps.rowSeriesNumberHelper = new RowSeriesNumberHelper(this),
164
172
  internalProps.autoWrapText = options.autoWrapText, internalProps.enableLineBreak = options.enableLineBreak,
165
- internalProps.allowFrozenColCount = null !== (_l = options.allowFrozenColCount) && void 0 !== _l ? _l : 0,
166
- internalProps.limitMaxAutoWidth = null !== (_m = options.limitMaxAutoWidth) && void 0 !== _m ? _m : 450,
173
+ internalProps.allowFrozenColCount = null !== (_s = options.allowFrozenColCount) && void 0 !== _s ? _s : 0,
174
+ internalProps.limitMaxAutoWidth = null !== (_t = options.limitMaxAutoWidth) && void 0 !== _t ? _t : 450,
167
175
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
168
176
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
169
177
  this.scenegraph = new Scenegraph(this), this.stateManager = new StateManager(this),
@@ -194,8 +202,8 @@ export class BaseTable extends EventTarget {
194
202
  }
195
203
  if (internalProps.menu = Object.assign({
196
204
  renderMode: "html"
197
- }, options.menu), Array.isArray(null === (_o = options.menu) || void 0 === _o ? void 0 : _o.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_p = options.menu) || void 0 === _p ? void 0 : _p.dropDownMenuHighlight),
198
- (Array.isArray(null === (_q = options.menu) || void 0 === _q ? void 0 : _q.defaultHeaderMenuItems) || "function" == typeof (null === (_r = options.menu) || void 0 === _r ? void 0 : _r.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
205
+ }, options.menu), Array.isArray(null === (_u = options.menu) || void 0 === _u ? void 0 : _u.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_v = options.menu) || void 0 === _v ? void 0 : _v.dropDownMenuHighlight),
206
+ (Array.isArray(null === (_w = options.menu) || void 0 === _w ? void 0 : _w.defaultHeaderMenuItems) || "function" == typeof (null === (_x = options.menu) || void 0 === _x ? void 0 : _x.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
199
207
  "html" === internalProps.menu.renderMode) {
200
208
  const MenuHandler = Factory.getComponent("menuHandler");
201
209
  internalProps.menuHandler = new MenuHandler(this);
@@ -205,7 +213,7 @@ export class BaseTable extends EventTarget {
205
213
  changedCells: new Map
206
214
  }, internalProps.customMergeCell = getCustomMergeCellFunc(options.customMergeCell);
207
215
  const CustomCellStylePlugin = Factory.getComponent("customCellStylePlugin");
208
- CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_s = options.customCellStyle) && void 0 !== _s ? _s : [], null !== (_t = options.customCellStyleArrangement) && void 0 !== _t ? _t : [])),
216
+ CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_y = options.customCellStyle) && void 0 !== _y ? _y : [], null !== (_z = options.customCellStyleArrangement) && void 0 !== _z ? _z : [])),
209
217
  this._adjustCanvasSizeByOption();
210
218
  }
211
219
  _adjustCanvasSizeByOption() {
@@ -947,10 +955,10 @@ export class BaseTable extends EventTarget {
947
955
  return super.fireListeners(type, event);
948
956
  }
949
957
  updateOption(options) {
950
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
958
+ 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;
951
959
  null === (_a = this.editorManager) || void 0 === _a || _a.cancelEdit(), this.options = options,
952
960
  this._hasAutoImageColumn = void 0;
953
- 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, 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;
961
+ 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;
954
962
  pixelRatio && pixelRatio !== this.internalProps.pixelRatio && (this.internalProps.pixelRatio = pixelRatio),
955
963
  padding && ("number" == typeof padding ? (this.padding.top = padding, this.padding.left = padding,
956
964
  this.padding.bottom = padding, this.padding.right = padding) : (padding.top && (this.padding.top = padding.top),
@@ -979,27 +987,33 @@ export class BaseTable extends EventTarget {
979
987
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
980
988
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
981
989
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
982
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = enableCheckboxCascade,
983
- internalProps.columnResizeMode = null !== (_e = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _e ? _e : columnResizeMode,
984
- internalProps.rowResizeMode = null !== (_f = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _f ? _f : rowResizeMode,
985
- internalProps.dragHeaderMode = null !== (_h = null !== (_g = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _g ? _g : dragHeaderMode) && void 0 !== _h ? _h : "none",
990
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = null === (_e = null != enableCheckboxCascade ? enableCheckboxCascade : null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox) || void 0 === _e || _e,
991
+ internalProps.enableHeaderCheckboxCascade = enableCheckboxCascade || null == enableHeaderCheckboxCascade || enableHeaderCheckboxCascade,
992
+ internalProps.columnResizeMode = null !== (_f = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _f ? _f : columnResizeMode,
993
+ internalProps.rowResizeMode = null !== (_g = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _g ? _g : rowResizeMode,
994
+ internalProps.dragHeaderMode = null !== (_j = null !== (_h = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _h ? _h : dragHeaderMode) && void 0 !== _j ? _j : "none",
986
995
  internalProps.renderChartAsync = renderChartAsync, setBatchRenderChartCount(renderChartAsyncBatchCount),
987
996
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
988
- internalProps.cellTextOverflows = {}, internalProps._rowHeightsMap = new NumberRangeMap(this),
989
- internalProps._rowRangeHeightsMap = new Map, internalProps._colRangeWidthsMap = new Map,
990
- internalProps._widthResizedColMap = new Set, internalProps._heightResizedRowMap = new Set,
991
- this.colWidthsMap = new NumberMap, this.colContentWidthsMap = new NumberMap, this.colWidthsLimit = {},
992
- internalProps.stick.changedCells.clear(), internalProps.theme = themes.of(null !== (_j = options.theme) && void 0 !== _j ? _j : themes.DEFAULT),
997
+ internalProps.cellTextOverflows = {}, internalProps.groupBy = null !== (_k = null == groupConfig ? void 0 : groupConfig.groupBy) && void 0 !== _k ? _k : groupBy,
998
+ internalProps.groupTitleCheckbox = null == groupConfig ? void 0 : groupConfig.titleCheckbox,
999
+ internalProps.groupTitleFieldFormat = null !== (_l = null == groupConfig ? void 0 : groupConfig.titleFieldFormat) && void 0 !== _l ? _l : groupTitleFieldFormat,
1000
+ internalProps.groupTitleCustomLayout = null !== (_m = null == groupConfig ? void 0 : groupConfig.titleCustomLayout) && void 0 !== _m ? _m : groupTitleCustomLayout,
1001
+ internalProps.enableTreeStickCell = null !== (_o = null == groupConfig ? void 0 : groupConfig.enableTreeStickCell) && void 0 !== _o ? _o : enableTreeStickCell,
1002
+ internalProps._rowHeightsMap = new NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
1003
+ internalProps._colRangeWidthsMap = new Map, internalProps._widthResizedColMap = new Set,
1004
+ internalProps._heightResizedRowMap = new Set, this.colWidthsMap = new NumberMap,
1005
+ this.colContentWidthsMap = new NumberMap, this.colWidthsLimit = {}, internalProps.stick.changedCells.clear(),
1006
+ internalProps.theme = themes.of(null !== (_p = options.theme) && void 0 !== _p ? _p : themes.DEFAULT),
993
1007
  internalProps.theme.isPivot = this.isPivotTable(), setIconColor(internalProps.theme.functionalIconsStyle),
994
1008
  this.scenegraph.updateStageBackground(), internalProps.autoWrapText = options.autoWrapText,
995
- internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_k = options.allowFrozenColCount) && void 0 !== _k ? _k : 0,
996
- internalProps.limitMaxAutoWidth = null !== (_l = options.limitMaxAutoWidth) && void 0 !== _l ? _l : 450,
1009
+ internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_q = options.allowFrozenColCount) && void 0 !== _q ? _q : 0,
1010
+ internalProps.limitMaxAutoWidth = null !== (_r = options.limitMaxAutoWidth) && void 0 !== _r ? _r : 450,
997
1011
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
998
1012
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
999
- null === (_m = internalProps.legends) || void 0 === _m || _m.forEach((legend => {
1013
+ null === (_s = internalProps.legends) || void 0 === _s || _s.forEach((legend => {
1000
1014
  null == legend || legend.release();
1001
- })), null === (_o = internalProps.title) || void 0 === _o || _o.release(), internalProps.title = null,
1002
- null === (_p = internalProps.emptyTip) || void 0 === _p || _p.release(), internalProps.emptyTip = null,
1015
+ })), null === (_t = internalProps.title) || void 0 === _t || _t.release(), internalProps.title = null,
1016
+ null === (_u = internalProps.emptyTip) || void 0 === _u || _u.release(), internalProps.emptyTip = null,
1003
1017
  internalProps.layoutMap.release(), clearChartRenderQueue(), this.scenegraph.clearCells(),
1004
1018
  this.scenegraph.updateComponent(), this.stateManager.updateOptionSetState(), this._updateSize(),
1005
1019
  this.eventManager.updateEventBinder(), options.legends) {
@@ -1028,15 +1042,15 @@ export class BaseTable extends EventTarget {
1028
1042
  }
1029
1043
  if (internalProps.menu = Object.assign({
1030
1044
  renderMode: "html"
1031
- }, options.menu), Array.isArray(null === (_q = options.menu) || void 0 === _q ? void 0 : _q.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_r = options.menu) || void 0 === _r ? void 0 : _r.dropDownMenuHighlight),
1032
- (Array.isArray(null === (_s = options.menu) || void 0 === _s ? void 0 : _s.defaultHeaderMenuItems) || "function" == typeof (null === (_t = options.menu) || void 0 === _t ? void 0 : _t.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
1045
+ }, options.menu), Array.isArray(null === (_v = options.menu) || void 0 === _v ? void 0 : _v.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_w = options.menu) || void 0 === _w ? void 0 : _w.dropDownMenuHighlight),
1046
+ (Array.isArray(null === (_x = options.menu) || void 0 === _x ? void 0 : _x.defaultHeaderMenuItems) || "function" == typeof (null === (_y = options.menu) || void 0 === _y ? void 0 : _y.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
1033
1047
  "html" === internalProps.menu.renderMode && !internalProps.menuHandler) {
1034
1048
  const MenuHandler = Factory.getComponent("menuHandler");
1035
1049
  internalProps.menuHandler = new MenuHandler(this);
1036
1050
  }
1037
1051
  this.clearCellStyleCache(), this.clearColWidthCache(), this.clearRowHeightCache(),
1038
1052
  internalProps.customMergeCell = getCustomMergeCellFunc(options.customMergeCell),
1039
- null === (_u = this.customCellStylePlugin) || void 0 === _u || _u.updateCustomCell(null !== (_v = options.customCellStyle) && void 0 !== _v ? _v : [], null !== (_w = options.customCellStyleArrangement) && void 0 !== _w ? _w : []),
1053
+ 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 : []),
1040
1054
  this._adjustCanvasSizeByOption();
1041
1055
  }
1042
1056
  renderWithRecreateCells() {
@@ -1479,7 +1493,7 @@ export class BaseTable extends EventTarget {
1479
1493
  var _a, _b, _c;
1480
1494
  let icons;
1481
1495
  if (this.isHeader(col, row)) icons = this.internalProps.headerHelper.getIcons(col, row); else if (this.internalProps.layoutMap.isSeriesNumber(col, row)) {
1482
- if (!this.options.groupBy || !(null === (_a = this.getCellRawRecord(col, row)) || void 0 === _a ? void 0 : _a.vtableMerge)) {
1496
+ if (!this.internalProps.groupBy || !(null === (_a = this.getCellRawRecord(col, row)) || void 0 === _a ? void 0 : _a.vtableMerge)) {
1483
1497
  (null === (_c = null === (_b = this.internalProps.layoutMap.getSeriesNumberBody(col, row)) || void 0 === _b ? void 0 : _b.define) || void 0 === _c ? void 0 : _c.dragOrder) && (icons = this.internalProps.rowSeriesNumberHelper.getIcons(col, row));
1484
1498
  }
1485
1499
  const cellValue = this.getCellValue(col, row), dataValue = this.getCellOriginValue(col, row), ctx = this.internalProps.context, cellIcon = this.internalProps.bodyHelper.getIcons(col, row, cellValue, dataValue, ctx);