@visactor/vtable 1.5.4-beta.1 → 1.6.0-alpha.1

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 (217) hide show
  1. package/cjs/ListTable-all.js +5 -5
  2. package/cjs/ListTable-all.js.map +1 -1
  3. package/cjs/ListTable.d.ts +3 -0
  4. package/cjs/ListTable.js +33 -277
  5. package/cjs/ListTable.js.map +1 -1
  6. package/cjs/PivotChart.d.ts +0 -1
  7. package/cjs/PivotChart.js +0 -4
  8. package/cjs/PivotChart.js.map +1 -1
  9. package/cjs/components/axis/axis.js +2 -3
  10. package/cjs/components/axis/axis.js.map +1 -1
  11. package/cjs/components/legend/discrete-legend/discrete-legend.js +1 -2
  12. package/cjs/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  13. package/cjs/core/BaseTable.d.ts +5 -6
  14. package/cjs/core/BaseTable.js +31 -122
  15. package/cjs/core/BaseTable.js.map +1 -1
  16. package/cjs/core/FouseInput.d.ts +0 -1
  17. package/cjs/core/FouseInput.js +2 -5
  18. package/cjs/core/FouseInput.js.map +1 -1
  19. package/cjs/core/group-helper.d.ts +6 -0
  20. package/cjs/core/group-helper.js +22 -0
  21. package/cjs/core/group-helper.js.map +1 -0
  22. package/cjs/core/record-helper.d.ts +8 -0
  23. package/cjs/core/record-helper.js +337 -0
  24. package/cjs/core/record-helper.js.map +1 -0
  25. package/cjs/core/style-helper.d.ts +3 -0
  26. package/cjs/core/style-helper.js +110 -0
  27. package/cjs/core/style-helper.js.map +1 -0
  28. package/cjs/core/tableHelper.d.ts +2 -4
  29. package/cjs/core/tableHelper.js +9 -18
  30. package/cjs/core/tableHelper.js.map +1 -1
  31. package/cjs/core/utils/get-cell-position.d.ts +25 -5
  32. package/cjs/core/utils/get-cell-position.js.map +1 -1
  33. package/cjs/data/CachedDataSource.d.ts +10 -1
  34. package/cjs/data/CachedDataSource.js +102 -3
  35. package/cjs/data/CachedDataSource.js.map +1 -1
  36. package/cjs/dataset/dataset.js +0 -1
  37. package/cjs/edit/edit-manager.js +2 -1
  38. package/cjs/event/event.js +6 -5
  39. package/cjs/event/event.js.map +1 -1
  40. package/cjs/event/listener/container-dom.js +8 -8
  41. package/cjs/event/listener/container-dom.js.map +1 -1
  42. package/cjs/event/util.js +2 -2
  43. package/cjs/event/util.js.map +1 -1
  44. package/cjs/index.d.ts +1 -1
  45. package/cjs/index.js +1 -1
  46. package/cjs/index.js.map +1 -1
  47. package/cjs/layout/cell-range/simple-cell-range.d.ts +4 -0
  48. package/cjs/layout/cell-range/simple-cell-range.js +106 -0
  49. package/cjs/layout/cell-range/simple-cell-range.js.map +1 -0
  50. package/cjs/layout/layout-helper.js +2 -2
  51. package/cjs/layout/layout-helper.js.map +1 -1
  52. package/cjs/layout/pivot-header-layout.js +5 -10
  53. package/cjs/layout/pivot-header-layout.js.map +1 -1
  54. package/cjs/layout/row-height-map.js +1 -0
  55. package/cjs/layout/simple-header-layout.d.ts +1 -2
  56. package/cjs/layout/simple-header-layout.js +2 -88
  57. package/cjs/layout/simple-header-layout.js.map +1 -1
  58. package/cjs/plugins/icons.js +1 -1
  59. package/cjs/plugins/list-tree-stick-cell.d.ts +16 -0
  60. package/cjs/plugins/list-tree-stick-cell.js +171 -0
  61. package/cjs/plugins/list-tree-stick-cell.js.map +1 -0
  62. package/cjs/plugins/themes.js +1 -1
  63. package/cjs/scenegraph/debug-tool/debug-tool.js +1 -4
  64. package/cjs/scenegraph/debug-tool/debug-tool.js.map +1 -1
  65. package/cjs/scenegraph/graphic/chart.d.ts +0 -1
  66. package/cjs/scenegraph/graphic/chart.js +20 -34
  67. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  68. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +8 -20
  69. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  70. package/cjs/scenegraph/graphic/contributions/chart-render.d.ts +1 -2
  71. package/cjs/scenegraph/graphic/contributions/chart-render.js +24 -40
  72. package/cjs/scenegraph/graphic/contributions/chart-render.js.map +1 -1
  73. package/cjs/scenegraph/graphic/group.js +1 -1
  74. package/cjs/scenegraph/graphic/group.js.map +1 -1
  75. package/cjs/scenegraph/group-creater/cell-helper.d.ts +2 -1
  76. package/cjs/scenegraph/group-creater/cell-helper.js +29 -10
  77. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  78. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +1 -2
  79. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  80. package/cjs/scenegraph/group-creater/column-helper.js +9 -2
  81. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  82. package/cjs/scenegraph/group-creater/init-scenegraph.js +2 -2
  83. package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  84. package/cjs/scenegraph/refresh-node/update-chart.d.ts +0 -1
  85. package/cjs/scenegraph/refresh-node/update-chart.js +2 -9
  86. package/cjs/scenegraph/refresh-node/update-chart.js.map +1 -1
  87. package/cjs/scenegraph/scenegraph.js +6 -12
  88. package/cjs/scenegraph/scenegraph.js.map +1 -1
  89. package/cjs/scenegraph/utils/get-cell-merge.js +1 -1
  90. package/cjs/scenegraph/utils/get-cell-merge.js.map +1 -1
  91. package/cjs/scenegraph/utils/get-hierarchy-offset.js +6 -8
  92. package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  93. package/cjs/themes/theme.d.ts +2 -0
  94. package/cjs/themes/theme.js +13 -4
  95. package/cjs/themes/theme.js.map +1 -1
  96. package/cjs/ts-types/base-table.d.ts +10 -12
  97. package/cjs/ts-types/base-table.js.map +1 -1
  98. package/cjs/ts-types/new-data-set.d.ts +1 -0
  99. package/cjs/ts-types/new-data-set.js.map +1 -1
  100. package/cjs/ts-types/pivot-table/dimension/basic-dimension.d.ts +0 -1
  101. package/cjs/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
  102. package/cjs/ts-types/table-engine.d.ts +10 -0
  103. package/cjs/ts-types/table-engine.js.map +1 -1
  104. package/cjs/ts-types/theme.d.ts +1 -0
  105. package/cjs/ts-types/theme.js.map +1 -1
  106. package/cjs/vrender.js +2 -1
  107. package/cjs/vrender.js.map +1 -1
  108. package/dist/vtable.js +3441 -2963
  109. package/dist/vtable.min.js +2 -2
  110. package/es/ListTable-all.js +5 -3
  111. package/es/ListTable-all.js.map +1 -1
  112. package/es/ListTable.d.ts +3 -0
  113. package/es/ListTable.js +36 -279
  114. package/es/ListTable.js.map +1 -1
  115. package/es/PivotChart.d.ts +0 -1
  116. package/es/PivotChart.js +2 -5
  117. package/es/PivotChart.js.map +1 -1
  118. package/es/components/axis/axis.js +1 -3
  119. package/es/components/axis/axis.js.map +1 -1
  120. package/es/components/legend/discrete-legend/discrete-legend.js +1 -2
  121. package/es/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  122. package/es/core/BaseTable.d.ts +5 -6
  123. package/es/core/BaseTable.js +33 -125
  124. package/es/core/BaseTable.js.map +1 -1
  125. package/es/core/FouseInput.d.ts +0 -1
  126. package/es/core/FouseInput.js +2 -5
  127. package/es/core/FouseInput.js.map +1 -1
  128. package/es/core/group-helper.d.ts +6 -0
  129. package/es/core/group-helper.js +14 -0
  130. package/es/core/group-helper.js.map +1 -0
  131. package/es/core/record-helper.d.ts +8 -0
  132. package/es/core/record-helper.js +332 -0
  133. package/es/core/record-helper.js.map +1 -0
  134. package/es/core/style-helper.d.ts +3 -0
  135. package/es/core/style-helper.js +86 -0
  136. package/es/core/style-helper.js.map +1 -0
  137. package/es/core/tableHelper.d.ts +2 -4
  138. package/es/core/tableHelper.js +6 -16
  139. package/es/core/tableHelper.js.map +1 -1
  140. package/es/core/utils/get-cell-position.d.ts +25 -5
  141. package/es/core/utils/get-cell-position.js.map +1 -1
  142. package/es/data/CachedDataSource.d.ts +10 -1
  143. package/es/data/CachedDataSource.js +103 -0
  144. package/es/data/CachedDataSource.js.map +1 -1
  145. package/es/dataset/dataset.js +1 -2
  146. package/es/edit/edit-manager.js +2 -1
  147. package/es/event/event.js +6 -5
  148. package/es/event/event.js.map +1 -1
  149. package/es/event/listener/container-dom.js +8 -8
  150. package/es/event/listener/container-dom.js.map +1 -1
  151. package/es/event/util.js +2 -2
  152. package/es/event/util.js.map +1 -1
  153. package/es/index.d.ts +1 -1
  154. package/es/index.js +1 -1
  155. package/es/index.js.map +1 -1
  156. package/es/layout/cell-range/simple-cell-range.d.ts +4 -0
  157. package/es/layout/cell-range/simple-cell-range.js +99 -0
  158. package/es/layout/cell-range/simple-cell-range.js.map +1 -0
  159. package/es/layout/layout-helper.js +2 -2
  160. package/es/layout/layout-helper.js.map +1 -1
  161. package/es/layout/pivot-header-layout.js +5 -10
  162. package/es/layout/pivot-header-layout.js.map +1 -1
  163. package/es/layout/row-height-map.js +2 -1
  164. package/es/layout/simple-header-layout.d.ts +1 -2
  165. package/es/layout/simple-header-layout.js +3 -87
  166. package/es/layout/simple-header-layout.js.map +1 -1
  167. package/es/plugins/icons.js +1 -1
  168. package/es/plugins/list-tree-stick-cell.d.ts +16 -0
  169. package/es/plugins/list-tree-stick-cell.js +169 -0
  170. package/es/plugins/list-tree-stick-cell.js.map +1 -0
  171. package/es/plugins/themes.js +1 -1
  172. package/es/scenegraph/debug-tool/debug-tool.js +1 -4
  173. package/es/scenegraph/debug-tool/debug-tool.js.map +1 -1
  174. package/es/scenegraph/graphic/chart.d.ts +0 -1
  175. package/es/scenegraph/graphic/chart.js +21 -33
  176. package/es/scenegraph/graphic/chart.js.map +1 -1
  177. package/es/scenegraph/graphic/contributions/chart-render-helper.js +8 -20
  178. package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  179. package/es/scenegraph/graphic/contributions/chart-render.d.ts +1 -2
  180. package/es/scenegraph/graphic/contributions/chart-render.js +25 -41
  181. package/es/scenegraph/graphic/contributions/chart-render.js.map +1 -1
  182. package/es/scenegraph/graphic/group.js +1 -1
  183. package/es/scenegraph/graphic/group.js.map +1 -1
  184. package/es/scenegraph/group-creater/cell-helper.d.ts +2 -1
  185. package/es/scenegraph/group-creater/cell-helper.js +23 -8
  186. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  187. package/es/scenegraph/group-creater/cell-type/chart-cell.js +1 -2
  188. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  189. package/es/scenegraph/group-creater/column-helper.js +8 -2
  190. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  191. package/es/scenegraph/group-creater/init-scenegraph.js +2 -2
  192. package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -1
  193. package/es/scenegraph/refresh-node/update-chart.d.ts +0 -1
  194. package/es/scenegraph/refresh-node/update-chart.js +0 -6
  195. package/es/scenegraph/refresh-node/update-chart.js.map +1 -1
  196. package/es/scenegraph/scenegraph.js +7 -13
  197. package/es/scenegraph/scenegraph.js.map +1 -1
  198. package/es/scenegraph/utils/get-cell-merge.js +1 -1
  199. package/es/scenegraph/utils/get-cell-merge.js.map +1 -1
  200. package/es/scenegraph/utils/get-hierarchy-offset.js +7 -9
  201. package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
  202. package/es/themes/theme.d.ts +2 -0
  203. package/es/themes/theme.js +13 -4
  204. package/es/themes/theme.js.map +1 -1
  205. package/es/ts-types/base-table.d.ts +10 -12
  206. package/es/ts-types/base-table.js.map +1 -1
  207. package/es/ts-types/new-data-set.d.ts +1 -0
  208. package/es/ts-types/new-data-set.js.map +1 -1
  209. package/es/ts-types/pivot-table/dimension/basic-dimension.d.ts +0 -1
  210. package/es/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
  211. package/es/ts-types/table-engine.d.ts +10 -0
  212. package/es/ts-types/table-engine.js.map +1 -1
  213. package/es/ts-types/theme.d.ts +1 -0
  214. package/es/ts-types/theme.js.map +1 -1
  215. package/es/vrender.js +3 -2
  216. package/es/vrender.js.map +1 -1
  217. package/package.json +3 -3
@@ -163,4 +163,5 @@ function indexFirst(arr, elm) {
163
163
  arr[i] > elm ? high = i - 1 : low = i + 1;
164
164
  }
165
165
  return high < 0 ? 0 : high;
166
- }
166
+ }
167
+ //# sourceMappingURL=row-height-map.js.map
@@ -29,7 +29,7 @@ export declare class SimpleHeaderLayoutMap implements LayoutMapAPI {
29
29
  _hasAggregationOnTopCount: number;
30
30
  _hasAggregationOnBottomCount: number;
31
31
  rowHierarchyType?: 'grid' | 'tree';
32
- private _cellRangeMap;
32
+ _cellRangeMap: Map<string, CellRange>;
33
33
  constructor(table: ListTable, columns: ColumnsDefine, showHeader: boolean, hierarchyIndent: number);
34
34
  handleRowSeriesNumber(rowSeriesNumber: IRowSeriesNumber): void;
35
35
  get transpose(): boolean;
@@ -97,7 +97,6 @@ export declare class SimpleHeaderLayoutMap implements LayoutMapAPI {
97
97
  getBody(col: number, _row: number): ColumnData | SeriesNumberColumnData;
98
98
  getBodyLayoutRangeById(id: LayoutObjectId): CellRange;
99
99
  getCellRange(col: number, row: number): CellRange;
100
- private getCellRangeTranspose;
101
100
  isCellRangeEqual(col: number, row: number, targetCol: number, targetRow: number): boolean;
102
101
  getRecordShowIndexByCell(col: number, row: number): number;
103
102
  getRecordStartRowByRecordIndex(index: number): number;
@@ -8,6 +8,8 @@ import { checkHasAggregation, checkHasAggregationOnBottom, checkHasAggregationOn
8
8
 
9
9
  import { DimensionTree } from "./tree-helper";
10
10
 
11
+ import { getCellRange } from "./cell-range/simple-cell-range";
12
+
11
13
  export class SimpleHeaderLayoutMap {
12
14
  constructor(table, columns, showHeader, hierarchyIndent) {
13
15
  this.seqId = 0, this.leftRowSeriesNumberColumnCount = 0, this.rightRowSeriesNumberColumnCount = 0,
@@ -481,93 +483,7 @@ export class SimpleHeaderLayoutMap {
481
483
  throw new Error(`can not found body layout @id=${id}`);
482
484
  }
483
485
  getCellRange(col, row) {
484
- var _a, _b, _c;
485
- if (-1 === col || -1 === row) return {
486
- start: {
487
- col: col,
488
- row: row
489
- },
490
- end: {
491
- col: col,
492
- row: row
493
- }
494
- };
495
- if (this._cellRangeMap.has(`$${col}$${row}`)) return this._cellRangeMap.get(`$${col}$${row}`);
496
- let cellRange = {
497
- start: {
498
- col: col,
499
- row: row
500
- },
501
- end: {
502
- col: col,
503
- row: row
504
- }
505
- };
506
- if (this.transpose) cellRange = this.getCellRangeTranspose(col, row); else if (this.headerLevelCount <= row) {
507
- if (this.headerLevelCount <= row && (null === (_b = null === (_a = this.columnObjects[col - this.leftRowSeriesNumberColumnCount]) || void 0 === _a ? void 0 : _a.define) || void 0 === _b ? void 0 : _b.mergeCell)) {
508
- const value = this._table.getCellValue(col, row);
509
- for (let r = row - 1; r >= this.headerLevelCount; r--) {
510
- const last_Value = this._table.getCellValue(col, r);
511
- if ("boolean" == typeof this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell) {
512
- if (value !== last_Value) break;
513
- } else if (!this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell(value, last_Value)) break;
514
- cellRange.start.row = r;
515
- }
516
- for (let r = row + 1; r < this.rowCount; r++) {
517
- const next_Value = this._table.getCellValue(col, r);
518
- if ("boolean" == typeof this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell) {
519
- if (value !== next_Value) break;
520
- } else if (!this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell(value, next_Value)) break;
521
- cellRange.end.row = r;
522
- }
523
- }
524
- } else {
525
- const id = this.getCellId(col, row);
526
- for (let c = col - 1; c >= 0 && id === this.getCellId(c, row); c--) cellRange.start.col = c;
527
- for (let c = col + 1; c < (null !== (_c = this.colCount) && void 0 !== _c ? _c : 0) && id === this.getCellId(c, row); c++) cellRange.end.col = c;
528
- for (let r = row - 1; r >= 0 && id === this.getCellId(col, r); r--) cellRange.start.row = r;
529
- for (let r = row + 1; r < this.headerLevelCount && id === this.getCellId(col, r); r++) cellRange.end.row = r;
530
- }
531
- return this._cellRangeMap.set(`$${col}$${row}`, cellRange), cellRange;
532
- }
533
- getCellRangeTranspose(col, row) {
534
- var _a, _b, _c, _d;
535
- const result = {
536
- start: {
537
- col: col,
538
- row: row
539
- },
540
- end: {
541
- col: col,
542
- row: row
543
- }
544
- };
545
- if (this.headerLevelCount + this.leftRowSeriesNumberColumnCount <= col || -1 === col && -1 === row) {
546
- if (this.headerLevelCount + this.leftRowSeriesNumberColumnCount <= col && (null === (_b = null === (_a = this.columnObjects[row]) || void 0 === _a ? void 0 : _a.define) || void 0 === _b ? void 0 : _b.mergeCell)) {
547
- const value = this._table.getCellValue(col, row);
548
- for (let c = col - 1; c >= this.headerLevelCount + this.leftRowSeriesNumberColumnCount; c--) {
549
- const last_Value = this._table.getCellValue(c, row);
550
- if ("boolean" == typeof this.columnObjects[row].define.mergeCell) {
551
- if (value !== last_Value) break;
552
- } else if (!this.columnObjects[row].define.mergeCell(value, last_Value)) break;
553
- result.start.col = c;
554
- }
555
- for (let c = col + 1; c < (null !== (_c = this.colCount) && void 0 !== _c ? _c : 0); c++) {
556
- const next_Value = this._table.getCellValue(c, row);
557
- if ("boolean" == typeof this.columnObjects[row].define.mergeCell) {
558
- if (value !== next_Value) break;
559
- } else if (!this.columnObjects[row].define.mergeCell(value, next_Value)) break;
560
- result.end.col = c;
561
- }
562
- }
563
- return result;
564
- }
565
- const id = this.getCellId(col, row);
566
- for (let r = row - 1; r >= 0 && id === this.getCellId(col, r); r--) result.start.row = r;
567
- for (let r = row + 1; r < (null !== (_d = this.rowCount) && void 0 !== _d ? _d : 0) && id === this.getCellId(col, r); r++) result.end.row = r;
568
- for (let c = col - 1; c >= 0 && id === this.getCellId(c, row); c--) result.start.col = c;
569
- for (let c = col + 1; c < this.headerLevelCount + this.leftRowSeriesNumberColumnCount && id === this.getCellId(c, row); c++) result.end.col = c;
570
- return result;
486
+ return getCellRange(col, row, this);
571
487
  }
572
488
  isCellRangeEqual(col, row, targetCol, targetRow) {
573
489
  const range1 = this.getCellRange(col, row), range2 = this.getCellRange(targetCol, targetRow);