k-vtable 1.0.32 → 1.0.33

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 (242) hide show
  1. package/README.md +20 -0
  2. package/cjs/ListTable.d.ts +34 -7
  3. package/cjs/ListTable.js +152 -28
  4. package/cjs/ListTable.js.map +1 -1
  5. package/cjs/PivotChart.js +15 -8
  6. package/cjs/PivotChart.js.map +1 -1
  7. package/cjs/PivotTable.js +30 -16
  8. package/cjs/PivotTable.js.map +1 -1
  9. package/cjs/components/legend/continue-legend/continue-legend.js +5 -4
  10. package/cjs/components/legend/continue-legend/continue-legend.js.map +1 -1
  11. package/cjs/components/legend/discrete-legend/discrete-legend.js +5 -4
  12. package/cjs/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  13. package/cjs/components/title/title.js +4 -4
  14. package/cjs/components/title/title.js.map +1 -1
  15. package/cjs/core/BaseTable.d.ts +4 -0
  16. package/cjs/core/BaseTable.js +32 -18
  17. package/cjs/core/BaseTable.js.map +1 -1
  18. package/cjs/core/TABLE_EVENT_TYPE.d.ts +1 -0
  19. package/cjs/core/TABLE_EVENT_TYPE.js +1 -0
  20. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  21. package/cjs/core/index.d.ts +1 -0
  22. package/cjs/core/index.js +30 -0
  23. package/cjs/core/index.js.map +1 -0
  24. package/cjs/core/record-helper.d.ts +4 -2
  25. package/cjs/core/record-helper.js +120 -47
  26. package/cjs/core/record-helper.js.map +1 -1
  27. package/cjs/core/style-helper.js +1 -1
  28. package/cjs/core/style-helper.js.map +1 -1
  29. package/cjs/data/DataSource.d.ts +13 -4
  30. package/cjs/data/DataSource.js +174 -60
  31. package/cjs/data/DataSource.js.map +1 -1
  32. package/cjs/dataset/DataStatistics.js +1 -2
  33. package/cjs/dataset/dataset-pivot-table.js +2 -1
  34. package/cjs/dataset/dataset.d.ts +4 -1
  35. package/cjs/dataset/dataset.js +40 -10
  36. package/cjs/dataset/dataset.js.map +1 -1
  37. package/cjs/edit/edit-manager.js +2 -2
  38. package/cjs/edit/edit-manager.js.map +1 -1
  39. package/cjs/event/EventHandler.js +4 -3
  40. package/cjs/event/EventHandler.js.map +1 -1
  41. package/cjs/event/EventTarget.d.ts +1 -1
  42. package/cjs/event/EventTarget.js +1 -1
  43. package/cjs/event/EventTarget.js.map +1 -1
  44. package/cjs/event/event.d.ts +2 -1
  45. package/cjs/event/event.js +20 -9
  46. package/cjs/event/event.js.map +1 -1
  47. package/cjs/event/listener/container-dom.js +1 -1
  48. package/cjs/event/listener/container-dom.js.map +1 -1
  49. package/cjs/event/listener/table-group.js +8 -7
  50. package/cjs/event/listener/table-group.js.map +1 -1
  51. package/cjs/event/media-click.js +5 -5
  52. package/cjs/event/media-click.js.map +1 -1
  53. package/cjs/header-helper/header-helper.d.ts +2 -2
  54. package/cjs/header-helper/header-helper.js.map +1 -1
  55. package/cjs/header-helper/style.js +1 -2
  56. package/cjs/icons.js +2 -2
  57. package/cjs/icons.js.map +1 -1
  58. package/cjs/index.d.ts +1 -1
  59. package/cjs/index.js +1 -1
  60. package/cjs/index.js.map +1 -1
  61. package/cjs/layout/index.js +2 -1
  62. package/cjs/layout/pivot-header-layout.js +2 -1
  63. package/cjs/layout/pivot-header-layout.js.map +1 -1
  64. package/cjs/plugins/custom-cell-style.d.ts +5 -0
  65. package/cjs/plugins/custom-cell-style.js +9 -0
  66. package/cjs/plugins/custom-cell-style.js.map +1 -1
  67. package/cjs/plugins/index.js +1 -1
  68. package/cjs/scenegraph/group-creater/cell-helper.js +2 -2
  69. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  70. package/cjs/scenegraph/group-creater/cell-type/image-cell.d.ts +3 -1
  71. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +12 -6
  72. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  73. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +6 -2
  74. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  75. package/cjs/scenegraph/group-creater/column-helper.js +1 -2
  76. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  77. package/cjs/scenegraph/layout/compute-col-width.js +9 -7
  78. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  79. package/cjs/scenegraph/layout/compute-row-height.js +1 -2
  80. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  81. package/cjs/scenegraph/layout/update-height.js +3 -3
  82. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  83. package/cjs/scenegraph/layout/update-width.js +5 -5
  84. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  85. package/cjs/scenegraph/scenegraph.js +1 -1
  86. package/cjs/scenegraph/scenegraph.js.map +1 -1
  87. package/cjs/state/hover/col.js.map +1 -1
  88. package/cjs/state/hover/is-cell-hover.js.map +1 -1
  89. package/cjs/state/hover/update-cell.js.map +1 -1
  90. package/cjs/themes/themes.d.ts +3 -1
  91. package/cjs/themes/themes.js +30 -1
  92. package/cjs/themes/themes.js.map +1 -1
  93. package/cjs/themes.d.ts +2 -0
  94. package/cjs/themes.js +11 -2
  95. package/cjs/themes.js.map +1 -1
  96. package/cjs/tools/join.js +1 -0
  97. package/cjs/tools/join.js.map +1 -1
  98. package/cjs/ts-types/base-table.d.ts +7 -2
  99. package/cjs/ts-types/base-table.js.map +1 -1
  100. package/cjs/ts-types/events.d.ts +15 -0
  101. package/cjs/ts-types/events.js.map +1 -1
  102. package/cjs/ts-types/icon.d.ts +2 -0
  103. package/cjs/ts-types/icon.js +4 -3
  104. package/cjs/ts-types/icon.js.map +1 -1
  105. package/cjs/ts-types/list-table/layout-map/api.d.ts +3 -3
  106. package/cjs/ts-types/list-table/layout-map/api.js.map +1 -1
  107. package/cjs/ts-types/pivot-table/corner.d.ts +1 -1
  108. package/cjs/ts-types/pivot-table/corner.js.map +1 -1
  109. package/cjs/ts-types/pivot-table/dimension/composite-dimension.d.ts +17 -0
  110. package/cjs/ts-types/pivot-table/dimension/composite-dimension.js +6 -0
  111. package/cjs/ts-types/pivot-table/dimension/composite-dimension.js.map +1 -0
  112. package/cjs/ts-types/pivot-table/dimension/index.d.ts +3 -2
  113. package/cjs/ts-types/pivot-table/dimension/index.js.map +1 -1
  114. package/cjs/ts-types/pivot-table/indicator/composite-indicator.d.ts +14 -2
  115. package/cjs/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -1
  116. package/cjs/ts-types/pivot-table/indicator/index.d.ts +2 -2
  117. package/cjs/ts-types/pivot-table/indicator/index.js.map +1 -1
  118. package/cjs/ts-types/table-engine.d.ts +33 -6
  119. package/cjs/ts-types/table-engine.js.map +1 -1
  120. package/cjs/vrender.js.map +1 -1
  121. package/dist/vtable.js +1046 -262
  122. package/dist/vtable.min.js +2 -2
  123. package/es/ListTable.d.ts +34 -7
  124. package/es/ListTable.js +148 -28
  125. package/es/ListTable.js.map +1 -1
  126. package/es/PivotChart.js +15 -8
  127. package/es/PivotChart.js.map +1 -1
  128. package/es/PivotTable.js +30 -16
  129. package/es/PivotTable.js.map +1 -1
  130. package/es/components/legend/continue-legend/continue-legend.js +5 -4
  131. package/es/components/legend/continue-legend/continue-legend.js.map +1 -1
  132. package/es/components/legend/discrete-legend/discrete-legend.js +5 -4
  133. package/es/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  134. package/es/components/title/title.js +4 -4
  135. package/es/components/title/title.js.map +1 -1
  136. package/es/core/BaseTable.d.ts +4 -0
  137. package/es/core/BaseTable.js +32 -18
  138. package/es/core/BaseTable.js.map +1 -1
  139. package/es/core/TABLE_EVENT_TYPE.d.ts +1 -0
  140. package/es/core/TABLE_EVENT_TYPE.js +1 -0
  141. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  142. package/es/core/index.d.ts +1 -0
  143. package/es/core/index.js +2 -0
  144. package/es/core/index.js.map +1 -0
  145. package/es/core/record-helper.d.ts +4 -2
  146. package/es/core/record-helper.js +114 -43
  147. package/es/core/record-helper.js.map +1 -1
  148. package/es/core/style-helper.js +1 -1
  149. package/es/core/style-helper.js.map +1 -1
  150. package/es/data/DataSource.d.ts +13 -4
  151. package/es/data/DataSource.js +174 -60
  152. package/es/data/DataSource.js.map +1 -1
  153. package/es/dataset/DataStatistics.js +1 -2
  154. package/es/dataset/dataset-pivot-table.js +2 -1
  155. package/es/dataset/dataset.d.ts +4 -1
  156. package/es/dataset/dataset.js +40 -10
  157. package/es/dataset/dataset.js.map +1 -1
  158. package/es/edit/edit-manager.js +2 -2
  159. package/es/edit/edit-manager.js.map +1 -1
  160. package/es/event/EventHandler.js +4 -3
  161. package/es/event/EventHandler.js.map +1 -1
  162. package/es/event/EventTarget.d.ts +1 -1
  163. package/es/event/EventTarget.js +1 -1
  164. package/es/event/EventTarget.js.map +1 -1
  165. package/es/event/event.d.ts +2 -1
  166. package/es/event/event.js +20 -9
  167. package/es/event/event.js.map +1 -1
  168. package/es/event/listener/container-dom.js +1 -1
  169. package/es/event/listener/container-dom.js.map +1 -1
  170. package/es/event/listener/table-group.js +8 -7
  171. package/es/event/listener/table-group.js.map +1 -1
  172. package/es/event/media-click.js +5 -5
  173. package/es/event/media-click.js.map +1 -1
  174. package/es/header-helper/header-helper.d.ts +2 -2
  175. package/es/header-helper/header-helper.js.map +1 -1
  176. package/es/header-helper/style.js +1 -2
  177. package/es/icons.js +1 -3
  178. package/es/icons.js.map +1 -1
  179. package/es/index.d.ts +1 -1
  180. package/es/index.js +1 -1
  181. package/es/index.js.map +1 -1
  182. package/es/layout/index.js +2 -1
  183. package/es/layout/pivot-header-layout.js +2 -1
  184. package/es/layout/pivot-header-layout.js.map +1 -1
  185. package/es/plugins/custom-cell-style.d.ts +5 -0
  186. package/es/plugins/custom-cell-style.js +9 -0
  187. package/es/plugins/custom-cell-style.js.map +1 -1
  188. package/es/plugins/index.js +1 -1
  189. package/es/scenegraph/group-creater/cell-helper.js +2 -2
  190. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  191. package/es/scenegraph/group-creater/cell-type/image-cell.d.ts +3 -1
  192. package/es/scenegraph/group-creater/cell-type/image-cell.js +11 -7
  193. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  194. package/es/scenegraph/group-creater/cell-type/video-cell.js +7 -3
  195. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  196. package/es/scenegraph/group-creater/column-helper.js +1 -2
  197. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  198. package/es/scenegraph/layout/compute-col-width.js +9 -7
  199. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  200. package/es/scenegraph/layout/compute-row-height.js +1 -2
  201. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  202. package/es/scenegraph/layout/update-height.js +3 -3
  203. package/es/scenegraph/layout/update-height.js.map +1 -1
  204. package/es/scenegraph/layout/update-width.js +5 -5
  205. package/es/scenegraph/layout/update-width.js.map +1 -1
  206. package/es/scenegraph/scenegraph.js +1 -1
  207. package/es/scenegraph/scenegraph.js.map +1 -1
  208. package/es/state/hover/col.js.map +1 -1
  209. package/es/state/hover/is-cell-hover.js.map +1 -1
  210. package/es/state/hover/update-cell.js.map +1 -1
  211. package/es/themes/themes.d.ts +3 -1
  212. package/es/themes/themes.js +27 -0
  213. package/es/themes/themes.js.map +1 -1
  214. package/es/themes.d.ts +2 -0
  215. package/es/themes.js +3 -1
  216. package/es/themes.js.map +1 -1
  217. package/es/tools/join.js +1 -0
  218. package/es/tools/join.js.map +1 -1
  219. package/es/ts-types/base-table.d.ts +7 -2
  220. package/es/ts-types/base-table.js.map +1 -1
  221. package/es/ts-types/events.d.ts +15 -0
  222. package/es/ts-types/events.js.map +1 -1
  223. package/es/ts-types/icon.d.ts +2 -0
  224. package/es/ts-types/icon.js +4 -3
  225. package/es/ts-types/icon.js.map +1 -1
  226. package/es/ts-types/list-table/layout-map/api.d.ts +3 -3
  227. package/es/ts-types/list-table/layout-map/api.js.map +1 -1
  228. package/es/ts-types/pivot-table/corner.d.ts +1 -1
  229. package/es/ts-types/pivot-table/corner.js.map +1 -1
  230. package/es/ts-types/pivot-table/dimension/composite-dimension.d.ts +17 -0
  231. package/es/ts-types/pivot-table/dimension/composite-dimension.js +2 -0
  232. package/es/ts-types/pivot-table/dimension/composite-dimension.js.map +1 -0
  233. package/es/ts-types/pivot-table/dimension/index.d.ts +3 -2
  234. package/es/ts-types/pivot-table/dimension/index.js.map +1 -1
  235. package/es/ts-types/pivot-table/indicator/composite-indicator.d.ts +14 -2
  236. package/es/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -1
  237. package/es/ts-types/pivot-table/indicator/index.d.ts +2 -2
  238. package/es/ts-types/pivot-table/indicator/index.js.map +1 -1
  239. package/es/ts-types/table-engine.d.ts +33 -6
  240. package/es/ts-types/table-engine.js.map +1 -1
  241. package/es/vrender.js.map +1 -1
  242. package/package.json +6 -6
package/cjs/PivotTable.js CHANGED
@@ -91,8 +91,8 @@ class PivotTable extends BaseTable_1.BaseTable {
91
91
  const EmptyTip = factory_1.Factory.getComponent("emptyTip");
92
92
  this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this), null === (_z = this.internalProps.emptyTip) || void 0 === _z || _z.resetVisible();
93
93
  }
94
- setTimeout((() => {
95
- this.isReleased || (this.resize(), this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.INITIALIZED, null));
94
+ this.resize(), setTimeout((() => {
95
+ this.isReleased || this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.INITIALIZED, null);
96
96
  }), 0);
97
97
  }
98
98
  }
@@ -191,13 +191,13 @@ class PivotTable extends BaseTable_1.BaseTable {
191
191
  })), internalProps.releaseList = null), this.scenegraph.clearCells(), this.scenegraph.createSceneGraph(),
192
192
  options.title) {
193
193
  const Title = factory_1.Factory.getComponent("title");
194
- this.internalProps.title = new Title(options.title, this), this.scenegraph.resize();
194
+ this.internalProps.title = new Title(options.title, this);
195
195
  }
196
196
  if (this.options.emptyTip) if (this.internalProps.emptyTip) null === (_0 = this.internalProps.emptyTip) || void 0 === _0 || _0.resetVisible(); else {
197
197
  const EmptyTip = factory_1.Factory.getComponent("emptyTip");
198
198
  this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this), null === (_1 = this.internalProps.emptyTip) || void 0 === _1 || _1.resetVisible();
199
199
  }
200
- return setTimeout((() => {
200
+ return this.resize(), setTimeout((() => {
201
201
  this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.UPDATED, null);
202
202
  }), 0), new Promise((resolve => {
203
203
  setTimeout(resolve, 0);
@@ -701,7 +701,7 @@ class PivotTable extends BaseTable_1.BaseTable {
701
701
  };
702
702
  }
703
703
  setRecords(records) {
704
- var _a, _b, _c, _d, _e, _f, _g, _h;
704
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
705
705
  (0, chart_render_helper_1.clearChartRenderQueue)();
706
706
  const oldHoverState = {
707
707
  col: this.stateManager.hover.cellPos.col,
@@ -727,13 +727,20 @@ class PivotTable extends BaseTable_1.BaseTable {
727
727
  internalProps.layoutMap = new pivot_header_layout_1.PivotHeaderLayoutMap(this, this.dataset, columnDimensionTree, rowDimensionTree),
728
728
  this.pivotSortState = [], options.pivotSortState && (this.pivotSortState = options.pivotSortState);
729
729
  }
730
- if (this.refreshHeader(), this.internalProps.useOneRowHeightFillAll = !1, this.scenegraph.clearCells(),
731
- this.clearCellStyleCache(), this.scenegraph.createSceneGraph(), this.stateManager.updateHoverPos(oldHoverState.col, oldHoverState.row),
732
- this.internalProps.title && !this.internalProps.title.isReleased && (this._updateSize(),
733
- this.internalProps.title.resize(), this.scenegraph.resize()), this.eventManager.updateEventBinder(),
734
- this.options.emptyTip) if (this.internalProps.emptyTip) null === (_g = this.internalProps.emptyTip) || void 0 === _g || _g.resetVisible(); else {
730
+ this.refreshHeader(), this.internalProps.useOneRowHeightFillAll = !1, this.scenegraph.clearCells(),
731
+ this.clearCellStyleCache(), this.scenegraph.createSceneGraph(), this.stateManager.updateHoverPos(oldHoverState.col, oldHoverState.row);
732
+ let isHasComponent = !1;
733
+ (this.internalProps.title || this.internalProps.legends) && (this._updateSize(),
734
+ isHasComponent = !0);
735
+ if ((null !== (_g = this.options.componentLayoutOrder) && void 0 !== _g ? _g : [ "legend", "title" ]).forEach((component => {
736
+ var _a, _b;
737
+ "legend" === component ? null === (_a = this.internalProps.legends) || void 0 === _a || _a.forEach((legend => {
738
+ null == legend || legend.resize();
739
+ })) : "title" === component && (null === (_b = this.internalProps.title) || void 0 === _b || _b.resize());
740
+ })), isHasComponent && this.scenegraph.resize(), this.eventManager.updateEventBinder(),
741
+ this.options.emptyTip) if (this.internalProps.emptyTip) null === (_h = this.internalProps.emptyTip) || void 0 === _h || _h.resetVisible(); else {
735
742
  const EmptyTip = factory_1.Factory.getComponent("emptyTip");
736
- this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this), null === (_h = this.internalProps.emptyTip) || void 0 === _h || _h.resetVisible();
743
+ this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this), null === (_j = this.internalProps.emptyTip) || void 0 === _j || _j.resetVisible();
737
744
  }
738
745
  }
739
746
  startEditCell(col, row, value) {
@@ -884,14 +891,21 @@ class PivotTable extends BaseTable_1.BaseTable {
884
891
  const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);
885
892
  if (this.isCornerHeader(col, row)) this.internalProps.layoutMap.changeCornerTitle(col, row, newValue); else if (this.isHeader(col, row)) this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue),
886
893
  !this.isCornerHeader(col, row) && this.dataset.changeRecordFieldValue((null === (_a = cellDimensionPath.colHeaderPaths) || void 0 === _a ? void 0 : _a.length) ? null !== (_b = cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey) && void 0 !== _b ? _b : cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey : null !== (_c = cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey) && void 0 !== _c ? _c : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey, oldValue, newValue); else {
887
- const colKeys = null === (_d = cellDimensionPath.colHeaderPaths) || void 0 === _d ? void 0 : _d.filter((path => !path.virtual)).map((colPath => {
894
+ let indicatorPosition;
895
+ const colKeys = null === (_d = cellDimensionPath.colHeaderPaths) || void 0 === _d ? void 0 : _d.filter((path => !path.virtual)).map(((colPath, index) => {
888
896
  var _a;
889
- return null !== (_a = colPath.indicatorKey) && void 0 !== _a ? _a : colPath.value;
890
- })), rowKeys = null === (_e = cellDimensionPath.rowHeaderPaths) || void 0 === _e ? void 0 : _e.filter((path => !path.virtual)).map((rowPath => {
897
+ return colPath.indicatorKey && (indicatorPosition = {
898
+ position: "col",
899
+ index: index
900
+ }), null !== (_a = colPath.indicatorKey) && void 0 !== _a ? _a : colPath.value;
901
+ })), rowKeys = null === (_e = cellDimensionPath.rowHeaderPaths) || void 0 === _e ? void 0 : _e.filter((path => !path.virtual)).map(((rowPath, index) => {
891
902
  var _a;
892
- return null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
903
+ return rowPath.indicatorKey && (indicatorPosition = {
904
+ position: "row",
905
+ index: index
906
+ }), null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
893
907
  }));
894
- this.dataset.changeTreeNodeValue(this.internalProps.layoutMap.indicatorsAsCol ? rowKeys : rowKeys.slice(0, -1), this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys, this.internalProps.layoutMap.getIndicatorKey(col, row), newValue);
908
+ this.dataset.changeTreeNodeValue(rowKeys, colKeys, this.internalProps.layoutMap.getIndicatorKey(col, row), newValue, indicatorPosition);
895
909
  }
896
910
  } else if (this.flatDataToObjects) {
897
911
  const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);