@visactor/vtable 1.22.3-alpha.0 → 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 (123) 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/PivotTable.d.ts +1 -0
  5. package/cjs/PivotTable.js +3 -0
  6. package/cjs/PivotTable.js.map +1 -1
  7. package/cjs/body-helper/style/ButtonStyle.d.ts +10 -1
  8. package/cjs/body-helper/style/ButtonStyle.js.map +1 -1
  9. package/cjs/body-helper/style/CheckboxStyle.d.ts +14 -1
  10. package/cjs/body-helper/style/CheckboxStyle.js.map +1 -1
  11. package/cjs/body-helper/style/RadioStyle.d.ts +8 -1
  12. package/cjs/body-helper/style/RadioStyle.js.map +1 -1
  13. package/cjs/body-helper/style/SwitchStyle.d.ts +13 -1
  14. package/cjs/body-helper/style/SwitchStyle.js.map +1 -1
  15. package/cjs/core/BaseTable.js +2 -2
  16. package/cjs/core/BaseTable.js.map +1 -1
  17. package/cjs/core/record-helper.js.map +1 -1
  18. package/cjs/data/DataSource.js +1 -1
  19. package/cjs/data/DataSource.js.map +1 -1
  20. package/cjs/event/listener/touch.js +2 -1
  21. package/cjs/event/listener/touch.js.map +1 -1
  22. package/cjs/event/scroll.d.ts +2 -0
  23. package/cjs/event/scroll.js +12 -3
  24. package/cjs/event/scroll.js.map +1 -1
  25. package/cjs/index.d.ts +2 -1
  26. package/cjs/index.js +18 -4
  27. package/cjs/index.js.map +1 -1
  28. package/cjs/layout/index.js +2 -1
  29. package/cjs/layout/pivot-header-layout.d.ts +1 -0
  30. package/cjs/layout/pivot-header-layout.js +37 -4
  31. package/cjs/layout/pivot-header-layout.js.map +1 -1
  32. package/cjs/layout/pivot-layout.js +2 -0
  33. package/cjs/layout/row-height-map.js +1 -1
  34. package/cjs/layout/simple-header-layout.js +4 -4
  35. package/cjs/layout/simple-header-layout.js.map +1 -1
  36. package/cjs/layout/tree-helper.js +1 -1
  37. package/cjs/plugins/custom-cell-style.js +1 -2
  38. package/cjs/plugins/index.js +1 -1
  39. package/cjs/plugins/interface.js +1 -1
  40. package/cjs/plugins/invert-highlight.js +1 -1
  41. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  42. package/cjs/plugins/plugin-manager.js +1 -1
  43. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +1 -1
  44. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  45. package/cjs/scenegraph/group-creater/cell-helper.js +1 -1
  46. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  47. package/cjs/scenegraph/layout/compute-row-height.js +7 -3
  48. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  49. package/cjs/state/cell-move/adjust-header.d.ts +13 -0
  50. package/cjs/state/cell-move/adjust-header.js +50 -3
  51. package/cjs/state/cell-move/adjust-header.js.map +1 -1
  52. package/cjs/state/cell-move/index.js +2 -1
  53. package/cjs/state/cell-move/index.js.map +1 -1
  54. package/cjs/ts-types/base-table.d.ts +7 -2
  55. package/cjs/ts-types/base-table.js.map +1 -1
  56. package/cjs/ts-types/list-table/define/basic-define.d.ts +1 -1
  57. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  58. package/cjs/ts-types/table-engine.d.ts +9 -2
  59. package/cjs/ts-types/table-engine.js.map +1 -1
  60. package/cjs/vrender.js.map +1 -1
  61. package/dist/vtable.js +219 -18
  62. package/dist/vtable.min.js +2 -2
  63. package/es/ListTable.d.ts +3 -1
  64. package/es/ListTable.js +17 -10
  65. package/es/ListTable.js.map +1 -1
  66. package/es/PivotTable.d.ts +1 -0
  67. package/es/PivotTable.js +3 -0
  68. package/es/PivotTable.js.map +1 -1
  69. package/es/body-helper/style/ButtonStyle.d.ts +10 -1
  70. package/es/body-helper/style/ButtonStyle.js.map +1 -1
  71. package/es/body-helper/style/CheckboxStyle.d.ts +14 -1
  72. package/es/body-helper/style/CheckboxStyle.js.map +1 -1
  73. package/es/body-helper/style/RadioStyle.d.ts +8 -1
  74. package/es/body-helper/style/RadioStyle.js.map +1 -1
  75. package/es/body-helper/style/SwitchStyle.d.ts +13 -1
  76. package/es/body-helper/style/SwitchStyle.js.map +1 -1
  77. package/es/core/BaseTable.js +2 -2
  78. package/es/core/BaseTable.js.map +1 -1
  79. package/es/core/record-helper.js.map +1 -1
  80. package/es/data/DataSource.js +1 -1
  81. package/es/data/DataSource.js.map +1 -1
  82. package/es/event/listener/touch.js +2 -2
  83. package/es/event/listener/touch.js.map +1 -1
  84. package/es/event/scroll.d.ts +2 -0
  85. package/es/event/scroll.js +9 -1
  86. package/es/event/scroll.js.map +1 -1
  87. package/es/index.d.ts +2 -1
  88. package/es/index.js +3 -1
  89. package/es/index.js.map +1 -1
  90. package/es/layout/index.js +2 -1
  91. package/es/layout/pivot-header-layout.d.ts +1 -0
  92. package/es/layout/pivot-header-layout.js +37 -4
  93. package/es/layout/pivot-header-layout.js.map +1 -1
  94. package/es/layout/pivot-layout.js +2 -0
  95. package/es/layout/row-height-map.js +1 -1
  96. package/es/layout/simple-header-layout.js +4 -4
  97. package/es/layout/simple-header-layout.js.map +1 -1
  98. package/es/layout/tree-helper.js +1 -1
  99. package/es/plugins/custom-cell-style.js +1 -2
  100. package/es/plugins/index.js +1 -1
  101. package/es/plugins/interface.js +1 -1
  102. package/es/plugins/invert-highlight.js +1 -1
  103. package/es/plugins/list-tree-stick-cell.js +1 -1
  104. package/es/plugins/plugin-manager.js +1 -1
  105. package/es/scenegraph/graphic/contributions/rect-contribution-render.js +1 -1
  106. package/es/scenegraph/graphic/contributions/rect-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/layout/compute-row-height.js +7 -3
  110. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  111. package/es/state/cell-move/adjust-header.d.ts +13 -0
  112. package/es/state/cell-move/adjust-header.js +46 -2
  113. package/es/state/cell-move/adjust-header.js.map +1 -1
  114. package/es/state/cell-move/index.js +2 -1
  115. package/es/state/cell-move/index.js.map +1 -1
  116. package/es/ts-types/base-table.d.ts +7 -2
  117. package/es/ts-types/base-table.js.map +1 -1
  118. package/es/ts-types/list-table/define/basic-define.d.ts +1 -1
  119. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  120. package/es/ts-types/table-engine.d.ts +9 -2
  121. package/es/ts-types/table-engine.js.map +1 -1
  122. package/es/vrender.js.map +1 -1
  123. package/package.json +5 -5
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, {