k-vtable 1.0.4 → 1.0.6

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 (193) 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 +4 -1
  4. package/cjs/ListTable.js +40 -1
  5. package/cjs/ListTable.js.map +1 -1
  6. package/cjs/PivotChart.js +4 -4
  7. package/cjs/PivotChart.js.map +1 -1
  8. package/cjs/PivotTable-all.js +4 -4
  9. package/cjs/PivotTable-all.js.map +1 -1
  10. package/cjs/PivotTable.d.ts +4 -0
  11. package/cjs/PivotTable.js +44 -0
  12. package/cjs/PivotTable.js.map +1 -1
  13. package/cjs/components/index.d.ts +1 -0
  14. package/cjs/components/index.js +8 -2
  15. package/cjs/components/index.js.map +1 -1
  16. package/cjs/core/BaseTable.js +2 -2
  17. package/cjs/core/BaseTable.js.map +1 -1
  18. package/cjs/core/FouseInput.js +1 -1
  19. package/cjs/core/TABLE_EVENT_TYPE.js +1 -1
  20. package/cjs/core/animation.js +1 -1
  21. package/cjs/core/factory.js +1 -1
  22. package/cjs/core/group-helper.js +1 -1
  23. package/cjs/core/record-helper.d.ts +1 -1
  24. package/cjs/core/record-helper.js +100 -66
  25. package/cjs/core/record-helper.js.map +1 -1
  26. package/cjs/core/row-series-number-helper.js +1 -1
  27. package/cjs/core/style-helper.js +1 -1
  28. package/cjs/core/style.js +1 -1
  29. package/cjs/core/tableHelper.js +1 -1
  30. package/cjs/data/DataSource.d.ts +3 -0
  31. package/cjs/data/DataSource.js +32 -4
  32. package/cjs/data/DataSource.js.map +1 -1
  33. package/cjs/dataset/dataset-pivot-table.js +2 -1
  34. package/cjs/dataset/dataset.d.ts +1 -0
  35. package/cjs/dataset/dataset.js +66 -2
  36. package/cjs/dataset/dataset.js.map +1 -1
  37. package/cjs/edit/edit-manager.js +8 -5
  38. package/cjs/edit/edit-manager.js.map +1 -1
  39. package/cjs/event/helper.js +1 -2
  40. package/cjs/event/listener/container-dom.js +35 -33
  41. package/cjs/event/listener/container-dom.js.map +1 -1
  42. package/cjs/event/listener/table-group.js +32 -28
  43. package/cjs/event/listener/table-group.js.map +1 -1
  44. package/cjs/index.d.ts +2 -1
  45. package/cjs/index.js +11 -2
  46. package/cjs/index.js.map +1 -1
  47. package/cjs/layout/index.js +2 -1
  48. package/cjs/layout/pivot-header-layout.d.ts +7 -0
  49. package/cjs/layout/pivot-header-layout.js +92 -7
  50. package/cjs/layout/pivot-header-layout.js.map +1 -1
  51. package/cjs/layout/simple-header-layout.d.ts +2 -0
  52. package/cjs/layout/simple-header-layout.js +26 -11
  53. package/cjs/layout/simple-header-layout.js.map +1 -1
  54. package/cjs/layout/tree-helper.d.ts +2 -0
  55. package/cjs/layout/tree-helper.js +9 -0
  56. package/cjs/layout/tree-helper.js.map +1 -1
  57. package/cjs/plugins/index.js +1 -1
  58. package/cjs/plugins/interface.js +1 -1
  59. package/cjs/plugins/invert-highlight.js +1 -1
  60. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  61. package/cjs/plugins/plugin-manager.js +1 -1
  62. package/cjs/scenegraph/debug-tool/debug-tool.js +2 -1
  63. package/cjs/scenegraph/debug-tool/debug-tool.js.map +1 -1
  64. package/cjs/scenegraph/graphic/icon.js.map +1 -1
  65. package/cjs/scenegraph/group-creater/cell-helper.js +3 -3
  66. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  67. package/cjs/scenegraph/group-creater/column-helper.js +1 -1
  68. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  69. package/cjs/scenegraph/layout/compute-col-width.js +11 -1
  70. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  71. package/cjs/scenegraph/layout/frozen-react.js +13 -8
  72. package/cjs/scenegraph/layout/frozen-react.js.map +1 -1
  73. package/cjs/scenegraph/scenegraph.js +1 -1
  74. package/cjs/state/state.d.ts +2 -0
  75. package/cjs/state/state.js +16 -4
  76. package/cjs/state/state.js.map +1 -1
  77. package/cjs/themes/ARCO.js +1 -1
  78. package/cjs/themes/BRIGHT.js +1 -1
  79. package/cjs/themes/DARK.js +1 -1
  80. package/cjs/themes/DEFAULT.js +1 -1
  81. package/cjs/themes/SIMPLIFY.js +1 -1
  82. package/cjs/ts-types/base-table.d.ts +2 -0
  83. package/cjs/ts-types/base-table.js.map +1 -1
  84. package/cjs/ts-types/dataset/aggregation.d.ts +8 -6
  85. package/cjs/ts-types/dataset/aggregation.js +109 -54
  86. package/cjs/ts-types/dataset/aggregation.js.map +1 -1
  87. package/cjs/ts-types/events.d.ts +1 -0
  88. package/cjs/ts-types/events.js.map +1 -1
  89. package/cjs/ts-types/list-table/define/basic-define.d.ts +1 -0
  90. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  91. package/cjs/ts-types/new-data-set.d.ts +1 -0
  92. package/cjs/ts-types/new-data-set.js.map +1 -1
  93. package/cjs/ts-types/table-engine.d.ts +2 -1
  94. package/cjs/ts-types/table-engine.js.map +1 -1
  95. package/cjs/vrender.js.map +1 -1
  96. package/dist/vtable.js +4279 -292
  97. package/dist/vtable.min.js +2 -2
  98. package/es/ListTable-all.js +4 -4
  99. package/es/ListTable-all.js.map +1 -1
  100. package/es/ListTable.d.ts +4 -1
  101. package/es/ListTable.js +40 -1
  102. package/es/ListTable.js.map +1 -1
  103. package/es/PivotChart.js +4 -4
  104. package/es/PivotChart.js.map +1 -1
  105. package/es/PivotTable-all.js +3 -3
  106. package/es/PivotTable-all.js.map +1 -1
  107. package/es/PivotTable.d.ts +4 -0
  108. package/es/PivotTable.js +44 -0
  109. package/es/PivotTable.js.map +1 -1
  110. package/es/components/index.d.ts +1 -0
  111. package/es/components/index.js +6 -0
  112. package/es/components/index.js.map +1 -1
  113. package/es/core/BaseTable.js +2 -2
  114. package/es/core/BaseTable.js.map +1 -1
  115. package/es/core/FouseInput.js +1 -1
  116. package/es/core/TABLE_EVENT_TYPE.js +1 -1
  117. package/es/core/animation.js +1 -1
  118. package/es/core/factory.js +1 -1
  119. package/es/core/group-helper.js +1 -1
  120. package/es/core/record-helper.d.ts +1 -1
  121. package/es/core/record-helper.js +100 -66
  122. package/es/core/record-helper.js.map +1 -1
  123. package/es/core/row-series-number-helper.js +1 -1
  124. package/es/core/style-helper.js +1 -1
  125. package/es/core/style.js +1 -1
  126. package/es/core/tableHelper.js +1 -1
  127. package/es/data/DataSource.d.ts +3 -0
  128. package/es/data/DataSource.js +32 -4
  129. package/es/data/DataSource.js.map +1 -1
  130. package/es/dataset/dataset-pivot-table.js +2 -1
  131. package/es/dataset/dataset.d.ts +1 -0
  132. package/es/dataset/dataset.js +66 -2
  133. package/es/dataset/dataset.js.map +1 -1
  134. package/es/edit/edit-manager.js +8 -5
  135. package/es/edit/edit-manager.js.map +1 -1
  136. package/es/event/helper.js +1 -2
  137. package/es/event/listener/container-dom.js +34 -32
  138. package/es/event/listener/container-dom.js.map +1 -1
  139. package/es/event/listener/table-group.js +31 -28
  140. package/es/event/listener/table-group.js.map +1 -1
  141. package/es/index.d.ts +2 -1
  142. package/es/index.js +3 -1
  143. package/es/index.js.map +1 -1
  144. package/es/layout/index.js +2 -1
  145. package/es/layout/pivot-header-layout.d.ts +7 -0
  146. package/es/layout/pivot-header-layout.js +92 -7
  147. package/es/layout/pivot-header-layout.js.map +1 -1
  148. package/es/layout/simple-header-layout.d.ts +2 -0
  149. package/es/layout/simple-header-layout.js +26 -11
  150. package/es/layout/simple-header-layout.js.map +1 -1
  151. package/es/layout/tree-helper.d.ts +2 -0
  152. package/es/layout/tree-helper.js +9 -0
  153. package/es/layout/tree-helper.js.map +1 -1
  154. package/es/plugins/index.js +1 -1
  155. package/es/plugins/interface.js +1 -1
  156. package/es/plugins/invert-highlight.js +1 -1
  157. package/es/plugins/list-tree-stick-cell.js +1 -1
  158. package/es/plugins/plugin-manager.js +1 -1
  159. package/es/scenegraph/debug-tool/debug-tool.js +2 -1
  160. package/es/scenegraph/debug-tool/debug-tool.js.map +1 -1
  161. package/es/scenegraph/graphic/icon.js.map +1 -1
  162. package/es/scenegraph/group-creater/cell-helper.js +3 -3
  163. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  164. package/es/scenegraph/group-creater/column-helper.js +1 -1
  165. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  166. package/es/scenegraph/layout/compute-col-width.js +11 -1
  167. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  168. package/es/scenegraph/layout/frozen-react.js +13 -8
  169. package/es/scenegraph/layout/frozen-react.js.map +1 -1
  170. package/es/scenegraph/scenegraph.js +1 -1
  171. package/es/state/state.d.ts +2 -0
  172. package/es/state/state.js +16 -4
  173. package/es/state/state.js.map +1 -1
  174. package/es/themes/ARCO.js +1 -1
  175. package/es/themes/BRIGHT.js +1 -1
  176. package/es/themes/DARK.js +1 -1
  177. package/es/themes/DEFAULT.js +1 -1
  178. package/es/themes/SIMPLIFY.js +1 -1
  179. package/es/ts-types/base-table.d.ts +2 -0
  180. package/es/ts-types/base-table.js.map +1 -1
  181. package/es/ts-types/dataset/aggregation.d.ts +8 -6
  182. package/es/ts-types/dataset/aggregation.js +109 -54
  183. package/es/ts-types/dataset/aggregation.js.map +1 -1
  184. package/es/ts-types/events.d.ts +1 -0
  185. package/es/ts-types/events.js.map +1 -1
  186. package/es/ts-types/list-table/define/basic-define.d.ts +1 -0
  187. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  188. package/es/ts-types/new-data-set.d.ts +1 -0
  189. package/es/ts-types/new-data-set.js.map +1 -1
  190. package/es/ts-types/table-engine.d.ts +2 -1
  191. package/es/ts-types/table-engine.js.map +1 -1
  192. package/es/vrender.js.map +1 -1
  193. package/package.json +2 -2
@@ -700,16 +700,80 @@ export class Dataset {
700
700
  for (const key in this.collectValuesBy) "xField" !== this.collectValuesBy[key].type && "yField" !== this.collectValuesBy[key].type || (this.dataConfig.dimensionSortArray ? this.cacheCollectedValues[key] = arraySortByAnotherArray(this.collectedValues[key], this.dataConfig.dimensionSortArray) : this.cacheCollectedValues[key] = this.collectedValues[key]);
701
701
  }
702
702
  changeTreeNodeValue(rowKey = [], colKey = [], indicator, newValue) {
703
- var _a, _b, _c;
703
+ var _a, _b, _c, _d, _e;
704
704
  const indicatorIndex = this.indicatorKeys.indexOf(indicator);
705
705
  let flatRowKey, flatColKey;
706
706
  flatRowKey = "string" == typeof rowKey ? rowKey : rowKey.join(this.stringJoinChar),
707
707
  flatColKey = "string" == typeof colKey ? colKey : colKey.join(this.stringJoinChar),
708
+ "string" == typeof newValue && (isNaN(parseFloat(newValue)) || (newValue = parseFloat(newValue))),
708
709
  (null === (_a = this.changedTree[flatRowKey]) || void 0 === _a ? void 0 : _a[flatColKey]) ? this.changedTree[flatRowKey][flatColKey][indicatorIndex] = newValue : this.changedTree[flatRowKey] ? (this.changedTree[flatRowKey][flatColKey] = [],
709
710
  this.changedTree[flatRowKey][flatColKey][indicatorIndex] = newValue) : (this.changedTree[flatRowKey] = {},
710
711
  this.changedTree[flatRowKey][flatColKey] = [], this.changedTree[flatRowKey][flatColKey][indicatorIndex] = newValue);
711
712
  const cellAggregator = null === (_c = null === (_b = this.tree[flatRowKey]) || void 0 === _b ? void 0 : _b[flatColKey]) || void 0 === _c ? void 0 : _c[indicatorIndex];
712
- 1 === (null == cellAggregator ? void 0 : cellAggregator.records.length) && (cellAggregator.records[0][this.indicatorKeys[indicatorIndex]] = newValue);
713
+ if (1 === (null == cellAggregator ? void 0 : cellAggregator.records.length) && (cellAggregator.records[0][this.indicatorKeys[indicatorIndex]] = newValue),
714
+ null !== (_e = null === (_d = this.dataConfig) || void 0 === _d ? void 0 : _d.updateAggregationOnEditCell) && void 0 !== _e && _e) if (cellAggregator) cellAggregator.changedValue = newValue,
715
+ this.recalculateTotals(rowKey, colKey, indicator); else {
716
+ const newCellAggregator = new SumAggregator({
717
+ key: indicator,
718
+ field: indicator,
719
+ isRecord: !0
720
+ });
721
+ newCellAggregator.changedValue = newValue, this.recalculateTotals(rowKey, colKey, indicator, newCellAggregator);
722
+ }
723
+ }
724
+ recalculateTotals(rowKey = [], colKey = [], indicator, newCellAggregator) {
725
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11;
726
+ if (!this.totals || 0 === Object.keys(this.tree).length || !((null === (_a = this.totals.row) || void 0 === _a ? void 0 : _a.showGrandTotals) || (null === (_b = this.totals.row) || void 0 === _b ? void 0 : _b.subTotalsDimensions) && this.totals.row.subTotalsDimensions.length > 0 && !1 !== this.totals.row.showSubTotals) && !((null === (_c = this.totals.column) || void 0 === _c ? void 0 : _c.showGrandTotals) || (null === (_d = this.totals.column) || void 0 === _d ? void 0 : _d.subTotalsDimensions) && this.totals.column.subTotalsDimensions.length > 0 && !1 !== this.totals.column.showSubTotals)) return;
727
+ const flatRowKey = Array.isArray(rowKey) ? rowKey.join(this.stringJoinChar) : rowKey, flatColKey = Array.isArray(colKey) ? colKey.join(this.stringJoinChar) : colKey, indicatorIndex = this.indicatorKeysIncludeCalculatedFieldDependIndicatorKeys.indexOf(indicator), aggregatorsToReset = new Set, subTotalAggregators = new Set, rowKeyParts = flatRowKey.split(this.stringJoinChar), colKeyParts = flatColKey.split(this.stringJoinChar), addAggregatorToResetSet = (agg, rowKey, colKey) => {
728
+ !agg || rowKey === flatRowKey && colKey === flatColKey || (aggregatorsToReset.add(agg),
729
+ rowKey !== flatRowKey && colKey !== flatColKey || subTotalAggregators.add(agg));
730
+ };
731
+ if ((null === (_f = null === (_e = this.totals) || void 0 === _e ? void 0 : _e.row) || void 0 === _f ? void 0 : _f.subTotalsDimensions) && !1 !== this.totals.row.showSubTotals) for (let i = 0; i < this.totals.row.subTotalsDimensions.length; i++) {
732
+ const dimension = this.totals.row.subTotalsDimensions[i], dimensionIndex = this.rows.indexOf(dimension);
733
+ if (dimensionIndex >= 0 && dimensionIndex < rowKeyParts.length) {
734
+ const rowSubTotalKeyParts = rowKeyParts.slice(0, dimensionIndex + 1);
735
+ "tree" !== this.rowHierarchyType && rowSubTotalKeyParts.push(this.rowSubTotalLabel);
736
+ const flatRowSubTotalKey = rowSubTotalKeyParts.join(this.stringJoinChar);
737
+ if ((null === (_h = null === (_g = this.tree[flatRowSubTotalKey]) || void 0 === _g ? void 0 : _g[flatColKey]) || void 0 === _h ? void 0 : _h[indicatorIndex]) && addAggregatorToResetSet(this.tree[flatRowSubTotalKey][flatColKey][indicatorIndex], flatRowSubTotalKey, flatColKey),
738
+ (null === (_k = null === (_j = this.totals) || void 0 === _j ? void 0 : _j.column) || void 0 === _k ? void 0 : _k.subTotalsDimensions) && !1 !== this.totals.column.showSubTotals) for (let j = 0; j < this.totals.column.subTotalsDimensions.length; j++) {
739
+ const colDimension = this.totals.column.subTotalsDimensions[j], colDimensionIndex = this.columns.indexOf(colDimension);
740
+ if (colDimensionIndex >= 0 && colDimensionIndex < colKeyParts.length) {
741
+ const colSubTotalKeyParts = colKeyParts.slice(0, colDimensionIndex + 1);
742
+ colSubTotalKeyParts.push(this.colSubTotalLabel);
743
+ const flatColSubTotalKey = colSubTotalKeyParts.join(this.stringJoinChar);
744
+ (null === (_m = null === (_l = this.tree[flatRowSubTotalKey]) || void 0 === _l ? void 0 : _l[flatColSubTotalKey]) || void 0 === _m ? void 0 : _m[indicatorIndex]) && addAggregatorToResetSet(this.tree[flatRowSubTotalKey][flatColSubTotalKey][indicatorIndex], flatRowSubTotalKey, flatColSubTotalKey);
745
+ }
746
+ }
747
+ (null === (_p = null === (_o = this.totals) || void 0 === _o ? void 0 : _o.column) || void 0 === _p ? void 0 : _p.showGrandTotals) && (null === (_r = null === (_q = this.tree[flatRowSubTotalKey]) || void 0 === _q ? void 0 : _q[this.colGrandTotalLabel]) || void 0 === _r ? void 0 : _r[indicatorIndex]) && addAggregatorToResetSet(this.tree[flatRowSubTotalKey][this.colGrandTotalLabel][indicatorIndex], flatRowSubTotalKey, this.colGrandTotalLabel);
748
+ }
749
+ }
750
+ if (null === (_t = null === (_s = this.totals) || void 0 === _s ? void 0 : _s.row) || void 0 === _t ? void 0 : _t.showGrandTotals) {
751
+ if ((null === (_v = null === (_u = this.tree[this.rowGrandTotalLabel]) || void 0 === _u ? void 0 : _u[flatColKey]) || void 0 === _v ? void 0 : _v[indicatorIndex]) && addAggregatorToResetSet(this.tree[this.rowGrandTotalLabel][flatColKey][indicatorIndex], this.rowGrandTotalLabel, flatColKey),
752
+ (null === (_x = null === (_w = this.totals) || void 0 === _w ? void 0 : _w.column) || void 0 === _x ? void 0 : _x.subTotalsDimensions) && !1 !== this.totals.column.showSubTotals) for (let j = 0; j < this.totals.column.subTotalsDimensions.length; j++) {
753
+ const colDimension = this.totals.column.subTotalsDimensions[j], colDimensionIndex = this.columns.indexOf(colDimension);
754
+ if (colDimensionIndex >= 0 && colDimensionIndex < colKeyParts.length) {
755
+ const colSubTotalKeyParts = colKeyParts.slice(0, colDimensionIndex + 1);
756
+ colSubTotalKeyParts.push(this.colSubTotalLabel);
757
+ const flatColSubTotalKey = colSubTotalKeyParts.join(this.stringJoinChar);
758
+ (null === (_z = null === (_y = this.tree[this.rowGrandTotalLabel]) || void 0 === _y ? void 0 : _y[flatColSubTotalKey]) || void 0 === _z ? void 0 : _z[indicatorIndex]) && addAggregatorToResetSet(this.tree[this.rowGrandTotalLabel][flatColSubTotalKey][indicatorIndex], this.rowGrandTotalLabel, flatColSubTotalKey);
759
+ }
760
+ }
761
+ (null === (_1 = null === (_0 = this.totals) || void 0 === _0 ? void 0 : _0.column) || void 0 === _1 ? void 0 : _1.showGrandTotals) && (null === (_3 = null === (_2 = this.tree[this.rowGrandTotalLabel]) || void 0 === _2 ? void 0 : _2[this.colGrandTotalLabel]) || void 0 === _3 ? void 0 : _3[indicatorIndex]) && addAggregatorToResetSet(this.tree[this.rowGrandTotalLabel][this.colGrandTotalLabel][indicatorIndex], this.rowGrandTotalLabel, this.colGrandTotalLabel);
762
+ }
763
+ if ((null === (_5 = null === (_4 = this.totals) || void 0 === _4 ? void 0 : _4.column) || void 0 === _5 ? void 0 : _5.subTotalsDimensions) && !1 !== this.totals.column.showSubTotals) for (let j = 0; j < this.totals.column.subTotalsDimensions.length; j++) {
764
+ const colDimension = this.totals.column.subTotalsDimensions[j], colDimensionIndex = this.columns.indexOf(colDimension);
765
+ if (colDimensionIndex >= 0 && colDimensionIndex < colKeyParts.length) {
766
+ const colSubTotalKeyParts = colKeyParts.slice(0, colDimensionIndex + 1);
767
+ colSubTotalKeyParts.push(this.colSubTotalLabel);
768
+ const flatColSubTotalKey = colSubTotalKeyParts.join(this.stringJoinChar);
769
+ (null === (_7 = null === (_6 = this.tree[flatRowKey]) || void 0 === _6 ? void 0 : _6[flatColSubTotalKey]) || void 0 === _7 ? void 0 : _7[indicatorIndex]) && addAggregatorToResetSet(this.tree[flatRowKey][flatColSubTotalKey][indicatorIndex], flatRowKey, flatColSubTotalKey);
770
+ }
771
+ }
772
+ (null === (_9 = null === (_8 = this.totals) || void 0 === _8 ? void 0 : _8.column) || void 0 === _9 ? void 0 : _9.showGrandTotals) && (null === (_11 = null === (_10 = this.tree[flatRowKey]) || void 0 === _10 ? void 0 : _10[this.colGrandTotalLabel]) || void 0 === _11 ? void 0 : _11[indicatorIndex]) && addAggregatorToResetSet(this.tree[flatRowKey][this.colGrandTotalLabel][indicatorIndex], flatRowKey, this.colGrandTotalLabel),
773
+ aggregatorsToReset.forEach((agg => {
774
+ newCellAggregator && subTotalAggregators.has(agg) && agg.push(newCellAggregator),
775
+ agg.recalculate();
776
+ }));
713
777
  }
714
778
  changeRecordFieldValue(fieldName, oldValue, value) {
715
779
  let isIndicatorName = !1;