k-vtable 1.0.27 → 1.0.29

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 (155) hide show
  1. package/cjs/ListTable.d.ts +1 -0
  2. package/cjs/ListTable.js +17 -7
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/PivotTable-all.js +5 -5
  5. package/cjs/PivotTable-all.js.map +1 -1
  6. package/cjs/PivotTable.js +14 -8
  7. package/cjs/PivotTable.js.map +1 -1
  8. package/cjs/core/BaseTable.d.ts +2 -2
  9. package/cjs/core/BaseTable.js +14 -11
  10. package/cjs/core/BaseTable.js.map +1 -1
  11. package/cjs/core/TABLE_EVENT_TYPE.d.ts +2 -0
  12. package/cjs/core/TABLE_EVENT_TYPE.js +3 -1
  13. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  14. package/cjs/data/DataSource.d.ts +1 -1
  15. package/cjs/data/DataSource.js +2 -2
  16. package/cjs/data/DataSource.js.map +1 -1
  17. package/cjs/dataset/dataset-pivot-table.js +1 -2
  18. package/cjs/dataset/dataset.js +11 -3
  19. package/cjs/dataset/dataset.js.map +1 -1
  20. package/cjs/dataset/flatDataToObject.js +2 -1
  21. package/cjs/edit/edit-manager.d.ts +3 -2
  22. package/cjs/edit/edit-manager.js +36 -6
  23. package/cjs/edit/edit-manager.js.map +1 -1
  24. package/cjs/event/event.js +3 -1
  25. package/cjs/event/event.js.map +1 -1
  26. package/cjs/event/listener/container-dom.js +15 -7
  27. package/cjs/event/listener/container-dom.js.map +1 -1
  28. package/cjs/event/self-event-listener/pivot-chart/axis-hover.js +1 -1
  29. package/cjs/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -1
  30. package/cjs/index.d.ts +1 -1
  31. package/cjs/index.js +1 -1
  32. package/cjs/index.js.map +1 -1
  33. package/cjs/layout/chart-helper/get-axis-config.js +12 -10
  34. package/cjs/layout/chart-helper/get-axis-config.js.map +1 -1
  35. package/cjs/layout/index.js +2 -1
  36. package/cjs/layout/pivot-header-layout.d.ts +4 -1
  37. package/cjs/layout/pivot-header-layout.js +52 -37
  38. package/cjs/layout/pivot-header-layout.js.map +1 -1
  39. package/cjs/layout/row-height-map.js +1 -1
  40. package/cjs/layout/simple-header-layout.js +1 -1
  41. package/cjs/layout/tree-helper.js +1 -1
  42. package/cjs/plugins/custom-cell-style.js +1 -2
  43. package/cjs/plugins/interface.js +1 -1
  44. package/cjs/plugins/invert-highlight.js +1 -1
  45. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  46. package/cjs/plugins/plugin-manager.d.ts +2 -0
  47. package/cjs/plugins/plugin-manager.js +14 -7
  48. package/cjs/plugins/plugin-manager.js.map +1 -1
  49. package/cjs/scenegraph/component/menu.d.ts +41 -0
  50. package/cjs/scenegraph/component/table-component.d.ts +2 -0
  51. package/cjs/scenegraph/component/table-component.js +38 -10
  52. package/cjs/scenegraph/component/table-component.js.map +1 -1
  53. package/cjs/scenegraph/debug-tool/debug-tool.js +1 -1
  54. package/cjs/scenegraph/debug-tool/debug-tool.js.map +1 -1
  55. package/cjs/scenegraph/graphic/active-cell-chart-list.js +63 -45
  56. package/cjs/scenegraph/graphic/active-cell-chart-list.js.map +1 -1
  57. package/cjs/scenegraph/graphic/chart.js +15 -8
  58. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  59. package/cjs/scenegraph/layout/compute-col-width.js +1 -1
  60. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  61. package/cjs/scenegraph/layout/frozen.js +4 -4
  62. package/cjs/scenegraph/layout/frozen.js.map +1 -1
  63. package/cjs/scenegraph/utils/text-measure.d.ts +38 -0
  64. package/cjs/state/state.js +15 -23
  65. package/cjs/state/state.js.map +1 -1
  66. package/cjs/themes/theme-define.js +6 -0
  67. package/cjs/themes/theme-define.js.map +1 -1
  68. package/cjs/ts-types/base-table.d.ts +4 -2
  69. package/cjs/ts-types/base-table.js.map +1 -1
  70. package/cjs/ts-types/events.d.ts +8 -0
  71. package/cjs/ts-types/events.js.map +1 -1
  72. package/cjs/ts-types/list-table/define/index.d.ts +9 -2
  73. package/cjs/ts-types/list-table/define/index.js.map +1 -1
  74. package/cjs/ts-types/table-engine.d.ts +2 -2
  75. package/cjs/ts-types/table-engine.js.map +1 -1
  76. package/cjs/vrender.js.map +1 -1
  77. package/dist/vtable.js +3034 -4390
  78. package/dist/vtable.min.js +2 -2
  79. package/es/ListTable.d.ts +1 -0
  80. package/es/ListTable.js +18 -8
  81. package/es/ListTable.js.map +1 -1
  82. package/es/PivotTable-all.js +5 -3
  83. package/es/PivotTable-all.js.map +1 -1
  84. package/es/PivotTable.js +14 -8
  85. package/es/PivotTable.js.map +1 -1
  86. package/es/core/BaseTable.d.ts +2 -2
  87. package/es/core/BaseTable.js +14 -11
  88. package/es/core/BaseTable.js.map +1 -1
  89. package/es/core/TABLE_EVENT_TYPE.d.ts +2 -0
  90. package/es/core/TABLE_EVENT_TYPE.js +3 -1
  91. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  92. package/es/data/DataSource.d.ts +1 -1
  93. package/es/data/DataSource.js +2 -2
  94. package/es/data/DataSource.js.map +1 -1
  95. package/es/dataset/dataset-pivot-table.js +1 -2
  96. package/es/dataset/dataset.js +11 -3
  97. package/es/dataset/dataset.js.map +1 -1
  98. package/es/dataset/flatDataToObject.js +2 -1
  99. package/es/edit/edit-manager.d.ts +3 -2
  100. package/es/edit/edit-manager.js +36 -6
  101. package/es/edit/edit-manager.js.map +1 -1
  102. package/es/event/event.js +3 -1
  103. package/es/event/event.js.map +1 -1
  104. package/es/event/listener/container-dom.js +15 -7
  105. package/es/event/listener/container-dom.js.map +1 -1
  106. package/es/event/self-event-listener/pivot-chart/axis-hover.js +1 -1
  107. package/es/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -1
  108. package/es/index.d.ts +1 -1
  109. package/es/index.js +1 -1
  110. package/es/index.js.map +1 -1
  111. package/es/layout/chart-helper/get-axis-config.js +12 -10
  112. package/es/layout/chart-helper/get-axis-config.js.map +1 -1
  113. package/es/layout/index.js +2 -1
  114. package/es/layout/pivot-header-layout.d.ts +4 -1
  115. package/es/layout/pivot-header-layout.js +50 -36
  116. package/es/layout/pivot-header-layout.js.map +1 -1
  117. package/es/layout/row-height-map.js +1 -1
  118. package/es/layout/simple-header-layout.js +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/interface.js +1 -1
  122. package/es/plugins/invert-highlight.js +1 -1
  123. package/es/plugins/list-tree-stick-cell.js +1 -1
  124. package/es/plugins/plugin-manager.d.ts +2 -0
  125. package/es/plugins/plugin-manager.js +14 -7
  126. package/es/plugins/plugin-manager.js.map +1 -1
  127. package/es/scenegraph/component/menu.d.ts +41 -0
  128. package/es/scenegraph/component/table-component.d.ts +2 -0
  129. package/es/scenegraph/component/table-component.js +38 -10
  130. package/es/scenegraph/component/table-component.js.map +1 -1
  131. package/es/scenegraph/debug-tool/debug-tool.js +1 -1
  132. package/es/scenegraph/debug-tool/debug-tool.js.map +1 -1
  133. package/es/scenegraph/graphic/active-cell-chart-list.js +63 -45
  134. package/es/scenegraph/graphic/active-cell-chart-list.js.map +1 -1
  135. package/es/scenegraph/graphic/chart.js +15 -8
  136. package/es/scenegraph/graphic/chart.js.map +1 -1
  137. package/es/scenegraph/layout/compute-col-width.js +1 -1
  138. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  139. package/es/scenegraph/layout/frozen.js +4 -4
  140. package/es/scenegraph/layout/frozen.js.map +1 -1
  141. package/es/scenegraph/utils/text-measure.d.ts +38 -0
  142. package/es/state/state.js +15 -23
  143. package/es/state/state.js.map +1 -1
  144. package/es/themes/theme-define.js +6 -0
  145. package/es/themes/theme-define.js.map +1 -1
  146. package/es/ts-types/base-table.d.ts +4 -2
  147. package/es/ts-types/base-table.js.map +1 -1
  148. package/es/ts-types/events.d.ts +8 -0
  149. package/es/ts-types/events.js.map +1 -1
  150. package/es/ts-types/list-table/define/index.d.ts +9 -2
  151. package/es/ts-types/list-table/define/index.js.map +1 -1
  152. package/es/ts-types/table-engine.d.ts +2 -2
  153. package/es/ts-types/table-engine.js.map +1 -1
  154. package/es/vrender.js.map +1 -1
  155. package/package.json +11 -11
package/es/ListTable.d.ts CHANGED
@@ -71,6 +71,7 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
71
71
  updateSortState(sortState: SortState[] | SortState | null, executeSort?: boolean): void;
72
72
  updateFilterRules(filterRules: FilterRules, options?: {
73
73
  clearRowHeightCache?: boolean;
74
+ onFilterRecordsEnd?: (records: any[]) => any[];
74
75
  }): void;
75
76
  getFilteredRecords(): any[];
76
77
  getCheckboxState(field?: string | number): any[];
package/es/ListTable.js CHANGED
@@ -322,7 +322,8 @@ export class ListTable extends BaseTable {
322
322
  }) {
323
323
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
324
324
  const internalProps = this.internalProps;
325
- if (super.updateOption(options, updateConfig), internalProps.frozenColDragHeaderMode = null !== (_b = null === (_a = options.dragOrder) || void 0 === _a ? void 0 : _a.frozenColDragHeaderMode) && void 0 !== _b ? _b : options.frozenColDragHeaderMode,
325
+ if (this.pluginManager.removeOrAddPlugins(options.plugins), super.updateOption(options, updateConfig),
326
+ internalProps.frozenColDragHeaderMode = null !== (_b = null === (_a = options.dragOrder) || void 0 === _a ? void 0 : _a.frozenColDragHeaderMode) && void 0 !== _b ? _b : options.frozenColDragHeaderMode,
326
327
  this.pagination = options.pagination, internalProps.sortState = options.sortState,
327
328
  internalProps.dataConfig = this.internalProps.groupBy ? getGroupByDataConfig(this.internalProps.groupBy, options.addRecordRule, this.internalProps.customDealGroupData) : {
328
329
  addRecordRule: options.addRecordRule
@@ -569,9 +570,11 @@ export class ListTable extends BaseTable {
569
570
  updateFilterRules(filterRules, options = {
570
571
  clearRowHeightCache: !0
571
572
  }) {
573
+ var _a;
572
574
  this.scenegraph.clearCells(), this.sortState ? (this.dataSource.updateFilterRulesForSorted(filterRules),
573
- sortRecords(this)) : this.dataSource.updateFilterRules(filterRules), this.refreshRowColCount(),
574
- this.stateManager.initCheckedState(this.records), this.scenegraph.createSceneGraph(!(null == options ? void 0 : options.clearRowHeightCache)),
575
+ sortRecords(this)) : this.dataSource.updateFilterRules(filterRules, null == options ? void 0 : options.onFilterRecordsEnd),
576
+ this.refreshRowColCount(), this.stateManager.initCheckedState(this.records), this.scenegraph.createSceneGraph(!(null == options ? void 0 : options.clearRowHeightCache)),
577
+ null === (_a = this.internalProps.emptyTip) || void 0 === _a || _a.resetVisible(),
575
578
  this.resize();
576
579
  }
577
580
  getFilteredRecords() {
@@ -591,7 +594,7 @@ export class ListTable extends BaseTable {
591
594
  })).map((key => this.stateManager.checkedState.get(key)));
592
595
  return this.options.groupBy && (stateArr = getGroupCheckboxState(this)), Array.from(stateArr, (state => state && state[field]));
593
596
  }
594
- return new Array(...this.stateManager.checkedState.values());
597
+ return [ ...this.stateManager.checkedState.values() ];
595
598
  }
596
599
  getCellCheckboxState(col, row) {
597
600
  var _a;
@@ -680,10 +683,16 @@ export class ListTable extends BaseTable {
680
683
  }
681
684
  getEditor(col, row) {
682
685
  var _a, _b;
686
+ const lastSelectedCellEditor = this.editorManager.cacheLastSelectedCellEditor[`${col}-${row}`];
687
+ if (lastSelectedCellEditor) return lastSelectedCellEditor;
688
+ Object.values(this.editorManager.cacheLastSelectedCellEditor).forEach((editor => {
689
+ var _a;
690
+ return null === (_a = null == editor ? void 0 : editor.onEnd) || void 0 === _a ? void 0 : _a.call(editor);
691
+ })), this.editorManager.cacheLastSelectedCellEditor = {};
683
692
  const define = this.getBodyColumnDefine(col, row);
684
- let editorDefine = this.isHeader(col, row) ? null !== (_a = null == define ? void 0 : define.headerEditor) && void 0 !== _a ? _a : this.options.headerEditor : null !== (_b = null == define ? void 0 : define.editor) && void 0 !== _b ? _b : this.options.editor;
685
- if ("function" == typeof editorDefine) {
686
- editorDefine = editorDefine({
693
+ let editor = this.isHeader(col, row) ? null !== (_a = null == define ? void 0 : define.headerEditor) && void 0 !== _a ? _a : this.options.headerEditor : null !== (_b = null == define ? void 0 : define.editor) && void 0 !== _b ? _b : this.options.editor;
694
+ if ("function" == typeof editor) {
695
+ editor = editor({
687
696
  col: col,
688
697
  row: row,
689
698
  dataValue: this.getCellOriginValue(col, row),
@@ -691,7 +700,8 @@ export class ListTable extends BaseTable {
691
700
  table: this
692
701
  });
693
702
  }
694
- return "string" == typeof editorDefine ? editors.get(editorDefine) : editorDefine;
703
+ return "string" == typeof editor && (editor = editors.get(editor)), editor && (this.editorManager.cacheLastSelectedCellEditor[`${col}-${row}`] = editor),
704
+ editor;
695
705
  }
696
706
  isHasEditorDefine(col, row) {
697
707
  var _a, _b;