k-vtable 1.0.10 → 1.0.12

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 (137) hide show
  1. package/cjs/ListTable.js +14 -10
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/core/BaseTable.js +45 -33
  4. package/cjs/core/BaseTable.js.map +1 -1
  5. package/cjs/core/record-helper.js +121 -17
  6. package/cjs/core/record-helper.js.map +1 -1
  7. package/cjs/core/tableHelper.js +1 -1
  8. package/cjs/core/tableHelper.js.map +1 -1
  9. package/cjs/data/CachedDataSource.d.ts +1 -1
  10. package/cjs/data/CachedDataSource.js +6 -6
  11. package/cjs/data/CachedDataSource.js.map +1 -1
  12. package/cjs/dataset/dataset-pivot-table.js +2 -1
  13. package/cjs/dataset/flatDataToObject.js +1 -2
  14. package/cjs/event/event.js +2 -2
  15. package/cjs/event/event.js.map +1 -1
  16. package/cjs/event/listener/table-group.js +6 -4
  17. package/cjs/event/listener/table-group.js.map +1 -1
  18. package/cjs/event/self-event-listener/base-table/dropdown-menu.d.ts +1 -1
  19. package/cjs/event/self-event-listener/base-table/dropdown-menu.js +5 -3
  20. package/cjs/event/self-event-listener/base-table/dropdown-menu.js.map +1 -1
  21. package/cjs/event/self-event-listener/list-table/checkbox.js +5 -5
  22. package/cjs/event/self-event-listener/list-table/checkbox.js.map +1 -1
  23. package/cjs/index.d.ts +1 -1
  24. package/cjs/index.js +1 -1
  25. package/cjs/index.js.map +1 -1
  26. package/cjs/layout/cell-range/simple-cell-range.js +1 -2
  27. package/cjs/layout/cell-range/simple-cell-range.js.map +1 -1
  28. package/cjs/layout/index.js +2 -1
  29. package/cjs/layout/layout-helper.js +1 -1
  30. package/cjs/layout/layout-helper.js.map +1 -1
  31. package/cjs/layout/pivot-header-layout.js +0 -1
  32. package/cjs/layout/simple-header-layout.js +3 -3
  33. package/cjs/layout/simple-header-layout.js.map +1 -1
  34. package/cjs/scenegraph/graphic/chart.js +7 -4
  35. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  36. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +2 -4
  37. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  38. package/cjs/scenegraph/group-creater/cell-helper.js +3 -3
  39. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  40. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -5
  41. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  42. package/cjs/scenegraph/group-creater/column-helper.js +3 -3
  43. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  44. package/cjs/scenegraph/group-creater/init-scenegraph.js +1 -1
  45. package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  46. package/cjs/scenegraph/layout/update-height.js +2 -2
  47. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  48. package/cjs/scenegraph/layout/update-width.js +1 -1
  49. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  50. package/cjs/scenegraph/scenegraph.js +1 -1
  51. package/cjs/scenegraph/scenegraph.js.map +1 -1
  52. package/cjs/scenegraph/select/update-select-border.js +6 -5
  53. package/cjs/scenegraph/select/update-select-border.js.map +1 -1
  54. package/cjs/scenegraph/utils/get-hierarchy-offset.js +1 -1
  55. package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  56. package/cjs/state/checkbox/checkbox.js +7 -6
  57. package/cjs/state/checkbox/checkbox.js.map +1 -1
  58. package/cjs/tools/diff-cell.d.ts +1 -1
  59. package/cjs/tools/diff-cell.js +4 -1
  60. package/cjs/tools/diff-cell.js.map +1 -1
  61. package/cjs/ts-types/base-table.d.ts +8 -1
  62. package/cjs/ts-types/base-table.js.map +1 -1
  63. package/cjs/ts-types/list-table/define/checkbox-define.d.ts +0 -1
  64. package/cjs/ts-types/list-table/define/checkbox-define.js.map +1 -1
  65. package/cjs/ts-types/table-engine.d.ts +9 -1
  66. package/cjs/ts-types/table-engine.js.map +1 -1
  67. package/cjs/vrender.js.map +1 -1
  68. package/dist/vtable.js +311 -84
  69. package/dist/vtable.min.js +2 -2
  70. package/es/ListTable.js +13 -9
  71. package/es/ListTable.js.map +1 -1
  72. package/es/core/BaseTable.js +45 -33
  73. package/es/core/BaseTable.js.map +1 -1
  74. package/es/core/record-helper.js +120 -14
  75. package/es/core/record-helper.js.map +1 -1
  76. package/es/core/tableHelper.js +1 -1
  77. package/es/core/tableHelper.js.map +1 -1
  78. package/es/data/CachedDataSource.d.ts +1 -1
  79. package/es/data/CachedDataSource.js +6 -6
  80. package/es/data/CachedDataSource.js.map +1 -1
  81. package/es/dataset/dataset-pivot-table.js +2 -1
  82. package/es/dataset/flatDataToObject.js +1 -2
  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 +1 -2
  96. package/es/layout/cell-range/simple-cell-range.js.map +1 -1
  97. package/es/layout/index.js +2 -1
  98. package/es/layout/layout-helper.js +1 -1
  99. package/es/layout/layout-helper.js.map +1 -1
  100. package/es/layout/pivot-header-layout.js +1 -2
  101. package/es/layout/simple-header-layout.js +3 -3
  102. package/es/layout/simple-header-layout.js.map +1 -1
  103. package/es/scenegraph/graphic/chart.js +7 -4
  104. package/es/scenegraph/graphic/chart.js.map +1 -1
  105. package/es/scenegraph/graphic/contributions/group-contribution-render.js +2 -4
  106. package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  107. package/es/scenegraph/group-creater/cell-helper.js +2 -2
  108. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  109. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -5
  110. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  111. package/es/scenegraph/group-creater/column-helper.js +2 -2
  112. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  113. package/es/scenegraph/group-creater/init-scenegraph.js +1 -1
  114. package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  115. package/es/scenegraph/layout/update-height.js +2 -2
  116. package/es/scenegraph/layout/update-height.js.map +1 -1
  117. package/es/scenegraph/layout/update-width.js +1 -1
  118. package/es/scenegraph/layout/update-width.js.map +1 -1
  119. package/es/scenegraph/scenegraph.js +1 -1
  120. package/es/scenegraph/scenegraph.js.map +1 -1
  121. package/es/scenegraph/select/update-select-border.js +6 -5
  122. package/es/scenegraph/select/update-select-border.js.map +1 -1
  123. package/es/scenegraph/utils/get-hierarchy-offset.js +1 -1
  124. package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  125. package/es/state/checkbox/checkbox.js +7 -6
  126. package/es/state/checkbox/checkbox.js.map +1 -1
  127. package/es/tools/diff-cell.d.ts +1 -1
  128. package/es/tools/diff-cell.js +4 -1
  129. package/es/tools/diff-cell.js.map +1 -1
  130. package/es/ts-types/base-table.d.ts +8 -1
  131. package/es/ts-types/base-table.js.map +1 -1
  132. package/es/ts-types/list-table/define/checkbox-define.d.ts +0 -1
  133. package/es/ts-types/list-table/define/checkbox-define.js.map +1 -1
  134. package/es/ts-types/table-engine.d.ts +9 -1
  135. package/es/ts-types/table-engine.js.map +1 -1
  136. package/es/vrender.js.map +1 -1
  137. package/package.json +6 -7
@@ -42,8 +42,8 @@ class BaseTable extends EventTarget_1.EventTarget {
42
42
  return TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE;
43
43
  }
44
44
  constructor(container, options = {}) {
45
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
46
- if (super(), this.showFrozenIcon = !0, this.version = "1.0.10", this.id = `VTable${Date.now()}`,
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.12", 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, 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;
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;
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 ? {
@@ -95,12 +95,18 @@ class BaseTable extends EventTarget_1.EventTarget {
95
95
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
96
96
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
97
97
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
98
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = enableCheckboxCascade,
99
- internalProps.columnResizeMode = null !== (_f = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _f ? _f : columnResizeMode,
100
- internalProps.rowResizeMode = null !== (_g = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _g ? _g : rowResizeMode,
101
- internalProps.dragHeaderMode = null !== (_j = null !== (_h = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _h ? _h : dragHeaderMode) && void 0 !== _j ? _j : "none",
98
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = null === (_f = null != enableCheckboxCascade ? enableCheckboxCascade : null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox) || void 0 === _f || _f,
99
+ internalProps.enableHeaderCheckboxCascade = enableCheckboxCascade || null == enableHeaderCheckboxCascade || enableHeaderCheckboxCascade,
100
+ internalProps.columnResizeMode = null !== (_g = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _g ? _g : columnResizeMode,
101
+ internalProps.rowResizeMode = null !== (_h = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _h ? _h : rowResizeMode,
102
+ internalProps.dragHeaderMode = null !== (_k = null !== (_j = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _j ? _j : dragHeaderMode) && void 0 !== _k ? _k : "none",
102
103
  internalProps.renderChartAsync = renderChartAsync, (0, chart_render_helper_1.setBatchRenderChartCount)(renderChartAsyncBatchCount),
103
104
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
105
+ internalProps.groupBy = null !== (_l = null == groupConfig ? void 0 : groupConfig.groupBy) && void 0 !== _l ? _l : groupBy,
106
+ internalProps.groupTitleCheckbox = null !== (_m = null == groupConfig ? void 0 : groupConfig.titleCheckbox) && void 0 !== _m ? _m : !!(null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox),
107
+ internalProps.groupTitleFieldFormat = null !== (_o = null == groupConfig ? void 0 : groupConfig.titleFieldFormat) && void 0 !== _o ? _o : groupTitleFieldFormat,
108
+ internalProps.groupTitleCustomLayout = null !== (_p = null == groupConfig ? void 0 : groupConfig.titleCustomLayout) && void 0 !== _p ? _p : groupTitleCustomLayout,
109
+ internalProps.enableTreeStickCell = null !== (_q = null == groupConfig ? void 0 : groupConfig.enableTreeStickCell) && void 0 !== _q ? _q : enableTreeStickCell,
104
110
  internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
105
111
  internalProps._colRangeWidthsMap = new Map, internalProps._widthResizedColMap = new Set,
106
112
  internalProps._heightResizedRowMap = new Set, this.colWidthsMap = new NumberMap_1.NumberMap,
@@ -112,14 +118,14 @@ class BaseTable extends EventTarget_1.EventTarget {
112
118
  var _a;
113
119
  return "node" === env_1.Env.mode ? that.canvasWidth / (null != pixelRatio ? pixelRatio : 1) : this._.canvas.width / (null !== (_a = this._.context.pixelRatio) && void 0 !== _a ? _a : window.devicePixelRatio);
114
120
  }
115
- }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes_1.default.of(null !== (_k = options.theme) && void 0 !== _k ? _k : themes_1.default.DEFAULT),
121
+ }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes_1.default.of(null !== (_r = options.theme) && void 0 !== _r ? _r : themes_1.default.DEFAULT),
116
122
  internalProps.theme.isPivot = this.isPivotTable(), (0, icons_1.setIconColor)(internalProps.theme.functionalIconsStyle),
117
123
  container ? (clearDOM && (container.innerHTML = ""), container.appendChild(internalProps.element),
118
124
  this._updateSize()) : this._updateSize(), internalProps.bodyHelper = new body_helper_1.BodyHelper(this),
119
125
  internalProps.headerHelper = new header_helper_1.HeaderHelper(this), internalProps.rowSeriesNumberHelper = new row_series_number_helper_1.RowSeriesNumberHelper(this),
120
126
  internalProps.autoWrapText = options.autoWrapText, internalProps.enableLineBreak = options.enableLineBreak,
121
- internalProps.allowFrozenColCount = null !== (_l = options.allowFrozenColCount) && void 0 !== _l ? _l : 0,
122
- internalProps.limitMaxAutoWidth = null !== (_m = options.limitMaxAutoWidth) && void 0 !== _m ? _m : 450,
127
+ internalProps.allowFrozenColCount = null !== (_s = options.allowFrozenColCount) && void 0 !== _s ? _s : 0,
128
+ internalProps.limitMaxAutoWidth = null !== (_t = options.limitMaxAutoWidth) && void 0 !== _t ? _t : 450,
123
129
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
124
130
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
125
131
  this.scenegraph = new scenegraph_1.Scenegraph(this), this.stateManager = new state_1.StateManager(this),
@@ -150,8 +156,8 @@ class BaseTable extends EventTarget_1.EventTarget {
150
156
  }
151
157
  if (internalProps.menu = Object.assign({
152
158
  renderMode: "html"
153
- }, 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),
154
- (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),
159
+ }, 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),
160
+ (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),
155
161
  "html" === internalProps.menu.renderMode) {
156
162
  const MenuHandler = factory_1.Factory.getComponent("menuHandler");
157
163
  internalProps.menuHandler = new MenuHandler(this);
@@ -161,7 +167,7 @@ class BaseTable extends EventTarget_1.EventTarget {
161
167
  changedCells: new Map
162
168
  }, internalProps.customMergeCell = (0, get_custom_merge_cell_func_1.getCustomMergeCellFunc)(options.customMergeCell);
163
169
  const CustomCellStylePlugin = factory_1.Factory.getComponent("customCellStylePlugin");
164
- CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_s = options.customCellStyle) && void 0 !== _s ? _s : [], null !== (_t = options.customCellStyleArrangement) && void 0 !== _t ? _t : [])),
170
+ CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_y = options.customCellStyle) && void 0 !== _y ? _y : [], null !== (_z = options.customCellStyleArrangement) && void 0 !== _z ? _z : [])),
165
171
  this._adjustCanvasSizeByOption();
166
172
  }
167
173
  _adjustCanvasSizeByOption() {
@@ -905,10 +911,10 @@ class BaseTable extends EventTarget_1.EventTarget {
905
911
  return super.fireListeners(type, event);
906
912
  }
907
913
  updateOption(options) {
908
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
914
+ 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;
909
915
  null === (_a = this.editorManager) || void 0 === _a || _a.cancelEdit(), this.options = options,
910
916
  this._hasAutoImageColumn = void 0;
911
- 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;
917
+ 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;
912
918
  pixelRatio && pixelRatio !== this.internalProps.pixelRatio && (this.internalProps.pixelRatio = pixelRatio),
913
919
  padding && ("number" == typeof padding ? (this.padding.top = padding, this.padding.left = padding,
914
920
  this.padding.bottom = padding, this.padding.right = padding) : (padding.top && (this.padding.top = padding.top),
@@ -937,27 +943,33 @@ class BaseTable extends EventTarget_1.EventTarget {
937
943
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
938
944
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
939
945
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
940
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = enableCheckboxCascade,
941
- internalProps.columnResizeMode = null !== (_e = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _e ? _e : columnResizeMode,
942
- internalProps.rowResizeMode = null !== (_f = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _f ? _f : rowResizeMode,
943
- internalProps.dragHeaderMode = null !== (_h = null !== (_g = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _g ? _g : dragHeaderMode) && void 0 !== _h ? _h : "none",
946
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.enableCheckboxCascade = null === (_e = null != enableCheckboxCascade ? enableCheckboxCascade : null == rowSeriesNumber ? void 0 : rowSeriesNumber.enableTreeCheckbox) || void 0 === _e || _e,
947
+ internalProps.enableHeaderCheckboxCascade = enableCheckboxCascade || null == enableHeaderCheckboxCascade || enableHeaderCheckboxCascade,
948
+ internalProps.columnResizeMode = null !== (_f = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _f ? _f : columnResizeMode,
949
+ internalProps.rowResizeMode = null !== (_g = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _g ? _g : rowResizeMode,
950
+ internalProps.dragHeaderMode = null !== (_j = null !== (_h = null == dragOrder ? void 0 : dragOrder.dragHeaderMode) && void 0 !== _h ? _h : dragHeaderMode) && void 0 !== _j ? _j : "none",
944
951
  internalProps.renderChartAsync = renderChartAsync, (0, chart_render_helper_1.setBatchRenderChartCount)(renderChartAsyncBatchCount),
945
952
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
946
- internalProps.cellTextOverflows = {}, internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this),
947
- internalProps._rowRangeHeightsMap = new Map, internalProps._colRangeWidthsMap = new Map,
948
- internalProps._widthResizedColMap = new Set, internalProps._heightResizedRowMap = new Set,
949
- this.colWidthsMap = new NumberMap_1.NumberMap, this.colContentWidthsMap = new NumberMap_1.NumberMap,
950
- this.colWidthsLimit = {}, internalProps.stick.changedCells.clear(), internalProps.theme = themes_1.default.of(null !== (_j = options.theme) && void 0 !== _j ? _j : themes_1.default.DEFAULT),
953
+ internalProps.cellTextOverflows = {}, internalProps.groupBy = null !== (_k = null == groupConfig ? void 0 : groupConfig.groupBy) && void 0 !== _k ? _k : groupBy,
954
+ internalProps.groupTitleCheckbox = null == groupConfig ? void 0 : groupConfig.titleCheckbox,
955
+ internalProps.groupTitleFieldFormat = null !== (_l = null == groupConfig ? void 0 : groupConfig.titleFieldFormat) && void 0 !== _l ? _l : groupTitleFieldFormat,
956
+ internalProps.groupTitleCustomLayout = null !== (_m = null == groupConfig ? void 0 : groupConfig.titleCustomLayout) && void 0 !== _m ? _m : groupTitleCustomLayout,
957
+ internalProps.enableTreeStickCell = null !== (_o = null == groupConfig ? void 0 : groupConfig.enableTreeStickCell) && void 0 !== _o ? _o : enableTreeStickCell,
958
+ internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
959
+ internalProps._colRangeWidthsMap = new Map, internalProps._widthResizedColMap = new Set,
960
+ internalProps._heightResizedRowMap = new Set, this.colWidthsMap = new NumberMap_1.NumberMap,
961
+ this.colContentWidthsMap = new NumberMap_1.NumberMap, this.colWidthsLimit = {},
962
+ internalProps.stick.changedCells.clear(), internalProps.theme = themes_1.default.of(null !== (_p = options.theme) && void 0 !== _p ? _p : themes_1.default.DEFAULT),
951
963
  internalProps.theme.isPivot = this.isPivotTable(), (0, icons_1.setIconColor)(internalProps.theme.functionalIconsStyle),
952
964
  this.scenegraph.updateStageBackground(), internalProps.autoWrapText = options.autoWrapText,
953
- internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_k = options.allowFrozenColCount) && void 0 !== _k ? _k : 0,
954
- internalProps.limitMaxAutoWidth = null !== (_l = options.limitMaxAutoWidth) && void 0 !== _l ? _l : 450,
965
+ internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_q = options.allowFrozenColCount) && void 0 !== _q ? _q : 0,
966
+ internalProps.limitMaxAutoWidth = null !== (_r = options.limitMaxAutoWidth) && void 0 !== _r ? _r : 450,
955
967
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
956
968
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
957
- null === (_m = internalProps.legends) || void 0 === _m || _m.forEach((legend => {
969
+ null === (_s = internalProps.legends) || void 0 === _s || _s.forEach((legend => {
958
970
  null == legend || legend.release();
959
- })), null === (_o = internalProps.title) || void 0 === _o || _o.release(), internalProps.title = null,
960
- null === (_p = internalProps.emptyTip) || void 0 === _p || _p.release(), internalProps.emptyTip = null,
971
+ })), null === (_t = internalProps.title) || void 0 === _t || _t.release(), internalProps.title = null,
972
+ null === (_u = internalProps.emptyTip) || void 0 === _u || _u.release(), internalProps.emptyTip = null,
961
973
  internalProps.layoutMap.release(), (0, chart_render_helper_1.clearChartRenderQueue)(),
962
974
  this.scenegraph.clearCells(), this.scenegraph.updateComponent(), this.stateManager.updateOptionSetState(),
963
975
  this._updateSize(), this.eventManager.updateEventBinder(), options.legends) {
@@ -986,15 +998,15 @@ class BaseTable extends EventTarget_1.EventTarget {
986
998
  }
987
999
  if (internalProps.menu = Object.assign({
988
1000
  renderMode: "html"
989
- }, 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),
990
- (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),
1001
+ }, 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),
1002
+ (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),
991
1003
  "html" === internalProps.menu.renderMode && !internalProps.menuHandler) {
992
1004
  const MenuHandler = factory_1.Factory.getComponent("menuHandler");
993
1005
  internalProps.menuHandler = new MenuHandler(this);
994
1006
  }
995
1007
  this.clearCellStyleCache(), this.clearColWidthCache(), this.clearRowHeightCache(),
996
1008
  internalProps.customMergeCell = (0, get_custom_merge_cell_func_1.getCustomMergeCellFunc)(options.customMergeCell),
997
- 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 : []),
1009
+ 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 : []),
998
1010
  this._adjustCanvasSizeByOption();
999
1011
  }
1000
1012
  renderWithRecreateCells() {
@@ -1440,7 +1452,7 @@ class BaseTable extends EventTarget_1.EventTarget {
1440
1452
  var _a, _b, _c;
1441
1453
  let icons;
1442
1454
  if (this.isHeader(col, row)) icons = this.internalProps.headerHelper.getIcons(col, row); else if (this.internalProps.layoutMap.isSeriesNumber(col, row)) {
1443
- if (!this.options.groupBy || !(null === (_a = this.getCellRawRecord(col, row)) || void 0 === _a ? void 0 : _a.vtableMerge)) {
1455
+ if (!this.internalProps.groupBy || !(null === (_a = this.getCellRawRecord(col, row)) || void 0 === _a ? void 0 : _a.vtableMerge)) {
1444
1456
  (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));
1445
1457
  }
1446
1458
  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);