k-vtable 1.0.37 → 1.0.39

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 (171) hide show
  1. package/cjs/ListTable.d.ts +2 -1
  2. package/cjs/ListTable.js +31 -10
  3. package/cjs/ListTable.js.map +1 -1
  4. package/cjs/body-helper/body-helper.d.ts +1 -0
  5. package/cjs/body-helper/body-helper.js +4 -3
  6. package/cjs/body-helper/body-helper.js.map +1 -1
  7. package/cjs/body-helper/style.js +2 -1
  8. package/cjs/components/legend/discrete-legend/discrete-legend.d.ts +1 -1
  9. package/cjs/core/BaseTable.d.ts +1 -0
  10. package/cjs/core/BaseTable.js +28 -22
  11. package/cjs/core/BaseTable.js.map +1 -1
  12. package/cjs/core/row-series-number-helper.d.ts +1 -0
  13. package/cjs/core/row-series-number-helper.js +3 -1
  14. package/cjs/core/row-series-number-helper.js.map +1 -1
  15. package/cjs/data/CachedDataSource.js +5 -3
  16. package/cjs/data/CachedDataSource.js.map +1 -1
  17. package/cjs/data/DataSource.js +1 -2
  18. package/cjs/dataset/DataStatistics.js +2 -1
  19. package/cjs/header-helper/header-helper.d.ts +1 -0
  20. package/cjs/header-helper/header-helper.js +4 -3
  21. package/cjs/header-helper/header-helper.js.map +1 -1
  22. package/cjs/header-helper/style.js +2 -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/plugins/custom-cell-style.js +1 -1
  27. package/cjs/scenegraph/animation/appear.js +18 -3
  28. package/cjs/scenegraph/animation/appear.js.map +1 -1
  29. package/cjs/scenegraph/component/custom.js +3 -3
  30. package/cjs/scenegraph/component/custom.js.map +1 -1
  31. package/cjs/scenegraph/component/menu.js +4 -4
  32. package/cjs/scenegraph/component/menu.js.map +1 -1
  33. package/cjs/scenegraph/graphic/chart.d.ts +6 -1
  34. package/cjs/scenegraph/graphic/chart.js +38 -4
  35. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  36. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +2 -1
  37. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  38. package/cjs/scenegraph/graphic/group.d.ts +3 -1
  39. package/cjs/scenegraph/graphic/group.js +21 -3
  40. package/cjs/scenegraph/graphic/group.js.map +1 -1
  41. package/cjs/scenegraph/group-creater/cell-helper.js +4 -3
  42. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  43. package/cjs/scenegraph/group-creater/cell-type/button-cell.js +2 -2
  44. package/cjs/scenegraph/group-creater/cell-type/button-cell.js.map +1 -1
  45. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +4 -4
  46. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  47. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +2 -2
  48. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  49. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +3 -3
  50. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  51. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js +2 -2
  52. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  53. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +2 -2
  54. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  55. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js +2 -2
  56. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -1
  57. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +6 -6
  58. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  59. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +101 -12
  60. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  61. package/cjs/scenegraph/group-creater/column-helper.js +4 -3
  62. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  63. package/cjs/scenegraph/layout/update-row.js +3 -3
  64. package/cjs/scenegraph/layout/update-row.js.map +1 -1
  65. package/cjs/scenegraph/runtime-contributions.d.ts +2 -0
  66. package/cjs/scenegraph/runtime-contributions.js +28 -0
  67. package/cjs/scenegraph/runtime-contributions.js.map +1 -0
  68. package/cjs/scenegraph/scenegraph.d.ts +4 -1
  69. package/cjs/scenegraph/scenegraph.js +40 -16
  70. package/cjs/scenegraph/scenegraph.js.map +1 -1
  71. package/cjs/scenegraph/utils/text-icon-layout.d.ts +4 -0
  72. package/cjs/scenegraph/utils/text-icon-layout.js +23 -6
  73. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  74. package/cjs/scenegraph/utils/text-measure.js.map +1 -1
  75. package/cjs/ts-types/base-table.d.ts +7 -1
  76. package/cjs/ts-types/base-table.js.map +1 -1
  77. package/cjs/ts-types/table-engine.d.ts +1 -1
  78. package/cjs/ts-types/table-engine.js.map +1 -1
  79. package/cjs/vrender-app.d.ts +20 -0
  80. package/cjs/vrender-app.js +141 -0
  81. package/cjs/vrender-app.js.map +1 -0
  82. package/cjs/vrender.d.ts +17 -1
  83. package/cjs/vrender.js +36 -15
  84. package/cjs/vrender.js.map +1 -1
  85. package/dist/vtable.js +106132 -96965
  86. package/dist/vtable.min.js +1 -1
  87. package/es/ListTable.d.ts +2 -1
  88. package/es/ListTable.js +30 -9
  89. package/es/ListTable.js.map +1 -1
  90. package/es/body-helper/body-helper.d.ts +1 -0
  91. package/es/body-helper/body-helper.js +4 -3
  92. package/es/body-helper/body-helper.js.map +1 -1
  93. package/es/body-helper/style.js +2 -1
  94. package/es/components/legend/discrete-legend/discrete-legend.d.ts +1 -1
  95. package/es/core/BaseTable.d.ts +1 -0
  96. package/es/core/BaseTable.js +30 -24
  97. package/es/core/BaseTable.js.map +1 -1
  98. package/es/core/row-series-number-helper.d.ts +1 -0
  99. package/es/core/row-series-number-helper.js +3 -1
  100. package/es/core/row-series-number-helper.js.map +1 -1
  101. package/es/data/CachedDataSource.js +5 -3
  102. package/es/data/CachedDataSource.js.map +1 -1
  103. package/es/data/DataSource.js +1 -2
  104. package/es/dataset/DataStatistics.js +2 -1
  105. package/es/header-helper/header-helper.d.ts +1 -0
  106. package/es/header-helper/header-helper.js +4 -3
  107. package/es/header-helper/header-helper.js.map +1 -1
  108. package/es/header-helper/style.js +2 -1
  109. package/es/index.d.ts +1 -1
  110. package/es/index.js +1 -1
  111. package/es/index.js.map +1 -1
  112. package/es/plugins/custom-cell-style.js +1 -1
  113. package/es/scenegraph/animation/appear.js +18 -3
  114. package/es/scenegraph/animation/appear.js.map +1 -1
  115. package/es/scenegraph/component/custom.js +3 -3
  116. package/es/scenegraph/component/custom.js.map +1 -1
  117. package/es/scenegraph/component/menu.js +4 -4
  118. package/es/scenegraph/component/menu.js.map +1 -1
  119. package/es/scenegraph/graphic/chart.d.ts +6 -1
  120. package/es/scenegraph/graphic/chart.js +39 -3
  121. package/es/scenegraph/graphic/chart.js.map +1 -1
  122. package/es/scenegraph/graphic/contributions/chart-render-helper.js +2 -1
  123. package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  124. package/es/scenegraph/graphic/group.d.ts +3 -1
  125. package/es/scenegraph/graphic/group.js +21 -3
  126. package/es/scenegraph/graphic/group.js.map +1 -1
  127. package/es/scenegraph/group-creater/cell-helper.js +4 -3
  128. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  129. package/es/scenegraph/group-creater/cell-type/button-cell.js +2 -2
  130. package/es/scenegraph/group-creater/cell-type/button-cell.js.map +1 -1
  131. package/es/scenegraph/group-creater/cell-type/chart-cell.js +4 -4
  132. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  133. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +2 -2
  134. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  135. package/es/scenegraph/group-creater/cell-type/image-cell.js +3 -3
  136. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  137. package/es/scenegraph/group-creater/cell-type/radio-cell.js +2 -2
  138. package/es/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  139. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +2 -2
  140. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  141. package/es/scenegraph/group-creater/cell-type/switch-cell.js +2 -2
  142. package/es/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -1
  143. package/es/scenegraph/group-creater/cell-type/text-cell.js +5 -5
  144. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  145. package/es/scenegraph/group-creater/cell-type/video-cell.js +99 -12
  146. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  147. package/es/scenegraph/group-creater/column-helper.js +4 -3
  148. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  149. package/es/scenegraph/layout/update-row.js +3 -3
  150. package/es/scenegraph/layout/update-row.js.map +1 -1
  151. package/es/scenegraph/runtime-contributions.d.ts +2 -0
  152. package/es/scenegraph/runtime-contributions.js +20 -0
  153. package/es/scenegraph/runtime-contributions.js.map +1 -0
  154. package/es/scenegraph/scenegraph.d.ts +4 -1
  155. package/es/scenegraph/scenegraph.js +42 -16
  156. package/es/scenegraph/scenegraph.js.map +1 -1
  157. package/es/scenegraph/utils/text-icon-layout.d.ts +4 -0
  158. package/es/scenegraph/utils/text-icon-layout.js +18 -2
  159. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  160. package/es/scenegraph/utils/text-measure.js.map +1 -1
  161. package/es/ts-types/base-table.d.ts +7 -1
  162. package/es/ts-types/base-table.js.map +1 -1
  163. package/es/ts-types/table-engine.d.ts +1 -1
  164. package/es/ts-types/table-engine.js.map +1 -1
  165. package/es/vrender-app.d.ts +20 -0
  166. package/es/vrender-app.js +161 -0
  167. package/es/vrender-app.js.map +1 -0
  168. package/es/vrender.d.ts +17 -1
  169. package/es/vrender.js +27 -8
  170. package/es/vrender.js.map +1 -1
  171. package/package.json +8 -7
@@ -58,6 +58,7 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
58
58
  moveType: "row" | "column";
59
59
  };
60
60
  private syncColumnsStateFromLayoutMap;
61
+ private mergeHiddenColumnsWithVisibleOrder;
61
62
  changeRecordOrder(sourceIndex: number, targetIndex: number): void;
62
63
  getCellAddress(findTargetRecord: any | ((record: any) => boolean), field: FieldDef): CellAddress;
63
64
  getCellRangeByField(field: FieldDef, index: number): CellRange | null;
@@ -126,7 +127,7 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
126
127
  addRecord(record: any, recordIndex?: number | number[], triggerEvent?: boolean): void;
127
128
  addRecords(records: any[], recordIndex?: number | number[], triggerEvent?: boolean): void;
128
129
  deleteRecords(recordIndexs: number[] | number[][], triggerEvent?: boolean): void;
129
- updateRecords(records: any[], recordIndexs: (number | number[])[], triggerEvent?: boolean): void;
130
+ updateRecords(records: any[], recordIndexs?: (number | number[])[], triggerEvent?: boolean): void;
130
131
  _hasCustomRenderOrLayout(): boolean;
131
132
  getAggregateValuesByField(field: string | number): {
132
133
  col: number;
package/cjs/ListTable.js CHANGED
@@ -29,7 +29,16 @@ Object.defineProperty(exports, "__esModule", {
29
29
  value: !0
30
30
  }), exports.ListTable = void 0;
31
31
 
32
- const ts_types_1 = require("./ts-types"), layout_1 = require("./layout"), vutils_1 = require("@visactor/vutils"), tableHelper_1 = require("./core/tableHelper"), core_1 = require("./core"), TABLE_EVENT_TYPE_1 = require("./core/TABLE_EVENT_TYPE"), env_1 = require("./tools/env"), editors = __importStar(require("./edit/editors")), edit_manager_1 = require("./edit/edit-manager"), compute_row_height_1 = require("./scenegraph/layout/compute-row-height"), util_1 = require("./tools/util"), radio_1 = require("./state/radio/radio"), vutils_extension_1 = require("@visactor/vutils-extension"), checkbox_1 = require("./state/checkbox/checkbox"), factory_1 = require("./core/factory"), group_helper_1 = require("./core/group-helper"), data_1 = require("./data"), DataSource_1 = require("./data/DataSource"), record_helper_1 = require("./core/record-helper"), update_row_1 = require("./tools/update-row"), chart_render_helper_1 = require("./scenegraph/graphic/contributions/chart-render-helper"), get_custom_merge_cell_func_1 = require("./core/utils/get-custom-merge-cell-func"), adjust_header_1 = require("./state/cell-move/adjust-header");
32
+ const ts_types_1 = require("./ts-types"), layout_1 = require("./layout"), vutils_1 = require("@visactor/vutils"), tableHelper_1 = require("./core/tableHelper"), core_1 = require("./core"), TABLE_EVENT_TYPE_1 = require("./core/TABLE_EVENT_TYPE"), env_1 = require("./tools/env"), editors = __importStar(require("./edit/editors")), edit_manager_1 = require("./edit/edit-manager"), compute_row_height_1 = require("./scenegraph/layout/compute-row-height"), util_1 = require("./tools/util"), radio_1 = require("./state/radio/radio"), vutils_extension_1 = require("@visactor/vutils-extension"), checkbox_1 = require("./state/checkbox/checkbox"), factory_1 = require("./core/factory"), group_helper_1 = require("./core/group-helper"), data_1 = require("./data"), DataSource_1 = require("./data/DataSource"), record_helper_1 = require("./core/record-helper"), update_row_1 = require("./tools/update-row"), chart_render_helper_1 = require("./scenegraph/graphic/contributions/chart-render-helper"), get_custom_merge_cell_func_1 = require("./core/utils/get-custom-merge-cell-func"), adjust_header_1 = require("./state/cell-move/adjust-header"), LAYOUT_COLUMN_STATE_KEYS = [ "level", "startIndex", "id", "levelSpan", "size", "startInTotal", "hierarchyState" ];
33
+
34
+ function clearLayoutColumnState(columns) {
35
+ null == columns || columns.forEach((column => {
36
+ var _a;
37
+ LAYOUT_COLUMN_STATE_KEYS.forEach((key => {
38
+ delete column[key];
39
+ })), clearLayoutColumnState(null !== (_a = column.children) && void 0 !== _a ? _a : column.columns);
40
+ }));
41
+ }
33
42
 
34
43
  class ListTable extends core_1.BaseTable {
35
44
  constructor(container, options) {
@@ -254,6 +263,7 @@ class ListTable extends core_1.BaseTable {
254
263
  const {title: title} = table.internalProps.layoutMap.getSeriesNumberHeader(col, row);
255
264
  return title;
256
265
  }
266
+ if (table.internalProps.layoutMap.isAggregation(col, row)) return "";
257
267
  let value;
258
268
  if (this.internalProps.groupBy) {
259
269
  const record = table.getCellRawRecord(col, row);
@@ -291,6 +301,7 @@ class ListTable extends core_1.BaseTable {
291
301
  const {title: title} = table.internalProps.layoutMap.getSeriesNumberHeader(col, row);
292
302
  return title;
293
303
  }
304
+ if (table.internalProps.layoutMap.isAggregation(col, row)) return "";
294
305
  const {format: format} = table.internalProps.layoutMap.getSeriesNumberBody(col, row);
295
306
  return "function" == typeof format ? format(col, row, this) : row - this.columnHeaderLevelCount;
296
307
  }
@@ -458,13 +469,20 @@ class ListTable extends core_1.BaseTable {
458
469
  moveContext) : null;
459
470
  }
460
471
  syncColumnsStateFromLayoutMap() {
461
- const nextColumns = (0, vutils_extension_1.cloneDeepSpec)(this.internalProps.columns, [ "children" ]), cleanColumns = columns => {
462
- columns.forEach((col => {
463
- delete col.level, delete col.size, delete col.startInTotal, delete col.startIndex,
464
- delete col.id, delete col.hierarchyState, col.columns && cleanColumns(col.columns);
465
- }));
466
- };
467
- cleanColumns(nextColumns), this.options.columns = nextColumns, this.options.header && (this.options.header = nextColumns);
472
+ var _a;
473
+ const sourceColumns = null !== (_a = this.options.columns) && void 0 !== _a ? _a : this.internalProps.columns, nextColumns = sourceColumns.some((column => !0 === column.hide)) ? this.mergeHiddenColumnsWithVisibleOrder(sourceColumns) : this.columns, publicColumns = (0,
474
+ vutils_extension_1.cloneDeepSpec)(nextColumns, [ "children" ]);
475
+ clearLayoutColumnState(publicColumns), this.internalProps.columns = (0, vutils_extension_1.cloneDeepSpec)(publicColumns, [ "children" ]),
476
+ this.options.columns = publicColumns, this.options.header && (this.options.header = publicColumns);
477
+ }
478
+ mergeHiddenColumnsWithVisibleOrder(sourceColumns) {
479
+ const visibleColumns = this.internalProps.layoutMap.columnObjects.map((column => column.define));
480
+ let visibleIndex = 0;
481
+ return sourceColumns.map((column => {
482
+ if (!0 === column.hide) return column;
483
+ const nextVisibleColumn = visibleColumns[visibleIndex];
484
+ return visibleIndex += 1, null != nextVisibleColumn ? nextVisibleColumn : column;
485
+ }));
468
486
  }
469
487
  changeRecordOrder(sourceIndex, targetIndex) {
470
488
  this.transpose ? (sourceIndex = this.getRecordShowIndexByCell(sourceIndex, 0), targetIndex = this.getRecordShowIndexByCell(targetIndex, 0)) : (sourceIndex = this.getRecordShowIndexByCell(0, sourceIndex),
@@ -1043,9 +1061,12 @@ class ListTable extends core_1.BaseTable {
1043
1061
  }), 0));
1044
1062
  }
1045
1063
  updateRecords(records, recordIndexs, triggerEvent = !0) {
1046
- (0, record_helper_1.listTableUpdateRecords)(records, recordIndexs, this), triggerEvent && this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.UPDATE_RECORD, {
1064
+ var _a;
1065
+ const updateRecordIndexs = null !== (_a = null != recordIndexs ? recordIndexs : null == records ? void 0 : records.map(((_, index) => index))) && void 0 !== _a ? _a : [];
1066
+ (0, record_helper_1.listTableUpdateRecords)(records, updateRecordIndexs, this),
1067
+ triggerEvent && this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.UPDATE_RECORD, {
1047
1068
  records: records,
1048
- recordIndexs: recordIndexs,
1069
+ recordIndexs: updateRecordIndexs,
1049
1070
  updateCount: records.length
1050
1071
  });
1051
1072
  }