@visactor/vtable 1.22.2 → 1.22.3

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 (147) hide show
  1. package/cjs/ListTable.d.ts +3 -1
  2. package/cjs/ListTable.js +15 -8
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/PivotChart.js +10 -8
  5. package/cjs/PivotChart.js.map +1 -1
  6. package/cjs/PivotTable.d.ts +1 -0
  7. package/cjs/PivotTable.js +3 -0
  8. package/cjs/PivotTable.js.map +1 -1
  9. package/cjs/body-helper/style/ButtonStyle.d.ts +10 -1
  10. package/cjs/body-helper/style/ButtonStyle.js.map +1 -1
  11. package/cjs/body-helper/style/CheckboxStyle.d.ts +14 -1
  12. package/cjs/body-helper/style/CheckboxStyle.js.map +1 -1
  13. package/cjs/body-helper/style/RadioStyle.d.ts +8 -1
  14. package/cjs/body-helper/style/RadioStyle.js.map +1 -1
  15. package/cjs/body-helper/style/SwitchStyle.d.ts +13 -1
  16. package/cjs/body-helper/style/SwitchStyle.js.map +1 -1
  17. package/cjs/core/BaseTable.js +2 -2
  18. package/cjs/core/BaseTable.js.map +1 -1
  19. package/cjs/core/record-helper.js.map +1 -1
  20. package/cjs/data/DataSource.js +1 -1
  21. package/cjs/data/DataSource.js.map +1 -1
  22. package/cjs/dataset/dataset.js +5 -1
  23. package/cjs/dataset/dataset.js.map +1 -1
  24. package/cjs/event/listener/touch.js +2 -1
  25. package/cjs/event/listener/touch.js.map +1 -1
  26. package/cjs/event/scroll.d.ts +2 -0
  27. package/cjs/event/scroll.js +12 -3
  28. package/cjs/event/scroll.js.map +1 -1
  29. package/cjs/index.d.ts +2 -1
  30. package/cjs/index.js +18 -4
  31. package/cjs/index.js.map +1 -1
  32. package/cjs/layout/chart-helper/get-axis-config.d.ts +1 -0
  33. package/cjs/layout/chart-helper/get-axis-config.js +11 -8
  34. package/cjs/layout/chart-helper/get-axis-config.js.map +1 -1
  35. package/cjs/layout/chart-helper/get-chart-spec.js +7 -7
  36. package/cjs/layout/chart-helper/get-chart-spec.js.map +1 -1
  37. package/cjs/layout/index.js +2 -1
  38. package/cjs/layout/pivot-header-layout.d.ts +2 -1
  39. package/cjs/layout/pivot-header-layout.js +38 -4
  40. package/cjs/layout/pivot-header-layout.js.map +1 -1
  41. package/cjs/layout/pivot-layout.js +2 -0
  42. package/cjs/layout/row-height-map.js +1 -1
  43. package/cjs/layout/simple-header-layout.js +4 -4
  44. package/cjs/layout/simple-header-layout.js.map +1 -1
  45. package/cjs/layout/tree-helper.js +1 -1
  46. package/cjs/plugins/custom-cell-style.js +1 -2
  47. package/cjs/plugins/index.js +1 -1
  48. package/cjs/plugins/interface.js +1 -1
  49. package/cjs/plugins/invert-highlight.js +1 -1
  50. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  51. package/cjs/plugins/plugin-manager.js +1 -1
  52. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +1 -1
  53. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  54. package/cjs/scenegraph/group-creater/cell-helper.js +1 -1
  55. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  56. package/cjs/scenegraph/layout/compute-row-height.js +7 -3
  57. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  58. package/cjs/scenegraph/scenegraph.js +1 -1
  59. package/cjs/state/cell-move/adjust-header.d.ts +13 -0
  60. package/cjs/state/cell-move/adjust-header.js +50 -3
  61. package/cjs/state/cell-move/adjust-header.js.map +1 -1
  62. package/cjs/state/cell-move/index.js +2 -1
  63. package/cjs/state/cell-move/index.js.map +1 -1
  64. package/cjs/ts-types/base-table.d.ts +7 -2
  65. package/cjs/ts-types/base-table.js.map +1 -1
  66. package/cjs/ts-types/list-table/define/basic-define.d.ts +1 -1
  67. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  68. package/cjs/ts-types/new-data-set.d.ts +1 -0
  69. package/cjs/ts-types/new-data-set.js.map +1 -1
  70. package/cjs/ts-types/table-engine.d.ts +9 -2
  71. package/cjs/ts-types/table-engine.js.map +1 -1
  72. package/cjs/vrender.js.map +1 -1
  73. package/dist/vtable.js +297 -48
  74. package/dist/vtable.min.js +2 -2
  75. package/es/ListTable.d.ts +3 -1
  76. package/es/ListTable.js +17 -10
  77. package/es/ListTable.js.map +1 -1
  78. package/es/PivotChart.js +10 -8
  79. package/es/PivotChart.js.map +1 -1
  80. package/es/PivotTable.d.ts +1 -0
  81. package/es/PivotTable.js +3 -0
  82. package/es/PivotTable.js.map +1 -1
  83. package/es/body-helper/style/ButtonStyle.d.ts +10 -1
  84. package/es/body-helper/style/ButtonStyle.js.map +1 -1
  85. package/es/body-helper/style/CheckboxStyle.d.ts +14 -1
  86. package/es/body-helper/style/CheckboxStyle.js.map +1 -1
  87. package/es/body-helper/style/RadioStyle.d.ts +8 -1
  88. package/es/body-helper/style/RadioStyle.js.map +1 -1
  89. package/es/body-helper/style/SwitchStyle.d.ts +13 -1
  90. package/es/body-helper/style/SwitchStyle.js.map +1 -1
  91. package/es/core/BaseTable.js +2 -2
  92. package/es/core/BaseTable.js.map +1 -1
  93. package/es/core/record-helper.js.map +1 -1
  94. package/es/data/DataSource.js +1 -1
  95. package/es/data/DataSource.js.map +1 -1
  96. package/es/dataset/dataset.js +5 -1
  97. package/es/dataset/dataset.js.map +1 -1
  98. package/es/event/listener/touch.js +2 -2
  99. package/es/event/listener/touch.js.map +1 -1
  100. package/es/event/scroll.d.ts +2 -0
  101. package/es/event/scroll.js +9 -1
  102. package/es/event/scroll.js.map +1 -1
  103. package/es/index.d.ts +2 -1
  104. package/es/index.js +3 -1
  105. package/es/index.js.map +1 -1
  106. package/es/layout/chart-helper/get-axis-config.d.ts +1 -0
  107. package/es/layout/chart-helper/get-axis-config.js +11 -8
  108. package/es/layout/chart-helper/get-axis-config.js.map +1 -1
  109. package/es/layout/chart-helper/get-chart-spec.js +6 -7
  110. package/es/layout/chart-helper/get-chart-spec.js.map +1 -1
  111. package/es/layout/index.js +2 -1
  112. package/es/layout/pivot-header-layout.d.ts +2 -1
  113. package/es/layout/pivot-header-layout.js +38 -4
  114. package/es/layout/pivot-header-layout.js.map +1 -1
  115. package/es/layout/pivot-layout.js +2 -0
  116. package/es/layout/row-height-map.js +1 -1
  117. package/es/layout/simple-header-layout.js +4 -4
  118. package/es/layout/simple-header-layout.js.map +1 -1
  119. package/es/layout/tree-helper.js +1 -1
  120. package/es/plugins/custom-cell-style.js +1 -2
  121. package/es/plugins/index.js +1 -1
  122. package/es/plugins/interface.js +1 -1
  123. package/es/plugins/invert-highlight.js +1 -1
  124. package/es/plugins/list-tree-stick-cell.js +1 -1
  125. package/es/plugins/plugin-manager.js +1 -1
  126. package/es/scenegraph/graphic/contributions/rect-contribution-render.js +1 -1
  127. package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  128. package/es/scenegraph/group-creater/cell-helper.js +2 -2
  129. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  130. package/es/scenegraph/layout/compute-row-height.js +7 -3
  131. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  132. package/es/scenegraph/scenegraph.js +1 -1
  133. package/es/state/cell-move/adjust-header.d.ts +13 -0
  134. package/es/state/cell-move/adjust-header.js +46 -2
  135. package/es/state/cell-move/adjust-header.js.map +1 -1
  136. package/es/state/cell-move/index.js +2 -1
  137. package/es/state/cell-move/index.js.map +1 -1
  138. package/es/ts-types/base-table.d.ts +7 -2
  139. package/es/ts-types/base-table.js.map +1 -1
  140. package/es/ts-types/list-table/define/basic-define.d.ts +1 -1
  141. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  142. package/es/ts-types/new-data-set.d.ts +1 -0
  143. package/es/ts-types/new-data-set.js.map +1 -1
  144. package/es/ts-types/table-engine.d.ts +9 -2
  145. package/es/ts-types/table-engine.js.map +1 -1
  146. package/es/vrender.js.map +1 -1
  147. package/package.json +4 -4
package/es/ListTable.d.ts CHANGED
@@ -69,7 +69,9 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
69
69
  getMenuInfo(col: number, row: number, type: string): DropDownMenuEventInfo;
70
70
  _getSortFuncFromHeaderOption(columns: ColumnsDefine | undefined, field: FieldDef, fieldKey?: FieldKeyDef): SortState['orderFn'] | undefined;
71
71
  updateSortState(sortState: SortState[] | SortState | null, executeSort?: boolean): void;
72
- updateFilterRules(filterRules: FilterRules): void;
72
+ updateFilterRules(filterRules: FilterRules, options?: {
73
+ clearRowHeightCache?: boolean;
74
+ }): void;
73
75
  getFilteredRecords(): any[];
74
76
  getCheckboxState(field?: string | number): any[];
75
77
  getCellCheckboxState(col: number, row: number): boolean | "indeterminate";
package/es/ListTable.js CHANGED
@@ -40,6 +40,8 @@ import { clearChartRenderQueue } from "./scenegraph/graphic/contributions/chart-
40
40
 
41
41
  import { getCustomMergeCellFunc } from "./core/utils/get-custom-merge-cell-func";
42
42
 
43
+ import { adjustHeightResizedRowMap, adjustHeightResizedRowMapWithAddRecordIndex, adjustHeightResizedRowMapWithDeleteRecordIndex, adjustWidthResizedColMap } from "./state/cell-move/adjust-header";
44
+
43
45
  export class ListTable extends BaseTable {
44
46
  constructor(container, options) {
45
47
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -52,9 +54,9 @@ export class ListTable extends BaseTable {
52
54
  }, internalProps.columns = options.columns ? cloneDeepSpec(options.columns, [ "children" ]) : options.header ? cloneDeepSpec(options.header, [ "children" ]) : [],
53
55
  generateAggregationForColumn(this), internalProps.enableTreeNodeMerge = null !== (_d = null !== (_c = options.enableTreeNodeMerge) && void 0 !== _c ? _c : isValid(this.internalProps.groupBy)) && void 0 !== _d && _d,
54
56
  this.internalProps.headerHelper.setTableColumnsEditor(), this.showHeader = null === (_e = options.showHeader) || void 0 === _e || _e,
55
- this.internalProps.columnWidthConfig = options.columnWidthConfig, this.transpose = null !== (_f = options.transpose) && void 0 !== _f && _f,
56
- "node" !== Env.mode && (this.editorManager = new EditManager(this)), this.refreshHeader(),
57
- this.internalProps.useOneRowHeightFillAll = !1, options.dataSource ? this.dataSource = options.dataSource : options.records ? this.setRecords(options.records, {
57
+ this.internalProps.columnWidthConfig = options.columnWidthConfig, this.internalProps.rowHeightConfig = options.rowHeightConfig,
58
+ this.transpose = null !== (_f = options.transpose) && void 0 !== _f && _f, "node" !== Env.mode && (this.editorManager = new EditManager(this)),
59
+ this.refreshHeader(), this.internalProps.useOneRowHeightFillAll = !1, options.dataSource ? this.dataSource = options.dataSource : options.records ? this.setRecords(options.records, {
58
60
  sortState: internalProps.sortState
59
61
  }) : this.setRecords([]), options.title) {
60
62
  const Title = Factory.getComponent("title");
@@ -328,7 +330,7 @@ export class ListTable extends BaseTable {
328
330
  generateAggregationForColumn(this), internalProps.enableTreeNodeMerge = null !== (_e = null !== (_d = options.enableTreeNodeMerge) && void 0 !== _d ? _d : isValid(this.internalProps.groupBy)) && void 0 !== _e && _e,
329
331
  this.internalProps.headerHelper.setTableColumnsEditor(), this.transpose = null !== (_f = options.transpose) && void 0 !== _f && _f,
330
332
  this.refreshHeader(), this.internalProps.useOneRowHeightFillAll = !1, this.internalProps.columnWidthConfig = options.columnWidthConfig,
331
- internalProps.releaseList) for (let i = internalProps.releaseList.length - 1; i >= 0; i--) {
333
+ this.internalProps.rowHeightConfig = options.rowHeightConfig, internalProps.releaseList) for (let i = internalProps.releaseList.length - 1; i >= 0; i--) {
332
334
  const releaseObj = internalProps.releaseList[i];
333
335
  releaseObj instanceof DataSource ? releaseObj.updateColumns(this.internalProps.columns) : (null === (_g = null == releaseObj ? void 0 : releaseObj.release) || void 0 === _g || _g.call(releaseObj),
334
336
  internalProps.releaseList.splice(i, 1));
@@ -398,8 +400,9 @@ export class ListTable extends BaseTable {
398
400
  _moveHeaderPosition(source, target) {
399
401
  const sourceCellRange = this.getCellRange(source.col, source.row), targetCellRange = this.getCellRange(target.col, target.row), moveContext = this.internalProps.layoutMap.moveHeaderPosition(source, target);
400
402
  return moveContext ? ("column" === moveContext.moveType ? (this.colWidthsMap.exchangeOrder(sourceCellRange.start.col, sourceCellRange.end.col - sourceCellRange.start.col + 1, targetCellRange.start.col, targetCellRange.end.col - targetCellRange.start.col + 1, moveContext.targetIndex),
401
- this.transpose || (this.colWidthsLimit = {}, this.setMinMaxLimitWidth())) : moveContext.targetIndex > moveContext.sourceIndex ? this.rowHeightsMap.exchangeOrder(moveContext.sourceIndex, moveContext.sourceSize, moveContext.targetIndex + moveContext.sourceSize - moveContext.targetSize, moveContext.targetSize, moveContext.targetIndex) : this.rowHeightsMap.exchangeOrder(moveContext.sourceIndex, moveContext.sourceSize, moveContext.targetIndex, moveContext.targetSize, moveContext.targetIndex),
402
- moveContext) : null;
403
+ adjustWidthResizedColMap(moveContext, this), this.transpose || (this.colWidthsLimit = {},
404
+ this.setMinMaxLimitWidth())) : (moveContext.targetIndex > moveContext.sourceIndex ? this.rowHeightsMap.exchangeOrder(moveContext.sourceIndex, moveContext.sourceSize, moveContext.targetIndex + moveContext.sourceSize - moveContext.targetSize, moveContext.targetSize, moveContext.targetIndex) : this.rowHeightsMap.exchangeOrder(moveContext.sourceIndex, moveContext.sourceSize, moveContext.targetIndex, moveContext.targetSize, moveContext.targetIndex),
405
+ adjustHeightResizedRowMap(moveContext, this)), moveContext) : null;
403
406
  }
404
407
  changeRecordOrder(sourceIndex, targetIndex) {
405
408
  this.transpose ? (sourceIndex = this.getRecordShowIndexByCell(sourceIndex, 0), targetIndex = this.getRecordShowIndexByCell(targetIndex, 0)) : (sourceIndex = this.getRecordShowIndexByCell(0, sourceIndex),
@@ -562,10 +565,12 @@ export class ListTable extends BaseTable {
562
565
  }))), this.internalProps.layoutMap.clearCellRangeMap(), this.internalProps.useOneRowHeightFillAll = !1,
563
566
  this.scenegraph.sortCell()), sortState.length && this.stateManager.updateSortState(sortState);
564
567
  }
565
- updateFilterRules(filterRules) {
568
+ updateFilterRules(filterRules, options = {
569
+ clearRowHeightCache: !0
570
+ }) {
566
571
  this.scenegraph.clearCells(), this.sortState ? (this.dataSource.updateFilterRulesForSorted(filterRules),
567
572
  sortRecords(this)) : this.dataSource.updateFilterRules(filterRules), this.refreshRowColCount(),
568
- this.stateManager.initCheckedState(this.records), this.scenegraph.createSceneGraph(),
573
+ this.stateManager.initCheckedState(this.records), this.scenegraph.createSceneGraph(!(null == options ? void 0 : options.clearRowHeightCache)),
569
574
  this.resize();
570
575
  }
571
576
  getFilteredRecords() {
@@ -711,7 +716,7 @@ export class ListTable extends BaseTable {
711
716
  addRecord(record, recordIndex) {
712
717
  var _a;
713
718
  const success = listTableAddRecord(record, recordIndex, this);
714
- null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible(),
719
+ adjustHeightResizedRowMapWithAddRecordIndex(this, recordIndex, [ record ]), null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible(),
715
720
  success && this.fireListeners(TABLE_EVENT_TYPE.ADD_RECORD, {
716
721
  records: [ record ],
717
722
  recordIndex: recordIndex,
@@ -721,6 +726,7 @@ export class ListTable extends BaseTable {
721
726
  addRecords(records, recordIndex) {
722
727
  var _a;
723
728
  const success = listTableAddRecords(records, recordIndex, this);
729
+ "number" == typeof recordIndex && adjustHeightResizedRowMapWithAddRecordIndex(this, recordIndex, records),
724
730
  null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible(),
725
731
  success && this.fireListeners(TABLE_EVENT_TYPE.ADD_RECORD, {
726
732
  records: records,
@@ -730,7 +736,8 @@ export class ListTable extends BaseTable {
730
736
  }
731
737
  deleteRecords(recordIndexs) {
732
738
  var _a;
733
- listTableDeleteRecords(recordIndexs, this), null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible();
739
+ listTableDeleteRecords(recordIndexs, this), adjustHeightResizedRowMapWithDeleteRecordIndex(this, recordIndexs),
740
+ null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible();
734
741
  const rowIndexs = [];
735
742
  for (let i = 0; i < recordIndexs.length; i++) rowIndexs.push(this.getBodyRowIndexByRecordIndex(recordIndexs[i]) + this.columnHeaderLevelCount);
736
743
  this.fireListeners(TABLE_EVENT_TYPE.DELETE_RECORD, {